Вниз
Скачать: 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 вся ветка

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



Память: 0.46 MB
Время: 0.04 c
1-1107819015
KOLIG
2005-02-08 02:30
2005.02.20
проблема с вставлением текста в RichEdit


1-1107822395
NickKuz
2005-02-08 03:26
2005.02.20
как можно заставить Delphi 7 запихнуть все нужные DLL в прогу


1-1107781490
r.o.o.t
2005-02-07 16:04
2005.02.20
Шрифты


3-1106135644
Alex_S
2005-01-19 14:54
2005.02.20
SELECT UPPER(NAME) FROM... для "я"


14-1106986303
kaZaNoVa
2005-01-29 11:11
2005.02.20
Посоветуйте Антивирус, какой лучше?




   Наверх