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

LukasBanana

Alter Hase

  • »LukasBanana« ist der Autor dieses Themas

Beiträge: 1 097

Beruf: Shader Tools Programmer

  • Private Nachricht senden

1

30.07.2010, 16:43

Direct3D9 HLSL Texture Konstante setzen

Hi,
Meine Shader kompiliere ich mit "D3DXCompileShader" und erhalte am Ende eine "ID3DXConstantTable" mit der ich durch "SetInt" oder "SetFloat" Funktionen die Shader Konstanten setzen kann.
Warum kann ich mit "SetInt" die Texturen bzw. "sampler2D" oder "texture" Konstanten nicht setzten??
Die Funktion "SetTexture" gibt's in dem Constant Table Interface leider nicht. Wie komme ich an die "ID3DXEffect" Schnittstelle?

2

30.07.2010, 17:12

Gibts dazu nicht extra Texture-Buffer?

LukasBanana

Alter Hase

  • »LukasBanana« ist der Autor dieses Themas

Beiträge: 1 097

Beruf: Shader Tools Programmer

  • Private Nachricht senden

3

30.07.2010, 17:30

Sorry, hab vergessen zu erwähnen, dass ich ShaderModel 3 meine. Das was du meinst, gibt's glaub ich erst ab Shader Model 4.

Ich hab einfach nur ein "sampler2D" das ich auf 1 setzen will, damit D3D9 weiß, dass diese Texture an 2. (Index beginnt mit 0, also ist 1 die 2. Texture) Stelle steht.

4

30.07.2010, 17:33

Hm, wie wärs mit "sampler2D test : register(s1)"?

LukasBanana

Alter Hase

  • »LukasBanana« ist der Autor dieses Themas

Beiträge: 1 097

Beruf: Shader Tools Programmer

  • Private Nachricht senden

5

30.07.2010, 17:48

Ahh, danke =) hab mich schon gefragt für was das wohl gut ist ^^

LukasBanana

Alter Hase

  • »LukasBanana« ist der Autor dieses Themas

Beiträge: 1 097

Beruf: Shader Tools Programmer

  • Private Nachricht senden

7

30.07.2010, 20:32

@dot: das gibt doch nur den SamplerIndex zurück, wie kann ich ihn setzen? Oder werden bei den sampler Objekten automatisch die Werte erhöt und man muss das gar nicht setzen?

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

8

30.07.2010, 22:12

Genau, das gibt dir den Sampler Index zum entsprechenden Sampler zurück. Du kannst den gar nicht setzen, du musst deine Textur in eben genau diesen Sampler packen den du dort zurückbekommst...

Werbeanzeige