Вниз
Скачать: CL | DM;

Примитивы в Mesh-объекте в DirectX   Найти похожие ветки 

 
Ludmila   (2006-11-07 19:23) [0]

Люди, кто работал с объектами Mesh, подскажите плиззз:
1) Какой тип примитивов может быть использован при их отрисовке? Только TriangleList? А как же точки и линии и т.п.?
2) В связи с этим - как можно поверх объекта Mesh нарисовать сеточку (но не стандартную из треугольников, а "гибкую" - из линий)? Придется пользоваться просто буферами и разными типами примитивов? Или есть какие-нибудь специальные объекты?


 
Pavia ©   (2006-11-07 19:53) [1]

1) Любой
2) Вопрос не связан. Текстуру наложить.


 
Ludmila   (2006-11-08 18:14) [2]

1) А где это указывать? У меша один способ вызова отрисовки - DrawSubset(...) без всяких там параметров типа примитивов.
2) Вопрос связан. Если наложу текстуру в виде сетки, то закрашу этой текстурой промежутки между линиями сетки, а они у меня уже раскрашены нужным образом (там треугольники, у которых цвет интерполируется от вершины к вершине).


 
Sapersky   (2006-11-09 12:40) [3]

Вроде можно получить буферы меша и нарисовать их вручную (DrawPrimitive). Хоть точками, хоть wireframe-треугольниками. Специального объекта для этого нет.
Если рисовать wireframe-объект поверх solid-объекта, возможны проблемы с Z-буфером, т.н. Z-fight (рябить будет). Нужно либо слегка увеличить wireframe-объект, либо задать Z-bias.
Что такое "гибкая сеточка" - не вполне понятно.


 
Ludmila   (2006-11-09 14:13) [4]

Спасобо, уже понятнее :). "Гибкая сеточка" - имеется ввиду, что она не треугольная, а четырехугольная (следовательно, wireframe не подходит). Составлена из поперечных сечений и образующих трубы. Т.е. получаем сетку, составленную из четырехугольников, стороны которых не лежат в одной плоскости в общем случае.
 Хотелось бы использовать z-bias, но в документации написано, что он не подерживается примитивами типа линий. Это так?


 
Sapersky   (2006-11-09 16:15) [5]

Хотелось бы использовать z-bias, но в документации написано, что он не подерживается примитивами типа линий. Это так?

Похоже что так.
Можно попробовать triangle list из вырожденных wireframe-треугольников, которые фактически представляют собой линии (2 вершины равны).
Если труба - это indexed triangle list и известно, в какой последовательности идут вершины - для линий можно создать дополнительный index buffer, а VB использовать тот же.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.027 c
6-1167919439
pest_tt
2007-01-04 17:03
2007.08.12
Отправка и прием файлов через NMSTRM


2-1184435002
Sonic90
2007-07-14 21:43
2007.08.12
Кнопка формы на панели задач


2-1184404977
Слава-17
2007-07-14 13:22
2007.08.12
Чтение данных из оверлея


2-1184427323
Bbbbb...
2007-07-14 19:35
2007.08.12
TButton, inherited, Enabled


15-1184275407
Tirael
2007-07-13 01:23
2007.08.12
прога для скриншотов с видео




   Наверх