Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: Maniarts en Mayo 26, 2011, 01:57:58 PM

Título: Uso de FPS [SOLUCIONADO]
Publicado por: Maniarts en Mayo 26, 2011, 01:57:58 PM
es positivo o negativo el uso del fps para las animaciones?
por ejemplo:

CASO A
[gml]maxfps=max(maxfps,fps)
if move=true{if fps<(maxfps/4){speed+=fps/30}}
if explosion=true{if fps<(maxfps/4){CREAR EFECTO DE EXPLOCION CON PARTICULAS al 100%(HQ) a la velocidad del FPS}else{CREAR EFECTO DE EXPLOCION CON PARTICULAS "caso emergente" al 20%(LQ) a la velocidad del FPS}}[/gml]
CASO B
[gml]maxfps=max(maxfps,fps)
if move=true{if fps<(maxfps/4){speed+=1}}
if explosion=true{if fps<(maxfps/4){CREAR EFECTO DE EXPLOCION CON PARTICULAS al 100%(HQ) a velocidad de 3 px}else{CREAR EFECTO DE EXPLOCION CON PARTICULAS "caso emergente" al 20%(LQ)}a velocidad de 3 px}[/gml]
de forma que las animaciones se detengan si el fsp es muy reducido. razon? para evitar que el juego se vea lento.

Y cual de estos casos seria una mejor opci?n de ser cierta la primera pregunta?

Soluci?n:
Leer todo el post
Título: Re: Uso de FPS
Publicado por: romon_28 en Mayo 26, 2011, 04:02:20 PM
A mi gusto eso puede causar problemas.. supongo que si haces eso es poque queres adaptas un juego a una pc rapida/lenta a una velocidad considerable para eso te aconsejo que le pongas una opcion en el menu del juego para que el usuario maneje a gusto los frames limites del juego.
Título: Re: Uso de FPS
Publicado por: Maniarts en Mayo 26, 2011, 04:05:55 PM
pero que tipo de problemas o ventajas es lo que quiero saber
Título: Re: Uso de FPS
Publicado por: Ge en Mayo 26, 2011, 05:12:16 PM
Citarpero que tipo de problemas o ventajas es lo que quiero saber
Inestabilidad, y problemas al ejecutar el juego. Se te puede salir, puede andar lento o entrecortado.
Supongo que en casos muy extremos el juego puede consumirte demasiada RAM al punto de reiniciar el sistema, igual no creo que suceda  XD

