Visual Basic - мастерская разработчика
Библиотеки

DirectX

Обзоры
DirectDraw
Direct3D
DirectX Audio
DirectPlay
DirectInput
Fido Topics
SourceCode
Tools&Libs

OpenGL

Статьи и учебники
Fido Topics
SourceCode
Tools&Libs

Архив по Glide

Движки

Обзоры
Учебники
SourceCode
Downloads

Создание игр

Ваши игры

Обзорные статьи
Учебники
Fido Topics
SourceCode
Download

Stuff

Программер-Чат

Псевдо-FTP
Disclaimer
Оффтопик

 

MaxTextureBlendStages

Fido Themes (ru.directx)

От: Andrey Veselov <doc_@rbcmail.ru>
Тема: MaxTextureBlendStages
Дата: 14 марта 2001 г. 10:40

Привет алл!

MaxTextureBlendStages - можно понимать как число пиксельных конвейеров и оно же max кол-во операций в пиксельном шейдере?

При

MaxSimultaneousTextures = 2
MaxTextureBlendStages = 4

получается 8 текстурных блоков.

Тогда как нанести на поверхность 3 текстуры за один проход ? (ведь просто SetTexture (2,&texture) не пройдет) Если нет, то как это сделать в несколько?

И вообще, может кто знает гратомную доку в инете (или есть у кого) по работе пиксельных конвейеров?

--
С Уважением,
Андрей

