Noticias

¡RECUERDA QUE SI ERES UN NUEVO USUARIO, DEBES PRESENTARTE PARA PODER PUBLICAR MENSAJES! | TENEMOS CANAL OFICIAL DE TELEGRAM: t.me/unity3dspain

Problema de temblor de objetos y textura

Iniciado por ZOOSTAGE, Julio 25, 2017, 07:47:21 PM

Tema anterior - Siguiente tema
Chicos tomo la comunidad como ultimo recurso no se que ocurre de repente ahora todas mis sombras y objetos que estén dentro de un padre que se mueve tiemblan, adjunto un video. a ver si alguien sabe la solucion le a pasado o puede aportar algo.
 
 
 
muchas gracias!
 
//www.unityspain.com/applications/core/interface/file/attachment.php?id=10658">2017-07-25 at 19-46-56.mp4

Chicos tomo la comunidad como ultimo recurso no se que ocurre de repente ahora todas mis sombras y objetos que estén dentro de un padre que se mueve tiemblan, adjunto un video. a ver si alguien sabe la solucion le a pasado o puede aportar algo.
 
 
 
muchas gracias!
 
Detectado el problema pero no la solución cuando la X y la Z son muy grandes comienzan los temblores

El vídeo que has adjuntado no se ve o yo no lo veo, pero con lo que explicas tengo de sobras para decirte que pasa.
 
En los floats cada vez que se añade un dígito por delante de la coma se pierde otro por detrás de esta. De manera que cuanto más grande es el número, menor precisión tiene, ya que tiene menos dígitos en los decimales.
 
Por ejemplo, algo a 2 unidades del centro del mundo podría ser este número: 2,129845.

Pero si la distancia desde el centro del mundo aumenta el float quedaría así: 21298,45
 
Como ves pierde una gran precisión, ya que a partir de 10000 unidades solo podría medir en centímetros. Si a parte los objetos son hijos de otros que también están lejos los errores de precisión se suman y hace cosas aún más raras.
 
La solución es evitar por todos los medios alejarte del centro del mundo. En juegos de mundo abierto lo que se suele hacer es mover el mundo entero para que el jugador siempre este en el centro, pero es una solución complicada. Lo más fácil es que evites que los objetos pasen de una determinada distancia, hasta 10000 a mi me va bien, pero utilizo escalas bastante grandes. Por cierto, por si se te ocurre, reducir la escala no es una solución, ya que al ser los objetos más pequeños necesitarían más precisión, con lo cual el problema sería exactamente el mismo.
 
Espero haberte ayudado.

efectivamente es ese el problema lo descubrir antes y cuando e vuelto a publicar el problema y lo hiciste tu efectivamente es como dices. Una gran Mier.... de purpurina.
 
había pensado el mover el mundo el problema se complica cuando es multiplayer y sincronizas a los jugadores por su transform.
 
 
 
alguna idea?
 
Gracias!

Julio 26, 2017, 09:10:50 AM #4 Ultima modificación: Julio 26, 2017, 09:11:32 AM por TheBullet
Cita de: ZOOSTAGE date=1501021824efectivamente es ese el problema lo descubrir antes y cuando e vuelto a publicar el problema y lo hiciste tu efectivamente es como dices. Una gran Mier.... de purpurina.
   
   
      había pensado el mover el mundo el problema se complica cuando es multiplayer y sincronizas a los jugadores por su transform.
   
   
       
   
   
      alguna idea?
   
   
      Gracias!
   


Nunca he probado de hacer un multiplayer, así que no te sabría decir porque no se como funciona... Pero entiendo que puedes mover el mundo en cada usuario dependiendo de su posición y después calcular la posición en la que estaría cada jugador en cada maquina a partir de la posición del mundo de cada uno no?
 
En estos casos hay que ser "imaginativo". Yo hace tiempo hice una intro con en la que se mostraba una galaxia con miles de estrellas, la cámara se acercaba a estrellas mostrando planetas y naves alrededor de estos. La escala de la galaxia es brutal en comparación con las naves (usando el método convencional la precisión era tan mala que incluso saltaban fuera de plano...), así que no me quedo otra que dejar la cámara en el centro del mundo y mover la galaxia, además los planetas y las naves no podían ser hijos de la galaxia ya que estaban muy lejos de su centro y perdían precisión aunque estuvieran en el centro del mundo. Tampoco pude usar una animación porque su grado de "smooth" no es suficiente, al usar animación los planetas aparecían de golpe en la imagen, así que lo anime todo por código con lerps con una curva muy muy suave al final. 
 
Te pongo el vídeo de la intro para que veas que puede ir bien en un mundo enorme, para que te hagas una idea de la escala el clipping plane de la camara que se encarga de grabar la galaxia es de 250.000 - 10.000.000.000. El vídeo está como oculto porque es muy antiguo y los modelos, historia y demás ha cambiado y no será la intro defintiva ya que no me acaba de convencer, por lo que... prohibido compartir 
 
" width="560">
 
 

Si es una solución el crear una estructura doble y transformar eso en las cordenadas e ir moviendo el mundo y su contenido.

@TheBullet muy interesante, podrias poner como hiciste el efecto ese de las estrellas del trailer , es un shader, particulas o son gameobjects?

Julio 26, 2017, 08:33:06 PM #7 Ultima modificación: Julio 26, 2017, 08:33:21 PM por TheBullet
Cita de: lightbug date=1501086192@TheBullet muy interesante, podrias poner como hiciste el efecto ese de las estrellas del trailer , es un shader, particulas o son gameobjects?
   


