hallo,
hab heut nur 2 fragen. Hoff es weiß wieder einer Rat.
ich hab mir mal n Cursor gebastelt aus einer Textur weil der Windowscursor beim umsehen immer ruckelt.
Die Position berechne ich so:
vPos = Kameraposition,
vRot = Kamerarotation
|
Quellcode
|
1
2
3
4
5
6
7
8
9
10
11
|
__declspec(dllexport) void __cdecl Cursor_Render(VECTOR3 vPos, VECTOR3 vRot, float fSize)
{
if (!bCursor) { bCursor=true; Cursor_Create(file); }
vPos.x += 3 * sinf(vRot.y);
vPos.z += 3 * cosf(vRot.y);
vPos.y += 3 * sinf(vRot.x);
...
und dann der ganze Matrix-Schnickschnack
...
|
Das geht super (die 3 ist die Entfernung vor der Kamera)
aber wie bekomm ich den Cosinus und Sinus da raus?
Das stockt manchmal glaub ich deswegen.
Bei fSize darf ich außerdem nicht über 0.3 hinaus weil die Textur dann riesig ist aber wenn ich die 3 bei der Positionsberechnung ändere und das weiter in die Ferne rücke, dann könnten Objekte vor den Cursor erscheinen.
Kann ich mit sowas ähnlichen wie StretchRect(..) für 3D aber nicht einfach die Textur in die Mitte mappen?
Wie bekomm ich sonst den Sinus und Cosinus weg?
2. Frage:
Waffen auch mit Textur?
thx schonmal