[Aportes indexados] DX8 - FPS Configurables (18-32-64-Libres)

Estado
Cerrado para nuevas respuestas.

Dylan.-

Dylan Ullúa.
Hola a todos, hoy les vengo a aportar FPS CONFIGURABLES para DX8, lo hice hace 1 año aproximadamente y de tantas veces que lo hice en varios proyectos me lo acuerdo de memoria, aclaro que lo hice en un Fenix Virgen DX8 Fps libres (Está en el post "Descargas Oficiales") y supongo que para todos es igual...


Si al implementar esto les anda trabado al caminar tienen que toquetear el sub ShowNextFrame (ScrollPixelsPerFrame, engineBaseSpeed)


Comenzamos.
Vamos al FrmOpciones y creamos 4 Option Button
-1 con el nombre FPS1 y caption "18 FPS".
-otro con el nombre FPS2 y caption "32 FPS".
-otro con el nombre FPS3 y caption "64 FPS".
-otro con el nombre FPS4 y caption "FPS Libres"

Ahora abrimos el codigo de frmOpciones y abajo del todo ponemos.
Código:
'FPS
Private Sub FPS1_Click()
FPSConfig = 1
Call WriteVar(App.Path & "/Init/Opciones.opc", "CONFIG VIDEO", "FPS", "1")
 
End Sub
 
Private Sub FPS2_Click()
FPSConfig = 2
Call WriteVar(App.Path & "/Init/Opciones.opc", "CONFIG VIDEO", "FPS", "2")
 
End Sub
 
Private Sub FPS3_Click()
FPSConfig = 3
Call WriteVar(App.Path & "/Init/Opciones.opc", "CONFIG VIDEO", "FPS", "3")
 
End Sub
 
Private Sub FPS4_Click()
FPSConfig = 4
Call WriteVar(App.Path & "/Init/Opciones.opc", "CONFIG VIDEO", "FPS", "4")
 
End Sub
'FPS
Vamos al Shownextframe y buscamos
Código:
    ' ### I N T E R V A L O S ###
Arriba hay un While hasta Wend
Todo eso lo reemplazamos por
Código:
    If FPSConfig = 1 Then '18 FPS
        While (GetTickCount - lFrameTimer) \ 65 < FramesPerSecCounter
            Sleep 5
        Wend
    ElseIf FPSConfig = 2 Then '32 FPS
        While (GetTickCount - lFrameTimer) \ 33 < FramesPerSecCounter
            Sleep 5
        Wend
    ElseIf FPSConfig = 3 Then '64 FPS
        While (GetTickCount - lFrameTimer) \ 16 < FramesPerSecCounter
            Sleep 5
        Wend
    End If
En módulo declaraciones abajo de option explicit
ponen
Código:
public FPSConfig as byte
Buscamos
Código:
NoRes = Val(GetVar(App.Path & "/Init/Opciones.opc", "CONFIG", "ModoVentana"))
Abajo ponen
Código:
'FPS
FPSConfig = Val(GetVar(App.Path & "/init/opciones.opc", "CONFIG VIDEO", "FPS"))
If FPSConfig = 1 Then
    frmOpciones.FPS1.value = True
ElseIf FPSConfig = 2 Then
    frmOpciones.FPS2.value = True
ElseIf FPSConfig = 3 Then
    frmOpciones.FPS3.value = True
ElseIf FPSConfig = 4 Then
    frmOpciones.FPS4.value = True
End If
'FPS
Fin del código.

Ahora vamos a la carpeta INIT y buscamos el archivo Opciones.opc
Y lo abren con el bloq de notas y cuando se abre, abajo del todo ponen:

[CONFIG VIDEO]
FPS=2
Guardan y listo.
Ahí está a 32 FPS y lo configuran dentro del juego.

Es todo, suerte y espero que les sirva!!!!

Saludos, Dylan.-
 

Ruffneck.~

Morrigan Ancient Crone of War..
Gracias!! Dps lo testeo!!


PD: No se podria hacer.. que sea con un solo boton.. y al hacer 1 click fps 1 dps 2 click valla cambiando de fps. xD

TESTEADO Y FUNCIONAL!

Lo testie.. con 18 fps.. me camina re lento.. lo puse en 32 y perfecto.. 64 se traba un poco y fps libres se come unos buenos tiles xD! Me tira 250 fps xD! Muy lindo.. gracias..
 

Dylan.-

Dylan Ullúa.
Si, es muy facil.
if fpsconfig <> 4 then
Fpsconfig = fpsconfig +1
else
fpsconfig = 1
end if
 

Niquitoo

¡ <Amazing> Clan !
no me encuentra..

' ### I N T E R V A L O S ###

no se donde pegar esto xd

If FPSConfig = 1 Then '18 FPS
While (GetTickCount - lFrameTimer) \ 65 < FramesPerSecCounter
Sleep 5
Wend
ElseIf FPSConfig = 2 Then '32 FPS
While (GetTickCount - lFrameTimer) \ 33 < FramesPerSecCounter
Sleep 5
Wend
ElseIf FPSConfig = 3 Then '64 FPS
While (GetTickCount - lFrameTimer) \ 16 < FramesPerSecCounter
Sleep 5
Wend
End If
 

Azthem

Oráculo Lvl 4
Estaria bueno que se haga con FPS libres y con FPS normales, a traves de un "tick" en opciones.
En DX7 es lo mismo?
 

Ruffneck.~

Morrigan Ancient Crone of War..
Niquitoo dijo:
no me encuentra..

' ### I N T E R V A L O S ###

no se donde pegar esto xd

If FPSConfig = 1 Then '18 FPS
While (GetTickCount - lFrameTimer) \ 65 < FramesPerSecCounter
Sleep 5
Wend
ElseIf FPSConfig = 2 Then '32 FPS
While (GetTickCount - lFrameTimer) \ 33 < FramesPerSecCounter
Sleep 5
Wend
ElseIf FPSConfig = 3 Then '64 FPS
While (GetTickCount - lFrameTimer) \ 16 < FramesPerSecCounter
Sleep 5
Wend
End If
entonces.. pega esto:

Código:
 If FPSConfig = 1 Then '18 FPS
        While (GetTickCount - lFrameTimer) \ 65 < FramesPerSecCounter
            Sleep 5
        Wend
    ElseIf FPSConfig = 2 Then '32 FPS
        While (GetTickCount - lFrameTimer) \ 33 < FramesPerSecCounter
            Sleep 5
        Wend
    ElseIf FPSConfig = 3 Then '64 FPS
        While (GetTickCount - lFrameTimer) \ 16 < FramesPerSecCounter
            Sleep 5
        Wend
    End If
antes del Doevents en el Sub shownextframe y listo..
 
Estado
Cerrado para nuevas respuestas.
Arriba