Текстурирование сферы
Текстура для сферы создается точно так же, как и для плоскости, после создания ее необходимо включить командой
invoke glEnable,GL_TEXTURE_2D
В примере это сделано в процедуре CreateObjects. Текстура наносится в процессе создания сферы:
; #########################################################################
SolidSphere PROC ListNumber:DWORD,Radius:DWORD,Parts:DWORD
LOCAL hSphere:DWORD
invoke glNewList,ListNumber,GL_COMPILE_AND_EXECUTE
invoke gluNewQuadric
mov hSphere,eax
invoke gluQuadricDrawStyle,hSphere,GL_FILL
invoke gluQuadricNormals,hSphere,GL_SMOOTH
;<<<<<<<<<<<<<
invoke gluQuadricTexture,hSphere,GL_TRUE
;<<<<<<<<<<<<<
mov eax,Radius
invoke gluSphere,hSphere,[eax],[eax+4],Parts,Parts
invoke glEndList
mov eax,hSphere
ret
SolidSphere ENDP
; #########################################################################
командой
invoke gluQuadricTexture,hSphere,GL_TRUE
Прототип функции:
SolidSphere PROTO :DWORD,:DWORD,:DWORD
В приведенном примере на поверхность сферы нанесена шахматная доска: