Escrito originalmente por filetefrito
Puesto que para el bump maping se utilizan pixel shaders... para que sirven exactamente los vertex shaders??
los vertex shaders, sirven para lo mismo que los pixel, pero para vertices (lo que forma los polígonos), basicamente generan matrices de polígonos, y las puedes deformar o animar o lo que te de la gana (menos crearlas y destruirlas, por desgracia), pero en DirectX 8.1 había un limite de matrices que si no me equivoco, rondaba las 6 matrices máximas para temas de animación, que en general, puede dar para hacer perfectamente las animaciones por esqueletos. Por eso, en xbox por ejemplo, hacer animaciones complejas es más dificil que en una PS2 a nivel de software, si quieres liberar a la CPU de este trabajo.
Escrito originalmente por filetefrito
Que versiones hay?( me suena vertex shaders 1.0 y 2.0 y pixels shaders 1.0 y 1.4, pero bueno, a saber como serían en realidad).
en el mercado esta hasta la versión 2.0 (Ati Radeon 9500 en adelante), la 2.0+ de nVIDIA es un churro a medio camino entre la norma 1.4 y la 2.0, que añade funciones exclusivas, y por eso la llamaron así, pero digamos, que actualmente, nVIDIA no tiene ni un solo producto en el mercado que cumpla con la norma DirectX 9 / OpenGL 2.0.
Escrito originalmente por filetefrito
De Cúanta carga l.ibera al procesador,y de que manera lo hace ?
pues depende de como se utilice, desdse mucha, hasta poca o nada. PGR 2 por ejemplo, a todas luces, no usa la CPU para animar nada de la escena (o casi nada), por que si no, no estariamos moviendo más de 30 millones de polígonos de media por segundo, con todos sus efectos, más todo lo demás (física, sonido, IA...)
El otro ejemplo, es Wreckless, que todo el tema gráfico lo lleva la GPU, y los desarrolladores, incluso creen que se pueden hacer juegos completos con una xbox sin usar la CPU más que para sonido, IA y manejo del PAD. Y la prueba, es la competición de Beyond3D, donde hay juegos completos que "solo" usan la GPU.
Escrito originalmente por filetefrito
para el agua se utilizan pixel shaders, pero el agua se mueve, y entonces no solo cambia el "sombreado" dependienteo del punto de vista, sino evidentemente con el movimiento del agua...pero la textura sigue siendo plana....ese, por asi decirlo cambio de perspectiva o de reflejo que da la sensación del movimiento del agua, lo calcula el procesador?
Ese efecto se peude realizar de dos maneras, la "facil" es usando una textura animada con bump mapping, que genere el efecto, y luego, aplicar encima el shader correspondiente para que de el pego la iluminación. La otra, es usar una malla 3D generada por Vertex shader, y crear un efecto "bandera" que es MUY facil de generar (son 3 o 4 lineas de codigo en lenguaje C y openGL).
Escrito originalmente por filetefrito
Y sobre motores gráficos, los que utilizan compañias japonesas, para juegos como panzer dragoon orta o zone of enders 2, o el maravilloso ico....Son todos motores propietarios???
si, los japos, como algúnos occidentales, en general, siguen pensando que el mejor engine, es el que se hace en exclusiva para el juego (y tienen razón), el único problema, es que puedes redundar siempre sobre los mismos errores y problemas. El otro, es que tardas algo más en generar el código, pero la ventaja, es que lo conoces al 100% y te cuesta relativamente poco modificarlo o añadir funciones nuevas. Eso si, tener motores propietarios para cada juego, no los hace mejores, aunque tampoco peores.
Escrito originalmente por filetefrito
Y ya que estamos, en que estriba la dificultad de programar para ps2?Hay que programar a muy bajo nivel, o la dificultad estriba en el propio emotion engine, que requiere una programación muy específica???
estriba en la propia CPU, y el echo, que para sacar provecho, se tiene que programar cada unidad vectorial por separado (como si fuesen 2 CPU's), y eso, es DIFICIL de llevar a cabo, sobretodo, de una manera coordinada, que no machaque una de las unidades, y deje casi libre la otra, o sature las dos, o no sature ningúna...
Para eso se crea el proyecto CELL, para que sea en principio, el propio procesador sea quien reparta la carga entre las diferentes unidades vectoriales, esto provocará que se les saque mucho antes partido global a PS3, que a ps2, por contra, traera otros problemas, y es que dependiendo de como las diseñen, la potencia total, no será la suma de las unidades, así como, seguramente, NUNCA se llegue ni remotamente al 100% de las unidades, si estas estan 100% controladas por la maquina, y no por el programador.
Escrito originalmente por filetefrito por cierto gracias a todos por vuestras sapientes aportaciones
de na joer