Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

BlackSnake

Community-Fossil

  • »BlackSnake« ist der Autor dieses Themas

Beiträge: 1 549

Beruf: Student

  • Private Nachricht senden

91

12.07.2006, 18:48

@CW_Kovok
hast du ihn getestet oder war das nur ne zustimmung zu Anfänger

CW_Kovok

Alter Hase

Beiträge: 836

Wohnort: nähe Bonn

Beruf: Schüler

  • Private Nachricht senden

92

12.07.2006, 18:50

eine Zustimmung, aber mit dem wissen, dass sonst gar nix mehr gehen würde, wenn der Shader nich funktioniert. Außerdem wenn du ganz sicher gehen willst, dann versetz die Position im Shader einfach um 2 oder so, einfach halt nen effekt den du auch sehen kannst
Was es alles gibt, das ich nich brauche - Aristoteles

BlackSnake

Community-Fossil

  • »BlackSnake« ist der Autor dieses Themas

Beiträge: 1 549

Beruf: Student

  • Private Nachricht senden

93

12.07.2006, 19:14

jetzt habe ich einen geschreiben der das Objekt in Wire-Frame anzeigen soll.

ich glaube aber ich habe da irgendwas falsch gemacht:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
// Effekt, zum Anzeigen eines Objekts in "WireFrame-Style"


float4x4 WorldMatrix;       // Weltmatrix des Obejekts

float4   PixelColor;        // Farbe jedes einzelnen Pixel von dem Objekt


// Vertex-Shader Struktur

struct VS_OUTPUT
{
    float4 Pos:POSITION;
};

// Der Vertex-Shader transformiert die Position der Modellvertize auf den Bildschirm

VS_OUTPUT VS(float4 Pos:POSITION)
{
    VS_OUTPUT Out = (VS_OUTPUT)0;
    
    Out.Pos       = mul(Pos, WorldMatrix);
    
    return Out;
}

// Der Pixel-Shader liefert einen Farbwert zurück

float4 PS():COLOR
{
    return PixelColor;
}

//-----------------------------------------------------------------------------------

// Technik 1

TECHNIQUE T1
{
    PASS P1
    {
        FillMode = wireframe;
        CullMode = none;
        
        // Compilieren des Vertex-Shaders in der Version 1.1

        VertexShader = compile vs_1_1 VS();
        
        // Compilieren des Pixel-Shaders in die Version 1.1

        PixelShader = compile ps_1_1 PS();
    }
}


ich denke mal es liegt irgendwie an den farben die der pixelshader zurück liefert oder?

BlackSnake

Community-Fossil

  • »BlackSnake« ist der Autor dieses Themas

Beiträge: 1 549

Beruf: Student

  • Private Nachricht senden

94

12.07.2006, 19:29

bei david gibt es als beispiel auch so nen effekt der WireFrame darstellt.
aber der hat nicht sowas wie:

VertexShader = compile vs_1_1 VS();

was genau habe ich bei meinem shader oben walsch gemacht??

BlackSnake

Community-Fossil

  • »BlackSnake« ist der Autor dieses Themas

Beiträge: 1 549

Beruf: Student

  • Private Nachricht senden

95

12.07.2006, 19:44

Zitat von »"CW_Kovok"«

e Außerdem wenn du ganz sicher gehen willst, dann versetz die Position im Shader einfach um 2 oder so


ne blöde frage vielleicht. wie versetzte ich die Position im Shader.

einfach:

Pos = mul((Pos+2), WorldMatrix);

oder wie??^^

BlackSnake

Community-Fossil

  • »BlackSnake« ist der Autor dieses Themas

Beiträge: 1 549

Beruf: Student

  • Private Nachricht senden

96

12.07.2006, 20:00

wenn ihr wüsstet wie ich mich gerne selber mal erschieße will^^.

Effekt_WireFrame->Begin();
Effekt_WireFrame->Pass(0);

bei nummer 2 habe ich 1 stehe gehabt. also für 2 durchgänge. aber es gibt nur einen. immer diese scheiß fehler die ich machen muss. :roll:

CW_Kovok

Alter Hase

Beiträge: 836

Wohnort: nähe Bonn

Beruf: Schüler

  • Private Nachricht senden

97

12.07.2006, 20:08

einen neuen Vektor mit (0,0,2,0) in den Shader einfügen, dann mit Effekt->SetVector(Name, Wert) setzen und dann benutzen
Was es alles gibt, das ich nich brauche - Aristoteles

BlackSnake

Community-Fossil

  • »BlackSnake« ist der Autor dieses Themas

Beiträge: 1 549

Beruf: Student

  • Private Nachricht senden

98

12.07.2006, 20:10

es geht soweit. gut soweit ist gut.

jetzt sehe ich das modell nicht mehr

CW_Kovok

Alter Hase

Beiträge: 836

Wohnort: nähe Bonn

Beruf: Schüler

  • Private Nachricht senden

99

12.07.2006, 20:19

0,0,2,0 war ja auch nur ein beispiel, einfach denm passenden nehmen oder einfach

Pos[x] = Wert

einfügen
Was es alles gibt, das ich nich brauche - Aristoteles

BlackSnake

Community-Fossil

  • »BlackSnake« ist der Autor dieses Themas

Beiträge: 1 549

Beruf: Student

  • Private Nachricht senden

100

12.07.2006, 20:22

das habe ich noch gar nicht gemacht mit dem einfügen.
ich habe halb nur die passes umgeändert auf 1 durchgang.
jetzt läuft der shader zwar (das merkr ich daran das ich das objekt nicht mehr sehe^^)

Werbeanzeige