3D Univerce [http://u3d.agava.ru]


От: Alexey Yakovenko <waker@mdart.com>
Тема: Re: MaxTextureBlendStages
Дата: 14 марта 2001 г. 16:43


"Andrey Veselov" <doc_@rbcmail.ru> wrote in message
news:98n78q$2qj5$2@ddt.demos.su...

> MaxTextureBlendStages - можно понимать как
> число пиксельных конвейеров и оно же max
> кол-во операций в пиксельном шейдере?

честно говоря - не уверен что эти константы значат.

> Тогда как нанести на поверхность 3 текстуры за
> один проход ?

это можно сделать только на radeon и gf3.

> (ведь просто SetTexture (2,&texture) не пройдет)

на этих - пройдет.

> Если нет, то как это сделать в несколько?

через alpha blending, но сделать можно далеко не все что через tss pipe, и наоборот.

например tex1+tex2:

1. multitexturing add

SetTSS(0, colorarg1, texture);
SetTSS(0, colorop, selectarg1);
SetTSS(1, colorarg1, texture);
SetTSS(1, colorarg2, current);
SetTSS(1, colorop, add);
SetTexture(0, tex1);
SetTexture(1, tex2);
DrawIndPrimVB(...);

2. multipass add

SetTSS(0, colorarg1, texture);
SetTSS(0, colorop, selectarg1);
SetTSS(1, colorop, disable);
SetRS(D3DRS_ALPHABLENDENABLE, FALSE);
SetTexture(0, tex1);
DrawIndPrimVB(...);
SetRS(D3DRS_ALPHABLENDENABLE, TRUE);
SetRS(D3DRS_SRCBLEND, ONE);
SetRS(D3DRS_DESTBLEND, ONE);
SetTexture(0, tex2);
DrawIndPrimVB(...);

> И вообще, может кто знает гратомную доку в инете
> (или есть у кого) по работе пиксельных конвейеров?

не знаю... может на ixbt?


От: Igor Pavlov <arabesc@elnet.msk.ru>
Тема: Re: MaxTextureBlendStages
Дата: 15 марта 2001 г. 15:10

Hello, Alexey!
You wrote on Wed, 14 Mar 2001 13:43:17 +0000 (UTC):

>> MaxTextureBlendStages - можно понимать как число пиксельных конвейеров
>> и оно же max кол-во операций в пиксельном шейдере?

AY> честно говоря - не уверен что эти константы значат.

MaxTextureBlendStages - это максимальное количество blend операций, а MaxSimultaneousTextures - сколько из них может быть с текстурами.

Richard Huddy из nVidia пишет примерно по этой теме:
<------------------- Begin Richard Huddy ---------------------->
The driver exposes the following support.

Any 1 stage setup it can handle.
Any 2 stage setup it can handle.
Some 3 stage setups.
1 four stage setup (for emboss bump mapping).
Any 8 stage setup which enables all 8 stages.

So, if you want to get a 3 stage setup then you have to work with the limited subset that we expose. If you want to fake up any other 3 stage setup you have to enable all 8 stages of the pipeline and program the
hardware directly.
<----------------------- End Richard Huddy ----------------------->

Это про GeForce.

>> И вообще, может кто знает гратомную доку в инете (или есть у кого) по
>> работе пиксельных конвейеров?

AY> не знаю... может на ixbt?

У той же nVidia на сайте была дока, подробно расписывающая вешеприведённый абзац, но ее убрали. Обещают высылать по персональному запросу.

Всего хорошего!
- Igor Pavlov

...Created by Fidolook Express (www.fidolook.da.ru) on Thu Mar 15 14:19:20
2001


От: Andrey Veselov <doc_@rbcmail.ru>
Тема: Re: MaxTextureBlendStages
Дата: 16 марта 2001 г. 4:59

"Igor Pavlov" <arabesc@elnet.msk.ru>
wrote in message news:98qbbl$2def$1@gavrilo.mtu.ru...

> Any 1 stage setup it can handle.
> Any 2 stage setup it can handle.
> Some 3 stage setups.
> 1 four stage setup (for emboss bump mapping).
> Any 8 stage setup which enables all 8 stages.
> Это про GeForce.

Или я не правильно перевел, но о каких 8 stages идет речь? для GF2

MaxTextureBlendStages = 4 (драйвера 10.80)

Кстати, те же драйвера на TNT2 возвращают 8.

Та дока о которой ты говоришь наверное это
прояснит? запрос ушел мылом

--
С Уважением,
Андрей

3D Univerce [http://u3d.agava.ru]


От: Igor Pavlov <arabesc@elnet.msk.ru>
Тема: Re: MaxTextureBlendStages
Дата: 16 марта 2001 г. 14:38

Hello, Andrey!
You wrote on Fri, 16 Mar 2001 01:59:56 +0000 (UTC):

>> Any 1 stage setup it can handle.
>> Any 2 stage setup it can handle.
>> Some 3 stage setups.
>> 1 four stage setup (for emboss bump mapping).
>> Any 8 stage setup which enables all 8 stages.
>> Это про GeForce.

AV> Или я не правильно перевел, но о каких 8 stages идет речь? для GF2
AV> MaxTextureBlendStages = 4 (драйвера 10.80)
AV> Кстати, те же драйвера на TNT2 возвращают 8.

Это неофициальные драйверы, там и pixel shaders v0.5 поддерживаются. По этому поводу nVidia советует особо не беспокоится - они эксперементируют...

Всего хорошего!
- Igor Pavlov

...Created by Fidolook Express (www.fidolook.da.ru) on Fri Mar 16 14:20:18
2001


От: Andrey Veselov <doc_@rbcmail.ru>
Тема: Re: MaxTextureBlendStages
Дата: 17 марта 2001 г. 8:27

"Igor Pavlov" <arabesc@elnet.msk.ru> wrote in message
news:98sts1$2c9p$1@gavrilo.mtu.ru...

> AV> Или я не правильно перевел, но о каких 8
> AV> stages идет речь? для GF2
> AV> MaxTextureBlendStages = 4 (драйвера 10.80)
> AV> Кстати, те же драйвера на TNT2 возвращают 8.
> Это неофициальные драйверы, там и pixel shaders v0.5
> поддерживаются. По этому поводу nVidia советует
> особо не беспокоится - они эксперементируют...

А что толку...? Пиксельные шадеры 0.5 не поддерживаются функциями в DX8, а при установки версии 1.0 (даже если команды не выходят за рамки 0.5) - драйверами. Так что хоть заэксперементируйся ... ;)))) Пробовал уже. В любом случае функция вернет ошибку ... ;(

--
С Уважением,
Андрей

3D Univerce [http://u3d.agava.ru]


От: Igor Pavlov <arabesc@elnet.msk.ru>
Тема: Re: MaxTextureBlendStages
Дата: 17 марта 2001 г. 13:52

Hello, Andrey!
You wrote on Sat, 17 Mar 2001 05:27:44 +0000 (UTC):

>> Это неофициальные драйверы, там и pixel shaders v0.5 поддерживаются. По
>> этому поводу nVidia советует особо не беспокоится - они
>> эксперементируют...

AV> А что толку...?

И я про то.

AV> Пиксельные шадеры 0.5 не поддерживаются функциями в
AV> DX8, а при установки версии 1.0 (даже если команды не выходят за рамки
AV> 0.5) - драйверами.

А разве где-то есть описание PS v0.5? И, по-моему, со стороны DX никакой особой поддержки теперь уже не требуется. Реализация PS целиком на совести разработчиков драйверов, а MS должна только разрешить.

AV> Так что хоть заэксперементируйся ... ;)))) Пробовал уже.
AV> В любом случае функция вернет ошибку ... ;(

Я и говорю - драйверы неофициальные. Было бы иначе - был бы повод порадоваться.

Всего хорошего!
- Igor Pavlov

...Created by Fidolook Express (www.fidolook.da.ru) on Sat Mar 17 13:44:08
2001

 

 


Проект
Создание Народного Учебника по OpenGL

Участвовать!
Поиск
Найдите статью или файл:


Рассылка
Новости сайта
La Vision в вашем почтовом ящике








Программирование на С++ Delphi и Паскаль
Центр демо-искусства в России