Tras la noticia de ayer sobre la publicación del juego ‘el Ocaso de Sara’, entrevistamos hoy a Walfrido Abejón, desarrollador del juego. Walfrido nos comenta sus experiencias y habla sobre las herramientas que utiliza:
¿Que sistema operativo utilizas normalmente?
-Ubuntu y XP, a partes iguales.
¿Que herramientas y lenguajes de programación utilizas para el desarrollo del juego?
-Para el IDE uso Codeblocks en ambos sistemas operativos. Todo está hecho
en c para gcc en linux y MinGW en
windows. Las librerias, comunes en los dos son: openGL(3d y 2d),
SDL(ventana y enventos de teclado), openAL(sonido) y SMPEG(video).
Para los mapas utilizo Quark Army Knife y para el modelado de personajes
Milkshape.
Para las imágenes Gimp y Photoshop.
Tv paint para las secuencias de video animadas.
FL Studio para la música.
Valgrind para buscar errores de memoria.
Diversas herramientas como AudaCity o virtualdub para tareas varias.
¿Cual es el proceso exacto de creación del video juego? ¿Que es lo que se desarrolla primero?
-En teorÃa debes ahogarte entre documentos de diseño antes de avanzar, ver y estudiar todo antes de tocarlo, pero en mi caso no fue para nada asà y no me arrepiento. Si sigues la “teorÃa” las cosas suelen funcionar mejor pero en mi caso estoy convencido de que si hubiese estado 3 meses ahogado entre papeles habrÃa abandonado el proyecto. Si trabajas solo tienes que organizarte buscándote la manera de motivarte dÃa a dÃa y a largo plazo, en mi caso un tanto caótica.
¿Cuales son los retos más complicados que se te han presentado en el
desarrollo?
-Básicamente 2:
El sistema de sombras iba a ser mucho más pretencioso pero al final lo
desheche por el escesivo consumo de recursos y me quedé con el actual.
Lo memory Leaks, los que he quitado y los que me quedarán, …esos
pequeños cabroncetes…
¿Resulta más fácil la adaptación del juego para sistemas Windows o Unix?
-Realmente el problema viene cuando quieres hacerlo para los dos, con las
mismas liberÃas. Existen mejores opciones dentro de cada SO pero no querÃa
empantanar el proyecto de librerias y dependencias además de tener
toneladas de código especÃfico para cada máquina.
Si usas lo especÃfico de cada SO no dista mucho.
¿Cuales son tus expectativas de futuro para El Ocaso de Sara?
-Tengo unas ganas increibles de terminarlo, tanto por la satisfación de
haberlo hecho como por la libertad para trabajar en nuevos proyecto.
Desde el punto de vista informático, el juego sera freeware y tarde o
temprano incluiré las fuentes para descarga, aunque desgraciadamente no
creo que sirvan de mucha ayuda. Este es mi primer juego, todas las pruebas
las iba haciendo sobre el mismo código, no tenÃa tiempo para revisar y
optimizar asà que el código apesta y revuelve el estómago, pero bueno a lo
mejor alguién lo puede usar para compilarlo y jugar en otros SO.
¿Que consejos podrÃas ofrecer a alguien que se esté iniciando en el proceso
de desarrollo de un juego?¿RecomendarÃas las herramientas que utilizas tu?
-Definitivamente no recomendarÃa la mayorÃa de las herramientas que uso
yo, como he dicho antes este es mi primer juego y empezé hace casi 3 años
sin a penas documentarme sobre direfentes elecciones asà que éstas distan
mucho de ser la idoneas.
Los consejos que suelen funcionar a la mayorÃa son empezar por proyectos
sencillos, poco a poco embarcarte en más grandes, siempre documentándote
hasta la saciedad antes de hacer nada. Cuando son “grupos” de desarrollo
ésta deberÃa ser la opción a elegir. Cuando trabajas solo creo que lo más
importante es conocerte y no mentirte, saber como puedes exprimirte y
motivarte, que estás dispuesto a aceptar, y bueno saber que hay miles de
personas que quieren hacer esto y otras miles que quieren menos pero están
enchufadas asà que darle duro pese a las que te caigan es la máxima.
Un saludo a todos los lectores y dar las gracias a linuxjuegos.com por
esta entrevista y felicitarles por esta excelente página.
Tags: el ocaso de sara, Entrevistas


mmm
viendo la presentación en blanco y negro he tocado el ratón y:
./ods
func:main Iniciando ODS…
func:conf_load Cargando configuracion…
ALSA lib pcm_dmix.c:996:(snd_pcm_dmix_open) unable to open slave
open /dev/[sound/]dsp: Device or resource busy
*** glibc detected *** ./ods: munmap_chunk(): invalid pointer: 0×096178e8 ***
======= Backtrace: =========
/lib/libc.so.6[0xb7bc5a00]
./ods(_ZN6dgListI16dgSortArrayEntryE10dgListNodeD0Ev+0×1c)[0x80ee5da]
======= Memory map: ========
08048000-08172000 r-xp 00000000 03:01 33488 /home/gayo/ods080707/ods/ods
08172000-08174000 rw-p 0012a000 03:01 33488 /home/gayo/ods080707/ods/ods
08174000-09e21000 rw-p 08174000 00:00 0 [heap]
ade14000-aed6d000 rw-p ade14000 00:00 0
b22ce000-b22cf000 —p b22ce000 00:00 0
b22cf000-b2acf000 rwxp b22cf000 00:00 0
b3afd000-b3cfd000 rw-s e0816000 00:0d 10445 /dev/nvidia0
b3e00000-b4000000 rw-s e0615000 00:0d 10445 /dev/nvidia0
b4000000-b4200000 rw-s e0414000 00:0d 10445 /dev/nvidia0
b4200000-b4400000 rw-s e0213000 00:0d 10445 /dev/nvidia0
b4400000-b4453000 rw-p b4400000 00:00 0
b4453000-b4500000 —p b4453000 00:00 0
b4518000-b46f0000 rw-p b4518000 00:00 0
b47dd000-b4b65000 rw-p b47dd000 00:00 0
b4b6b000-b4e18000 rw-p b4b6b000 00:00 0
b4eb3000-b4fad000 rw-p b4eb3000 00:00 0
b4fe6000-b5066000 rw-s 01e51000 00:0d 10445 /dev/nvidia0
b5066000-b5067000 rw-p b5066000 00:00 0
b5067000-b50a7000 rw-s ef9ab000 00:0d 10445 /dev/nvidia0
b50a7000-b50c6000 rw-p b50a7000 00:00 0
b5674000-b5676000 rw-p b5674000 00:00 0
b5678000-b5992000 rw-p b5678000 00:00 0
b5992000-b5993000 —p b5992000 00:00 0
b5993000-b6193000 rwxp b5993000 00:00 0
b6193000-b61d4000 rw-p b6193000 00:00 0
b61d4000-b61d5000 rw-s 00000000 00:08 917507 /SYSV00000000 (deleted)
b61d5000-b61d6000 rw-s 00000000 00:08 884738 /SYSV00000000 (deleted)
b61d6000-b61d7000 rw-s 00000000 00:08 851969 /SYSV00000000 (deleted)
b6214000-b6216000 rw-p b6214000 00:00 0
b6216000-b6316000 rw-s e0112000 00:0d 10445 /dev/nvidia0
b6316000-b6317000 rw-s 03c53000 00:0d 10445 /dev/nvidia0
b6317000-b6417000 rw-s e0011000 00:0d 10445 /dev/nvidia0
b6417000-b647e000 rw-p b6417000 00:00 0
b647e000-b64e2000 rw-p 00000000 00:0d 1558 /dev/zero
b64e2000-b69e2000 rw-s e8000000 00:0d 10445 /dev/nvidia0
b69e2000-b6a0b000 rw-p b69e2000 00:00 0
b6a0b000-b6a2d000 rw-s 00000000 00:08 557056 /SYSV00000000 (deleted)
b6a2d000-b6a35000 r-xp 00000000 16:05 4754936 /lib/libnss_files-2.6.1.so
b6a35000-b6a36000 r–p 00007000 16:05 4754936 /lib/libnss_files-2.6.1.so
b6a36000-b6a37000 rw-p 00008000 16:05 4754936 /lib/libnss_files-2.6.1.so
b6a37000-b6a3f000 r-xp 00000000 16:05 4755107 /lib/libnss_nis-2.6.1.so
b6a3f000-b6a40000 r–p 00007000 16:05 4755107 /lib/libnss_nis-2.6.1.so
b6a40000-b6a41000 rw-p 00008000 16:05 4755107 /lib/libnss_nis-2.6.1.so
b6a41000-b6a54000 r-xp 00000000 16:05 4754955 /lib/libnsl-2.6.1.so
b6a54000-b6a55000 r–p 00012000 16:05 4754955 /lib/libnsl-2.6.1.so
b6a55000-b6a56000 rw-p 00013000 16:05 4754955 /lib/libnsl-2.6.1.so
b6a56000-b6a58000 rw-p b6a56000 00:00 0
b6a58000-b6a5f000 r-xp 00000000 16:05 4754965 /lib/librt-2.6.1.so
b6a5f000-b6a60000 r–p 00006000 16:05 4754965 /lib/librt-2.6.1.so
b6a60000-b6a61000 rw-p 00007000 16:05 4754965 /lib/librt-2.6.1.so
b6a61000-b6b0e000 r-xp 00000000 16:05 3395439 /usr/lib/libasound.so.2.0.0
b6b0e000-b6b10000 r–p 000ad000 16:05 3395439 /usr/lib/libasound.so.2.0.0
b6b10000-b6b13000 rw-p 000af000 16:05 3395439 /usr/lib/libasound.so.2.0.0
b6b13000-b6b1a000 r-xp 00000000 16:05 323511 /usr/lib/libXrender.so.1.3.0
b6b1a000-b6b1b000 rw-p 00006000 16:05 323511 /usr/lib/libXrender.so.1.3.0
b6b1b000-b6b30000 rw-p b6b1b000 00:00 0
b6b30000-b6b31000 rw-s ef9eb000 00:0d 10445 /dev/nvidia0
b6b31000-b6b35000 rw-s 07463000 00:0d 10445 /dev/nvidia0
b6b35000-b6b36000 rw-s ef9fd000 00:0d 10445 /dev/nvidia0
b6b36000-b6b37000 rw-s 07462000 00:0d 10445 /dev/nvidia0
b6b37000-b6b38000 rw-s 325ef000 00:0d 10445 /dev/nvidia0
b6b38000-b6b39000 rw-s f0820000 00:0d 10445 /dev/nvidia0
b6b39000-b6b3a000 rw-s f0820000 00:0d 10445 /dev/nvidia0
b6b3a000-b6b3b000 rw-s f0001000 00:0d 10445 /dev/nvidia0
b6b3b000-b6ba1000 rw-p b6b3b000 00:00 0
b6ba1000-b6ba5000 r-xp 00000000 16:05 245473 /usr/lib/libXdmcp.so.6.0.0
b6ba5000-b6ba6000 rw-p 00003000 16:05 245473 /usr/lib/libXdmcp.so.6.0.0
b6ba6000-b6ba7000 rw-p b6ba6000 00:00 0
b6ba7000-b6ba9000 r-xp 00000000 16:05 245228 /usr/lib/libXau.so.6.0.0
b6ba9000-b6baa000 rw-p 00001000 16:05 245228 /usr/lib/libXau.so.6.0.0
b6baa000-b6c42000 r-xp 00000000 16:05 3069566 /usr/lib/libslang.so.2.1.3
b6c42000-b6c45000 r–p 00097000 16:05 3069566 /usr/lib/libslang.so.2.1.3
b6c45000-b6c53000 rw-p 0009a000 16:05 3069566 /usr/lib/libslang.so.2.1.3
b6c53000-b6c89000 rw-p b6c53000 00:00 0
b6c89000-b6c9f000 r-xp 00000000 16:05 246361 /usr/lib/libaa.so.1.0.4
b6c9f000-b6ca1000 rw-p 00016000 16:05 246361 /usr/lib/libaa.so.1.0.4
b6ca1000-b6ca2000 rw-p b6ca1000 00:00 0
b6ca2000-b6cb5000 r-xp 00000000 16:05 4753773 /lib/libpthread-2.6.1.so
b6cb5000-b6cb6000 r–p 00013000 16:05 4753773 /lib/libpthread-2.6.1.so
b6cb6000-b6cb7000 rw-p 00014000 16:05 4753773 /lib/libpthread-2.6.1.so
b6cb7000-b6cb9000 rw-p b6cb7000 00:00 0
b6cb9000-b6cbb000 r-xp 00000000 16:05 4755108 /lib/libdl-2.6.1.so
b6cbb000-b6cbc000 r–p 00001000 16:05 4755108 /lib/libdl-2.6.1.so
b6cbc000-b6cbd000 rw-p 00002000 16:05 4755108 /lib/libdl-2.6.1.so
b6cbd000-b6cbe000 rw-p b6cbd000 00:00 0
b6cbe000-b6cbf000 r-xp 00000000 16:05 5313819 /usr/lib/opengl/nvidia/tls/libnvidia-tls.so.173.14.09
b6cbf000-b6cc0000 rw-p 00000000 16:05 5313819 /usr/lib/opengl/nvidia/tls/libnvidia-tls.so.173.14.09
b6cc0000-b786e000 r-xp 00000000 16:05 5313701 /usr/lib/opengl/nvidia/lib/libGLcore.so.173.14.09
b786e000-b79fb000 rwxp 00bad000 16:05 5313701 /usr/lib/opengl/nvidia/lib/libGLcore.so.173.14.09
b79fb000-b7a00000 rwxp b79fb000 00:00 0
b7a00000-b7a04000 r-xp 00000000 16:05 245338 /usr/lib/libXxf86vm.so.1.0.0
b7a04000-b7a05000 rw-p 00003000 16:05 245338 /usr/lib/libXxf86vm.so.1.0.0
b7a05000-b7aef000 r-xp 00000000 16:05 4339467 /usr/lib/libX11.so.6.2.0
b7aef000-b7af0000 r–p 000ea000 16:05 4339467 /usr/lib/libX11.so.6.2.0
b7af0000-b7af3000 rw-p 000eb000 16:05 4339467 /usr/lib/libX11.so.6.2.0
b7af3000-b7b00000 r-xp 00000000 16:05 245840 /usr/lib/libXext.so.6.4.0
b7b00000-b7b01000 rw-p 0000c000 16:05 245840 /usr/lib/libXext.so.6.4.0
b7b01000-b7b02000 rw-p b7b01000 00:00 0
b7b02000-b7b56000 r-xp 00000000 16:05 2293998 /usr/lib/libSDL-1.2.so.0.11.0
b7b56000-b7b57000 r–p 00053000 16:05 2293998 /usr/lib/libSDL-1.2.so.0.11.0
b7b57000-b7b58000 rw-p 00054000 16:05 2293998 /usr/lib/libSDL-1.2.so.0.11.0
b7b58000-b7b60000 rw-p b7b58000 00:00 0
b7b60000-b7c8a000 r-xp 00000000 16:05 4754956 /lib/libc-2.6.1.so
b7c8a000-b7c8c000 r–p 0012a000 16:05 4754956 /lib/libc-2.6.1.so
b7c8c000-b7c8d000 rw-p 0012c000 16:05 4754956 /lib/libc-2.6.1.so
b7c8d000-b7c90000 rw-p b7c8d000 00:00 0
b7c90000-b7c9a000 r-xp 00000000 16:05 2893053 /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/libgcc_s.so.1
b7c9a000-b7c9b000 r–p 00009000 16:05 2893053 /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/libgcc_s.so.1
b7c9b000-b7c9c000 rw-p 0000a000 16:05 2893053 /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/libgcc_s.so.1
b7c9c000-b7cc0000 r-xp 00000000 16:05 4755106 /lib/libm-2.6.1.so
b7cc0000-b7cc1000 r–p 00023000 16:05 4755106 /lib/libm-2.6.1.so
b7cc1000-b7cc2000 rw-p 00024000 16:05 4755106 /lib/libm-2.6.1.so
b7cc2000-b7da0000 r-xp 00000000 16:05 2893115 /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/libstdc++.so.6.0.8
b7da0000-b7da4000 r–p 000dd000 16:05 2893115 /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/libstdc++.so.6.0.8
b7da4000-b7da5000 rw-p 000e1000 16:05 2893115 /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/libstdc++.so.6.0.8
b7da5000-b7dab000 rw-p b7da5000 00:00 0
b7dab000-b7de5000 r-xp 00000000 16:05 304803 /usr/lib/libsmpeg-0.4.so.0.1.3
b7de5000-b7de7000 rw-p 0003a000 16:05 304803 /usr/lib/libsmpeg-0.4.so.0.1.3
b7de7000-b7e04000 rw-p b7de7000 00:00 0
b7e04000-b7e0e000 r-xp 00000000 16:05 461678 /usr/lib/libSDL_image-1.2.so.0.1.5
b7e0e000-b7e0f000 r–p 00009000 16:05 461678 /usr/lib/libSDL_image-1.2.so.0.1.5
b7e0f000-b7e10000 rw-p 0000a000 16:05 461678 /usr/lib/libSDL_image-1.2.so.0.1.5
b7e10000-b7e20000 rw-p b7e10000 00:00 0
b7e20000-b7e56000 r-xp 00000000 16:05 784776 /usr/lib/libopenal.so.0.0.0
b7e56000-b7e57000 rw-p 00035000 16:05 784776 /usr/lib/libopenal.so.0.0.0
b7e57000-b7e5b000 rw-p b7e57000 00:00 0
b7e5b000-b7e5f000 r-xp 00000000 16:05 1677115 /usr/lib/libalut.so.0.1.0
b7e5f000-b7e60000 r–p 00003000 16:05 1677115 /usr/lib/libalut.so.0.1.0
b7e60000-b7e63000 rw-p 00004000 16:05 1677115 /usr/lib/libalut.so.0.1.0
b7e63000-b7ee2000 r-xp 00000000 16:05 1723643 /usr/lib/libGLU.so.1.3.060502
b7ee2000-b7ee3000 r–p 0007f000 16:05 1723643 /usr/lib/libGLU.so.1.3.060502
b7ee3000-b7ee4000 rw-p 00080000 16:05 1723643 /usr/lib/libGLU.so.1.3.060502
b7ee4000-b7f6d000 r-xp 00000000 16:05 5307176 /usr/lib/opengl/nvidia/lib/libGL.so.173.14.09
b7f6d000-b7f88000 rwxp 00089000 16:05 5307176 /usr/lib/opengl/nvidia/lib/libGL.so.173.14.09
b7f88000-b7f89000 rwxp b7f88000 00:00 0
b7f89000-b7fb7000 r-xp 00000000 16:05 284541 /usr/lib/libglut.so.3.8.0
b7fb7000-b7fbc000 rw-p 0002e000 16:05 284541 /usr/lib/libglut.so.3.8.0
b7fbc000-b7fbd000 rw-p b7fbc000 00:00 0
b7fbd000-b7fc3000 r-xp 00000000 16:05 4755140 /lib/libnss_compat-2.6.1.so
b7fc3000-b7fc4000 r–p 00005000 16:05 4755140 /lib/libnss_compat-2.6.1.so
b7fc4000-b7fc5000 rw-p 00006000 16:05 4755140 /lib/libnss_compat-2.6.1.so
b7fc5000-b7fc9000 r-xp 00000000 16:05 323952 /usr/lib/libXfixes.so.3.1.0
b7fc9000-b7fca000 rw-p 00003000 16:05 323952 /usr/lib/libXfixes.so.3.1.0
b7fca000-b7fd2000 r-xp 00000000 16:05 1124646 /usr/lib/libXcursor.so.1.0.2
b7fd2000-b7fd3000 r–p 00007000 16:05 1124646 /usr/lib/libXcursor.so.1.0.2
b7fd3000-b7fd4000 rw-p 00008000 16:05 1124646 /usr/lib/libXcursor.so.1.0.2
b7fd4000-b7fd9000 r-xp 00000000 16:05 330082 /usr/lib/libXrandr.so.2.1.0
b7fd9000-b7fda000 rw-p 00004000 16:05 330082 /usr/lib/libXrandr.so.2.1.0
b7fda000-b7fdb000 rw-p b7fda000 00:00 0
b7fdb000-b7fdd000 rwxp 00000000 00:0d 1558 /dev/zero
b7fdd000-b7fde000 r-xp b7fdd000 00:00 0 [vdso]
b7fde000-b7ff8000 r-xp 00000000 16:05 4755128 /lib/ld-2.6.1.so
b7ff8000-b7ff9000 r–p 00019000 16:05 4755128 /lib/ld-2.6.1.so
b7ff9000-b7ffa000 rw-p 0001a000 16:05 4755128 /lib/ld-2.6.1.so
bfc6a000-bfca5000 rwxp bffc4000 00:00 0 [stack]
bfca5000-bfca6000 rw-p bffff000 00:00 0
Abortado
me he quedado con las ganas..jajaja
[...] http://www.linuxjuegos.com/2008/07/12/entrevista-a-walfrido-abejon-garcia-creador-de-el-ocaso-de-sar... [...]
Felicitaciones por tan buen trabajo, compañero de Stratos!!
Lo estoy descargando, a ver qué tal.
Si publicaras el código (me dirijo al creador jeje) estoy seguro que más de uno querrÃa ayudarte y se podrÃa ordenar un poco. No obstante, es un gran proyecto…
Salu2
Ya lo he descargado.
Lo he ido a probar, pero tengo varios problemas. Si lo ejecuto a pantalla completa me da errores en la visualizazción (sale desordenado). Si lo ejecuto en modo ventana se ve correctamente, llega hasta donde cuenta la historia (cuando la meten en la carcel y tal) y justo cuando va a aparecer el juego en si, se sale.
Cuando lo ejecuto en consola me dique que es un fallo de segmentación. Me da que son los drivers de ATI, pero bueno, ya probaré más a fondo luego.
Ya lo baje y funciona bien emulado en el wine bajo ubuntu 8, ojala dejaras ver las fuentes, que formato tan raro usas para los modelos, vas muy bien pero no te caeria mal algo de ayuda y me resulta un poco molesto el efecto del lente de la camara esta muy pronunciado….
muy buena la entrevista, mucha fuerza con el proyecto, y como aca dicen si haces el juego de codigo abierto mucha gente va ha estar dispuesta a darte una mano, aunque nose si vas a querer que alguien venga y meta mano a tu proyecto despues de 3 años,
jaja
felicidades, gran articulo xD
[...] interesante, desarrollo de videojuegos en chile! LinuxJuegos.com – Blog de juegos para Linux» Blog Archive » Entrevista a Walfrido Abejón GarcÃ*a, c… Ese es una estrevista al desarrolador de un juego, que demuestra que no se necesitan tantas [...]
Felicitaciones por la pregunta. Pero me quede con una gran duda cuando le preguntastes si recomendaria las herramientas que ha usado y dijo que no. Entonces en este momento cuales recomendaria ???
Me he quedado con esa duda.
eres un monstruo. Tan bueno como la madre que te pario.
Mama.