Thank you very much for the reply!!
I have taken a look at your extension. I tried to get the rotation working by setting the PhysicalToWorldMatrix:
vtkOpenVRRenderWindowInteractor* rwi = static_cast<vtkOpenVRRenderWindowInteractor*>(this->Interactor);
vtkOpenVRRenderWindow* rw = static_cast<vtkOpenVRRenderWindow*>(rwi->GetRenderWindow());vtkCamera* camera = this->CurrentRenderer->GetActiveCamera();
double* cameraPos = camera->GetPosition();
double angle = rwi->GetRotation() - rwi->GetLastRotation();
double physicalScale = rwi->GetPhysicalScale();vtkSmartPointer m = vtkSmartPointer::New();
rw->GetPhysicalToWorldMatrix(m);vtkSmartPointer transform = vtkSmartPointer::New();
transform->PostMultiply();
transform->SetMatrix(m);
transform->RotateY(angle);vtkSmartPointer tMInv = vtkSmartPointer::New();
vtkMatrix4x4::Invert(transform->GetMatrix(), tMInv);rw->SetPhysicalToWorldMatrix(transform->GetMatrix());
The problem is, although the world can now be rotated, I see everything double until the end of the rotation. That means the original orientation of the Wolrd and its Objects remains visible as well as its currently rotated state until i exit the rotation mode - then i only see the correct rotated objects.
(I start the rotation by pressing the grip button on both controllers which calls the OnRotate() method)
Did you run into the same problems?