Hallo,

ich muss für die VisionStation, ist ein Projektionssystem, welches mehr räumliche Tiefe vermitteln soll, die Engine der A6 mit Hilfe des SDK und einer API der Herstellerfirma anpassen. Vereinfacht stellt sich der neue Vorgang des Renderns so dar:

Code:

SPIPreRender(..); // API für VisionStation rendert
AppRender(); // A6 rendert
SPIPostRender(); // API rendert noch einmal



Dieser Code muss in der Direct3D Funktion void Render() stehen.

Nun meine Fragen:

Wie lautet der Code der Engine?

Ist dies vielleicht dieser?

Code:
  
DLLFUNC int Render(void)
{
ENTITY* pEntity = (ENTITY*)ev->me;
BMAP* pSkin = (BMAP*)ev->render_map[0];
LPD3DXMESH pMesh = (LPD3DXMESH)ev->render_mesh;
LPD3DMATERIAL9 pMaterial = (LPD3DMATERIAL9)ev->render_d3dmaterial;
LPD3DXEFFECT pEffect = (LPD3DXEFFECT)ev->render_d3dxeffect;
IDirect3DDevice* pD3dDev = (IDirect3DDevice*)ev->pd3ddev;
Ogre_Render(pD3dDev,pMesh,pSkin,pMaterial,pEffect); // your own render function
return 1; // tell A6 not to render this entity
}



Code stammt von diesem Thread:

http://www.coniserver.net/ubbthreads/sho...true#Post697135

Wie implementiere ich dies in WDL, d.h. wie leite ich den Rendervorgang um?

Besten Dank schon mal im voraus.

Gruß,

marcellus