Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Reeditar un mapa

Iniciado por Kalim, 20 de Junio de 2008, 07:28:52 PM

« anterior - próximo »

Kalim

Bueno, se ve que me hiso un doble tema, tengo un mouse bastante usado, y el click aveces me anda doble. Bueno, entonces lo cambio para que no quede doble y hago otra pregunta

Yo cree un mapa para hacer la superficie 1, ahora, yo quiero editar esa superficie, y agregarle algo, se puede hacer??. La superficie fue hecha con

Map = m_gfx.MAP_Create(512, 384)
Target = m_gfx.TARGET_Create(Map)

[EX3]

Eso que tienes ahi es un mapa (textura) y no una superficie, digo mas que nada por la diferencia de funcionalidades que ofrece una y otra :)

Sobre lo de editar superficies, siendo superficies puedes trabajar con regiones de otras superficies "bliteando", osea, copiar bloques sin aplicar transformaciones de ningun tipo, salvo escalados, en otra superficie. Tambien puedes trabajar a nivel de pixel para leer y escribir aunque no lo recomiendo para ninguna operacion en tiempo real ya que los accesos a memoria de superficies a nivel de pixel y demas van muy lentos en la grafica. Esto te sirve por ejemplo para realizar operaciones en tiempos de carga o para usar mapas de durezas (obtienes la lista de pixeles al cargar la superficie y la usas para leer).

Para los mapas, el render target es el unico metodo mas o menos comodo y flexible que ofrece la libreria, aunque no tan optimo como yo hubiera querido (oviamente tampoco lo recomiendo para operaciones en tiempo real). En este conviertes la textura en el destino de las operaciones graficas que llames, igual que cuando dibujas sobre el buffer de pantalla. Este para mi es el mejor mecanismo para editar o crear una composicion estatica en tiempo de carga de un nivel por ejemplo.

Salu2...

IMPORTANTE: Me temo que la version actual de la pagina tiene un fallo garrafal en las funciones de lectura y escritura de pixeles en superficies (no lee ni escribe los valores correctos). A ver si me decido un dia por subir aunque sea una beta de la 2.20 para que al menos podais seguir trabajando sin los bugs actuales ¬¬'

P.D.: Con lo de no usar en operaciones de tiempo real me refiero a en mitad de escena en el bucle principal ya que te tirara los fps al suelo yendo a pedales tu programa. En los tiempos de carga es algo que no importa tanto ya que son tiempos de espera para el usuario (aunque tampoco se trata de tenerle media hora esperando :P)
José Miguel Sánchez Fernández
.NET Developer | Game Programmer | Unity Developer

Blog | Game Portfolio | LinkedIn | Twitter | Itch.io | Gamejolt






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.