Re: [ProgJuegos] Generador de laberintos, pequeño aporte.
Hola Draco, mira no está tan mal tu castellano xD yo no hubiera
sospechado que no lo supieras si no lo escribías :D
Yo lo revisaré. Gracias por el aporte. :)
El 28/12/11, SANDRA VIERA <kuervoparda1977@gmail.com> escribió:
> gracias draco.
>
> El 28 de diciembre de 2011 02:55, Draco Metallium
> <draco.kun@gmail.com>escribió:
>
>> Dado que ya no tengo excusas para no programar, el dia de hoy me pase
>> haciendo solo eso.
>>
>> Hace unos dias, me encontre con este link
>> www.jamisbuck.org/presentations/rubyconf2011/ que habla sobre algoritmos
>> para crear laberintos perfectos.
>>
>> En resumen, un laberinto perfecto es uno donde para cada par de puntos
>> dentro de el, solo existe un camino que los conecte, y ademas este siempre
>> existe.
>>
>> Hice esto para poder ver si podia encontrar una manera eficiente de
>> almacenar el laberinto, ademas de agregarle elementos que nos son propios
>> de los laberintos.
>>
>> Hasta ahora lo que tengo es lo siguiente:
>> -Al final almacene cada celda del laberinto como un char, donde los dos
>> ultimos bits (los menos significativos) indican si este tiene una puerta
>> hacia la derecha y/o abajo. Para saber si puede acceder a la izquierda o
>> hacia arriba, hay que acceder a estas celdas y ver si pueden ir hacia
>> abajo
>> o derecha, segun corresponda.
>> -Lo extra que agrege fueron los salones, espacios grandes sin paredes. Ya
>> saben, habitaciones. Se los puede definir facilmente y los algoritmos de
>> creacion de laberintos deverian funcionar bien apesar de ellos, y darles
>> la
>> vuelta(bajo ciertas condiciones). Para poder identificar estas areas,
>> utilice un bit mas del char, asi que me quedan 5 para uso futuro.
>> -Por ahora solo hay una funcion para crear el laberinto, lo llame
>> "westnort" pero ahora que chequeo se llama arbol binario, asi que lo
>> corregire mas tarde.
>>
>> Esta todo programado en C, y tengo que chequar despues un par de cosas
>> para hacerlo mas consistente y rapido.
>>
>> laberinto.h es el header, laberinto.c es donde estan implementadas las
>> funciones. Todo esta autodocumentado, espero que sirva de algo.
>> main.c, es un principal rapido que hice, crea un laberinto y crea un
>> archivo de imagen "ppm"(un formato que brilla por su sencilles).
>>
>> Para aquellos que quieran compilarlo, pero no sepan como hacerlo (yo no
>> sabia como compilar archivos con headers hasta este año T_T), los comandos
>> con el gcc son:
>> gcc -c laberinto.c
>> gcc main.c laberinto.o -o test
>>
>> Espero que a alguien le sirva de algo!
>> Sugerencias o dudas seran felizmente recividas.
>>
>> PD: No adjunto el archivo compilado, por que no se que politicas tienen
>> ustedes, pero si quieren lo puedo subir tanto para windows como para
>> linux.
>>
>> PD2: Mi castellano es horrible, lo se, y creanme que lo lamento yo
>> tambien.
>>
>> --
>> El grupo en GoogleGroups: http://groups.google.com/group/ProgJuegos
>>
>> ** Usted recibió este mensaje porque es miembro del grupo "Programacion de
>> Juegos" de en Google Groups.
>
> --
> El grupo en GoogleGroups: http://groups.google.com/group/ProgJuegos
>
> ** Usted recibió este mensaje porque es miembro del grupo "Programacion de
> Juegos" de en Google Groups.
--
El grupo en GoogleGroups: http://groups.google.com/group/ProgJuegos
** Usted recibió este mensaje porque es miembro del grupo "Programacion de Juegos" de en Google Groups.
0 comentarios:
Publicar un comentario