Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Игры";
Текущий архив: 2005.02.20;
Скачать: [xml.tar.bz2];

Вниз

Вопросы по 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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.036 c
1-1107424656
12345
2005-02-03 12:57
2005.02.20
Вопрос про округление.


14-1107001774
Vaitek
2005-01-29 15:29
2005.02.20
Сайтокачалка


1-1107773125
salexn
2005-02-07 13:45
2005.02.20
Excel


4-1104770694
STK
2005-01-03 19:44
2005.02.20
Открыть и закрыть чужую программу.


14-1106918636
Adder
2005-01-28 16:23
2005.02.20
-)





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский