Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





¿tutoriales De Normal Maps, Etc?

Iniciado por pablocomics, 04 de Abril de 2006, 04:50:25 PM

« anterior - próximo »

pablocomics

  Buenas

Me gustaría actualizarme un poquito en conocimientos técnicos, porque desde que me pasé a los juegos de móviles me estoy quedando un poquito oxidado con las 3D y es bueno mantenerse al día en todo.... A ver si me podéis echar una mano y decirme dónde puedo encontrar tutoriales avanzados para hacer normal maps y demás pijadillas gráficas. De paso aconsejadme un poco acerca de que tipo de efectos me tengo que poner al día porque como ya os digo ando un tanto oxidado

Mi idea sería hacer un modelo con una buena cantidad de poligonos y toda clase de pijadas, algo así como los modelos del UT2007 y similares (así me pongo un poco las pilas >__<). D paso a ver si me podéis decir cuantos polis se suelen usar ahora en los modelos, porque me quedé en la época que no se pasaban de los 2000 o 2500 como mucho (siempre estamos hablando de tiempo real) :-)

En agradecimiento si me queda algo digno lo subire como modelo free a algún lado, ¿vale? :-)

Para que os agáis una idea de lo anticuado que me he quedado os paso uno de los últimos modelos 3D que hice, hará tres años o así que lo modelé, es un Dodge M80 de algo más de 2000 polis con una textura de 1024x1024.  este es el enlace La verdad es que creo que ni estaba acabado... :-p Porque los faros estaban cutres, cutres....

br> Hasta luego<br>                       Pablo<br>    (URL--><a href='http://www.pablocomics.com' target='_blank'>www.pablocomics.com</a>)<br>    (DEVIANT--><a href='http://pablocomics.deviantart.com/'; target='_blank'>Deviant site)</a>

zupervaca

 Yo no soy grafista con lo que trucos para efectos y eso cero patetero, pero como programador te puedo decir que no hagas texturas mayores a 512x512, asi a 32bits de color no se supera el mega por textura, es decir, para un juego una textura de 1024x1024 es mucho ya que son 4 megas!!!.

BeRSeRKeR

 Ahí van unos links:

CGTalk - Normal Mapping in 3ds max
CGTalk - Normal Mapping for Games
CGTalk - Normal Mapping and Characters
Ben Mathis - Normal Map Workflow
Ben Cloward - Creating and Using Normal Maps
Pinwire - Generating High Fidelity Normal Maps with 3-D Software
Ionization - Normal Maps

Ahí tienes material para estar entretenido un buen tiempo. :lol:

Yo para generar normal maps para modelos con mucho detalle, utilizaría ZBrush y el plugin gratuíto ZMapper. Creo que es lo mejor que hay actualmente para este tipo de cosas. :)

Saludos.
¡Si te buscan en nombre de la ley, huye en nombre de la libertad!!

pablocomics

Cita de: "zupervaca"Yo no soy grafista con lo que trucos para efectos y eso cero patetero, pero como programador te puedo decir que no hagas texturas mayores a 512x512, asi a 32bits de color no se supera el mega por textura, es decir, para un juego una textura de 1024x1024 es mucho ya que son 4 megas!!!.
¿Más o menos en una consola de nueva generación cuanto queda disponible para texturas? apróximadamente, no hace falta que seas exacto del todo

Y pergunta dos, pensaba que las nuevas tarjetas gráficas usaban compresión de texturas por hardware porque 512x512 me parece muy pobre para modelos muy detallados como se ven en algunos juegos de ultima generación... ¿o se usa una textura de baja resolución y luego se subsana con un buen normal map? Como te digo ado muuuy oxidado
br> Hasta luego<br>                       Pablo<br>    (URL--><a href='http://www.pablocomics.com' target='_blank'>www.pablocomics.com</a>)<br>    (DEVIANT--><a href='http://pablocomics.deviantart.com/'; target='_blank'>Deviant site)</a>

pablocomics

Cita de: "BeRSeRKeR"Ahí van unos links:

Muchas gracias por los enlaces, ya os iré contando como va saliendo la cosa... :-)
br> Hasta luego<br>                       Pablo<br>    (URL--><a href='http://www.pablocomics.com' target='_blank'>www.pablocomics.com</a>)<br>    (DEVIANT--><a href='http://pablocomics.deviantart.com/'; target='_blank'>Deviant site)</a>

BeRSeRKeR

 Yo creo que para personajes utilizados en juegos actuales, las texturas no deberían bajar de 1024x1024. Sobre todo los normal maps. Si quieres capturar el más mínimo detalle, tendrán que ser de alta resolución.

Aquí te pongo las especificaciones del contenido gráfico para los juegos que hagan uso del Unreal Engine 3. Creo que te dará una buena idea de lo que se lleva ahora mismo o se va a llevar en poco tiempo.

CitarTypical Content Specifications

Here are the guidelines we're using in building content for our next Unreal Engine 3 based game. Different genres of games will have widely varying expectations of player counts, scene size, and performance, so these specifications should be regarded as one data point for one project rather than hard requirements for all.

Characters

For every major character and static mesh asset, we build two versions of the geometry: a renderable mesh with unique UV coordinates, and a detail mesh containing only geometry. We run the two meshes through the Unreal Engine 3 preprocessing tool and generate a high-res normal map for the renderable mesh, based on analyzing all of the geometry in the detail mesh.


  • Renderable Mesh: We build renderable meshes with 3,000-12,000 triangles, based on the expectation of 5-20 visible characters in a game scene.
  • Detail Mesh: We build 1-8 million triangle detail meshes for typical characters. This is quite sufficient for generating 1-2 normal maps of resolution 2048x2048 per character.
  • Bones: The highest LOD version of our characters typically have 100-200 bones, and include articulated faces, hands, and fingers.
Normal Maps & Texture maps
We are authoring most character and world normal maps and texture maps at 2048x2048 resolution. We feel this is a good target for games running on mid-range PC's in the 2006 timeframe.  Next-generation consoles may require reducing texture resolution by 2X, and low-end PC's up to 4X, depending on texture count and scene complexity.

Environments
Typical environments contain 1000-5000 total renderable objects, including static meshes and skeletal meshes. For reasonable performance on current 3D cards, we aim to keep the number of visible objects in any given scene to 300-1000 visible objects. Our larger scenes typically peak at 500,000 to 1,500,000 rendered triangles.

Lights
There are no hardcoded limits on light counts, but for performance we try to limit the number of large-radius lights affecting large scenes to 2-5, as each light/object interaction pair is costly due to the engine's high-precision per-pixel lighting and shadowing pipeline. Low-radius lights used for highlights and detail lighting on specific objects are significantly less costly than lights affecting the full scene.
¡Si te buscan en nombre de la ley, huye en nombre de la libertad!!

pablocomics

Cita de: "BeRSeRKeR"Yo creo que para personajes utilizados en juegos actuales, las texturas no deberían bajar de 1024x1024. Sobre todo los normal maps. Si quieres capturar el más mínimo detalle, tendrán que ser de alta resolución.

Aquí te pongo las especificaciones del contenido gráfico para los juegos que hagan uso del Unreal Engine 3. Creo que te dará una buena idea de lo que se lleva ahora mismo o se va a llevar en poco tiempo.
Si, eso se me hace más lógico para modelos de ultima generación :-) Lo que me ha sorprendido es que los modelos apenas pasen de 10000 polis en su máxima poligonización, pensaba que ahora era al menos el doble, pero vaya, con eso tengo de sobra :-p supongo que el normal mapping compensará mucho. Además cuando el modelo se aleja y no pasa de 100 pixel de alto no tienen sentido poligonizaciones tan altas... :-)

Una pregunta, ¿la reducción de poligonos ahora se hace por hardware/software o se sigue usando el viejo método de la sustitución de un modelo por otro con menos carga poligonal como en los viejos tiempos?
br> Hasta luego<br>                       Pablo<br>    (URL--><a href='http://www.pablocomics.com' target='_blank'>www.pablocomics.com</a>)<br>    (DEVIANT--><a href='http://pablocomics.deviantart.com/'; target='_blank'>Deviant site)</a>

zupervaca

 Veamos, 1024x1024 = 1048576 x4 (4bytes de color) = 4194304bytes = 4 megas por textura
256 megas de ram de video / 4 megas = 64 texturas
Ahora agregale vertex buffers, index buffers, etc.

Con 64 texturas se puede hacer un juego o nivel con personajes, etc.?? :blink:
Para demos si, pero para un juego de verdad no creo.

No obstante si se usa 1024x1024 para los normal maps, pero para los demas tipos de textura no y es a lo que me refiero, el coche de la imagen tiene una textura de 1024x1024.

er_willy

 ese calculo es con dds?

tambien piensa que los modelos iguales sarean la textura.

Y los niveles lo mismo echa un vistazo ya veras como en un nivel no pasan de cuatro tipos de suelo y cinco o seis paredes diferentes, no llegas a 64 ni jarto vino, sobre todo cuando desccubres que la misma textura que hacia de adorno en una pared esta en una lampara de pantalla ;)

zupervaca

 Hechale un vistazo al directorio base del doom3 y ya veras :P

Citarese calculo es con dds?
No importa el formato de lectura, al final la tarjeta grafica trabaja con las texturas sin comprir o comprimidas en un formato propio de ella, en el calculo no meto los mipmaps levels con lo que si se meten la cosa se dispara.

BeRSeRKeR

 Yo no creo que para todo haga falta una textura de 1024x1024 pero para los personajes creo que es un tamaño que está bien. En cuanto a Doom3 no creo que sea un buen ejemplo aquí, pues el target base que se fijaron fue una GeForce2, si no recuerdo mal.

Saludos.
¡Si te buscan en nombre de la ley, huye en nombre de la libertad!!

zupervaca

 Aqui se indica las graficas que funcionan con el doom3, minimo piden una geforce3, osea tarjetas graficas con que soporten shader 1.1, ademas el doom3 cuando lee las texturas del disco las redimensiona segun la memoria ram de video (se puede configurar en el menu de opciones del juego), no obstante para poner la maxima calidad al juego se necesita una geforce 6800 o su equivalente en ati.

lluc







Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.