Temas de diverso calado personal

lunes, 26 de febrero de 2007

Videojuegos y sus 1001 lenguajes de programación

Aunque el titulo de este articulo suene a broma, que lo es :), no deja de ser algo bastante real y es que, hoy en dia la invasión de cientos de lenguajes de programación es obvia, todas las empresas se lanzan a hacer sus propios lenguajes de scripts extendiendo la funcionalidad de sus librerías.

TIOBE, en su web, hace un indice de popularidad basado en "on the world-wide availability of skilled engineers, courses and third party vendors" que no es poco. En esta web se ve como Ruby es la que despunta más y tiene la entrada más fuerte en los 20 lenguajes de programación más usados y conocidos!, otros lenguajes con Lenguaje D y ABAP.



Read more...




En esta otra web podemos ver, basado en otra forma para calcular el indice de popularidad, como C sigue partiendole la cara a otros lenguajes en proyectos nuevos y como C# aumenta sus espectativas.

Mi favorito seguirá siendo MOO, pero el que se programa moo, moooo, moooooo, mo.

Por otra parte existen los Lenguajes de Script que no dejan de salir por todos lados, es agobiante y absurdo. Python y Lua, este último basado en el binding del 1º, se crearon como necesidad para los programadores de extender la funcionalidad sin tener que compilar y linkar código. Y dices tu... que bien mola. Si mola, solo que hay 400 como estos 2, para diferentes cosas, como NSIS para hacer instaladores que tiene un manual más tocho que Lua, o hace poco QScript, para la librería QT, que bonito!! puedo hacer formularios en tiempo real... no te jod...

Yo estoy cansadisimo de lenguajes de programación que extienden la absurdez de los lenguajes a los que intentan cumplimentar y no me meto con Python o Lua, sino con los enanos que hay por todas partes.

Actualmente, y gracias a dios lenguajes como D o C# extienden su funcionalidad a script y linkan y compilan ddl/dll en tiempo de ejecución sin ningún problema. Y es que, esa es una buena feature de un lenguaje de programación. Sin duda C# hoy en dia es muy conocido y la gente va probando sus virtudes, pero yo personalmente que quedo con D que es una evolución brutal de C/C++ al estilo de las mismas, depurado y limpio, pulcro! moderno de bajo-medio nivel y con todas las features de un lenguaje de medio-alto nivel como C#. Brillante. Llevo siguiendolo desde hace ya casi 2 años y recientemente he podido comprobar IDEs decentes y como el proyecto ddt ( plugin de eclipse para programar en lenguaje D, como el de C/C++ ) o Poseidon ya son bastante funcionles.

En lenguaje D, se puede extender perfectamente de las librerias y dlls ya compiladas de C/C++ con 0 problemas, el propio lenguaje extiende su funcionalidad a una compilación externa y en tiempo de ejecución, hay ports de SWT ( DWT ) yo que se, cuando madure un poco, por mucho que quiera microsoft meternos con calzador C#, que está genial, el al código gestionado le van a dar por saco. Toma lenguaje de programación en condiciones gestado desde hace más años que C#. Podeis encontrar caracteristicas del lenguaje y el compilador aquí. Debería quitarle el polvo al libro que empecé sobre D...

Pues bien hoy en dia en el desarrollo de videojuegos se usan normalmente, Python o Lua con gran aceptación para desarrollar el flujo del juego, a veces hay motores de videojuegos que estan volcados al sistema de script. Una manera moderada de hacer esto y conservar la claridad mental al respecto es hacer el lenguaje de script una herramienta util para el desarrollo que tenga una parcela bien definida y sepamos para que va a servir. Si haces que el lenguaje de script pueda hacer cosas del tipo, game.getPlayer("prompt").setVelocity(10000), el desastre se huele al volcar toda la funcionalidad de OOP de C++ a un lenguaje de script. La gente dice, bueno se encriptan los ficheros, se protegen!! tal... eso no se puede dejar para una versión release y luego a parte del coste de implementación encima el coste para proteger esos datos como ya se hace hoy en dia con las texturas o los shaders!

Si se utilizase lenguajes de programación con su propia extensión o likado en tiempo de ejecución tendriamos toda la funcionalidad con 0 coste de implementación y adaptación del lenguaje de script y su posterior protección. Otro ejemplo deprotección es el motor de Battlefield y juegos que en definitiva se juegan por red, pero que la información de script está comprimida o protegida de alguna manera. Necesitan hacer comprobaciones para saber que todos los usuarios tienen los mismos datos. Y dios te libre si son un buen puñado de MB con lo que costaría leer y compararlo con el servidor.

Con un lenguaje como D tienes toda la flexibilidad del código sin preocuparte por exportar funciones y el coste de implementación el debugeo de Lua ( que es un follón ) etc... etc... luego solo tienes que ir compilando/grabando tus progresos y al final de todo tienes una ddl ( libreria dinamica ) limpia, pulcra, impoluta y perfecta! :). Al contrario que con C# que hace esto mismo, solo que las dll compiladas con .net necesitan ser protegidas, una porqueria ¬¬. Es más prueba a renombrar una dll de .Net a .exe y ejecutalo :D OOP total.



Siempre había creido que debajo de un puntero de ratón había electronica y tal. Y es que, los avances nano tecnologicos están a la orden del día, tanta obsesión por abaratar costes en gramos de metales en CPU's con los nuevos microprocesadores han llevado a algunas empresas a plantearse otros metodos aun más baratos.

Si ves que el rendimiento de tu ratón es malo al usarlo mucho, dejalo descansar!
:) heheheheehee...

Es ingenioso, nadie podría decir que no :P que cachondos estos japoneses.

miércoles, 21 de febrero de 2007

El nuevo juguete de Bill Gates

Señoras y señores, si yo creía que Bill Gates no era más imbécil después de decir "los tíos de seguridad hackean un Mac cada día, invito a que alguien haga esto en un windows 1 vez al mes", "OSX ha copiado todo de Windows Vista". Ni me lo pienso para a hacer una reflexión!

Pues bien ahora con su nuevo juguete Vista parte de jugar al Veo Veo que es la única gracia de este S.O. ( que broma más mala ), a este imbécil le da por decir en una conferencia de negocios en Ottawa ( Canadá ). Que este año es el 1º en que su hija usa Internet, no me extraña que nada tenga Internet en su casa o le robarán otra vez las claves de las tarjetas de crédito, por temas escolares y se divierte solo 45 min. al día por Internet y una hora los fines de semana, otra vez como lo de Mac, es que lo que dice se le cae por su propio peso, 1 hora el fin de semana que son 2 días y 45 min entre semana? su perro le creerá aun? su perro es el sustituto del puto clip de los webos del "finder" que hasta que no se sienta el perrito no te deja hacer la búsqueda!, y que se flipa con viva piñata su hija que es un juego de XBOX 360 muy educativo claro.

Aquí no está la miga del asunto :D, aun la caga más el hombre. Reconoce espiar a su hija las conversaciones del messenger y las paginas web visitadas, a parte de prohibirle la entrada en las webs relacionadas con Mac y Linux ( esto ultimo es coña ) con el filtro paternal. Su hija le dijo, yo quiero tener un Mac y liarme con el de los videos está wenisimoL!,
¿Voy a tener límites como este toda mi vida? y Bill! que Bill, dijo:
No, cuando te vayas de casa podrás imponerte tus propios límites ante la pantalla. A veeer... Bill hombre, querrás decir, que cuando se vaya se podrá comprar un Mac y disfrutar sin LIMITES, porque en windows Vista no tiraría un VIVA PIÑATA que no va ni el 10% de los juegos campeón, con tanta seguridad. Con esto me viene gráficamente a la cabeza una ventana multicolor con un condón, y detrás un muro de ladrillo ( si el firewall de windows :). A esto el se divertirá un montón cuando su hija acaba sus 45min. y el puede jugar a ver que ha estado haciendo su hija, no le permite más porque no le daría tiempo de leerle el historial!

Anda campeón que te vas a divertir con tu reality show domestico,
es la única y nueva feature real de windows vista, si ya no te conformabas con reventar la privacidad del planeta ahora quieres jodérsela hasta a tu propia Hija. Todo con tal de enlazar el lanzamiento de Vista con Marketing y cosas personales, dandole a los padres usuarios!!!! de windor, una razón más, que mola mucho! para seguir con windows. En fin...

USUARIOS!!

Tips on Developing an MMO Economy, Part I

Radu Privantu creador de Eternal Lands despues de muchos mails recibidos ha creado la primera parte de un articulo con consejos para desarrollar un MMO.

Tengo que decir que aunque es un proyecto graficamente modesto hace poco a tenido poco mas de 800 personas jugando al mismo tiempo. Y es que, siendo tan cutre graficamente algo debe haber desarrolado este equipo para que guste tanto.

Radu ira desvelando estos y otros consejos para un buen desarrollo de un MMO.

Para que hacer otro WOW o Conan si podemos hacer MMO's cutres que funcionen en maquinas *unix con una TNT2 o GForce MX. La gente solo necesita contenido de calidad en la mayoría de ocasiones y Radu lo tiene encuenta. Blizzard también ! en mayor o menor medida.

Grome, editor de terreno

Grome es un editor de terreno hecho por Quad Software.

Si veis los vídeos de demostración es un editor de terreno brutal, podéis probar la versión de evaluación y quedaros gratamente impresionados.

El algoritmo de terreno usado no se especifica y no leo por ningún lado en que formato se exporta, aunque dice que puede importar imagenes directamente de terragen y en diversos formatos. Lo que si, la organización por capas para la edición del terreno y las herramientas para texturizarlo son muy buenas. Generación procedural por perlin noise con funciones avanzadas ( solo en la versión más cara ), sistema de edición de terreno con diferentes brochas para erosión etc...

Lo que más me gusta es el puntero mundialmente conocido ya por todos, el puntero redondo :)