// vrapi_GetHmdInfo // called by AppThreadFunction public void ovrRenderer_Create(ref ovrHmdInfo hmdInfo) { ConsoleExtensions.trace("enter ovrRenderer_Create"); fixed(int *hmdInfo_SuggestedEyeResolution = hmdInfo.SuggestedEyeResolution) fixed(float *hmdInfo_SuggestedEyeFov = hmdInfo.SuggestedEyeFov) { //I/xNativeActivity(26905): \VrCubeWorld.Renderer.cs:89 hmdInfo_SuggestedEyeResolution width 1024 //I/xNativeActivity(26905): \VrCubeWorld.Renderer.cs:90 hmdInfo_SuggestedEyeResolution height 1024 //I/xNativeActivity(26905): \VrCubeWorld.Renderer.cs:91 NUM_MULTI_SAMPLES 4 //I/xNativeActivity(26905): \VrCubeWorld.Renderer.cs:95 hmdInfo_SuggestedEyeFov[0] 90 //I/xNativeActivity(26905): \VrCubeWorld.Renderer.cs:96 hmdInfo_SuggestedEyeFov[1] 90 //I/xNativeActivity(26905): \VrCubeWorld.Renderer.cs:97 DisplayRefreshRate 60 ConsoleExtensions.tracei("hmdInfo_SuggestedEyeResolution width ", hmdInfo_SuggestedEyeResolution[0]); ConsoleExtensions.tracei("hmdInfo_SuggestedEyeResolution height ", hmdInfo_SuggestedEyeResolution[1]); ConsoleExtensions.tracei("NUM_MULTI_SAMPLES ", NUM_MULTI_SAMPLES); ConsoleExtensions.tracei("hmdInfo_SuggestedEyeFov[0] ", (int)hmdInfo_SuggestedEyeFov[0]); ConsoleExtensions.tracei("hmdInfo_SuggestedEyeFov[1] ", (int)hmdInfo_SuggestedEyeFov[1]); ConsoleExtensions.tracei("DisplayRefreshRate ", (int)hmdInfo.DisplayRefreshRate); // 1012 // Create the render Textures. for (int i = 0; i < NUM_BUFFERS; i++) { for (int eye = 0; eye < NUM_EYES; eye++) { //ConsoleExtensions.tracei("call ovrRenderTexture_Create i ", i); this.RenderTextures[i, eye].ovrRenderTexture_Create( hmdInfo_SuggestedEyeResolution[0], hmdInfo_SuggestedEyeResolution[1], NUM_MULTI_SAMPLES, i, eye ); } } this.BufferIndex = 0; // https://www.kickstarter.com/projects/wearality/wearality-sky-limitless-vr // Setup the projection matrix. this.ProjectionMatrix = VrApi_Helpers.ovrMatrix4f_CreateProjectionFov( hmdInfo_SuggestedEyeFov[0] * ((float)Math.PI / 180.0f), hmdInfo_SuggestedEyeFov[1] * ((float)Math.PI / 180.0f), 0.0f, 0.0f, 1.0f, 0.0f); this.TanAngleMatrix = VrApi_Helpers.ovrMatrix4f_TanAngleMatrixFromProjection(ref this.ProjectionMatrix); } //ConsoleExtensions.trace("exit ovrRenderer_Create"); }
// vrapi_GetHmdInfo // called by AppThreadFunction public void ovrRenderer_Create(ref ovrHmdInfo hmdInfo) { ConsoleExtensions.trace("enter ovrRenderer_Create"); fixed (int* hmdInfo_SuggestedEyeResolution = hmdInfo.SuggestedEyeResolution) fixed (float* hmdInfo_SuggestedEyeFov = hmdInfo.SuggestedEyeFov) { //I/xNativeActivity(26905): \VrCubeWorld.Renderer.cs:89 hmdInfo_SuggestedEyeResolution width 1024 //I/xNativeActivity(26905): \VrCubeWorld.Renderer.cs:90 hmdInfo_SuggestedEyeResolution height 1024 //I/xNativeActivity(26905): \VrCubeWorld.Renderer.cs:91 NUM_MULTI_SAMPLES 4 //I/xNativeActivity(26905): \VrCubeWorld.Renderer.cs:95 hmdInfo_SuggestedEyeFov[0] 90 //I/xNativeActivity(26905): \VrCubeWorld.Renderer.cs:96 hmdInfo_SuggestedEyeFov[1] 90 //I/xNativeActivity(26905): \VrCubeWorld.Renderer.cs:97 DisplayRefreshRate 60 ConsoleExtensions.tracei("hmdInfo_SuggestedEyeResolution width ", hmdInfo_SuggestedEyeResolution[0]); ConsoleExtensions.tracei("hmdInfo_SuggestedEyeResolution height ", hmdInfo_SuggestedEyeResolution[1]); ConsoleExtensions.tracei("NUM_MULTI_SAMPLES ", NUM_MULTI_SAMPLES); ConsoleExtensions.tracei("hmdInfo_SuggestedEyeFov[0] ", (int)hmdInfo_SuggestedEyeFov[0]); ConsoleExtensions.tracei("hmdInfo_SuggestedEyeFov[1] ", (int)hmdInfo_SuggestedEyeFov[1]); ConsoleExtensions.tracei("DisplayRefreshRate ", (int)hmdInfo.DisplayRefreshRate); // 1012 // Create the render Textures. for (int i = 0; i < NUM_BUFFERS; i++) for (int eye = 0; eye < NUM_EYES; eye++) { //ConsoleExtensions.tracei("call ovrRenderTexture_Create i ", i); this.RenderTextures[i, eye].ovrRenderTexture_Create( hmdInfo_SuggestedEyeResolution[0], hmdInfo_SuggestedEyeResolution[1], NUM_MULTI_SAMPLES, i, eye ); } this.BufferIndex = 0; // https://www.kickstarter.com/projects/wearality/wearality-sky-limitless-vr // Setup the projection matrix. this.ProjectionMatrix = VrApi_Helpers.ovrMatrix4f_CreateProjectionFov( hmdInfo_SuggestedEyeFov[0] * ((float)Math.PI / 180.0f), hmdInfo_SuggestedEyeFov[1] * ((float)Math.PI / 180.0f), 0.0f, 0.0f, 1.0f, 0.0f); this.TanAngleMatrix = VrApi_Helpers.ovrMatrix4f_TanAngleMatrixFromProjection(ref this.ProjectionMatrix); } //ConsoleExtensions.trace("exit ovrRenderer_Create"); }