Noticias

Importante: ¡Si quieres publicar tu juego no olvides leer este tema!

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: Forma más eficiente de dibujar  (Leído 522 veces)

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

Desconectado Alesxanderk

  • Adicto
  • *
  • Puntos: 324
  • Mensajes: 274
  • Agradecido: 1 veces
  • Sexo: Masculino
  • Señálame la meta y construiré el camino.
    • Ver Perfil
    • Game Dev Project
en: Enero 30, 2018, 06:17:05 pm
Hola comunidad, hace tiempo que no pasaba por aquí, he regresado un poco con la programación, y tengo una gran duda con gane maker.

Tengo un proyecto para pixelart, pero estoy buscando una forma de dibujar eficientemente lo que el usuario hace.

Me explico:

Al principio dibujaba sprites en el evet draw con un ciclo for (según yo no es muy eficiente).
Luego lo hice con draw_rectangle (pero al ser muchos draw, me parece que tampoco es eficiente).

Ahora uso tiles, pero al hacer un lienzo/dibujo de unos 300x300 mi PC (un tanto buena) no da para poder trabajar con tantos tiles en pantalla.
Cual es la mejor forma de dibujar en GMS 1 y que trucos podría usar para mejorar el rendimiento?
« última modificación: Enero 30, 2018, 08:14:47 pm por Alesxanderk »

 


No Tienes Permisos Para Dar Puntos
point 0 Puntos

Este tema no recibió puntos.


Desconectado NiuWeb

  • Flota de Justicia Particular.
  • Moderadores globales
  • Okupa
  • *
  • Puntos: 2827
  • Mensajes: 1.700
  • Agradecido: 142 veces
  • Sexo: Masculino
  • Thomas the dank engine.
    • Ver Perfil
Respuesta #1 en: Enero 30, 2018, 07:30:48 pm
Tal vez podrías utilizar un arreglo bidimensional para guardar los colores de la imagen, y dibujarlos como pixeles en una surface sólo cuando el dibujo se actualice, para no redibujar cuadrito a cuadrito en cada step.

alaberga regué el café.

BA:STFW&RTFM
 
Los siguientes usuarios dieron las gracias a este tema: Yuzo


Desconectado Alesxanderk

  • Adicto
  • *
  • Puntos: 324
  • Mensajes: 274
  • Agradecido: 1 veces
  • Sexo: Masculino
  • Señálame la meta y construiré el camino.
    • Ver Perfil
    • Game Dev Project
Respuesta #2 en: Enero 30, 2018, 08:07:01 pm
Ya lo tengo en un arreglo bideimensional, los tiles solo se crean al inicio y solo se actualizan al momento de suceder un cambio, no tengo nada en draw ni en step  :-[


El problema es cuando se crean muchos tiles al mismo tiempo (ej. 300x300)
« última modificación: Enero 30, 2018, 08:13:26 pm por Alesxanderk »

 
Los siguientes usuarios dieron las gracias a este tema: Yuzo


Desconectado NiuWeb

  • Flota de Justicia Particular.
  • Moderadores globales
  • Okupa
  • *
  • Puntos: 2827
  • Mensajes: 1.700
  • Agradecido: 142 veces
  • Sexo: Masculino
  • Thomas the dank engine.
    • Ver Perfil
Respuesta #3 en: Enero 30, 2018, 08:29:56 pm
No uses tiles, usa una surface.

alaberga regué el café.

BA:STFW&RTFM
 
Los siguientes usuarios dieron las gracias a este tema: Yuzo


Desconectado Alesxanderk

  • Adicto
  • *
  • Puntos: 324
  • Mensajes: 274
  • Agradecido: 1 veces
  • Sexo: Masculino
  • Señálame la meta y construiré el camino.
    • Ver Perfil
    • Game Dev Project
Respuesta #4 en: Enero 30, 2018, 08:59:54 pm
Mmmm... creo que entiendo como seria la forma más eficiente usando la surface. Gracias  :D
Espero subir el programa dentro de poco, para los curiosos o para que me ayuden con los bugs....