MASM32 и OpenGL
Это не так сложно, как на самом деле

Квадраты

Прямоугольники и квадраты создаются аналогично треугольникам. Задаем четыре вершины:

Top1 dd -1.0,-1.0,0.0
Top2 dd 1.0,-1.0,0.0
Top3 dd 1.0,1.0,0.0
Top4 dd -1.0,1.0,0.0

Прототипы функций:

SolidRect PROTO :DWORD
WireRect PROTO :DWORD

Сплошной прямоугольник:

; #########################################################################

SolidRect proc ListNumber:DWORD

invoke glNewList,ListNumber,GL_COMPILE_AND_EXECUTE

invoke glBegin,GL_QUADS
top(Top1)

top(Top2)

top(Top3)
top(Top4)
invoke glEnd
invoke glEndList


ret
SolidRect endp

; #########################################################################

Проволочный прямоугольник - указано пять вершин, если указать четыре, прямоугольник получится незамкнутым:

; #########################################################################


WireRect proc ListNumber:DWORD

invoke glNewList,ListNumber,GL_COMPILE_AND_EXECUTE

invoke glBegin,GL_LINE_STRIP
top(Top1)

top(Top2)

top(Top3)
top(Top4)
top(Top1)

invoke glEnd
invoke glEndList


ret
WireRect endp

; #########################################################################

Картинка, которую выдает пример:

Скачать исходники и ехе-файл.

©   Короленко М.В., 2011       
Перепечатка материалов возможна только после согласования с автором при условии обязательной ссылки на сайт