Noticias

Se ha publicado un nuevo servicio, el Portal de Juegos Online

Comunidad Game Maker

Bienvenid@ a la comunidad hispana de Game Maker. Nuestro objetivo es crear videojuegos y dar soporte en castellano de GM. Para mejorar nuestro servicio hemos implantado, como adicion al reglamento general, algunas normas especificas en los subforos más comunes. ¡No olvides informarte antes de participar!.

Autor Tema: Ahorrar recursos [3D] [SOLUCIONADO]  (Leído 708 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Jucarave

  • Ganador Proyecto Nexo
  • Adicto
  • *
  • Puntos: 438
  • Mensajes: 496
  • Agradecido: 33 veces
  • Sexo: Masculino
  • De regreso con un nuevo proyecto
    • Ver Perfil
    • Jucarave Games
en: Febrero 01, 2011, 08:42:16 pm
Hola a todos, veran tengo el siguiente problema, hace poco empece a desarrollar un juego 3D en mi casa... ahora ya tengo el sistema casi finalizado, pero tengo un problema.

Mi computador tiene 1.5gb de ram 1.8ghz de procesador y 256mb de video y el juego me corre full.

Pero en el de mi oficina que es 1.5gb de ram 2.8ghz de procesador y 64mb de video el juego corre un poco lento y eso que solo con un enemigo...

Todavia no he ensayado a poner mas enemigos en el de mi casa, pero es logico que en un cierto punto se va a poner lento...

En total el personaje basico tiene un alrededor de 600 poligonos y el arma (digamos el m4) tiene como 200.




Ya hice que dependiendo de la distancia al jugador, los modelos no se dibujen y eso funciona un poco... pero no es la solucion ya que van a haber varios enemigos en pantalla, lo que lo hara mas lento.

Las texturas son de baja calidad, cada parte (pie, mano, pecho) la textura mide 64*64

Queria ver que consejos me dan para que el juego no quede tan pesado... y en el peor de los casos reducir la cantidad de poligonos del personaje :'(




Saludos
« última modificación: Febrero 02, 2011, 04:30:29 am por Jucarave »

Checa mi canal de Youtube para tutoriales y charlas sobre desarrollo de videojuegos.

 


No Tienes Permisos Para Dar Puntos
point 0 Puntos

Este tema no recibió puntos.


Desconectado Ge

  • Asiduo
  • *
  • Puntos: 0
  • Mensajes: 199
  • Sexo: Masculino
    • Ver Perfil
Respuesta #1 en: Febrero 02, 2011, 02:03:01 am
La reduccion de poligono es una alternativa viable.
Pero, hay otra forma:
(un poco complicada)

Supongamos que en un juego, su velocidad maxima es de 600fps (Lo juegos comerciales al menos si). El problema, es que ninguna tarjeta de video y mucho menos, ninguna RAM puede alcanzar esa velocidad tan alta. La solucion, es aumentar la velocidad del juego respecto a los fps perdidos. Es complicado, pero si a 60fps, el personaje avanza con una velocidad de 10pixeles por fotograma,en el caso de que los fps se reduscan (por ejemplo a 30fps), va a ser necesario aumentar la velocidad del movimiento del personaje (a 20 pixeles por fotograma). De esta forma quien este jugando no va a notar en absoluto que lo fps decayeron, por que en jugador avanza a la misma velocidad.

Okey, lo importante:

Colocalo, por ejemplo en un script que se llame movfps
if(fps <= 90) and (fps != 0) and (argument0 != 0)
return argument0*(room_speed/fps)

Donde se controla al personaje
if(keyboard_check(vk_left) = true)
x += movfps(10)

Con eso funcionaria, al menos a mi me sirve. Donde dice fps<=90, reemplazalo por la velocidad del room. Recorda que si aumentas la velocidad del room, el valor 10 (del personaje) tiene que disminuir.

Okey nos vemos  XD !
hay otra forma usando current_time, anque no me la acuerdo  XD

 


Desconectado Jucarave

  • Ganador Proyecto Nexo
  • Adicto
  • *
  • Puntos: 438
  • Mensajes: 496
  • Agradecido: 33 veces
  • Sexo: Masculino
  • De regreso con un nuevo proyecto
    • Ver Perfil
    • Jucarave Games
Respuesta #2 en: Febrero 02, 2011, 04:30:14 am
mmm muy interesante ;) la verdad no se me habia ocurrido :-[ ... pero tienes razon, ahora tendre que implementarlo a atodos los scripts de animacion, velocidad, moviento :o

anyway gracias por tu ayuda ;D

Saludos

Checa mi canal de Youtube para tutoriales y charlas sobre desarrollo de videojuegos.