Citares positivo o negativo el uso del fps para las animaciones?
Los FPS siempre son positivos, por que en el caso de que fueran negativos se reproducir?an en sentido inverso, pero con el uso de animaciones puede usarse sin problemas.
Imaginate tu reproductor de m?sica, se reproduce a 1x ; si lo pones a 0.5x se reproduce a la mitad de la velocidad ; con 0x se detiene, entonces -1x seria en sentido inverso. Pasa lo mismo con las im?genes, por ejemplo de un GIF o de una pel?cula. Y si consideramos a un juego como una sucesi?n de 30 im?genes por segundo, esta teor?a podr?a ser aplicada. Igual nunca intente poner el room con un speed de -30 , as? que no se que puede suceder  :-[

Citarif move=true{if fps>20{speed+=fps/30}}
Respecto a este c?digo, no creo que cause problemas.

Suerte !  ;D
Título: Re: Uso de FPS
Publicado por: Maniarts en Mayo 26, 2011, 07:52:48 PM
CitarCitar
es positivo o negativo el uso del fps para las animaciones?
Los FPS siempre son positivos, por que en el caso de que fueran negativos se reproducir?an en sentido inverso, pero con el uso de animaciones puede usarse sin problemas.
Imaginate tu reproductor de m?sica, se reproduce a 1x ; si lo pones a 0.5x se reproduce a la mitad de la velocidad ; con 0x se detiene, entonces -1x seria en sentido inverso. Pasa lo mismo con las im?genes, por ejemplo de un GIF o de una pel?cula. Y si consideramos a un juego como una sucesi?n de 30 im?genes por segundo, esta teor?a podr?a ser aplicada. Igual nunca intente poner el room con un speed de -30 , as? que no se que puede suceder 
Me referia a su uso, no a su valor. Ya se que su valor es positivo.
Título: Re: Uso de FPS
Publicado por: kakashigna en Mayo 26, 2011, 08:23:36 PM
Seria mas facctible la opcion de elegir al jugador el limite de frecuencia(como se menciono arriba), ya que el estar cambiandolos constantemente puede causar efectos feos, por que los fps en determinados momentos bajan mucho pero solo por un indetectable momento.

Como se dice, seria bueno darle al jugador la opcion de elegir la frecuencia y adaptar el code para que funcione bien. Normalmente seria elegir 15-30-60 fps los estandares, pero creo que en algun juego vi la opcion "variable" que vendria siendo lo que dices tu.


Salu2
Título: Re: Uso de FPS
Publicado por: Maniarts en Mayo 27, 2011, 12:48:08 PM
creo que no me explico bien, la razon por la que usaria los FPS seria solo como llamada, como en este caso:

CASO A
[gml]if move=true{if fps<(fps/4){speed+=fps/30}}
if explosion=true{if fps<(fps/4){CREAR EFECTO DE EXPLOCION CON PARTICULAS al 100%(HQ) a la velocidad del FPS}else{CREAR EFECTO DE EXPLOCION CON PARTICULAS "caso emergente" al 20%(LQ) a la velocidad del FPS}}[/gml]
CASO B
[gml]if move=true{if fps<(fps/4){speed+=1}}
if explosion=true{if fps<(fps/4){CREAR EFECTO DE EXPLOCION CON PARTICULAS al 100%(HQ) a velocidad de 3 px}else{CREAR EFECTO DE EXPLOCION CON PARTICULAS "caso emergente" al 20%(LQ)}a velocidad de 3 px}[/gml]
de forma que las animaciones se detengan si el fsp es muy reducido. razon? para evitar que el juego se vea lento.

Y cual de estos casos seria una mejor opci?n?
Título: Re: Uso de FPS
Publicado por: Wadk en Mayo 28, 2011, 01:37:21 AM
Bueno, para empezar, esos if fps>(fps*4) nunca se va a cumplir.
Teniendo este codigo:
[gml]if (fps > fps * 4) {
    // ...
}[/gml]
Supongamos que los fps son 30:
[gml]if (30 > 30 * 4) {
    // ...
}[/gml]
eso se eval?a en...
[gml]if (30 > 120) {
    // ...
}[/gml]
Vamos, que ning?n n?mero positivo x es mayor que x * 4.
Título: Re: Uso de FPS
Publicado por: Maniarts en Mayo 28, 2011, 08:36:53 AM
Cita de: Wadk en Mayo 28, 2011, 01:37:21 AM
Bueno, para empezar, esos if fps>(fps*4) nunca se va a cumplir.
Teniendo este codigo:
[gml]if (fps > fps / 4) {
    // ...
}[/gml]
Supongamos que los fps son 30:
[gml]if (30 > 30 / 4) {
    // ...
}[/gml]
eso se eval?a en...
[gml]if (30 > 120) {
    // ...
}[/gml]
Vamos, que ning?n n?mero positivo x es mayor que x * 4.
ya lo corregi, es dividido , no multiplicado
Título: Re: Uso de FPS
Publicado por: Wadk en Mayo 29, 2011, 06:41:13 AM
Entonces es lo mismo, pero al rev?s.
Título: Re: Uso de FPS
Publicado por: Maniarts en Mayo 30, 2011, 06:56:05 AM
 ??? sigo sin saber si es bueno o malo usar al fps para realizar funciones y si es asi que codigos de los que presente es el mas optimo.
Título: Re: Uso de FPS
Publicado por: LigTopet en Mayo 30, 2011, 08:51:31 AM
?Bueno o malo??? no se diferencia de usar cualquier otra variable, ?Cu?l de los dos codigos es mas ?ptimo? ninguno, simplemente no tiene sentido, tal como dijo Wadk:
Nunca se ejecutaria:
[gml]if (30 > 120) {
    // ...
}[/gml]
Y ahora como lo divides, siempre se ejecutaria, sin importar que tantos FPS tengas:
[gml]if (30 > 7.5) {
    // ...
}[/gml]
x siempre sera mayor que x/4

Saludos
Título: Re: Uso de FPS
Publicado por: Maniarts en Mayo 30, 2011, 12:17:46 PM
EJEMPLO CORREGIDO
[gml]if (fps < fps / 4) {
    // ...
}[/gml]
Supongamos que los fps son 30:
[gml]if (30 < 30 / 4) {
    // ...
}[/gml]
eso se eval?a en...
[gml]if (30 < 7.5) {
    lowfps+=1 if lowfps=100{show_message('Tu PC se pasa lagueada y no sirve para jugar comprate otra XD') }
}[/gml]
Título: Re: Uso de FPS
Publicado por: Wadk en Mayo 30, 2011, 09:13:43 PM
La duda no puede ser solucionada si no est? planteada correctamente.
Y no, a?n no est? correjido el error. x nunca es menor que x/4.

Creo que lo que quer?s es:
[gml]if (fps < room_speed / 4) {
    // ...
}[/gml]
Título: Re: Uso de FPS
Publicado por: Maniarts en Junio 01, 2011, 07:23:08 AM
EJEMPLO CORREGIDO V2  XD
[gml]maxfps=max(room_speed,fps,maxfps)
if (fps < maxfps / 4) {
   // ...
}[/gml]
Supongamos que los fps son 30:
[gml]if (30 < 30 / 4) {
   // ...
}[/gml]
eso se eval?a en...
[gml]if (30 < 7.5) {
   lowfps+=1 if lowfps=100{show_message('Tu PC se pasa lagueada y no sirve para jugar comprate otra XD') }
}[/gml]
Título: Re: Uso de FPS
Publicado por: Wadk en Junio 01, 2011, 09:21:09 PM
En teor?a, esto es redundante:
[gml]maxfps=max(room_speed,fps,maxfps)[/gml]
fps nunca es mayor que room_speed.

Pero yo dir?a que lo mejor es no hacer ninguna comprobaci?n de ese tipo, y usar algo as?:
[gml]speed = 5 * (room_speed / fps);[/gml]
As? la velocidad real es constante independientemente de los fps.
Pero esto trae todo tipo de problemas, no te lo recomendar?a.
Título: Re: Uso de FPS
Publicado por: Maniarts en Junio 12, 2011, 08:30:32 AM
Cita de: Wadk en Junio 01, 2011, 09:21:09 PM
Pero yo dir?a que lo mejor es no hacer ninguna comprobaci?n de ese tipo, y usar algo as?:
[gml]speed = 5 * (room_speed / fps);[/gml]
As? la velocidad real es constante independientemente de los fps.
Pero esto trae todo tipo de problemas, no te lo recomendar?a.
yo pienso que esto esta mal, haria que entre mas lento el fps mas rapido la speed y yo intento lo contrario(omitir animaciones menos importantes y/o detener el juego)
Título: Re: Uso de FPS
Publicado por: Wadk en Junio 12, 2011, 11:05:31 PM
En ese caso yo te recomendar?a que lo dejes a elecci?n del jugador. Pod?s crear un men? de opciones gr?ficas donde el jugador pueda desactivar o activar lo que desee. Al mismo tiempo, si durante el juego detecta que los fps son bajos por mucho tiempo, puede mostrar un mensaje dici?ndole al jugador que puede desactivar algunos efectos para que funcione m?s r?pido.
Y el mensaje se tiene que poder desactivar. Puede ser una molestia muy grande para alg?n jugador que decida ignorarlo o simplemente no tenga una computadora lo suficientemente r?pida como para que el juego funcione bien a?n con todos los efectos desactivados.
Título: Re: Uso de FPS [SOLUCIONADO]
Publicado por: Maniarts en Junio 13, 2011, 04:41:14 AM
crea que con eso si me conformo y doy como solucionado, no doy karma porque son muchos los que me aportaron, gracias a todos lo que aportaron en este post para resolver mi duda!