Virtual Motorsports - Carreras en VR: diario de desarrollo

Vancete

Buenas,

Soy usuario de cacharrería de Realidad Virtual (Oculus CV1, Quest, Quest 2) desde hace tiempo, y desarrollador desde hace aún más. Siempre he estado trasteando con cosas chorras, pero me he propuesto desarrollar algo chulo a modo de proyecto personal (en mis ratos libres, sin obligarme a acabarlo, je).

Así pues, la intención del hilo es ir contando avances, resolver dudas, escuchar sugerencias, y si la cosa acaba llegando a buen puerto, dejaros probarlo.

La idea de Virtual Motorsports (título provisional sacado de la manga) es hacer un juego de carreras simcade, con una conducción tipo Forza/GT, y que todo ello lo pueda mover unas Quest2 con su hardware de móvil.

Por aquí el fruto de las primeras 10h de desarrollo. Intentaré actualizar cuando vaya avanzando.

El motor elegido es Unity (10 años con él). Como no soy artista 3d, pues me tocará pasar por caja para los modelos. La idea es cuidar el aspecto visual también.

Vamos hablando,
Un saludo ;)

5
X-Crim

Pues para llevar solo 10 horas, mi puta vida!

muy top

1 2 respuestas
Vancete

#2 piensa que en realidad la parte visual son assets pagados, así que aunque dé el pego, tampoco hay mucho código detrás por ahora.

Por otra parte, ya que no empecé hoy ->

Avances del día de hoy:

Movimiento de la cabeza
Hasta ahora sólo estaba sincronizando la rotación del visor, lo cual generaba una sensación no del todo mala, pero incompleta, pues al mover la cabeza no la movíamos dentro del coche. Ahora este movimiento también se sincroniza, eso sí, tomamos como referencia el punto inicial y lo guardamos para restar la diferencia, pues si seteamos la cámara en la posición inicial del visor puede ocurrir que, estando de pie, nos salgamos del coche y lo veamos desde el techo en vez de en la cabina.

Retrovisores
Ciertamente es algo que le da un plus de 'realidad', aunque hay que ir con cuidado pues son 2 cámaras extra, una en la posición de cada retrovisor que acaban plasmando el resultado en una textura con la forma del retrovisor. Esto supone un gasto de recursos considerable, así que por el momento la resolución de los retrovisores es bastante pequeña (256x128), pero suficiente como para que resulten útiles y den el pego.

Un saludín ;)

ESL_Kaiser

Tienes mi atención, creo que en VR los juegos de conducción tienen mucho potencial en general. Te seguiré con gusto durante todo el proyecto, ahora estoy con el Forza 4 y me parece un juegazo

1
B

Llevo desde esta mañana dandole vueltas, porque lo veo como muy rigido, y no sabia el porqué. Pero creo que la suspension es excesivamente dura. El coche cuando gira no parece que tenga "fisicas", si no que es como un radiocontrol.

Creo que más que dura, es corta, si es así tambien explicaria porque los rebotes que te da el coche.

1 1 respuesta
Vancete

#5 he estado trabajando un poco en mejorar el comportamiento, pero tocará seguir puliendo

Nuevos avances por ahora

HUD
He estado trabajando un poco en lo que sería el HUD del usuario en carrera, tocará darle alguna vuelta más y pulir algunas cosas, pero estoy satisfecho por ahora. Es un jaleo porque aunque en el vídeo no se aprecie, es bastante crítico dónde lo situes, sobre todo la profundidad, ya que si no es muy molesto intentar enfocarlo con la vista (probad a intentar leer un texto a dos dedos de vuestros ojos). He añadido un indicador de RPM (odometro), velocímetro e indicador de acelerador/freno. Un poco inspirado en el de Assetto Competizione quizás. También un minimapa que tendré que retocar, pero es un inicio.

puntocom

Tiene buena pinta, ánimo. Una pregunta desde la ignorancia de VR, ¿el hecho de poder mover la cabeza a la vez que se está moviendo el entorno da muchos problemas de mareos?

