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

lfp

Frischling

  • »lfp« ist der Autor dieses Themas
  • Private Nachricht senden

1

25.01.2015, 14:14

DirectX 9 - farbige Vertices ohne Lighting

Hallo,
kennt ihr eine Möglichkeit mit DirectX 9 Vertices farbig darzustellen ohne dabei Lighting zu verwenden oder die Farbe direkt in den VertexBuffer (D3DFVF_DIFFUSE) zu schreiben?
Da ich die Farbe sehr oft ändern muss, würde es sich unnötig negativ auf die Performance auswirken in jedem Frame den Buffer neu zu beschreiben, da ich ja nur die Farbe ändern will, ebenso benötige ich keine Beleuchtung (die Vertices besitzen eh keine Normals) und möchte daher auch Lighting ausgeschaltet lassen da natürlich auch das eine Verschwendung wichtiger CPU-Zeit ist...

Gibt es da Möglichkeiten? Oder muss ich doch eine dieser beiden Optionen verwenden, und wie ginge das wohl am effizientesten?

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

2

25.01.2015, 15:54

Wenn alle dieselbe Farbe haben sollen, dann geht das z.B. so:

C-/C++-Quelltext

1
2
3
d3dDevice->SetTextureStageState(0, D3DTSS_COLOROP, D3DTOP_SELECTARG1);
d3dDevice->SetTextureStageState(0, D3DTSS_COLORARG1, D3DTA_CONSTANT);
d3dDevice->SetTextureStageState(0, D3DTSS_CONSTANT, /* Hier deine Farbe als DWORD! */);

lfp

Frischling

  • »lfp« ist der Autor dieses Themas
  • Private Nachricht senden

3

25.01.2015, 16:29

Hey, cool! :) Probier ich gleich mal aus, also wenn das klappt ist es echt die beste Lösung, da kann man ja sogar später noch über D3DTSS_COLORARG2 die Farbe mit Texturen mischen...

lfp

Frischling

  • »lfp« ist der Autor dieses Themas
  • Private Nachricht senden

4

25.01.2015, 17:22

Funktioniert bestens, vielen Dank!

Werbeanzeige