Suchergebnisse
Suchergebnisse 1-6 von insgesamt 6.
Die 1. Auflage vom Buch habe ich. Ich meine nach Aufruf von DrawIndexedPrimitive() muss ich EndPass() vom Effekt aufrufen. Sonst wird nur das erste Bild dargestellt. Ja, diese Funktion ist wohl neu dazugekommen ab Sommer 2004 SDK. Also würds wohl auch ohne gehen, wenn ich das SDK vom Buch benutze. Vielleicht hilft mein Post wenigstens jemandem der die Beispiele mit den neueren SDK's nicht zum Laufen bringt.
Hallo, Bei mir wird in den Beispielen aus Kapitel 3 immer nur das 1. Bild angezeigt und danach wird der Bildschirm sofort schwarz. Nach einigem Suchen habe ich festgestellt, dass die EndPass Funktion der Effekte nicht aufgerufen wird. Sobald ich den Aufruf einfüge, funktionieren die Beispiele tadellos. Sollte das nicht ausgebessert werden und als Update zum Download bereitgestellt werden?
Ich denke der Fehler kommt weil in den Beispielen oft kein Effect->EndPass() aufgerufen wird.
Hallo, Auf Seite 276 des ersten Buches in Absatz 3.2.4.3 steht, bei einem dynamischen Buffer würde automatisch D3DPOOL_DEFAULT benutzt werden. Und nur bei einem statischen würde der vom Benutzer gewünschte Pool übergeben. Irgendwie passt das aber nicht zum Code, der ja immer die vom User angeforderte Speicherklasse übergibt.
In dem Thread tbVertexBuffer::Update von Stefan könnte es um diesen Fehler gehen, da es bei ihm nur geht wenn er SetFirstVertex(0) und SetLastVertex(max-1) aufruft. Es kann ja viele Konstellationen geben, in denen sich der Fehler gar nicht auswirkt. Ich fände es gut, wenn solche Sachen den Buchkorrekturen auf der Website hinzugefügt werden, damit sich nicht noch mehr Leute den Kopf zerbrechen wie ich. Ich habe eigentlich gefragt, weil ich Gewissheit wollte und nicht um jemanden zu belehren oder ...
Hallo, Kann es sein, dass die Update()-Funktion in tbVertexBuffer fehlerhaft ist? Sie ruft zwar Lock() mit D3DLOCK_DISCARD auf, aber beim Kopieren von der internen VB-Kopie in den echten VB wird nur der Teil von m_dwFirstVertex bis m_dwLastVertex reinkopiert. Es müsste doch der gesamte Buffer reinkopiert werden, falls Lock() mit D3DLOCK_DISCARD aufgerufen wurde, oder nicht?