public HUDStandardItem() { Enabled = true; UpdateActions = new ActionSet(); }
// Use this for initialization public void Start(SceneOptions options) { this.options = options; DebugUtil.LogLevel = options.LogLevel; FPlatform.InitializeMainThreadID(); // initialize VR platform if VR is active if (gs.VRPlatform.VREnabled) { if (options.Use2DCockpit) { throw new Exception("FContext.Start: cannot use 2D Orthographic Cockpit with VR!"); } if (options.SpatialCameraRig != null) { gs.VRPlatform.Initialize(options.SpatialCameraRig); } } InputExtension.Get.Start(); nextFrameActions = new ActionSet(); // intialize camera stuff camTracker = new CameraTracking(); camTracker.Initialize(this); GetScene(); if (options.SceneInitializer != null) { options.SceneInitializer.Initialize(GetScene()); } if (options.DefaultGizmoBuilder != null) { transformManager = new TransformManager(options.DefaultGizmoBuilder); } else { transformManager = new TransformManager(new AxisTransformGizmoBuilder()); } if (options.EnableTransforms) { transformManager.Initialize(this); } toolManager = new ToolManager(); toolManager.Initialize(this); toolManager.OnToolActivationChanged += OnToolActivationChanged; MouseController.Start(); SpatialController.Start(); // [RMS] hardcode starting cam target point to origin ActiveCamera.SetTarget(Vector3f.Zero); if (options.MouseCameraControls != null) { MouseCameraController = options.MouseCameraControls; } // apply initial transformation to scene ActiveCamera.Manipulator().SceneTranslate(Scene, SceneGraphConfig.InitialSceneTranslate, true); // create behavior sets inputBehaviors = new InputBehaviorSet(); overrideBehaviors = new InputBehaviorSet(); // cockpit needs to go last because UI setup may depend on above cockpitStack = new Stack <Cockpit>(); if (options.EnableCockpit) { PushCockpit(options.CockpitInitializer); } captureMouse = null; captureTouch = null; captureLeft = captureRight = null; bInCameraControl = false; // [RMS] this locks cursor to game unless user presses escape or exits if (FPlatform.IsUsingVR() || options.UseSystemMouseCursor == false) { Cursor.lockState = CursorLockMode.Locked; } // set hacky hackenstein global ActiveContext_HACK = this; startup_checks(); }