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

Phili

unregistriert

51

27.06.2006, 18:44

@Nox
Wiso, später kann man doch eh nicht mehr unterscheiden, ob das jetzt ehemals HLSL war, oder Assembler-Compilliert wird beides ;)

@Ghostrider
So wie ichs versteh musst du der Funktion einfach nen DWORD Array mit dem Compillierten Shader geben.

@all
Ich hab aber auch selber nen kleines verständnisprob. Bei HLSL werden doch globale Variablen irgendwie "vom Programm gesetzt". Aber wie weist man denn solchen Variablen in Shadern Werte zu?

Nox

Supermoderator

Beiträge: 5 272

Beruf: Student

  • Private Nachricht senden

52

27.06.2006, 18:45

schau dir doch einfach das sample an. In den alten DXVersionen haben sie das zumindest per SetVertexShader gemacht.
PRO Lernkurs "Wie benutze ich eine Doku richtig"!
CONTRA lasst mal die anderen machen!
networklibbenc - Netzwerklibs im Vergleich | syncsys - Netzwerk lib (MMO-ready) | Schleichfahrt Remake | Firegalaxy | Sammelsurium rund um FPGA&Co.

john

Alter Hase

Beiträge: 786

Beruf: Schüler

  • Private Nachricht senden

53

28.06.2006, 13:53

Phili
Klar kannst dus auch ohne hinbekommen, geht nur darum dass es ja kein Verbrechen ist dies mal zu nutzen.^^
Bitte jetzt daraus keine Wortgefechte machen und wieder so eine sinnlose Diskussion anfangen.
mfg
john

Phili

unregistriert

54

28.06.2006, 14:04

@John91

hast schon recht, aber ich habs mir halt vorgenommen. :)

Phili

unregistriert

55

28.06.2006, 18:08

Meint ihr, das würde so funktionieren? Ich frag natürlich, weils nicht klappt. Ich glaub aber, das könnt auch dran liegen, das ich mt fxc irgendwie nur Objekt Files machen kann. Ich schätz mal ich mus danach noch mit flink drüber. Ich hab bei so was einfach keine Erfahrung.

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
class PH3DVertexShader
{
public:
    DWORD Shaderdata[100];
    IDirect3DVertexShader9 *Shader;
    void Laden(char *filename, IDirect3DDevice9 *D3DDev);
    void Aktivieren(IDirect3DDevice9 *D3DDev);
};

void PH3DVertexShader::Laden(char *filename, IDirect3DDevice9 *D3DDev)
{
    ifstream ifs(filename, ios::binary);
    for(int i=0; !ifs.eof(); i++)
    {
        ifs>>Shaderdata[i];
    }
    D3DDev->CreateVertexShader(Shaderdata, &Shader);
}
void PH3DVertexShader::Aktivieren(IDirect3DDevice9 *D3DDev)
{
    D3DDev->SetVertexShader(Shader);
}

Nox

Supermoderator

Beiträge: 5 272

Beruf: Student

  • Private Nachricht senden

56

28.06.2006, 21:22

C-/C++-Quelltext

1
2
3
4
 for(int i=0; !ifs.eof(); i++) 
    { 
        ifs>>Shaderdata[i]; 
    }


C-/C++-Quelltext

1
D3DDev->CreateVertexShader(Shaderdata, &Shader); 


wtf? Wie ließt du dateien aus? Und der 2. Parameter von CreateVertexShader soll eine Adresse sein und zwar auf ein stinknormales Datenarray(z.b. char)
PRO Lernkurs "Wie benutze ich eine Doku richtig"!
CONTRA lasst mal die anderen machen!
networklibbenc - Netzwerklibs im Vergleich | syncsys - Netzwerk lib (MMO-ready) | Schleichfahrt Remake | Firegalaxy | Sammelsurium rund um FPGA&Co.

Phili

unregistriert

57

28.06.2006, 22:03

@Nox
Ist doch auch nen DWORD-Array, oder?

Nox

Supermoderator

Beiträge: 5 272

Beruf: Student

  • Private Nachricht senden

58

28.06.2006, 22:13

"Pointer to an array of tokens that represents the vertex shader, including any embedded debug and symbol table information."

Also einfach die Datei binäre lesen, in einem Array speichern und das Array übergeben :)
PRO Lernkurs "Wie benutze ich eine Doku richtig"!
CONTRA lasst mal die anderen machen!
networklibbenc - Netzwerklibs im Vergleich | syncsys - Netzwerk lib (MMO-ready) | Schleichfahrt Remake | Firegalaxy | Sammelsurium rund um FPGA&Co.

Phili

unregistriert

59

29.06.2006, 15:09

@Sorry, das hört sich jetzt vieleicht bescheuert n, aber ich hab es erlichgesagt noch nie für nötiggehalten, ne binäre Datei einzulesen, hab dswegen auf dem Gebiet Null Erfahrung. Ich dachte erlichgesagt mit

C-/C++-Quelltext

1
ios::binary
würd das gehen. Kannst du mir nen bissl Pseudocode liefern?

ext

Treue Seele

  • Private Nachricht senden

60

29.06.2006, 15:46

>> und << arbeiten lexikalisch, was du willst ist read

Werbeanzeige