void Reset() { directionalLight = GDOC_Utils.FindMainDirectionalLight(); #if UNITY_EDITOR if (UnityEditor.PlayerSettings.stereoRenderingPath == UnityEditor.StereoRenderingPath.SinglePass) { vrMode = GDOC_VRMode.SinglePass; } else if (UnityEditor.PlayerSettings.stereoRenderingPath == UnityEditor.StereoRenderingPath.MultiPass) { vrMode = GDOC_VRMode.MultiPass; } #endif }
void OnSceneLoaded(Scene scene, LoadSceneMode mode) { if (this == null) { return; } if (!enableNewSceneScan) { return; } if (autoDirectionalLight && directionalLight == null) { directionalLight = GDOC_Utils.FindMainDirectionalLight(); ValidateSettings(); } StartCoroutine(ScanScene(scene, true)); }
void OnEnable() { if (SystemInfo.graphicsDeviceType != GraphicsDeviceType.Direct3D11) { initError = GDOC_Error.UnsupportedGraphicsAPI; enabled = false; return; } var os = SystemInfo.operatingSystem; if (os.Contains("Windows") && !os.Contains("64")) { initError = GDOC_Error.x86NotSupported; enabled = false; return; } camera = GetComponent <Camera>(); if (camera == null) { initError = GDOC_Error.CameraRequired; enabled = false; return; } RequestLimits(ref limits); if (limits.version == -1) { // demo won't work in builds enabled = false; return; } if (instance != null && instance != this) { if (instance.isActiveAndEnabled) { initError = GDOC_Error.SecondInstance; enabled = false; return; } /* * _instance = this; * * if (fastCameraSwitch) { * fast = true; * } */ } initError = GDOC_Error.None; if (autoDirectionalLight && directionalLight == null) { directionalLight = GDOC_Utils.FindMainDirectionalLight(); } Clean(camera); Init(camera); InitPlugin(); foreach (var e in Resources.FindObjectsOfTypeAll <GDOC_Occludee>()) { if (e.isTemporary) { if (!kickstart) { Destroy(e); } } else { e.OnRemove(); } } lastCameraPosition = camera.transform.position; lastCameraRotation = camera.transform.rotation; if (maxQueuedFrames > -1) { QualitySettings.maxQueuedFrames = maxQueuedFrames; } maxOcludeeId = 0; if (sampleMaterial == null) { sampleMaterial = new Material(Shader.Find("Hidden/GDOC/Sample")); sampleMaterial.enableInstancing = true; } InitLightBuffers(); InitUI(); if (kickstart) { Kickstart(); } InitScanning(); StartOrRestartCoroutine(ref frameEndWaiter, FrameEndWaiter()); }