Re: Быстрая закраска
- From
- Vladislav Gusev (2:5059/9.75)
- To
- Alexander Samarin
- Date
- 2002-11-27T00:10:20Z
- Area
- RU.ALGORITHMS
Приветствую тебя Alexander !!!
Было это [26 ноября 2002]. Alexander Samarin писал к All.
AS> Имею 3-х мерную модель (гоблин) состоящий из полигонов
AS> (треугольников), так вот текстурирование мне не нужно, я хотел бы эти
AS> полигоны просто закрашивать в свой цвет (для моей задачи итоговая картинка
AS> вполне сойдёт).
ИМХО быстрее всего будет так :
1. Все вычисления производим в целых числах(fixed point) !
A
*
* *
* * B
* *
* *
*
C
2. Сортируем вершины A.y <= B.y <= C.y
3. Расчитываем приращения для каждого ребра dx_AC = (C.x - A.x) / (C.y - A.Y),
dx_AB = (B.x - A.x) / (B.y - A.y) , dx_BC = (C.x - B.x) / (C.y - B.y)
4. Отрисовываем участок треугольника(от A.y до B.y)(в цикле смещаемся на одну
линию вниз, x_AC += dx_AC, x_AB += dx_AB)
5. Затем рисуем оставшуюся часть(от B.y до C.y).
ЗЫЖ не забываем корректно обрабатывать частные случаи.
С уважением Vlad.
[C++] [Rock] [NightWish] [I`ll be back]
--- GoldED+/386 1.1.4.5
* Origin: End Of All Hope (2:5059/9.75)