1.10 Lenguajes de Programación y Herramientas (VRML, X3D, Phyton, OpenGL)

Los sistemas software son aquellos que permiten el desarrollo de alguna parte de la experiencia de realidad virtual. Debido a la gran interdisciplinariedad que presentan las aplicaciones de realidad virtual, todo su desarrollo se hace a partir del trabajo de distintos expertos en ámbitos muy diversos. Desde diseñadores gráficos, hasta ingenieros en electrónica, pasando por modeladores, programadores, etc. Esto da lugar a una gran variedad de herramientas especializadas, muchas de las cuales no son exclusivas del ámbito de la realidad virtual. Así pues, no existe un sistema software que permita hacerlo todo, y por lo tanto a continuación se describen los tipos más utilizados.

Estas herramientas en general, no son exclusivas de la realidad virtual, aunque los lenguajes de programación tipo C/C++ dan total control sobre los algoritmos, gestión de entradas y salidas, comportamientos, etc., y por lo tanto son muy útiles. No obstante, existe lo que se conoce por librerías de programación que sí son específicas del ámbito de la realidad virtual. Estas librerías aportan una funcionalidad de más alto nivel a lenguajes como el C/C++ de forma que el equipo desarrollador no tiene que preocuparse de desarrollar todo desde el principio cada vez. En toda aplicación de realidad virtual hay ciertos elementos que siempre aparecen y por lo tanto no tiene sentido programarlos una y otra vez. Es aquí donde radica el interés de estas librerías. Evidentemente estas librerías son sólo recomendables para equipos de desarrollo expertos ya que no son herramientas amigables de usar, en el sentido que no disponen de un entorno gráfico de usuario que facilite la visualización de lo que se va desarrollando. Existen bastantes herramientas de este tipo de las cuales se destacan dos: el WorldToolKit (WTK) de la empresa Sense8 y el DIVE del Swedish Institute of Computer Science (SICS). El WTK fue la primera herramienta en aparecer de este tipo.
 
Existen otras herramientas de programación de experiencias de realidad virtual que no forman parte de otro lenguaje, sino que ellas mismas son el lenguaje completo. Por ejemplo el VRML (Virtual Reality Modelling Language). Este lenguaje se destaca por las siguientes cualidades:
  • Permite definir experiencias distribuibles a través de Internet

  • Ha sido definido por un consorcio democrático formado por universidades, empresas, individuos independientes, desarrolladores, usuarios, etc. Por lo tanto, su definición no obedece a unos intereses comerciales concretos.

  • Su filosofía multiplataforma lo hace utilizable en prácticamente cualquier tipo de sistema informático.

Este lenguaje hoy día está evolucionando hacia su nueva versión llamada X3D, la cual aún se está acabando de definir.