Unity · C# · VR · Oculus Rift
Proyecto Sonrisas VR
Demo funcional VR para público infantil con enfoque terapéutico, educativo y lúdico, basada en escenas inmersivas, interacción con objetos, objetivos guiados, NPCs y retos con lanzamiento de tomates.
Resumen técnico
Proyecto Sonrisas VR es una demo funcional de realidad virtual desarrollada en Unity con C#. Su objetivo es crear una experiencia inmersiva accesible, clara y amable para un público infantil, combinando interacción, exploración guiada, feedback audiovisual y pequeños retos dentro del entorno virtual.
El proyecto incluye varias escenas, interacción mediante controladores, UI en mundo 3D, audio espacial, partículas, animaciones, NPCs, objetivos, menú, pausa y enemigos tipo cartel que pueden ser derrotados lanzándoles tomates.
Enfoque de experiencia
La experiencia combina varias escenas, interacción mediante controladores, objetos manipulables, objetivos guiados, NPCs y enemigos representados como carteles que el jugador puede derrotar lanzándoles tomates.
Accesibilidad y confort
El proyecto se plantea para Oculus Rift con build objetivo para Windows. Al tratarse de VR, prioriza comodidad, escala, lectura clara del entorno, feedback comprensible y reducción de fricción en los controles.
Mi contribución
- Diseño e integración de una experiencia VR orientada a público infantil con enfoque terapéutico, educativo y lúdico.
- Preparación de escenas inmersivas, objetivos, elementos guiados, NPCs y flujo de experiencia.
- Implementación y documentación de interacción VR, objetos manipulables, ray interaction, UI en mundo 3D y feedback.
- Trabajo técnico con splines, raíles y generación de props para recorridos, transiciones y organización de escenas.
Sistemas implementados
- VR Rig y configuración para Oculus Rift.
- Movimiento continuo, giro suave y giro por pasos.
- Interacción con manos/controladores, agarre, soltado y activación de objetos.
- Ray interaction y UI en mundo 3D.
- Audio espacial, feedback visual, feedback sonoro, partículas y animaciones.
- NPCs, objetivos, escenas, menús y pausa.
- Carteles enemigos derrotables con lanzamiento de tomates.
- Splines, raíles, props y recorridos guiados.
Características principales
- Experiencia VR enfocada a público infantil.
- Enfoque terapéutico, educativo y lúdico.
- Soporte para Oculus Rift y build objetivo para Windows.
- VR Rig, movimiento continuo, giro suave y giro por pasos.
- Interacción con manos/controladores: agarrar, soltar y activar objetos.
- Ray interaction y UI integrada en mundo 3D.
- Audio espacial, feedback visual y sonoro, partículas y animaciones.
- NPCs, elementos guiados, sistema de objetivos, sistema de escenas, menú y pausa.
- Enemigos tipo cartel derrotables mediante lanzamiento de tomates.
- Consideraciones de accesibilidad, escala, confort y claridad de interacción.
Flujo técnico previsto
En esta sección se recogen las próximas actualizaciones previstas para el proyecto en base a la especificación técnica.
- 01VR RigConfigurar VR Rig, tracking de cabeza/controladores, locomoción continua y modos de giro.
- 02InteractionPermitir agarrar, soltar, activar objetos y usar ray interaction sobre elementos de la escena.
- 03Scene FlowGestionar escenas, objetivos, NPCs, elementos guiados, portales, splines y raíles.
- 04FeedbackAplicar feedback visual, sonoro, partículas, UI en mundo 3D y ajustes de confort.
Arquitectura
La lógica principal se organiza alrededor de selección de escenas, transiciones, raíles, splines, generación de props y sistemas de recorrido guiado aplicados a una experiencia VR.
- LevelSelector — selección de escenas, niveles o experiencias dentro del flujo VR.
- MovementToPortal — movimiento o transición hacia portales y puntos de cambio de escena.
- SplineEditor — edición y configuración de splines para recorridos y elementos guiados.
- PropsRandomGenerator — generación aleatoria de props o elementos de escena.
- Rail — definición de raíles, rutas o trayectorias dentro del entorno.
- RailPositionerManager — gestión de posiciones sobre raíles.
- RailSelectorManagement — selección y control de raíles.
- SplineAdvanced — lógica avanzada de splines.
- SplineFollower — seguimiento de trayectorias spline.
- SplineMesh — representación o generación de mallas basadas en spline.
Tecnologías
Visuales previstos
El repositorio deja preparados nombres previstos para logo, portada, banner y miniaturas centradas en escena VR, interacción con objetos, carteles/tomates y diseño de confort.
proyectosonrisas-logo.pngproyectosonrisas-cover.pngproyectosonrisas-banner.pngproyectosonrisas-thumbnail-01-vr-scene.pngproyectosonrisas-thumbnail-02-object-interaction.pngproyectosonrisas-thumbnail-03-tomato-targets.pngproyectosonrisas-thumbnail-04-comfort-design.png
Estado y próximos pasos
Actualmente no hay una release pública disponible; la build queda marcada como próxima publicación.
Ruta recomendada de revisión
Para revisar técnicamente el proyecto, conviene empezar por los sistemas de selección de escena, transición, splines, raíles y generación de elementos.
SplineEditor.csEdición y configuración de splines para recorridos y elementos guiados.PropsRandomGenerator.csGeneración aleatoria de props o elementos dentro de la experiencia.Rail.csDefinición de raíles o rutas de movimiento.RailPositionerManager.csGestión de posiciones sobre raíles.RailSelectorManagement.csSelección y control de raíles.SplineAdvanced.csLógica avanzada de splines.SplineFollower.csSeguimiento de trayectorias spline.SplineMesh.csGeneración o representación de mallas basadas en spline.
Aprendizajes
- Configuración de un entorno VR en Unity, incluyendo VR Rig, controladores, locomoción y adaptación de la interacción a realidad virtual.
- Interacción con objetos 3D, UI en mundo 3D, audio espacial y feedback visual/sonoro específico para experiencias inmersivas.
- Diseño de una experiencia orientada a público infantil teniendo en cuenta accesibilidad, confort, claridad de interacción y objetivos guiados.
- Uso de splines, raíles y generación de props aplicados a recorridos, movimiento guiado y organización de escenas VR.