A criação dos shaders

Até pouco tempo atrás, pelos idos de 2003, predominava a renderização gráfica pelas GPUs através do pipeline fixo, pelo qual passa todo o dado de uma aplicação gráfica 3D que usava efetivamente uma placa de vídeo. Apesar de rápido e com a velocidade crescendo a cada dia, tal processo apresentava limitações, uma vez que não era possível ter um controle fino sobre o dado que era passado pelo pipeline, sendo que estes se sujeitavam aos algoritmos internos realizados na renderização e presentes dentro da própria GPU.
Cada placa de vídeo 3D possuía uma lista fixa das coisas que ela poderia fazer. Inicialmente a lista de possibilidades era curta: As placas poderiam desenhar polígonos, realizar alguma texturização basica, um pouco alpha blending, e era só. Com o passar do tempo, a lista de possibilidades cresceu bastante: buffers offscreen, multisampling, transformação de hardware e iluminação… Toda vez que alguém pensava em um novo truque de renderização era precisa criar uma nova placa de vídeo com a nova habilidade.
Eventualmente alguém percebeu que as placas de vídeo precisavam ser mais parecidas com computadores. Quando você queria que seu computador tivesse uma nova habilidade você não cria um novo computador. Você instala uma nova peça de software. Adicionando o software dá novas habilidades á seu computador. Se você pudesse baixar novos softwares para sua placa de vídeo, eles chegaram á conclusão que não seria necessário criar uma nova placa de vídeo toda vez que alguém pensasse em um novo truque de renderização. Bastava você baixar a nova habilidade direto na placa de vídeo, bem an hora que precisasse
Assim com a necessidade de realismo e desempenhos combinados crescendo sempre, motivada pela demanda dos consumidores quer sejam eles usuários comuns de aplicações gráficas, quer sejam pesquisadores científicos, muitos métodos haviam surgido para aumentar o realismo na imagem, vários deles através da renderização de multipasse. A disputa comercial aliada aos rápidos avanços na área de computação gráfica, tiveram como conseqüência o surgimento dos shaders, ou seja, o nascimento das primeiras placas de vídeo com pipeline programável.

Destas placas a primeira placa de vídeo com alguma presença de shaders foi a Geforce 3 TI que possibilitava ao desenvolvedor programar um vertex shader. Obviamente, que como era uma tecnologia nova, ela enfrentava uma série de limitações que com o tempo foram superadas ou, minimizadas.
“Shaders parecem muito com programas de computador, mas eles são executados pela placa de vídeo, não pelo computador. Se a placa de vídeo suporta shaders, ela pode ser atualizada para suportar quase qualquer comportamento necessário. A única coisa que limita a placa de video baseada em shaders é a sua velocidade.” http://pt.wikibooks.org/wiki/Panda3D/Manual/Shaders

Assim desde 2003 até 2009, ano da presente publicação muitos avanços ocorreram como o aprimoramento dos pixeis e vertex shaders, a criação do shader de geometria, a unificação dos shaders nas placas de vídeo mais modernas e o amplo interesse acadêmico na GPU e o possível uso desta para uso não apenas de aplicações gráfica, mas de aplicações de propósito geral, GPGPU (General Purpose GPU).

Texto -http://desenvolvimentodejogos.wikidot.com/shaders


Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: