Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

После тесселяции как убрать щели между треугольниками,? [Delphi, Windows]


MegaVolt ©   (2007-06-25 15:06:00) 

Разбиваю плоский одноцветный невыпуклый многоугольник на треугольники с помощью тесселяции. В результате видны грани между треугольниками :( Как от этого избавиться?

OpenGl запросто рисует выпуклые многоугольники без этих глюков.


Html   (2007-07-06 02:04:00) [1]


> @!!ex ©   (03.07.07 16:53) [11]
>
> > [10] Html.   (03.07.07 06:11)
>
> Фига се, заява. :))
>
> Как я понимаю, тесселяция может побить шар на большее количество
> треугольников. Но надо понимать, что онм не сгладит этот
> шар.


Точно?

Нафига тогда вообще это нужно. Разделить треугольники на части можно элементарно и без OpenGL.


@!!ex   (2007-07-03 16:53:00) [2]

> [10] Html.   (03.07.07 06:11)

Фига се, заява. :))

Как я понимаю, тесселяция может побить шар на большее количество треугольников. Но надо понимать, что онм не сгладит этот шар.


Html.   (2007-07-03 06:11:00) [3]

Если может - давай пример.


Yashin   (2007-07-02 20:51:00) [4]

Может, она все может...


Html   (2007-07-02 03:24:00) [5]

Тесселяция нужна только для разбиения плоских многоугольников на триугольники? Больше не для чего?

Она не может случаенно, скажем, низкополигонный шар сделать высокополигонным? То есть работать в 3Д.


MegaVolt   (2007-06-28 12:20:00) [6]

>выход: не использовать GL_POLYGON_SMOOTH

Ага похоже так и придётся сделать.


XProger   (2007-06-26 16:27:00) [7]

MegaVolt, выход: не использовать GL_POLYGON_SMOOTH


MegaVolt   (2007-06-26 12:55:00) [8]

Тегкуда сдвинуть и зачем?


Тег   (2007-06-26 03:32:00) [9]

Кто-нибудь из мастеров может объяснить, как в ручную делается тесселяция. Как разделить треугольник, на несколько - знаю. А вот как правильно сдвинуть появившиеся новые точки - непойму.


MegaVolt   (2007-06-25 16:38:00) [10]

Я их передаю идентично. А как внутри работает тесселятор я не знаю.
Но если оставить только glEnable(GL_POLYGON_SMOOTH); то щелей нет.


@!!ex_   (2007-06-25 15:22:00) [11]

По идее влияет только GL_POLYGON_SMOOTH.
А координаты вообще идеентичные у точек, или все же отличаються чуть?


MegaVolt   (2007-06-25 15:09:00) [12]

На наличие щелей влиеют следующие опции.
       glEnable(GL_POLYGON_SMOOTH);
       glEnable(GL_BLEND);
       glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA);


Наверх

Титульная страница Поиск, карта сайта Написать письмо