1 respuesta
Vancete

#7 pues... a mi no me marea para nada, pero sí es cierto que depende de la persona suele ser habitual un periodo de adaptación pasando por las experiencias más light a las más heavy para no marearte

1
Vancete

He estado cambiando un poco el modelo de físicas del coche, y además he aplicado una pequeña curva al input de giro, de manera que los primeros grados avanzan más lentamente y progresivamente va a más, de manera que si giras de primera no pegues un volantazo. Estoy bastante satisfecho con el resultado, ahora el manejo es mucho más suave/agradable.

Los siguientes pasos: tener opción a girar no solo con el joystick, si no con la posición de los mandos de manera que simules que estás moviendo un volante con las manos. También empezar a investigar cómo interactuar con la UI con los mandos (lo típico de apuntar con el mando y hacer 'click').

Vancete

He aprovechado que hoy me tocaba quedarme en casa para avanzar un poco el tema. He conseguido pintar las manos (o cubos) en pantalla, me ha llevado un rato por el lío de posiciones absolutas, relativas y el offset respecto a la cámara (más el que le meto inicialmente para que la cámara esté dentro del coche). A partir de ahi, y aunque haya que pulirlo, he estado trasteando con los controles alternativos que tendrá el juego, simulando un volante con la posición de las manos.

Ahora a pelearme con la UI!

Vancete

Interacción con la UI

Me ha llevado bastante más rato del que pensaba, pero finalmente lo he logrado: ya se puede interactuar con la UI respetando todos los eventos de Unity. He hecho un menú de pausa muy sencillito para hacer la prueba y funciona estupendamente. He aprovechado también para pasar por caja por un modelo de unos guantes chulos y los he metido, tendré que trabajármelo un poco más para que se muestren los guantes en vez del mando en las partes de interacción con la UI.

Creo que por ahora, el siguiente paso será montar algo así como una IA y un sistema de vueltas, tiempos y demás para empezar a montar una carrera.

1
Alexis99199

Es increible lo que estas haciendo, pero que cojones es el circuito que has hecho? Has cogido la base del Red Bull Ring y le has metido un puente por encima y luego has vuelto a conectar el circuito y me estaba estallando la cabeza viendo el vídeo.

No lo digo a malas eh, es que no me lo esperaba.

1 respuesta
Pastelin

buen currazo sí señor, si necesitas un beta tester aquí estoy, hoy me han enviado mis quest 2 que me llegarán esta semana. principalmente las he comprado para jugar en pc y quería que fueran inalámbricas para llevarlas a casa de los colegas cuando hagamos una quedada o algo por el estilo. ENHORABUENA Y SEGUIRÉ ATENTO.

1 respuesta
Vancete

#12 no hombre, ya lo dije al principio, los modelos no son mios. La idea es, una vez tenga toda la base, hacer los circuitos yo con herramientas para ello, pero por ahora nada.

#13 gracias, por aquí seguiremos, si necesito gente para probar te doy un toque ;)

Vancete

Después de unos cuantos días sin contaros nada, aquí os traigo algo chulo.

He estado mirando cómo montar el sistema en general de carreras, con tont-IA y un sistema para manejar tu posición en la carrera. Genero una spline (lo que sería el trazado del circuito) a partir de unos cuantos puntos (ciento y la madre) y trackeo cómo de cerca está cada coche de el siguiente punto, así sabemos la posición en carrera. Esta spline también sirve para que la IA siga la trazada.

1
2 meses después
ESL_Kaiser

han pasado un par de meses, como vas?

1 respuesta
r2d2rigo

#16 ya te lo digo yo: abandonado, como todo lo que empieza.

2 respuestas
ESL_Kaiser

#17 buen feeling

Vancete

#17 ¿nos conocemos?

Precisamente he estado trabajando en un proyecto que sí ha visto la luz.

Éste, pues espero poder retormarlo en algún momento, pero cómo no da beneficio ninguno, pues ahi queda hasta entonces.

En cualquier caso, si lo abandono definitivamente colgaré el apk con lo que tenga.

1 mes después
Vancete

Buenas tardes caballeros,

Hace unos días que, con la vuelta de algo de tiempo de libre a mi vida, he retomado el tema.

El tema físicas del coche, y carreras en sí lo tengo bastante afinado ya, quizás debería avanzar en distintos modos de carrera y demás, pero por el momento estoy contento con el resultado.

Me he puesto a montar un poco el menú también:

Es posible que haya una demo a 'corto' plazo.

Un saludín ;)

2
Aidanciyo

Yo eliminaría totalmente el hud
La inmersión por encima de todo
Integraría un velocímetro con numeros grandes en el panel al estilo citroen c3

1 respuesta
Vancete

#21 no termino de ver un juego sin HUD, aunque quizás no sea mala idea dejar en ajustes la opción a togglearlo.

Aún así, en el vídeo no se puede apreciar, pero en 3D, al estar en distinta profundidad te aseguro que no molesta para nada.

KoRMuZ

Un dash grande y claro en el coche, y la posibilidad de ajustar la altura de la cabeza para que se pueda ver bien. Para la inmersión, mejor que un hud.

La posibilidad de ponerlo y quitarlo, pues ya lo redondea.

Aidanciyo

Imagínate super hot con hud.
Pues eso

1 respuesta
Vancete

#24 Hombre, no creo que tengan mucho que ver, super hot es una experiencia en sí misma y no te mueves del sitio con lo que tampoco necesitas mucha info.

Aquí tienes el trazado, posición, tiempos, creo que es bastante útil. Aún así, tomo nota para dar la opción a quitarlo desde ajustes.

Vancete

Buenas tardes señores,

Qué avances tenemos?

Pues de momento me he puesto a rehacer el sistema de minimap, ya que el anterior era complicado de manejar, ahora me es más fácil generar el minimapa y además es más preciso.

También he ido afinando un poco el comportamiento de las físicas y he añadido diferentes fricciones al asfalto y fuera del asfalto. He añadido el contador de vueltas y un timer también.

No quiero venirme arriba, pero es posible que en un par de semanas máximo cuelgue una APK para los que tengáis unas Quest 2.

Un saludo ;)

1
Vancete

Sigo avanzado sin prisa pero sin pausamente.

He estado trabajando un poco en pulir la 'competitividad' de la IA, para que la carrera al menos sea entretenida. También he metido sonidos básicos. He activado sombras en muy baja calidad y cercanía para que se aplique el efecto al pasar por debajo de un cartel, valla, etc...

Estoy bastante palote, y creo que pronto lo tendréis por Sidequest.

Un saludo ;)

Vancete

Buenas tardes caballeros,

La demo ha sido enviada a Sidequest, esperando aprobación. No da para muchísimo, pero creo que puede gustar y sirve para hacerse una idea del manejo, visuales, etcétera.

Especial dedicación a mi hombre @r2d2rigo que siempre confió en mi.

Os aviso en cuanto esté aprobada en Sidequest ;)

1
Vancete

Let's gooo

https://sidequestvr.com/app/3452/virtual-motorsports

2
Vancete

Demo #2 disponible:

  • Added a new car: Zeela
  • Added a new track: Meccano
  • Tweaked HSC8 to behave more like a supercar
  • Added restart option to pause menu
  • Changed grass friction to make it more slippery
  • Fixed HUD shadows
  • Added central mirror
  • AI cars LOD are now swapped with some more distance
  • Fixed race finish when the AI finishes before the player
  • Finish text fades to black finally to avoid camera freeze
  • Fixed shadow projectors clipping the floor
  • AI Cars are now on the minimap
  • Handbrake enabled with A button

Ya podéis pillarla en:
https://sidequestvr.com/app/3452/virtual-motorsports

Un saludo ;)

1