Geometry shader

Geometry shader

Un geometry shader (abreviado GS) es un modelo de programación de shader introducido con Shader Model 4.0 de DirectX 10. Las primeras tarjetas gráficas en soportar Geometry Shaders fueron las GPUs NVIDIA GeForce 8800. Esta característica es soportada en Direct 3D 10 y OpenGL 3.2 (o OpenGL 1.1 usando la extensión EXT_geometry_shader4).

Contenido

Funcionamiento

Un geometry shader puede generar nuevas primitivas gráficas, como los puntos, las líneas o los triángulos, estas primitivas creadas son enviadas al principio del pipeline gráfico.

Los programas de geometry shader son ejecutados después de los vertex shaders. Toman como entrada toda la primitiva, a ser posible con información adjunta. Por ejemplo, cuando se operan triángulos, los tres vértices son la entrada del geometry shader. El shader puede emitir primitivas, que son rasterizadas y sus fragmentos al final son pasados al fragment shader.

Algunos de los típicos usos del geometry shader son, por ejemplo, la generación de un punto de sprite,[1] teselado geométrico, extrusión del volumen de sombra y el renderizado de un solo paso a cube map.

Un ejemplo típico y muy usado, de los beneficios que aporta los geometry shaders podría ser la modificación automática de la complejidad de una malla. Una serie de líneas representan los puntos de control para una curva que es pasada al geometry shader y dependiendo de la complejidad requerida, el shader automáticamente puede generar líneas extra, cada una de las cuales permiten obtener una mejor aproximación de la curva.

Un programa de investigación dirigido por Gernot Ziegler,[2] desarrollado por Histopyramids permite obtener mejor rendimiento que los geometry shaders en multiples situaciones.[3]

Programación

Los Geometry shaders pueden ser programados en los siguientes lenguajes: Ensamblador, Cg, HLSL de Direct3D (empezando con DirectX 10) y GLSL de OpenGL.

Véase también

Referencias


Wikimedia foundation. 2010.

Игры ⚽ Поможем написать реферат

Mira otros diccionarios:

  • Geometry shader — Shader Un shader (anglais, du verbe to shade : ombrager ou estomper, nuancer) est un programme[Quoi ?] utilisé en image de synthèse pour paramétrer une partie du processus de rendu réalisé par une carte graphique ou un moteur de rendu… …   Wikipédia en Français

  • Geometry shader — A geometry shader (abbreviated GS ) is a shader program model introduced with Shader Model 4.0 of DirectX 10 [ [http://msdn.microsoft.com/en us/library/bb509626(VS.85).aspx msdn: Shader Models vs Shader Profiles] ] . NVIDIA GeForce 8800 GPUs were …   Wikipedia

  • Geometry-Shader — Eine Geometry Shader Hardware ist ein relativ neuartiger Baustein in der 3D Computergrafik. Als Shader in der klassischen Grafikpipeline wird der Geometry Shader nach dem Vertex Shader aufgerufen. Er kann neue primitive Geometrien aus bereits… …   Deutsch Wikipedia

  • Shader — sind Hardware oder Software Module, die bestimmte Rendering Effekte bei der 3D Computergrafik implementieren. Inhaltsverzeichnis 1 Hardware Shader 1.1 Verarbeitungskette 2 Programmierung …   Deutsch Wikipedia

  • Shader Language — Shader Un shader (anglais, du verbe to shade : ombrager ou estomper, nuancer) est un programme[Quoi ?] utilisé en image de synthèse pour paramétrer une partie du processus de rendu réalisé par une carte graphique ou un moteur de rendu… …   Wikipédia en Français

  • Shader Model — Shader Un shader (anglais, du verbe to shade : ombrager ou estomper, nuancer) est un programme[Quoi ?] utilisé en image de synthèse pour paramétrer une partie du processus de rendu réalisé par une carte graphique ou un moteur de rendu… …   Wikipédia en Français

  • Shader language — Shader Un shader (anglais, du verbe to shade : ombrager ou estomper, nuancer) est un programme[Quoi ?] utilisé en image de synthèse pour paramétrer une partie du processus de rendu réalisé par une carte graphique ou un moteur de rendu… …   Wikipédia en Français

  • Shader — A shader in the field of computer graphics is a set of software instructions, which is used by the graphic resources primarily to perform rendering effects. Shaders are used to allow a 3D application designer to program the graphics processing… …   Wikipedia

  • Shader (realtime, logical) — A shader is essentially a computer programAccording to [http://oss.sgi.com/projects/ogl sample/registry/ARB/vertex program.txt ARB vertex program] a shader (specifically to vertex shaders, which are called programs in this context) is a sequence… …   Wikipedia

  • Shader — Un shader (le mot est issu du verbe anglais to shade pris dans le sens de « nuancer ») est une suite d instructions donnée à un ordinateur, utilisé en image de synthèse, pour paramétrer une partie du processus de rendu réalisé par une… …   Wikipédia en Français

Compartir el artículo y extractos

Link directo
Do a right-click on the link above
and select “Copy Link”