-- The configuration has an implict -- require('scripts/configuration_helper.lua') -- which defines helper functions useful to customize the configuration -- Variable: SGCTConfig -- Determines which SGCT configuration file is loaded, that is, if there rendering occurs -- in a single window, a fisheye projection, or a dome cluster system. -- This variable must be specified as the function `sgct.config.single` or with a path to -- an SGCT configuration file. That path can contain path tokens which will be -- automatically resolved -- A regular 1280x720 window SGCTConfig = sgct.config.single{vsync=false} -- A regular 1920x1080 window -- SGCTConfig = sgct.config.single{1920, 1080} -- A windowed 1920x1080 fullscreen -- SGCTConfig = sgct.config.single{1920, 1080, border=false, pos={0,0}} -- A 1k fisheye rendering -- SGCTConfig = sgct.config.fisheye{1024, 1024} -- A 4k fisheye rendering in a 1024x1024 window -- SGCTConfig = sgct.config.fisheye{1024, 1024, res={4096, 4096}, quality="2k", tilt=27} -- for more details about sgct configuration options see: -- https://sgct.readthedocs.io/en/latest/users/configuration/index.html -- To use a sgct configuration file set the variable like below -- SGCTConfig = "${CONFIG}/single_gui.json" -- Variable: Profile -- Sets the profile that should be loaded by OpenSpace. The profile must be specified by -- specifying the name of the profile without a full path. First, OpenSpace tries to find -- a profile in the user folder with the provided name, and if it doesn't exist, it tries -- to load a profile in the built-in folder Profile = "default" -- These scripts are executed after the initialization of each scene, thus making -- it possible to have global overrides to default values or execute other scripts -- regardless of the scene that is loaded GlobalCustomizationScripts = { "${USER}/customization.lua" } -- Determines how many settings in the menu are shown -- Valid values: -- "NoviceUser" -- "User" -- "AdvancedUser" -- "Developer" PropertyVisibility = os.getenv("OPENSPACE_LEVEL") or "User" -- Use these paths if you want to put items outside of -- the main OpenSpace folder. Typically SYNC Paths = { DATA = "${BASE}/data", ASSETS = "${DATA}/assets", PROFILES = "${DATA}/profiles", USER = os.getenv("OPENSPACE_USER") or "${BASE}/user", USER_ASSETS = "${USER}/data/assets", USER_PROFILES = "${USER}/data/profiles", USER_CONFIG = "${USER}/config", USER_WEBPANELS = "${USER}/webpanels", USER_SHOWCOMPOSER = "${USER}/showcomposer", USER_SHOWCOMPOSER_UPLOADS = "${USER}/showcomposer/uploads", USER_SHOWCOMPOSER_PROJECTS = "${USER}/showcomposer/projects", FONTS = "${DATA}/fonts", TASKS = "${DATA}/tasks", -- If the the 'OPENSPACE_SYNC' environment variable is defined on the system, use that -- value. Otherwise, fall back to the ${BASE}/sync folder instead. This allows a -- reuse of the sync folder between multiple OpenSpace installations by simply setting -- that environment variable SYNC = os.getenv("OPENSPACE_SYNC") or "${BASE}/sync", SCREENSHOTS = "${USER}/screenshots", WEB = "${DATA}/web", RECORDINGS = "${USER}/recordings", CACHE = "${BASE}/cache", CONFIG = "${BASE}/config", DOCUMENTATION = "${BASE}/documentation", LOGS = "${BASE}/logs", MODULES = "${BASE}/modules", SCRIPTS = "${BASE}/scripts", SHADERS = "${BASE}/shaders", TEMPORARY = "${BASE}/temp", GLOBEBROWSING = os.getenv("OPENSPACE_GLOBEBROWSING") or "${USER}/globebrowsing" } ModuleConfigurations = { GlobeBrowsing = { TileCacheSize = 2048, -- for all globes (CPU and GPU memory) MRFCacheEnabled = false, MRFCacheLocation = (os.getenv("OPENSPACE_GLOBEBROWSING") or "${BASE}") .. "/mrf_cache", DefaultGeoPointTexture = "${DATA}/globe_pin.png" }, Sync = { SynchronizationRoot = "${SYNC}", HttpSynchronizationRepositories = { "http://data.openspaceproject.com/request" -- "http://openspace.sci.utah.edu/request" -- "http://localhost:8100/request" } }, Server = { SkyBrowserUpdateTime = 50, Interfaces = { { Type = "TcpSocket", Identifier = "DefaultTcpSocketInterface", Port = 4681, Enabled = true, DefaultAccess = "Deny", AllowAddresses = { "127.0.0.1", "localhost" }, RequirePasswordAddresses = {}, Password = "" }, { Type = "WebSocket", Identifier = "DefaultWebSocketInterface", Port = 4682, Enabled = true, DefaultAccess = "Deny", AllowAddresses = { "127.0.0.1", "localhost" }, RequirePasswordAddresses = {}, Password = "" } } }, WebBrowser = { Enabled = true, DisableAcceleratedRendering = false }, WebGui = { Address = "localhost", HttpPort = 4680, WebSocketInterface = "DefaultWebSocketInterface" }, CefWebGui = { -- GuiScale = 2.0, Enabled = true, Visible = true }, Space = { ShowExceptions = false }, Telemetry = { IpAddress = "127.0.0.1", Port = 57120, AngleCalculationMode = "Horizontal", IncludeElevationAngle = false } -- OBS! The settings for the SkyBrowser and Exoplanets modules are -- set in individual assets, see "data/assets/modules". Note that -- any settings addded here might be overwritten by those assets } Fonts = { Mono = "${FONTS}/Bitstream-Vera-Sans-Mono/VeraMono.ttf", Light = "${FONTS}/Roboto/Roboto-Regular.ttf", Console = "${FONTS}/Inconsolata/Inconsolata-Regular.ttf", Loading = "${FONTS}/Roboto/Roboto-Regular.ttf" } FontSize = { FrameInfo = 32.0, Shutdown = 14.0, Log = 8.0, CameraInfo = 12.0, VersionInfo = 12.0 } Logging = { LogDir = "${LOGS}", -- LogLevel = "Trace", LogLevel = "Debug", ImmediateFlush = true, Logs = { { Type = "html", File = "${LOGS}/log.html", LogRotation = 3 } }, CapabilitiesVerbosity = "Full" } ScriptLog = "${LOGS}/ScriptLog.txt" -- VerboseScriptLog = true Documentation = { Path = "${DOCUMENTATION}/" } VersionCheckUrl = "http://data.openspaceproject.com/latest-version" UseMultithreadedInitialization = true LoadingScreen = { ShowMessage = true, ShowNodeNames = true, ShowLogMessages = true } CheckOpenGLState = false LogEachOpenGLCall = false PrintEvents = false ConsoleKey = "GRAVEACCENT" SandboxedLua = true ShutdownCountdown = 3 ScreenshotUseDate = true BypassLauncher = false LayerServer = "All" -- LayerServer = "NewYork" -- LayerServer = "Sweden" -- LayerServer = "Utah" -- LayerServer = "None" -- OnScreenTextScaling = "framebuffer" -- PerProfileCache = true -- DisableRenderingOnMaster = true -- DisableInGameConsole = true GlobalRotation = { 0.0, 0.0, 0.0 } MasterRotation = { 0.0, 0.0, 0.0 } ScreenSpaceRotation = { 0.0, 0.0, 0.0 } OpenGLDebugContext = { Activate = true, PrintStacktrace = true, FilterIdentifier = { { Type = "Other", Source = "API", Identifier = 131185 }, -- API_ID_RECOMPILE_FRAGMENT_SHADER performance warning has been generated. Fragment shader recompiled due to state change { Type = "Performance", Source = "API", Identifier = 2 }, -- Pixel-path performance warning: Pixel transfer is synchronized with 3D rendering { Type = "Performance", Source = "API", Identifier = 131154 }, -- Buffer performance warning: "copied/moved from VIDEO memory to HOST memory" { Type = "Performance", Source = "API", Identifier = 131186 }, -- API_ID_LINE_WIDTH deprecated behavior warning has been generated { Type = "Deprecated", Source = "API", Identifier = 7 }, -- Program/shader state performance warning: Vertex shader in program %i is being recompiled based on GL state. { Type = "Performance", Source = "API", Identifier = 131218 }, -- This is getting a bit wordy { Type = "Push group", Source = "Application", Identifier = 0 }, { Type = "Pop group", Source = "Application", Identifier = 0 }, }, -- FilterSeverity = { } }