Manual de Apoio 2010
Manual de Apoio 2010
Manual de Apoio 2010
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
(a) Normais perpendiculares a cada face(b) Normais perpendiculares a cada vérticeFigura 5.26: Normal AveragingCalcular este tipo <strong>de</strong> normal para uma esfera é relativamente simples, uma vez que todas as normais passampelo seu centro. No entanto, para superfícies mais complexas o cálculo é feito com base nas normais <strong>de</strong> váriospolígonos que partilham o vértice em questão. A normal resultante é a média <strong>de</strong>stas normais, daí o nome normalaveraging.5.7.3 Especificando um SpotlightPara transformarmos uma fonte <strong>de</strong> luz num Spotlight basta adicionar-lhe direccionalida<strong>de</strong> e <strong>de</strong>finir a sua abertura.Po<strong>de</strong>mos conseguir esse efeito utilizando o código:// algures no init (...)gl. glLightf ( GL2 . GL_LIGHT0 , GL2 . GL_SPOT_CUTOFF , 30f);// algures no display (...)float [] spotDir = { -1f, -1f, 0f};gl. glLightfv ( GL2 . GL_LIGHT0 , GL2 . GL_SPOT_DIRECTION , spotDir , 0);O efeito conseguido com a adição <strong>de</strong> um spotlight será semelhante ao da Figura 5.27.Figura 5.27: Adição <strong>de</strong> um Spotlight56