Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.03.20;
Скачать: CL | DM;

Вниз

Сгдаживание точки в OpenGL   Найти похожие ветки 

 
Brak   (2004-12-26 17:05) [0]

Уважаемые мастера, никак не выходит сгладить точку процедурой GL_POINT_SMOOTH...
как можно добится вывода круглой точки, либо просто круга, закрашеного определенням цветом?


 
Brak   (2004-12-26 21:25) [1]

???


 
марсианин ©   (2004-12-26 23:15) [2]

как это  "не выходит сгладить точку процедурой GL_POINT_SMOOTH"? почему?


 
Brak   (2004-12-26 23:33) [3]

А вот почему незнаю, потому и обращаюсь. С OpenGL начал работать сравнительно недавно и застрял на этой задачке.


 
марсианин ©   (2004-12-26 23:38) [4]

что-то типа

glEnable(GL_POINT_SMOOTH);

glBegin(GL_POINT);
 glVertex2f(x,y);
glEnd;


и не работает?


 
Brak   (2004-12-26 23:41) [5]

Да, работаю в 7-ой Делфе.


 
марсианин ©   (2004-12-27 00:06) [6]

ты код свой приведи чтоль? информация о версии Делфи здесь мало поможет


 
XProger ©   (2004-12-27 03:32) [7]


glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
// DrawPoint


 
wiz ©   (2004-12-27 17:28) [8]

glPointSize(size);

и size делаем больше 1.0

и еще помним, что SDK нам говорит:
Not all sizes are supported when point antialiasing is enabled. If an unsupported size is requested, the nearest supported size is used. Only size 1.0 is guaranteed to be supported; others depend on the implementation. The range of supported sizes and the size difference between supported sizes within the range can be queried by calling glGet with arguments GL_POINT_SIZE_RANGE and GL_POINT_SIZE_GRANULARITY.


 
Zak   (2004-12-27 17:36) [9]

марсианин - немного не так
glEnable(GL_POINT_SMOOTH);
glBegin(GL_POINTS);    //POINTS
  glVertex2f(x,y);
glEnd;


 
марсианин ©   (2004-12-27 22:22) [10]

>  2[9] Zak  

ну да, описАлся :)

я сейчас проверил.
glEnable(GL_POINT_SMOOTH); - округляет точку, но при ее размере glPointSize < 15.0 точки не идеально круглые. при  размере < 10.0 скорее квадратные, чем круглые.

если написать так:


glEnable(GL_POINT_SMOOTH);
glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);


glBegin (GL_POINTS);
  For i := 1 to 100 do begin
     glColor3f (random, random, random);
     glVertex2f (random * 2 - 1, random * 2 - 1);
  end;
glEnd;


точки будут круглыми при любом размере



Страницы: 1 вся ветка

Текущий архив: 2005.03.20;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.057 c
14-1109344932
Soft
2005-02-25 18:22
2005.03.20
Предлагаю сделать на форуме раздел newbie-delphi


1-1109783865
msgipss
2005-03-02 20:17
2005.03.20
Помогите создать иерархию, динамической вложенности


3-1108621132
Denmin
2005-02-17 09:18
2005.03.20
Как запретить Append в таблице?


6-1105613443
Homa_Programer
2005-01-13 13:50
2005.03.20
СОКЕТЫ :(


3-1108569676
td
2005-02-16 19:01
2005.03.20
поганый символ базу испортил