Son partículas. Pero no lo he hecho yo, es un asset de pago: https://www.assetstore.unity3d.com/en/#!/content/29601
 
Esta bien, pero no lo recomiendo. Tiene cosas buenas como que puede manejar decenas de miles de partículas y es facil configurar las galaxias, pero tiene también muchos inconvenientes... relentiza bastante el editor, los prefabs con sistema de particulas pesan bastante, el desarrollador resuelve dudas hasta cierto punto y lo peor, el código está en dll, por lo que no puedes ver como se ha hecho ni trastear.

Parece anclado por las físicas del barco... Si son objetos separados, no deberías darle al barril su propia Rigid ni collider.  Sólo hazlo descendiente del barco.

Julio 29, 2017, 07:29:13 AM #9 Ultima modificación: Julio 29, 2017, 07:30:29 AM por enelmenu
 Se pueden hacer grandes cosas con esos patrones, de echo hacer galaxias no es tan complicado, simplemente son fractales, pura matematica,y hoy en dia vienen programitas para hacer modelos fractales en 3D, y los podes importar, no es gran cosa, con la tecnologia de hoy la mente se duerme un poco, asi que no consuman tanta jajaja, de todas formas es una locura los calculos para hacer este tipo de cosas, va por la mano del "numero de oro" hay que comerse un poco la cabeza unos cuantos dias hasta q se logra esas formas geometricas, como el remolino del video, nose si son particulas o Objetos, de todas formas son puros calculos. 
 
Si lograste mani***r algo sobre eso @TheBullet podes hacer lindo arte, llamativo abstracto y moderno, se vende bien eso 
 
 

@enelmenu Imagino que lo más complicado es que rinda bien. En el vídeo no se aprecia la cantidad de partículas que hay porque al comprimirse se pierden, adjunto una captura para que se aprecie mejor, todas las estrellas son particulas, la cámara tiene un color de fondo.
 
No se muy bien como funciona porque como dije es un asset, y el código está en dll... Odio cuando no puedes ver el código de los assets.
 

Julio 29, 2017, 07:46:26 AM #11 Ultima modificación: Julio 29, 2017, 07:50:25 AM por enelmenu
@TheBullet Jujuuu me cebas!!, muy bueno! me alegro mucho  lo tenes subido al juego?
 
Si necesitas alguna mano con flyers, o portada avisame, soy diseñador. Y hablando de esto mira tengo algo conl o que trabajaba hace mucho tiempo, mani***ndolo en 3d y haciendo imagenes mas que animaciones, un programa que hace este tipos de cosas y trabaja con particulas!! creo que te puedo salvar la vida y darte una herramienta muy poderosa hermano pero nose no te iluciones, no me acuerdo bien como trabaja el motor de esto, o si se puede exportar a una scena, el programa se llama Apophysis 7 Aca muestran una animacion, pero podesh caer imagenes, o tipo scenas, es muy bueno
 


   
eature=oembed" width="459">

 
 
 
Tambien, tengo otra herramienta, que transforma particulas en materia, osea tengo aca un portal estilo agujero negro jajajajaj 

Donde las particulas que diseñaste en el Apophysis las transformas en un objeto tipo blender, una cosa asi 

Se llama Incencia EX VI Voxel, espero poder ayudarte en esto hermano!!, son herramientras muy poderosas y muy estables..
 


   
eature=oembed" width="480">

 
 
 
Editado: Perdon no te aclare, el video no explica una bosta, eso q ves ahi blanquito si asercas la camara son todas particulas juntas, tipo como cuando se forma tu galaxia de lejos, y dsp materializa cosa q no es necesario pero bueno para q veas las posibilidades
 


De paso dejo el chivo aca mi pagina http://lopolo199.deviantart.com/ hace mucho tiempo trabajaba mucho con el abstracto ahora hago cosas mas profecionales y flyers portadas etc
 
Pd: esa Pera del final no le des bola JAJAJA era para un evento de la pagina que si hacias una pera te daban un logito jajajajaj la hice asi nomas
 
Abrazo!! 
 
 

@enelmenu están chulas tus imágenes. 
 
No me líes con más programas que suficiente tengo con lo mio! xD A parte, creo que el tema del hilo se está desviando demasiado...

Ahh los fractales, si me habre pasado minutos de mi vida mirando videos de eso, (tambien hay fractales de musica, ya que salio el tema lo nombro), solo para agregar al tema del rendimiento @TheBullet tendrias que probar con lo nuevo de 5.6 de GPU instancing, fijate que en todos los videos ejemplos prueban eso con muchos objetos.
 
https://docs.unity3d.com/Manual/GPUInstancing.html
 
COn respecto al problema del topic, no me suena a que sean las magnitudes, osea tenes 23 bits de mantisa para representar a un float (IEEE 754), si fuera:
 
23.567 ---> 23.5669994354248046875
 
55237.6678 --> 55237.66796875
 
te sobra la mantisa para representar casi el valor que quieras (use @ZOOSTAGE que des mas detalles del video y de tus objetos porque falta mas info a mi parecer.

lightbug lamentablemente no es lo que dices, es por las magnitudes cuanto mas te alejes de la coordenada 0,0,0 menos precisión tiene unity a la hora de medir y posicionar los transform por eso cuanto mas te alejas menos preciso y mas temblores. Hay una técnica que es si necesitas que tu personaje recorra mucha distancia es ir moviendo el mundo al punto 0. Apartir de 10.000 unity ya empieza a no ser preciso en sus medidas y a temblar.

Etiquetas: