@@ -584,6 +584,16 @@ int main(int argc, char** argv)
584
584
nbl::core::vectorSIMDf (0 , 0 , +1 , 0 ), // +Z
585
585
nbl::core::vectorSIMDf (0 , 0 , -1 , 0 ), // -Z
586
586
};
587
+
588
+ const nbl::core::vectorSIMDf upVectors[6 ] =
589
+ {
590
+ nbl::core::vectorSIMDf (0 , +1 , 0 , 0 ), // +Y
591
+ nbl::core::vectorSIMDf (0 , +1 , 0 , 0 ), // +Y
592
+ nbl::core::vectorSIMDf (0 , 0 , +1 , 0 ), // -Z
593
+ nbl::core::vectorSIMDf (0 , 0 , -1 , 0 ), // +Z
594
+ nbl::core::vectorSIMDf (0 , +1 , 0 , 0 ), // +Y
595
+ nbl::core::vectorSIMDf (0 , +1 , 0 , 0 ), // +Y
596
+ };
587
597
588
598
const std::string suffixes[6 ] =
589
599
{
@@ -620,16 +630,15 @@ int main(int argc, char** argv)
620
630
auto & staticCamera = cubemapFaceSensorData.staticCamera ;
621
631
622
632
const auto & camView = camViews[i];
633
+ const auto & upVector = upVectors[i];
623
634
624
635
staticCamera->setPosition (mainCamPos.getAsVector3df ());
625
636
staticCamera->setTarget ((mainCamPos + camView).getAsVector3df ());
626
-
627
- if (core::dot (core::normalize (core::cross (staticCamera->getUpVector (),camView)),core::cross (mainCamUp,camView)).x <0 .99f )
628
- staticCamera->setUpVector (mainCamUp);
637
+ staticCamera->setUpVector (upVector);
629
638
630
639
auto borderPixels = cubemapFaceSensorData.highQualityEdges ;
631
640
// TODO: compute fov based on borderPixels
632
- auto fov = core::radians (90 );
641
+ auto fov = core::radians (90 . 0f );
633
642
auto aspectRatio = 1 .0f ;
634
643
if (mainSensorData.width != mainSensorData.height )
635
644
{
@@ -641,7 +650,8 @@ int main(int argc, char** argv)
641
650
staticCamera->setProjectionMatrix (core::matrix4SIMD::buildProjectionMatrixPerspectiveFovRH (fov, 1 .0f , nearClip, farClip));
642
651
else
643
652
staticCamera->setProjectionMatrix (core::matrix4SIMD::buildProjectionMatrixPerspectiveFovLH (fov, 1 .0f , nearClip, farClip));
644
-
653
+
654
+ cubemapFaceSensorData.interactiveCamera = smgr->addCameraSceneNodeModifiedMaya (nullptr , -1 .0f * mainSensorData.rotateSpeed , 50 .0f , mainSensorData.moveSpeed , -1 , 2 .0f , defaultZoomSpeedMultiplier, false , true );
645
655
cubemapFaceSensorData.resetInteractiveCamera ();
646
656
sensors.push_back (cubemapFaceSensorData);
647
657
}
0 commit comments