Personaje 2d "pegado" a fondo 3D

Alverspin

¡Hola! ¿qué tal?

Junto con un amigo estamos en las primeras fases de diseño de un videojuego, de momento apenas son ideas en nuestras cabezas. Por lo tanto estoy explorando algunos temas y problemas que puedan surgir. De momento, como no tenemos siquiera un miserable concept, no puedo comentaros mucho del juego, lo que quizás facilitaría mi consulta, ya que puede ser un poco compleja de explicar, pero no quiero decir nada hasta que no nos pongamos a saco con ello, en ese momento estaré encantado de compartirlo con todos vosotros. Así que voy a intentar que entendáis mi consulta explicándola lo mejor que pueda, si tenéis alguna duda, comentádmela e intentaré resolverla.

Lo primero decir que no busco que me hagáis aquí un código o algo por el estilo, entiendo que no es el lugar, ese es un trabajo costoso, en todos los sentidos, y mi intención no es encontrar trabajadores gratuitos ¡jeje! tan solo necesito saber si va a ser posible hacerlo, que me digáis si lo veis viable, si acaso decidme qué debería conocer y por supuesto si sabéis de algún sitio donde pueda informarme, tutorial o foro, estaría muy agradecido. Ni yo ni mi amigo somos programadores, de momento no tenemos un programador, pero no quiero contar con alguien sin saber si le vamos a pedir que haga algo demasiado complicado y que no pueda hacer, quiero estar precavido. Es importante decir que mi idea inicial es que hagamos el juego en unity, aunque no es seguro. Lo he elegido por usabilidad, comunidad y conocimientos propios, aunque no es mi motor favorito, pero creo que le viene razonablemente bien a nuestro proyecto.

Bueno, ahí va mi duda: Una parte muy importante del apartado artístico a la vez que jugable del juego es que todos los personajes, incluyendo protagonista, npc´s y enemigos, sean en 2 dimensiones y se desplacen sobre un fondo 3D, pero no delante del fondo, sino "pegados" a este mismo fondo, adaptándose a sus curvas e imperfecciones, no es un fondo plano, sino, como digo, curvo, con ondulaciones y pliegues. Sería como sombras reflejadas sobre un fondo y se adaptan, cambian sobre él. Digamos que los personajes forman parte e interactúan con dicho fondo. No puedo usar sombras en sí, ya que además de que no me parece demasiado práctico, necesito que dichos personajes tengan textura.

Os pongo dos ejemplos que son los más aproximados que he encontrado de a lo que me vengo a referir.

Por un lado tenemos SIDEWAY NEW YORK, en el que jugamos con un grafitti, el personaje está "pegado" a ese fondo aunque no recuerdo ningún fondo que no fuera plano.

Por el otro tenemos CONTRAST, en este caso sí que tenemos fondos que no son estrictamente planos, por ejemplo una esquina, pero son sombras.

Bueno, espero que alguien pueda ayudarme, la verdad es que es un detalle que haría el juego realmente interesante y me parece elemental. Os estaré muy agradecido por cualquier ayuda que podáis ofrecerme ¡Muchas gracias de antemano! :)

Aidanciyo

Alomejor el personaje no es 2D sino que es 3d pero muy finito :psyduck:

1
Alverspin

¡Hola! Bueno, he estado haciendo una demostración para que se vea las diferencias de un sprite delante del fondo 3D y otro en el mismo fondo 3D, así creo que se entiende mejor. He usado la misma imagen de Stewie de padre de familia, perdonad las diferencias de color y resolución, se deben a que uno está hecho en un programa 3d, Sculptris, y el otro añadido a posteriori en Gimp.

PERSONAJE DELANTE DEL FONDO:

PERSONAJE EN EL FONDO:

Con esta comparativa creo que se entiende mejor lo que digo :)

crazyguy

Buenas,

Un programador lo vais a necesitar, pero si va a pegarse con el estilo artístico, por ser complicado, no va a poder avanzar en el gameplay. Salvo que realmente tenga una incidencia importante en el gameplay, intentaría simplificar estas exigencias, para avanzar cuanto antes al famoso/temido "Mínimo Producto Viable". Vamos, la demo jugable.

Si es por las sombras del fondo que se "superponen" sobre el personaje, igual la solución podría ser utilizar un personaje 2D, pero con un shader diferente, que en vez de hacer el alpha blending a pelo, haga una superposición diferente. Intentar imitar la superposición que se utiliza en Photoshop/GIMP.

Si el problema es hacer que se vaya adaptando a las irregularidades del fondo, me temo que estoy un poco más perdido. Quizás podrías intentar usar algún componente estilo "cloth" sobre el que proyectéis el sprite animado, y luego movéis el "cloth" sobre el fondo. No sé si funcionará, porque no tengo experiencia con ello, pero es lo único que me viene a la mente ahora mismo. Os podéis meter en un lío curioso, pero al menos habría por dónde empezar :p

1 respuesta
Alverspin

#4 Si, es importante ese elemento, no trascendental, ya que se podría hacer una versión muy simplificada completamente en 2D, pero no es la idea. De cara a una demo técnica se podría hacer así, pero para el juego definitivo no me parece convincente, ya que el propio relieve y tal supone una parte muy importante del gameplay. Sé que es complejo, de hecho me parece lo más complejo en tema de programación, ya que por lo demás es un juego relativamente sencillo de plataformas y aventuras.

Sé que necesitamos un programador, de momento tenemos alguno que nos asesora, pero hasta que no esté el proyecto en firme, con al menos una idea previa bien montada, no quiero meterme en buscarlo. Vamos a trabajar de inicio a presupuesto 0 y es un hándicap inportante. Por eso quiero tener todo bien planeado de antemano y en el momento de darle caña ir más o menos a tiro hecho.

Tu propuesta es curiosa, si no me equivoco te refieres a usar las físicas de tejidos ¿no? Es peculiar, pero interesante.

1 respuesta
crazyguy

#5 Sí, usar algo que simule física de cuerpos no rígidos creo que sería vuestra solución. Como si mirases desde arriba un trapo en el suelo, del que tiras arrastrándolo por encima de las irregularidades: la propia gravedad hará que se adapte al terreno (piensa en un trapo húmedo, con más peso)

Por mi experiencia, es conveniente considerar presupuesto 0 != coste 0. Siempre tendréis el coste de oportunidad, vuestras horas, posiblemente una oficina (¡recomendadísimo! es la mejor inversión), y alguna cosa más. Pero si lo podéis planificar, como comentas, mucho mejor. Tampoco os agobiéis por tenerlo todo atado, porque luego te pones a hacer pruebas del juego, y hay que tener manga ancha para cambiar cosas que no funcionen, aunque se les tenga aprecio, o determinación para decir "no funciona como pensábamos, hay que cortar y pasar a otra cosa antes de hundirnos con esto". Esto último es difícil de hacer, en mi opinión, pero tampoco tiene por qué darse el caso ;)

Saludos y ánimo!

Usuarios habituales

  • crazyguy
  • Alverspin
  • Aidanciyo