Ayuda con la pesadilla de los normal maps
Hay gente que tiene cosas raras en la cabeza, pero el colega usaba trucos, el tenía unos normal de referencia, sabía qué hacer para simular 45 grados, o 90 grados. La verdad es que se los curraba bien.
Bueno supongo que, lo sabes, el color rojo y verde son vectores, uno da información sobre el eje Y y el otro sobre el eje X, al juntar esos dos ángulos, te da el ángulo exacto de hacia donde apunta ese normal, por así decirlo definen un punto en el espacio tridimensional, el Azul es la tangencial, si quieres aumentar la potencia de tu normal, por ejemplo, en UDK, (forma chapucera) tienes que multiplicar por un vector 3 donde X e Y conserven el valor 1, y el Z o sea el azul tiene que ser inferior a 1, no te puedes pasar mucho porque sale una chapa, pero para levantar un poco el normal te vale, para sumar dos normal en UDK, igual de chapa, tienes que descomponer en canales con component mask, por un lado puedes sacar X y Y y sumar el otro normal igualmente descompuesto en canales, hay gente que descompone los 3 pero yo no noto diferencia, después con append lo juntas todo, el la componente azul, vale el de los dos mapas, pero si uno está sacado en referencia a un modelo de alta y el otro es un simple detalle plano, es mejor que uses el sacado de un modelo de alta, si ver que guarrea mucho puedes usar un normalice, o subir el valor Z (azul). Saludos.
Ayuda con la pesadilla de los normal maps
Eso último que comentas de sumar dos normals me interesa muchísimo. Hace meses miraba en halo reach como al hacer zoom en determinados objetos se podían ver nuevo detalles minúsculos, en ese momento no tenía ni idea cómo hacerlo, ahora se que se hace mediante un detail normal map repetido. Pero hace poco me di cuenta de una cosa aún más interesante, que se pueden enmascarar dos texturas. No lo he probado aún, pero es que, así incluso teniendo un Shader repetido varias veces pueden tener aspecto diferentes. Me alucinan esos trucos. Y desde hace unos días me pregunto si esto se puede hacer en 3DS Max y luego ser exportado a udque ¿o es mejor hacerlo teniendo e base udk? Me pasa exactamente lo mismo con el terreno, sé que se hacen con diferentes texturas pintando encima, pero no sé si esto se puede hacer en 3dstudio y exportarlo a udque o Unity. Lo digo teniendo en mente una demo reel, el video queda mejor renderizado en 3DS Max, pero creo que sería interesante llevar el escenario a Unity que con su webplayer puedes moverte por dentro. La otra opción es grabarlo directamente desde el motor. Vi en la web de un usuario del foro que tiene uno así y mola un montón. Saludos.
Ayuda con la pesadilla de los normal maps
Si amigo, el normal de detalle de toda la vida, de hecho, yo tenía echa la función en UDK, una caja donde por un lado pinchabas el normal del modelo, en otra el normal de detalle y unos valores para intensidad, tamaño, y rotación este último se lo quité porque una rotación se come un montón de instrucciones.
Eso de hacer cosas en uno y después render en 3dsmax, no se puede, no puedes pasar un Shader de UDK a max, hay un plug que te pone trasforma el editor de materiales de max en algo parecido al de UDK, pero soy muy generoso con lo de parecido. Saludos.
Ayuda con la pesadilla de los normal maps
¿Cómo sabes si un material tiene demasiadas instrucciones? Supongo que todo dependerá del resto. ¿Hay algún límite por escena o algo así para una consola actual? También me pregunto cuantos polígonos y mb de texturas se usan actualmente como norma general.
He probado a poner en el canal alfa de un normal map un height map para hacer parallax, pero no funciona por como hay que conectar los nodos. Para qué funcionara tenía qué copiar la textura de nuevo para qué quedará bien. Estaría bien poder ponerlo en el canal alfa para optimizar más, a ver si lo miro de nuevo.
Lástima qué no se pueda pasar shaders de uno a otro. Si mal no recuerdo vi un vídeo de luminous studio que estaba integrado en Maya y lo que hacías en Maya podías verlo en tiempo real en el motor. Estaría bien que epic hiciera algo así con ue4.
Por cierto, lo de mezclar dos texturas me refería a algo así .
Lo que pasa qué estaba lelo y no había pensado que eso supone aumentar el número de polígonos de objetos que a lo mejor se pueden representar con un único cuadrado. Supongo que es preferible usar esto en objetos que requieran de más polígonos. Aunque imagino que también se puede hacer mediante máscaras. Saludos.
Ayuda con la pesadilla de los normal maps
Las instrucciones te la dice el editor de shader, en la esquina superior izquierda. ¿cuántas son muchas? Pues depende del objeto, y de cómo usemos ese shader, si lo usamos en un sistema de partículas con transparencia, pues hay que tener cuidado porque el overdraw es, por así decirlo, lo que más recursos come, imagina un emiter que suelte 100 partículas, que en un momento dado 20 partículas se ponen en línea una detrás de otra, o una encima de otra, como son trasparentes tu ves a través de ellas, ahora imagina qué el Shader que usan tiene 40 instrucciones, pues para calcular ese sistema, tiene que calcular 40 instrucciones, (operación matemáticas) multiplicadas por las 20 partículas, por el número de píxeles que ocupen en pantalla, por el número de frames que te esté dando el juego, y eso si solo tienes un shader, imagina qué ese sistema de partículas tiene varios emisores, por ejemplo, uno para fuego otro para humo otro para refracción otro par chispas, pues lo mismo con cada shader, esto se nos pone en algunos casos en millones de operación matemáticas por cada frame, y todo empieza desde las instrucciones del shader.
Por eso, en muchos juegos cuando vemos muchos efectos en pantalla la cosa empieza a ralentizarse.
Cosas a tener en cuenta, valor de plano, cuando más ocupe el Shader en pantalla, más píxeles a calcular, si el objeto es pequeño o esta a lo lejos, pues nos preocupamos menos, si es el personaje en tercera persona pues cuidado que además el skin se puede calcular por GPU, con lo que podemos tener una bajada de rendimiento muy grande, un efecto de posproducción, lo mismo, estos se pintan en casi último lugar con lo que es mejor no cargarlo mucho.
En estos casos el número de polígonos pues como mucho nos come memoria de video, y algo de GPU, hay que ser Discretos, pero vamos, con las herramientas que tenemos hoy, no tendría que ser un problema dejar la escena con un número de polígonos que no nos afecte al rendimiento.
Cita:
He probado a poner en el canal alfa de un normal map un height map para hacer parallax, pero no funciona por como hay que conectar los nodos.
Tu no puedes, por así decirlo, realimentar un bitmap con información de dicho bitmap, por ejemplo, si tienes un normal, no puedes sacar de ese mismo normal información que afecte al ese normal, tienes que copiar el normal y hacerlo desde la copia, casi da igual porque en memoria ocupa lo mismo.
Por otro lado, si pones un alfa en un normal tienes que importarlo con la compresión NormalMap alfa si no, pasara del alfa.Eso es un vertex color, en el Shader tienes puestos los dos o tres bitmap distintos, pones un lerp (interpolación linear) y en el alfa pones un canal del vertex color, en A y B los distintos bitmaps o los shaders completos, después pintas con la herramienta como ves en el video.
En el UDN tienes unos cuantos tutoriales sobre el tema. Saludos.
Ayuda con la pesadilla de los normal maps
Fiz ¿cuándo vas a publicar un manual de udk? Lo digo porque sabes de todo incluso cosas que no te afectan directamente en tu trabajo.
UDN está genial, viene de todo. Tenía qué haber mirado antes de decir nada. A veces es que me guardo páginas y cosas así, y como estoy haciendo otras cosas, pues se me olvida mirar luego.
Los lerp he visto que se pueden hacer con texturas como alfa qué definan que se ve de una y de otra. Vamos, que no es necesario el Vertex Paint, no entiendo que ofrece vertex color que no se pueda hacer así, porque para usarlo hay que tener objetos con un determinado número de polígonos. Saludos.
Ayuda con la pesadilla de los normal maps
El vertex color te crea la máscara de transición, por eso al pintar lo que hace es darle a ese alfa qué metes en el Lerp un valor superior a cero, el tipo que se curró ese Shader le ha dado mil vueltas para no necesitar una malla con muchos vértices, creó un sistema de transición para qué no quede cutre, con estoy puedes hacer que un objeto se deforme de forma interactiva, por ejemplo, al dispararle, imagina disparar a un objeto de metal, y que la malla se redefina y se deforme, a parte de cambiar el color, esto lo hice, hay un ejemplo de cómo llegar a esto en el UDN.
Cita:
Fiz ¿cuándo vas a publicar un manual de udk? Lo digo porque sabes de todo incluso cosas que no te afectan directamente en tu trabajo.
Qué va hay un montón de cosas que se me escapan, de animtre ando pez total, de editar BSPs soy lento con ganas, hay varias cosas que me gustaría controlar, pero no tengo tiempo, conozco a un par de fieras que podrían enseñar a los de Epi, c, sobre todo uno. Saludos.
Ayuda con la pesadilla de los normal maps
Supongo este es ejemplo: http://udn, epicgames.com/Thre/Devel...formation.html Aunque para eso hace falta dx11. Mirare a ver si se puede hacer mediante World Position Offset. Para casos así sí, pero si lo que se quiere es mezclar dos texturas (como el vídeo que puse), no le veo mucho sentido aumentar la malla poligonal para mezclar dos texturas si se puede añadir un alfa a una de ellas que defina el recorte.
El BSPs de todos modos no se suele usar, ¿no? Pudiendo importar los objetos de otros programas 3D. Saludos.