OpenMandriva: Mageia (Mageia 9) 20/Agosto/2023 - Anuncio, Descargas.
Blogdrake recomienda descargar las imágenes de instalación (iso) vía torrent para evitar corrupción de datos, aprovechar mejor su ancho de banda y mejorar la difusión de las distribuciones.
Desarrollo de videojuegos en Linux-Diseño I
Como ya puse en mi anterior entrada he abierto un blog y dudaba a la hora de compaginarlo con este. Al final me voy a decantar por lo que me aconsejó drakedalfa. Asi que voy a replicar la entradas de mi otro blog en este (las que sean sobre Linux). Para contestar a los artículos lo podeís hacer en este, o en el otro blog. Donde más cómodo os sea.
Para los que no lo sepan estoy escribiendo una serie de artículos para ayudar a aquellos que quieran desarrollar videojuegos para Linux. Están hecho para que cualquiera los pueda leer, ya que parten desde cero. Para los que tengan más prisa y quieran saltarse toda la introducción y el diseño previo, os digo que sobre el cuarto artículo ya nos meteremos con código. No obstante creo que lo ideal es que os leaís todos. Aquí teneís el segundo artículo:
Seguimos con la segunda entrega de esta serie de artículos referidos a la programación de videojuegos en Linux. Hasta ahora no hemos visto nada de programación, y malas noticias para los impacientes, en esta tampoco vamos a ver ningúna linea de código ;)
Pero todo llegará, no os impacienteís, porque no se puede empezar la casa por el tejado. En el anterior artículo Desarrollo de videojuegos en Linux-Introducción hice un análisis un tanto superficial, pero que espero que haya aclarado algunas de las razones por las que en Linux no hay apoyo de la industría de los videojuegos, del estado de los juegos en Linux.
Desarrollar un videojuego es una de las tareas más complejas y que más campos puede abarcar a la hora de programar y diseñarlo. Tenemos que saber de gráficos, y no me refiero a programarlos, sino también a crear ese contenido, por lo que se necesitan grafistas, también en cualquier videojuego necesitamos efectos de sonido, por lo que podemos necesitar alguna herramienta de edición, no puede faltar música para ambientar nuestro videojuego, por lo que necesitaremos una banda sonora, y no hay que dejar de lado el estudio de la ambientación. Si vamos hacer un juego por ejemplo sobre samurais no nos va quedar más remedio que estudiar sus vestimentas, costumbres, contexto histórico, todo para dar una ambientación realista al jugador.
Todo esto encima es ajeno a nuestra tarea de programadores. Pero si vamos a nuestro campo, que es el de programar, nos vamos a ver envueltos, no en pocas dificultades. Lo más obvio es que debemos aprender a programar gráficos. Y luego vienen la física (colisiones, fricción, etc...), la inteligencia artíficial, el sonido, el juego en red, etc... No os extrañe por tanto la cantidad de tiempo y dinero que se necesita para desarrollar un videojuego.
Ahora que os he advertido de los problemas, espero que no os haya quitado las ganas, vienen las soluciones. Lo primero que hay que hacer antes de ponerse a programar es plantear un diseño previo de nuestro videojuego. Empezamos por los requisitos que debe cumplir nuestro programa. ¿A que me refiero con requisitos?, pues digamos aunque no es exactamente eso, que van a ser una serie de objetivos que vamos a intentar cumplir.
Esos objetivos que nos planteamos tienen que ser realistas, y en nuestro caso como aficionados, sin casi recursos, tenemos que tenerlos muy en cuenta. Lo primero es valorar nuestras aptitudes. Que conocimientos tenemos es importante antes de meternos en vereda. Si somos programadores pero no tenemos ni idea de dibujo, vamos a tener un problema a la hora de hacer los gráficos por lo que no podemos ser muy ambiciosos en este tema. Igual pasa con la música sino somos compositores. Encambio para los grafistas, que no tengan ni idea de programar, van a tener que empezar utilizando lenguajes muy sencillos y poco potentes, asi que lo va na tener que suplir con un buen contenido artístico y originalidad.
Otra cosa que tenemos que darnos cuenta es que no podemos empezar por un proyecto demasiado complejo ni que este encima de nuestras posibilidades. Hay que ponernos un tope de tiempo, es decir, debemos estimar la duración que nos va a llevar. Como seguramente nos toque aprender nuevos lenguajes y herramientas, tambien lo debemos tener en cuenta a la hora de cuantificar ese tiempo. Los proyectos largos y ambiciosos normalmente se estancan y no llegan a buen puerto. Los pequeños, aunque no sean gran cosa, sabemos que podremos terminarlos y nos servirán de experiencia para otros más dificiles.
Ahora que ya hemos hablado de la importancia de saber los recursos que contamos, la importancia de estimar y planificar el tiempo, vamos con cosas más concretas:
-Tipo de juego que vamos a crear: rpg, first person shot, plataformas, puzzle, estrategia, aventura gráfica, carreras, simulador, etc..
-Gráficos en 2D o en 3D: algunos tipos de videojuegos quedan mejor en 3D que en 2D. Por contra el 2D tiene más personalidad y con cuidado se pueden hacer muy buenos diseños.
-Requisitos hardware: hay que tener en cuenta que si queremos que funcionen en ordenadores poco potentes tendremos que sacrificar ciertos efectos gráficos y dejaremos sin aprovechar las capacidades y efectos de las tarjetas modernas. Por otra parte si pedimos muchos recursos para ejecutarlos reducimos la base de jugadores potenciales.
-Requisitos software: debemos desde el principio resolver el tema de en que sistemas operativos se va a poder ejecutar el videojuego porque si lo dejamos para el final podemos encontrarnos con el problema de que nos toca rehacer todo el código.
-Número de jugadores: es imporante desde el principio saber si vamos a enfocar el juego al multijugador en red, a pantalla partida, o si por contra lo vamos a hacer de un único jugador. También importante planificar los modos de juego.
Todas estás cuestiones caen dentro de lo que habiamos planteado como requisitos. Sin embargo todavía quedan más cosas que plantear, aunque eso lo dejamos para el siguiente artículo. Como avance os puedo decir que ya vamos a entrar en explicar las diferentes posibilidades que tenemos en Linux a la hora de programar, tanto lenguajes, como librerias y engines que nos van a facilitar la tarea.
Por otra parte me gustaría que comentarais los artículos, hagaís preguntas, en definitiva que os impliqueís para poder mejorarlos o aportar nuevas ideas. Aunque muchas veces no os voy a contestar directamente, si que lo tendré en cuenta para los siguientes entradas que haga.
Salu2
BOFH
# 22523 Sabia decisión
joven Jedi muy interesante articulo.
¿Quien es Jesucristo?