2
3
mirror of https://foundry.openuru.org/gitblit/r/CWE-ou-minkata.git synced 2025-07-14 02:27:40 -04:00

Update the FOV when using plCaptureRender

This commit is contained in:
2013-12-06 21:55:30 -05:00
parent 2d8d42759d
commit 2cecbc9f2f
3 changed files with 20 additions and 13 deletions

View File

@ -309,6 +309,7 @@ void plVirtualCam1::Refresh()
{
plPipeline* pipe = plVirtualCam1::Instance()->fPipe;
SetAspectRatio((float)pipe->Width() / (float)pipe->Height());
plVirtualCam1::Instance()->SetOutputFOV();
}
void plVirtualCam1::SetAspectRatio(float ratio)
@ -845,18 +846,7 @@ void plVirtualCam1::Output()
targetMatrix.GetInverse(&inverse);
fPipe->SetWorldToCamera( targetMatrix, inverse );
if (HasFlags(kSetFOV)) // are we changing the field of view?
{
ClearFlags(kSetFOV);
fPipe->SetFOV(fFOVw,fFOVh);
fPipe->RefreshMatrices();
if (foutLog)
{
fprintf(foutLog, "****************************************************************\n");
fprintf(foutLog, "FOV changed to %f %f\n",fFOVh, fFOVw);
fprintf(foutLog, "****************************************************************\n");
}
}
SetOutputFOV();
/* if (foutLog)
{
fprintf(foutLog, "output pos %f %f %f\n", fOutputPos.fX,fOutputPos.fY,fOutputPos.fZ);
@ -865,6 +855,19 @@ void plVirtualCam1::Output()
} */
}
void plVirtualCam1::SetOutputFOV()
{
ClearFlags(kSetFOV);
fPipe->SetFOV(fFOVw, fFOVh);
fPipe->RefreshMatrices();
if (foutLog)
{
fprintf(foutLog, "****************************************************************\n");
fprintf(foutLog, "FOV changed to %f %f\n", fFOVh, fFOVw);
fprintf(foutLog, "****************************************************************\n");
}
}
void plVirtualCam1::Init()
{
plgDispatch::Dispatch()->RegisterForExactType(plEvalMsg::Index(), GetKey());

View File

@ -81,9 +81,10 @@ protected:
void Output();
void SetOutputFOV();
void IUpdate();
void INext();
public:
enum flags
{