private void addDebugTools() { Add(DrawVisualiser = new DrawVisualiser() { Depth = float.MaxValue / 2, }); Add(LogOverlay = new LogOverlay()); }
public bool OnPressed(FrameworkAction action) { switch (action) { case FrameworkAction.CycleFrameStatistics: switch (FrameStatistics.Value) { case FrameStatisticsMode.None: FrameStatistics.Value = FrameStatisticsMode.Minimal; break; case FrameStatisticsMode.Minimal: FrameStatistics.Value = FrameStatisticsMode.Full; break; case FrameStatisticsMode.Full: FrameStatistics.Value = FrameStatisticsMode.None; break; } return(true); case FrameworkAction.ToggleDrawVisualiser: if (drawVisualiser == null) { LoadComponentAsync(drawVisualiser = new DrawVisualiser { Depth = float.MinValue / 2, }, AddInternal); } drawVisualiser.ToggleVisibility(); return(true); case FrameworkAction.ToggleLogOverlay: if (logOverlay == null) { LoadComponentAsync(logOverlay = new LogOverlay { Depth = float.MinValue / 2, }, AddInternal); } logOverlay.ToggleVisibility(); return(true); case FrameworkAction.ToggleFullscreen: Window?.CycleMode(); return(true); } return(false); }
private void addDebugTools() { LoadComponentAsync(DrawVisualiser = new DrawVisualiser { Depth = float.MinValue / 2, }, AddInternal); LoadComponentAsync(logOverlay = new LogOverlay { Depth = float.MinValue / 2, }, AddInternal); }
private void addDebugTools() { (DrawVisualiser = new DrawVisualiser() { Depth = float.MinValue / 2, }).Preload(this, AddInternal); (LogOverlay = new LogOverlay() { Depth = float.MinValue / 2, }).Preload(this, AddInternal); }
private void addDebugTools() { (DrawVisualiser = new DrawVisualiser { Depth = float.MinValue / 2, }).LoadAsync(this, AddInternal); (logOverlay = new LogOverlay { Depth = float.MinValue / 2, }).LoadAsync(this, AddInternal); }
public static void Initialize() { if (isInitialized) { return; } isInitialized = true; LogOverlay.ListenForLogs(); Initializer.PreinitStep(); Debug.Log("Adding global Scaphandre Engine object..."); injectorGO = new GameObject("___SCAPHANDRE_ENGINE__GO"); injectorGO.AddComponent <SceneCleanerPreserve>(); Object.DontDestroyOnLoad(injectorGO); CreateScaphandreEngineObjectTree(); Debug.Log("Added global Scaphandre Engine object"); Initializer.InitStep(injectorGO); }
private void load(FrameworkConfigManager config) { Resources = new ResourceStore <byte[]>(); Resources.AddStore(new NamespacedResourceStore <byte[]>(new DllResourceStore(typeof(Game).Assembly), @"Resources")); Textures = new TextureStore(Host.CreateTextureLoaderStore(new NamespacedResourceStore <byte[]>(Resources, @"Textures"))); Textures.AddStore(Host.CreateTextureLoaderStore(new OnlineStore())); dependencies.Cache(Textures); var tracks = new ResourceStore <byte[]>(); tracks.AddStore(new NamespacedResourceStore <byte[]>(Resources, @"Tracks")); tracks.AddStore(new OnlineStore()); var samples = new ResourceStore <byte[]>(); samples.AddStore(new NamespacedResourceStore <byte[]>(Resources, @"Samples")); samples.AddStore(new OnlineStore()); Audio = new AudioManager(Host.AudioThread, tracks, samples) { EventScheduler = Scheduler }; dependencies.Cache(Audio); dependencies.CacheAs(Audio.Tracks); dependencies.CacheAs(Audio.Samples); // attach our bindables to the audio subsystem. config.BindWith(FrameworkSetting.AudioDevice, Audio.AudioDevice); config.BindWith(FrameworkSetting.VolumeUniversal, Audio.Volume); config.BindWith(FrameworkSetting.VolumeEffect, Audio.VolumeSample); config.BindWith(FrameworkSetting.VolumeMusic, Audio.VolumeTrack); Shaders = new ShaderManager(new NamespacedResourceStore <byte[]>(Resources, @"Shaders")); dependencies.Cache(Shaders); var cacheStorage = Host.Storage.GetStorageForDirectory(Path.Combine("cache", "fonts")); // base store is for user fonts Fonts = new FontStore(useAtlas: true, cacheStorage: cacheStorage); // nested store for framework provided fonts. // note that currently this means there could be two async font load operations. Fonts.AddStore(localFonts = new FontStore(useAtlas: false)); addFont(localFonts, Resources, @"Fonts/OpenSans/OpenSans"); addFont(localFonts, Resources, @"Fonts/OpenSans/OpenSans-Bold"); addFont(localFonts, Resources, @"Fonts/OpenSans/OpenSans-Italic"); addFont(localFonts, Resources, @"Fonts/OpenSans/OpenSans-BoldItalic"); addFont(Fonts, Resources, @"Fonts/FontAwesome5/FontAwesome-Solid"); addFont(Fonts, Resources, @"Fonts/FontAwesome5/FontAwesome-Regular"); addFont(Fonts, Resources, @"Fonts/FontAwesome5/FontAwesome-Brands"); dependencies.Cache(Fonts); Localisation = new LocalisationManager(config); dependencies.Cache(Localisation); logOverlayVisibility = config.GetBindable <bool>(FrameworkSetting.ShowLogOverlay); logOverlayVisibility.BindValueChanged(visibility => { if (visibility.NewValue) { if (logOverlay == null) { LoadComponentAsync(logOverlay = new LogOverlay { Depth = float.MinValue / 2, }, AddInternal); } logOverlay.Show(); } else { logOverlay?.Hide(); } }, true); }