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

Объекты из четырехугольников

Любая поверхность, какой бы сложной она ни была, может быть построена из четырехугольников. Подобные объекты часто называют Quadric objects (квадратические? хоботические?). Их привлекательность - в простоте построения и текстурирования. По этому принципу строятся трехмерные примитивы в библиотеке glu.dll.

Алгоритм построения поверхности (на примере плоскости, в трехмерном случае добавится еще одна координата): разбиваем поверхность по каждой координате на части, например на i частей по Х и на j частей по Y, организуем два цикла - первый по j, второй - по i (можно и наборот, разницы никакой), во втором цикле строим строку, когда она постороена - переходим к следующей строке. Каждый из четырехугольников имеет координаты вершин (Xi,Yj),(Xi+1,Yj),(Xi+1,Yj+1),(Xi,Yj+1):

Нормали можно строить как для каждой из вершин, так и для одной вершины. В приведенном примере вектор нормали к поверхности (0,0,1) - ось Z направлена к нам.

Координаты текстуры для каждого четырехугольника рассчитываются так же, как и координаты вершин, только вместо размера по вертикали и горизонтали для плоскости берутся размеры текстуры 1х1 (если нужно наложить один экземпляр текстуры).

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