Войти
ПрограммированиеФорумГрафика

радеон тормозит... (2 стр)

Страницы: 1 2 3 Следующая »
#15
18:05, 10 июля 2009

ну с этим ясно...
но:
>не подскажете, где я могу узнать какая версия шейдеров поддерживается апаратно видяхой ATI Mobility Radeon HD 3470 ?
актуально.

#16
18:07, 10 июля 2009

Аврелий
4.0

Правка:
И то, что работает на НВидии - их заслуга, а не программиста. Я когда графикой интересовался - тоже считал, что шейдер правильный, если он работает на моей GF. В результате, когда я попробовал запускать свои творения на ATI карточках, пришлось исправлять кучу багов.

#17
18:40, 10 июля 2009

А может выложить "секретный" код убер шейдера?
Обещаю, мы НИКОМУ не расскажем :)

#18
19:36, 10 июля 2009

Burz666
=)

float4x4 matAll;
float4 Pos[40];
float4 Col[40];
float4 RotScl[40];

float4 TexProt[5];
int TexCprot[40];

float4x4 mat;

struct VS_INPUT
{
    float4 position  : POSITION;
     float2 tex0 : TEXCOORD0;
};

struct VS_OUTPUT
{
       float4 position: POSITION;
     float2 tex0 :    TEXCOORD0;
    float4 diffuse : TEXCOORD1;
};

VS_OUTPUT main( VS_INPUT IN )
{
  VS_OUTPUT OUT;
  int ins=round(IN.position.z);
  float3 pns = float3(Pos[ins].xyz);
  float3 dx=float3(RotScl[ins].y,RotScl[ins].z,0);
  float3 dy=float3(RotScl[ins].x,RotScl[ins].y,0);
  float3 ppos= ((IN.position.x*Pos[ins].w)*dx+(IN.position.y*RotScl[ins].w)*dy);
  float4 pos;
  pos.xyz = pns.xyz + mul(ppos,mat);
  pos.w = 1.0;
  OUT.position = mul( pos , matAll);
    int txpro=TexCprot[ins];
    OUT.tex0=IN.tex0*TexProt[txpro].zw+TexProt[txpro].xy;
  OUT.diffuse = Col[ins];
  return OUT;
}
вроде ниче такого =)
#19
23:36, 10 июля 2009

Аврелий
Особо не вчитывался - пятница, вечер, плюс давно не читал шейдеры. Так что логику разобрал только поверхностно.
  float3 dx=float3(RotScl[ins].y,RotScl[ins].z,0);
  float3 dy=float3(RotScl[ins].x,RotScl[ins].y,0);
Из потенциальных синтаксических ляпов, попробуй 0 заменить на 0.0. Кажется может вызвать проблемы.

#20
15:51, 11 июля 2009

Попробуй вместо констант, залить батч инфу в атрибуты вершины...

#21
19:22, 11 июля 2009

CAJ
> Из потенциальных синтаксических ляпов, попробуй 0 заменить на 0.0. Кажется
> может вызвать проблемы.
о_О я и не знал что такое может быть...
а с логикой кода все норм, ведь работает нормально...

Burz666
меня этот вариант устраивает.. а какие приемущества я получу если суну в атрибуты вершин?

#22
16:44, 15 июля 2009

народ! это УГ!!!
сижу сейчас за "radeon на ноуте знакомого"
много перепробовал, проверил все шейдеры, дописал везде 0.0 и нифига... все те же 15 фпс =(
но есть одна зацепка... я добавил вывод в лог капсы по шейдах... вот что получил:

PS version = 3.0
VS version = 3.0
MAX PS Instructions =  -1
MAX VS Instructions =  -1
MAX VS constants =  256
и тревожат меня "-1" в количестве инструкций... у меня дома там их много-больше... кто-то может помочь?

#23
17:13, 15 июля 2009

не очень точно, но кажется, что если капсы для инструкций равны -1 то это значит типо унлимитед.... т.е. физически примерно 65к
о мой моск... думаю через неделю опубликую то, что можно будет тестить...

#24
17:24, 15 июля 2009

Аврелий
> то это значит типо унлимитед
а анлимитед это случаем не значит, что это софтварная эмуляция?

#25
19:32, 15 июля 2009

единственная зацепка:
http://forum.beyond3d.com/archive/index.php/t-2783.html
там в списке: MaxVShaderInstructionsExecuted -1 ??
и комент:
MaxVShaderInstructionsExecuted -1
This indicates "unlimited" instructions executed. In reality it's still limited to 64005 since you have 256 instruction slots, loop-endloop burns 5 instruction slots and you can iterate this loop 255 times. So 255*251.

#26
19:34, 15 июля 2009

обидно то, что на немного устаревшей версии двига другой проект все еще выводит на том радеоне 300 фпс с подобными сложными шейдерами...

#27
19:56, 15 июля 2009

Автору надо на OpenGL, там всё нормально с RV615.

#28
20:10, 15 июля 2009

SNVampyre
автор переехал на DX с OGL уже давно... могу сказать что с оглом проблем куда больше...

#29
20:10, 15 июля 2009

Аврелий
> могу сказать что с оглом проблем куда больше...
Каких например?

Страницы: 1 2 3 Следующая »
ПрограммированиеФорумГрафика

Тема в архиве.