Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Aceleracion vs Software

Iniciado por Javier, 01 de Enero de 1970, 01:00:00 AM

« anterior - próximo »

Javier

                                Saludos al grupo, tengo una duda muy general relativa a la programación de juegos: ¿qué porcentaje de los distintos efectos y técnicas se deja en manos de las tarjetas gráficas, y qué porcentaje se deja al software o CPU?

Por ejemplo, teselación de polígonos, ¿se hace con las funciones de OpenGL o con funciones a pelo por soft? Lo mismo con la iluminación, sombras, transparencias, etc.

Una lista sería muy de agradecer... :ojo:                                

Drácula

                                Yo soy partidario de hacerlo todo por software salvo los pixel shaders. Ya expliqué mis motivos en otro post, prefiero facilidad de desarrollo que nº de polígonos.                                
ltimas mejoras en Merlín: Multitextura.Control y generación automática de LOD.Importa ASE y X. Frustum Clipping por BB.Render añadido de wireframe y del BB.Animaciones por interpolación.Animaciones de textura...
Actualmente:Octree y jerarquías

Ithaqua

                                Una lista así corta y rapidita, luego se puede profundizar mas. Hay algunos elementos que dependen del método/hardware (por ejemplo las sombras por las que preguntabas):

Software
--------

-Física.
-I.A.
-Culling a nivel de objetos.
-Nivel de detalle progresivo.
-Animación (cálculo de matrices de los nodos para un tiempo t).
-Ordenación de objetos.

Hardware
--------

-Transformación (con las matrices calculadas por software se transforman ahora los vértices y demás). Clipping, proyección...
Hoy en día también se encargan de procesar mallas estáticas y los huesos que la deforman.
-Iluminación.
-Rasterizado (con texturas, alpha blending, valores de color etc).

La teselación -en cuanto a triangular una malla definida con ecuaciones- se hace en tiempo de carga, no de ejecución.

Aunque se pueden añadir algunas cosillas, básicamente es eso.

Saludos,

         Ithaqua.

http://ithaqua.stravaganza.org
                               
thaqua^Stravaganza
http://ithaqua.stravaganza.org

Emotion

                                Hola Javier,

Pues mira... la verdad es que esto puede dar lugar a un debate sin fin, ya que hay multiples formas de diseñar un motor, pero lo mas acertado suele ser lo siguiente:

geometria - es mejor dejarlo a la mitad. los poligonos se transforman en la unidad hardware, pero las transformaciones o procesos especificos como los BSP,Octrees,los calculos del ROAM/VIPM, geomipmapping, la multiresolucion poligonal, etc, etc... es mejor dejarlos al software, ya que es mas flexible

en cuanto a la IA, la fisica y las demas cosas dichas por Ithaqua (hola Ithaqua :sonriendo:) le doy la razon... es mejor en software...

El unico (y bastante escabroso segun se mire) tema en el que se puede discutir bastante son los sistemas de particulas. Hay quien los implementa todo todito todo... en software, hay quien lo hace entero en hardware, aunque lo mejor es dejarlo a la mitad, como la geometria...

Aparte de eso, no mucho mas... en cualquier caso, ya te digo... eres tu quien debe decidirlo, pero teniendo en cuenta lo siguiente:

-si usas demasiados procesos software, usas demasiados ciclos de reloj en la CPU y desperdicias la potencia del hardware
-si usas demasiado el hardware, no tendras una implementacion flexible y desperdiciaras los recursos de la CPU

Saludos

_________________
Julio Meca
ALPHA SOFTWARE

[ Este Mensaje fue editado por: Emotion el 2002-04-12 19:23 ]                                
G3: Get the Power!






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.