Also Danke erstmal.
habe es jetzt mit der D3DXVec3Project Funktion versucht. Leider ohne erfolg:
|
C#-Quelltext
|
1
2
3
4
5
6
7
8
9
10
|
D3DVIEWPORT9 pViewport;
D3DXMATRIX pWorldMatrix,pCameraMatrix,pProjection;
ss_r.D3DDevice->GetViewport(&pViewport);
ss_r.D3DDevice->GetTransform(D3DTS_WORLD,&pWorldMatrix);
ss_r.D3DDevice->GetTransform(D3DTS_VIEW,&pCameraMatrix);
ss_r.D3DDevice->GetTransform(D3DTS_PROJECTION,&pProjection);
D3DXVec3Project(&vTargetPosition,sPlayer.vPosition,&pViewport,&pProjection,&pCameraMatrix,&pWorldMatrix);
DrawNameplate(ss_n.m_NetworkPlayerList[i].cUsername,vTargetPosition.x,vTargetPosition.y);
|
Die Position meines Nameplates ändert sich leider nicht abhängig von der Modellposition.
Edit: Habe gerade nochmal genau nachgesehen und habe festgestellt das die Position sich schon ändert. Aber nur sehr geringfügig (Sprich Model wandert von der linken Bildschirmhälfte auf die Rechte und der Nameplate bewegt sich um nen halben cm)
Wenn ich die Kamera bewege hat das dafür aber wirklich überhaupt keine Auswirkungen.