P
Hallo,
ich habe ein Problem beim Aufstellen der Matrix um die Objekte aus dem Post perspekt. Raum in den Lichtraum zu übertragen.
Das grundsätzliche Prinzip des PSM hab ich verstanden, aber bei meiner Suche bin ich halt immmer nur über die Prinzipien und feine Bilder gestolpert, aber mal ne Erklärung, wie man die Matrizen herleitet: Fehlanzeige.
Von daher wollt ich fragen, ob da evtl wär Quellen hat oder selber was dazu schreiben kann.
ACh ja ziel ist es SChatten für ein Terrain im gesamtem Frustum zu bekommen(Parallellicht, also Lichtquelle Sonne)
Es hapert irgendwie schon an dem Sonderfall, wenn das Licht senkrecht auf dem Frustum steht(dann bleibt das Licht ja auch im Postper. Raum parallel). Da wollte ich folgendes machen:
//Licht parallel von oben
CAEMatrix lView,lProj;
lView.identity();
lView.setRotateX(-3.1415f / 2);
//startX,startY,Länge,Breite,ClippingPlanes
calcProjectionOrtho(-1.0f,-1.0f,2.0f,2.0f,0.0f,1.2f,lProj);
postProj = lProj * lView * CGraphicManager::getInstance()->getDevice()->getProjViewMatrix();
Hier wollte ich die Szene im 90° drehen und dann die Orthogonale Projektion durchführen, abner meine Shadowmap ist immer leer, Es wird nichts hineingerendert.
Also falls per Tipps, Verbesserungsvorschläge usw hat immer her damit