Vertex Shader v DirectX – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Vertex Shader v DirectX – C / C++ – Fórum – Programujte.comVertex Shader v DirectX – C / C++ – Fórum – Programujte.com

 

Míša
~ Anonymní uživatel
106 příspěvků
8. 8. 2009   #1
-
0
-

Ahoj,
snažím se dojít na to jak používat VertexShader v DirectX ale asi (určitě) dělám něco špatně a nemůžu dojít na to co. Myslím, že nejlépe pomůže část kodu...

Assembler VertexShaderu - měl by jen prohodit souřadnice, nic složitého (mimochodem zkoušel jsem pár zdrojáků již napsaných):



vs.1.0
dcl_position v0
mov r1.x, v0.y
mov r1.y, v0.z
mov r1.z, - v0.x
mov r1.w, v0.w
mov oPos, r1


Vytvoření VertexShaderu (s tím není problém, funguje správně):


IDirect3D9 * D3D;
IDirect3DDevice9 * D3DD;
ID3DXMesh * D3DM;
IDirect3DVertexShader9 * D3DVS;
ID3DXBuffer * D3DB;
...
D3DXAssembleShaderFromFile( "vertexshader.vs", 0, 0, 0, &D3DB, 0 );
D3DD -> CreateVertexShader( ( DWORD * ) D3DB, &D3DVS );
...


Použití při renderování:


...
D3DD -> BeginScene();
D3DD -> SetVertexShader( D3DVS );
D3DM -> DrawSubset( 0 );
D3DD -> EndScene();
D3DD -> Present( 0, 0, 0, 0 );
...


Klasicky kreslím mesh konvičky, problém je v tom že mi ve scéně onen VertexShader prostě nic nedělá a nedaří se mi dojít na to proč.

Díky za rady...

Nahlásit jako SPAM
IP: 88.102.27.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 3 hosté

Podobná vlákna

XNA Pixel Shader — založil Kenvelo

DirectX 8/9 — založil samo

DirectX 9c a 10 — založil eraser17

C#/C++ a DirectX — založil Scrash

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý