/// <inheritdoc/> public override void Initialize() { if (!Application.isPlaying || BoundaryProfile == null) { return; } boundaryEventData = new BoundaryEventData(EventSystem.current); BoundaryHeight = BoundaryProfile.BoundaryHeight; SetTrackingSpace(); CalculateBoundaryBounds(); ShowFloor = BoundaryProfile.ShowFloor; FloorPhysicsLayer = BoundaryProfile.FloorPhysicsLayer; ShowPlayArea = BoundaryProfile.ShowPlayArea; PlayAreaPhysicsLayer = BoundaryProfile.PlayAreaPhysicsLayer; ShowTrackedArea = BoundaryProfile.ShowTrackedArea; TrackedAreaPhysicsLayer = BoundaryProfile.TrackedAreaPhysicsLayer; ShowBoundaryWalls = BoundaryProfile.ShowBoundaryWalls; BoundaryWallsPhysicsLayer = BoundaryProfile.BoundaryWallsPhysicsLayer; ShowBoundaryCeiling = BoundaryProfile.ShowBoundaryCeiling; CeilingPhysicsLayer = BoundaryProfile.CeilingPhysicsLayer; RaiseBoundaryVisualizationChanged(); }
/// <inheritdoc/> public override void Initialize() { if (!Application.isPlaying || !XRDevice.isPresent) { return; } MixedRealityBoundaryVisualizationProfile profile = ConfigurationProfile as MixedRealityBoundaryVisualizationProfile; if (profile == null) { return; } boundaryEventData = new BoundaryEventData(EventSystem.current); BoundaryHeight = profile.BoundaryHeight; SetTrackingSpace(); CalculateBoundaryBounds(); UnityBoundary.visible = true; ShowFloor = profile.ShowFloor; FloorPhysicsLayer = profile.FloorPhysicsLayer; ShowPlayArea = profile.ShowPlayArea; PlayAreaPhysicsLayer = profile.PlayAreaPhysicsLayer; ShowTrackedArea = profile.ShowTrackedArea; TrackedAreaPhysicsLayer = profile.TrackedAreaPhysicsLayer; ShowBoundaryWalls = profile.ShowBoundaryWalls; BoundaryWallsPhysicsLayer = profile.BoundaryWallsPhysicsLayer; ShowBoundaryCeiling = profile.ShowBoundaryCeiling; CeilingPhysicsLayer = profile.CeilingPhysicsLayer; if (ShowFloor) { GetFloorVisualization(); } if (ShowPlayArea) { GetPlayAreaVisualization(); } if (ShowTrackedArea) { GetTrackedAreaVisualization(); } if (ShowBoundaryWalls) { GetBoundaryWallVisualization(); } if (ShowBoundaryWalls) { GetBoundaryCeilingVisualization(); } RaiseBoundaryVisualizationChanged(); }
/// <inheritdoc/> public override void Initialize() { // The profile needs to be read on initialization to ensure that re-initialization // after profile change reads the correct data. ReadProfile(); if (!Application.isPlaying) { return; } boundaryEventData = new BoundaryEventData(EventSystem.current); SetTrackingSpace(); CalculateBoundaryBounds(); RaiseBoundaryVisualizationChanged(); }
/// <inheritdoc/> public override void Initialize() { // Initialize this value earlier than other systems, so we can use it to block boundary events being raised too early IsInitialized = false; // The profile needs to be read on initialization to ensure that re-initialization // after profile change reads the correct data. ReadProfile(); if (!Application.isPlaying || !DeviceUtility.IsPresent) { return; } boundaryEventData = new BoundaryEventData(EventSystem.current); SetTrackingSpace(); CalculateBoundaryBounds(); base.Initialize(); RefreshVisualization(); RaiseBoundaryVisualizationChanged(); }