Foros - Stratos

Proyectos => Proyecto dx_lib32 => Mensaje iniciado por: sebasor en 14 de Noviembre de 2006, 04:31:12 AM

Título: Crear un mapa gigante
Publicado por: sebasor en 14 de Noviembre de 2006, 04:31:12 AM
Mi duda es la siguiente... me gustaria crear con esta libreria.. si es posible.. o saber como puedo hacer. Para crear un mapa gigante, es decir, aglo q cuando uno se mueva se muestre el resto del mapa.. como la mayoria de lso juegos.. q n osea solo el jeugo estatico...  pretendo hacer un engine del jeugo en isometrico y kiero q se vea similar a Age of Empires... peor tengo este problema... y me imagino que si cargo todos los TileSets del mapa .. me kedare sin memoria... Espero me colaboren gracias.
Título: Crear un mapa gigante
Publicado por: [EX3] en 14 de Noviembre de 2006, 10:02:59 PM
Lo primero decir que dx_lib32, a diferencia de otras librerias, no dispone de un sistema o motor de tiles propio, es tarea del programador programarse su propio sistema o motor de tiles.

Citarme imagino que si cargo todos los TileSets del mapa .. me kedare sin memoria...
No tiene por que, hoy dia los juegos cargan todos los graficos del nivel o escenario y los objetos que van a procesar en memoria dado que el hardware actual lo permite. Que me dijeras antaño que la memoria era muy escasa podria entenderlo (el legendario FlashBack, por poner un claro ejemplo, en sus versiones de consola SNES y MegaDrive por falta de memoria tenia que ir cargando parte de los graficos en una cache alojada en la memoria de audio alternando con la memoria grafica) pero hoy dia, y mas en un lenguaje como VB 6.0 que no es demasiado potente que digamos, seria mas costoso para el rendimiento del programa ir cargando y descargando los graficos en la memoria que cargarlos todos una vez, mas que nada por la carga al procesador y a la memoria de la tarjeta grafica, que es donde se almacenarian los graficos. Esta carga se suele realizar en las pantallas de carga que ves en los juegos donde la sobrecarga del procesador que tanto afecta al rendimento del programa no importa demasiado al contrario que en tiempo de juego donde seria injugable por los "parones" entre carga y descargas de graficos. En caso de ser cantidades muy ingentes de graficos algunos juegos, como Quake2, Half-Life o Halo por ejemplo, lo que hacen es dividir los niveles en varios subniveles o zonas que cargan segun el jugador accede a ellas a traves de los tipicos pasillos de entrada y salida entre zonas por ejemplo o portales como creo reocordar que hacia el Diablo2.

Sobre como procesar los tiles en pantalla, la idea no es dibujar todos los tiles del mapa siempre si no solo los que se verian en pantalla en ese momento segun la posicion de la camara que muestre al personaje o protagonista, no se si me explico. Lo unico a procesar, y tampoco tiene por que segun que casos, seria la logica del juego: IA, fisica, etc...

Quizas alguien del foro pueda explicarte de forma mas profunda como programar un motor de tiles orientado a isometrica ya que yo conozco la teoria pero jamas la he puesto en practica (una de las razones que mi libreria no tiene implementado tal cosa).

Salu2...