Du bist nicht angemeldet.

Werbeanzeige

MannyDasMammut

Treue Seele

  • »MannyDasMammut« ist der Autor dieses Themas

Beiträge: 76

Wohnort: Baden - Würtemberg / Achern

Beruf: Schüler

  • Private Nachricht senden

1

09.05.2004, 15:10

Shader in Rendervorgang implementiere

Hi,

also ich würde gerne Shader in den Rendervorgang implementieren. Kennt jemand ne seite wo in etwas steht wie das geht :)
Werde ich hier eigentlich noch gebrauch ansonsten würd ich gerne nach Hause gehen und meine graue Wand anstarren.

Nox

Supermoderator

Beiträge: 5 282

Beruf: Student

  • Private Nachricht senden

2

09.05.2004, 15:26

Wie meinst du das mit dem implementieren?

MannyDasMammut

Treue Seele

  • »MannyDasMammut« ist der Autor dieses Themas

Beiträge: 76

Wohnort: Baden - Würtemberg / Achern

Beruf: Schüler

  • Private Nachricht senden

3

09.05.2004, 15:31

Ich will eigentlich nur wisse

Naja ich will eigentlich nur wissen wie ich das Vertexformat einstellen muss und welche Funktionen oder welche Renderstates ich setzen muss ( DX 8) damit der Shader verwendet wird.
Werde ich hier eigentlich noch gebrauch ansonsten würd ich gerne nach Hause gehen und meine graue Wand anstarren.

Nox

Supermoderator

Beiträge: 5 282

Beruf: Student

  • Private Nachricht senden

4

09.05.2004, 15:59

Vertex Shader States, vielleicht hilft's dir.

MannyDasMammut

Treue Seele

  • »MannyDasMammut« ist der Autor dieses Themas

Beiträge: 76

Wohnort: Baden - Würtemberg / Achern

Beruf: Schüler

  • Private Nachricht senden

5

09.05.2004, 16:30

Ne was ich wissen will ist

Ne also die Shaderversion usw. werden geprüft und mein Shader Code ist fertig. Die vertex Declaration hab ich auch gemacht aber wie kann ich den ASCII Shadercoder aus meiner Textdate jetzt benutzen. Mir fehlen irgendwie die Funktionen zum kompilieren des Codes und zum bekommen des benötigten DWORD handles das ich zum setzen mit SetVertexShader brauche.
Werde ich hier eigentlich noch gebrauch ansonsten würd ich gerne nach Hause gehen und meine graue Wand anstarren.

Nox

Supermoderator

Beiträge: 5 282

Beruf: Student

  • Private Nachricht senden

6

09.05.2004, 16:36

Achso,

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
LPDIRECT3DPIXELSHADER9 m_pVertexShader;
TCHAR        strShaderPath[512];
LPD3DXBUFFER pCode;                  // Buffer with the assembled shader code
LPD3DXBUFFER pErrorMsgs;             // Buffer with error messages
DXUtil_FindMediaFileCb( strShaderPath, sizeof(strShaderPath), 
                        _T("VertexShader.vsh") );

D3DXAssembleShaderFromFile( strPixelShaderPath, NULL, NULL, 0,  
                            &pCode, &pErrorMsgs, NULL );   
m_pd3dDevice->CreateVertexShader((DWORD*)pCode->GetBufferPointer(),
                                  &m_pVertexShader)
pCode->Release();
pErrorMsgs->Release()

MannyDasMammut

Treue Seele

  • »MannyDasMammut« ist der Autor dieses Themas

Beiträge: 76

Wohnort: Baden - Würtemberg / Achern

Beruf: Schüler

  • Private Nachricht senden

7

09.05.2004, 20:07

Ist das DX 8

Ist das DirectX 8 ???
Werde ich hier eigentlich noch gebrauch ansonsten würd ich gerne nach Hause gehen und meine graue Wand anstarren.

8

09.05.2004, 21:04

Nein 9 ;)

Das eigentliche Rendern ist auch nicht viel meh. Nachdem du deinen Code kompiliert hast und gesetzt hast mit den Declaration's fängst du einfach an zu Rendern, ganz normal mit den DrawPrimitive Methoden.
Wichtig! Ich übernehme keinerlei Verantwortung für eventl. Datenverlust oder Schäden am Rechner ;D

MannyDasMammut

Treue Seele

  • »MannyDasMammut« ist der Autor dieses Themas

Beiträge: 76

Wohnort: Baden - Würtemberg / Achern

Beruf: Schüler

  • Private Nachricht senden

9

09.05.2004, 23:25

NOBB

Neben euch komm ich mir immer wie ein Looser vor ;)

Deshalb dürft ihr mir auch nochmal helfen also mein Vertexshader sieht zum Test einfach mal so aus:

Quellcode

1
2
3
vs1.1
m4x4 oPos,v0,c0
mov oD0,v5


Also für alle die die das nonit so verstehen die erste Zeile ist die Vertexshaderversion die zweite Zeile übernimmt die Transformation von WELT in BILDSCHIRM Koordinaten und die Letzte Zeile verschiebt einfach die jeweilige Vertexfarbe in das Ausgaberegister für die Vertexfarbe.

Meine Frage ist nun aber wie ich diese Transformationsmatrix berechnen muss ?
Werde ich hier eigentlich noch gebrauch ansonsten würd ich gerne nach Hause gehen und meine graue Wand anstarren.

Nox

Supermoderator

Beiträge: 5 282

Beruf: Student

  • Private Nachricht senden

10

10.05.2004, 00:05

Vertex Shader Creation, das ist das ganze Programm, aber die matirx wird ihrgendwie in diesem Beispiel in 4 x4DVertoren aufgeteilt.

Werbeanzeige