Behöver lite vägledning... ;) Om du använder TransformedTextured vertexformatet så ska du inte använda några transformationsmatriser, utan det är precis som du säger direkta skärm-koordinater.2D i Direct3D
Jag håller på att försöka sätta ihop en 2D motor med hjälp av D3D i C# (såklart ;) ). Jag vill inte använda den inbyggda klassen Sprite, så tipsa mig inte om den :P. Jag kan rita ut en färgad triangel på skärmen, jag kan även rita ut en quad med textur på. Problemet är att jag inte kan rita ut den på rätt ställe. Jag vill kunna använda skärm koordinater när jag ritar ut quaden. Just nu utgår programmet från att 0,0 är nånstans i mitten eller nåt ~_~.
Vad jag vill veta är:
Vilken World, view och projection matrix jag ska använda.
Och vilken vertex typ jag ska använda.
Trodde man skulle använda TransformedTextured (där kan man sätta RHW). Men när jag använder den syns det aldrig nåt på skärmen. (Har provat hur många proj, view, world matrixes som helst.)
Använder jag PositionNormalTextured kan jag rita ut en textured quad på skärmen men den hamnar aldrig på rätt ställe.Sv: 2D i Direct3D
Det finns några saker som du kan ha missat, det vanliga är att du definerat dina trianglar i felaktig ordning (alltså att triangeln göms på grund av Backface Culling som automatiskt sker). Prova att stänga av culling med
<code>
device.RenderState.CullMode = Cull.None;
</code>
Om du vill så kan du skicka mig koden på johanl@microsoft.com så kan jag titta på det!