En este artículo brindo los detalles sobre como Instalar y Configurar el Quake 4 sobre una instalación de Fedora 12 de 64 bits.
Antes de comenzar, quiero advertirte que configurar este juego para que funcione correctamente (en el idioma deseado, con aceleración 3D y sonido) en Linux es una tarea bastante complicada que requiere paciencia y algo de experimentación. Definitivamente no estamos hablando de un proceso exacto, sino que (dependiendo de tu distribución) puede que sea necesario revisar otros tutoriales y experimentar con diversos settings.
Si bien todo esto suena complicado, sobre todo si comparamos con el proceso de instalación sobre MS Windows, puedo decirte que el sentimiento de satisfacción con uno mismo al hacer funcionar el juego sobre Linux es muy superior : )
Comencemos…
Ayer leía en Slashdot sobre la historia del Port de Death Rally, un juego desarrollado por una empresa ya difunta llamada Apogee y del cual los derechos son ahora de la Finlandesa Remedy Edit: Resulta que la Finlandesa Remedy desarrolló el Juego y Apogee fue solamente el Publisher.
Extraído del artículo:
“La plataforma original era DOS, Watcom C, y un extensor de DOS estilo DOS4GW. El extensor básicamente significaba que podías utilizar más de 640k de memoria, y no necesitarías código extraño para datos mayores a 64k.
El juego desplegaba en los modos gráficos VESA 640×480 y MCGA 320×200, todos con paletas de 8 bits; No había color real en ninguna parte. También habían algunos trucos de cambios de paleta cada cuadro con los cuales los emuladores tienen problemas.
El código fuente era mayoritariamente C puro, con un par de docenas de funciones assembly embebidas. Un par de subsistemas se encontraban faltantes, específicamente audio y red, los cuales tendrían que ser reemplazados completamente de todos modos, al igual que un archivo para el cual el código fuente se había perdido y solo un objeto compilado estaba disponible.”
La historia cuenta los detalles del port; En general tiene mucho que ver con los problemas que uno suele encontrarse cuando desea adaptar una aplicación DOS a Windows. Uno de los problemas más comunes es que en DOS, uno podía programar a muy bajo nivel, haciendo a un lado al Sistema Operativo y trabajando directamente sobre el Hardware.
Una solución que me llamó la atención consistió en como resolver el problema de que para dibujar en la pantalla, el programa escribía en memoria de video directamente (en la dirección 0xa000). La solución fue, en vez de rehacer todo este código, crear una array del tamaño apropiado, almacenar un puntero global (llamado g0xa000) y reemplazar las escrituras.
Pueden seguir leyendo los detalles del port en el artículo original y también pueden descargar el Death Rally gratis para Windows (XP, Vista, 7) desde la página de Remedy.
Este post es un offtopic, pero no pude resistirme. Acabo de caer en cuenta de que en Agosto, hace ni más ni menos que 15 años, se estrenaba la película Mortal Kombat: una adaptación a la pantalla grande del famoso video juego.
Mortal Kombat fue una de las primeras películas de éste género (basadas en video juegos), después de Super Mario Bros y Street Fighter, y tras el fracaso rotundo de estas últimas dos, nadie esperaba que Mortal Kombat tuviera mejor dicha.
Los productores de la película estaba al tanto de la situación y decidieron hacerla de todos modos, filmando en Tailandia, donde “no molestarían a nadie”, según se comentaba en un reportaje.
Personalmente disfruté mucho de la película. Mi madre nos llevó a verla al Cine Trocadero (que ya no existe) con mi hermano y también recuerdo haberla visto decenas de veces en VHS en casa de mis Abuelos.
Les dejo el video original del adelanto de la película, encontrado en YouTube:
El siguiente video presenta un resumen de los papers técnicos que están siendo presentados esta semana en la Conferencia SIGGRAPH 2010, en Los Angeles. Realmente muy impresionante.
Leo en opengl.org que el Grupo Khronos, anunció recientemente la disponibilidad de la especificación para OpenGL 4.1. Khronos realizó el anuncio durante la conferencia SIGGRAPH 2010 que se está llevando a cabo esta semana en Los Angeles.
Este es el sexto update a la especificación realizado en tan solo dos años. Entre las nuevas características anunciadas se encuentra soporte para la API de OpenGL ES 2.0 (ahora OpenGL es un superconjunto de OpenGL ES 2.0), soporte para trabajar con Shaders en formato binario y soporte para punto flotante de 64 bits para Vertex Shaders, entre otras.
De acuerdo con algunos sitios, las nuevas características estarían poniendo a OpenGL por delante de DirectX 11 en términos de funcionalidades, principalmente debido al hecho de poder desarrollar programas para dispositivos móviles y de escritorio utilizando la misma API, algo que de momento no se puede realizar con ninguna versión de DirectX.
Vía opengl.org
Enconté mediante Reddit un post en Stack Overflow que explica en términos sencillos en qué consiste la notación “Big-O”, utilizada para representar la complejidad de un algoritmo.
Traduzco solo una parte del post aquí, les recomiendo leer el post completo si es que te encuentras en duda o necesitas repasar en qué consiste esta notación.
La notación Big-O es una representación relativa de la complejidad de un algoritmo.
Hay algunas palabras importantes deliberadamente elejidas en esta oración:
- relativa: únicamente puedes comparar manzanas con manzanas. No puedes comparar un algoritmo que hace multiplicación aritmética con uno que ordena una lista de enteros. No obstante, [comparar] dos algoritmos que hacen operaciones aritmeticas (uno multiplicación y otro suma) te dirá algo significativo.
- representación: Big-O (en su forma más simple) reduce la comparación entre algoritmos a una única variable. Esa variable es elegida basandose en observaciones y supuestos. Por ejemplo, [los] algoritmos para ordenar son típicamente comparados en base a operaciones de comparación (comparar dos nodos para determinar su orden relativo). Esto asume que comparar es costoso. ¿Pero qué si comparar es barato e intercambiar costoso? Cambia la comparación; y
- complejidad: si me toma un segundo ordenar 10.000 elementos, ¿cuánto me llevará ordenar un millón? La complejidad, en esta instancia, es una medida relativa de algo más.
En estos días he aprendiendo a usar Blender (www.blender.org), un software increíblemente enorme que permite desde hacer sencillos modelos 3D hasta películas.
Blender es Software Libre (y además gratis), por lo cual es muy sencillo de instalar. En Fedora simplemente se puede utilizar yum.
Lo primero que van a notar en Blender es que la interfaz de usuario tiene muchísimos controles. En parte por esto, cuando comencé a utilizarlo, noté que la interacción con el programa era lenta. No lenta por el Software en sí, sino que me sentía que la forma en que la interfaz me permitía expresar mis acciones era lenta.
Resulta que, si bien Blender está diseñado para ser utilizado con un Mouse de 3 botones, si no se saca provecho de los atajos (Shortcuts) del teclado, uno pasa mucho tiempo teniendo que revisar montones de controles (y quizás moviéndose entre varias solapas).
Tras mirar algunos videos en YouTube y leer algunos artículos, armé la siguiente lista de atajos comunes. Tomarme un momento para aprenderlos (y al principio teniéndola presente al usar el programa) puede aumentar nuestra velocidad de interacción con la interfaz significativamente.
Veamos algunos atajos comunes.
Blender – Atajos Comunes para Control de Cámara:
Blender – Atajos Comunes para controlar Objetos:
Notas:
Una vez hechos sus modelos, Blender les permite exportarlos en formato VRML (.obj), el cual es muy sencillo de cargar y dibujar en su propio renderer : )
Les dejo un link a algunos tutoriales en blender.org: http://www.blender.org/education-help/tutorials/
Happy Blending!
¡Hemos llegado a los 300 Posts en Varrojo@Linux! ¡¡Gracias a todos nuestros lectores regulares por acompañarnos durante estos últimos 4 años!!
¡¡Gracias por acompañarnos durante todo este trayecto y sinceramente espero que lleve menos de dos años y medio llegar a los 500!!
¡Saludos!
V.-
Durante esta semana estuvimos orgullosamente presentes en el iOS Hackathon, parte del OpenDay organizado por Globant LLC. Globant es una de las mayores compañías de Outsourcing en el Cono Sur.
En el evento desarrollamos una aplicación para iPad que utiliza la tarjeta de video del dispositivo para calcular y desplegar los conjuntos de Julia-Fatou y Mandelbrot. La siguiente imagen muestra la Demo ejecutando sobre el Simulador de iPad:
La implementación fue realizada utilizando Fragment Shaders de OpenGL ES, con el fin de utilizar la GPU del iPad como un coprocesador en paralelo, capaz de evaluar los Fractales virtualmente al mismo tiempo para cada pixel visible en la pantalla del dispositivo.
Después de desarrollar la Demo, el expositor de Globant nos invitó a explicar el concepto y tecnologías utilizadas a la Audiencia utilizando un iPad real.
Les dejo unas fotos del evento debajo.