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

Вниз

Вопросы по Direct3D (JEDI)   Найти похожие ветки 

 
Kobik   (2004-11-19 19:43) [0]

Собственно у меня 2 вопроса:
1) Можно ли в одной сцене параллельно использовать текстуры и примитивы? Если да, то как? (создавать 2 буфера вершин с разными типами, или все можно запихнуть в один?)
2) На пару треугольников наложена текстура. У нее надо динамически менять прозрачность. Обязательно ли для каждой степени прозрачности создавать отдельную текстуру, или для этого есть специальный параметр?


 
Sapersky   (2004-11-20 00:47) [1]

1) Зависит от количества примитивов (точек-линий?) и текстур (текстурированных треугольников?). Если всё влезает в один буфер - можно (и лучше) использовать один (за исколючением point sprites, там спец. тип буфера).
2) Можно менять цвет треугольников (прозрачность цвета треугольников). Или есть специальный режим блендинга с фиксированной альфой, которая задаётся через SetRenderState/SetTextureStageState (что-то там с TFACTOR).


 
Kobik   (2004-11-20 07:54) [2]

1) Я имею ввиду что часть треугольников текстурированные, а чать просто окрашенные. Но, получается, что их вершины имеют разные параметры. А при CreateVertexBuffer можно указать только 1 тип.
2) Т.е кроме параметров X, Y, Z, U, V еще задавать Color? А какой тип тогда надо делать в SetVertexShader?


 
Sapersky   (2004-11-20 12:12) [3]

1) Да ничего страшного. Просто лишние параметры не будут использоваться. Память, конечно, расходуется, но в данном случае не так уж и много. И с т.з. производительности это лучше, чем переключать буферы и форматы вершин.
2) Ну например:
Type
 TMyVertex = record
   x, y, z : Single;
   color : DWord;
   u, v : Single;
 end;

Const
 MyVertexDesc = D3DFVF_XYZ or D3DFVF_DIFFUSE or D3DFVF_TEX1;


 
Kobik   (2004-11-21 19:08) [4]

2Sapersky большое спасибо за ответ.

Еще у меня такой вот глюк - после создания текстур любая работа с TStream (из стандартной библиотеки Classes.pas) приводит к "Access violation" в D3d8.dll. А до создания текстур все работает. Может кто знает че за ботва?



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

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

Наверх




Память: 0.47 MB
Время: 0.041 c
1-1107929867
Алекс
2005-02-09 09:17
2005.02.20
Проверка готовности дисковода


1-1107772136
Raider
2005-02-07 13:28
2005.02.20
Как сделаь так чтоб


3-1106209567
intaari
2005-01-20 11:26
2005.02.20
Доступ к параметрам UpdateSQL


3-1106292019
sergg
2005-01-21 10:20
2005.02.20
Ошибка: В операции должен использоваться обновляемый запрос


14-1107034236
каспер
2005-01-30 00:30
2005.02.20
пункт меню "создать"