mirror of
https://github.com/OpenSpace/OpenSpace.git
synced 2026-01-07 04:00:37 -06:00
Enables globe-browsing data to be cached using caching mrf's as it is loaded from the original dataset. Subsequent reads of tiles that have been cached do not query the original dataset but picks it up from the mrf data.
Supports anything that can be used a dataset for a gdal raster but raw images such as JPGs are explicitly disallowed as they lack necessary geotransform data.
Activated on a global scale by setting the following keys in openspace.cfg (ModuleConfigurations/GlobeBrowsing)
MRFCacheEnabled = true,
MRFCacheLocation = "<somepath>",
Settings can be overriden on a per-layer basis by adding the following entries to the layer entity of an asset
CacheSettings = { Enabled = true, Compression = "LERC", BlockSize = 512, Quality=25 },
The following per-layer settings are available and override the global module settings:
Enabled : enable/disable caching for this layer.
Compression: The compression algorithm to use for tile cache storage. (JPEG, PNG, or LERC)
BlockSize: Size of tiles in cache, should be a multiple of 2 although this is not required.
Quality: The quality setting of the JPEG compression (when used)
Note that heightlayers must use LERC compresison and this is the default unless overridden by a layer.
273 lines
9.4 KiB
INI
273 lines
9.4 KiB
INI
-- 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
|
|
|
|
-- 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, windowPos={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}
|
|
-- Streaming OpenSpace via Spout to OBS
|
|
-- SGCTConfig = sgct.config.single{2560, 1440, shared=true, name="WV_OBS_SPOUT1"}
|
|
|
|
-- Elumenati Configs
|
|
-- SGCTConfig = "${CONFIG}/spout_output_flat.json"
|
|
-- SGCTConfig = "${CONFIG}/spout_output_cubemap.json"
|
|
-- SGCTConfig = "${CONFIG}/spout_output_equirectangular.json"
|
|
-- SGCTConfig = "${CONFIG}/spout_output_fisheye.json"
|
|
|
|
-- for more details about sgct configuration options see:
|
|
-- https://sgct.github.io/configuration-files.html
|
|
|
|
-- To use a sgct configuration file set the variable like below
|
|
-- SGCTConfig = "${CONFIG}/single_gui.xml"
|
|
-- In the config/ folder we provide the some predefined files which you can modify.
|
|
-- fullscreen1080.json: fullscreen window at 1920x1080
|
|
-- gui_projector.json: one window for the gui and a second fullscreen window for rendering
|
|
-- on the second monitor
|
|
-- openvr_htcVive.json: window for VR on HTC Vive, only works if OpenSpace is compiled
|
|
-- custom with the openvr support
|
|
-- openvr_oculusRiftCv1.json: window for VR on Oculus Rift, only works if OpenSpace is
|
|
-- compiled custom with the openvr support
|
|
-- single.json: regular window
|
|
-- single_fisheye.json: regular window with fisheye rendering
|
|
-- single_fisheye_gui.json: one window for the gui, one window for fisheye rendering
|
|
-- single_gui.json: one window for the gui, one window for rendering
|
|
-- single_sbs_stereo.json: one window with side by side rendering for stereo/3d support
|
|
-- single_two_win.json: two windows with gui and rendering
|
|
-- spherical_mirror.json: one window with a spherical mirror rendering
|
|
-- spherical_mirror_gui.json: one window for the gui, and one window with a spherical
|
|
-- mirror rendering
|
|
-- two_nodes.json: a configuration for running two instances of openspace, used for
|
|
-- multiple projection systems
|
|
-- spout_output_flat.json: a window where the rendering is sent to spout instead of the
|
|
-- display
|
|
-- spout_output_cubemap.json: a window where the rendering is sent to spout (max of 6 spout
|
|
-- instances) instead of the display
|
|
-- spout_output_equirectangular.json: a window where the rendering is sent to spout
|
|
-- (equirectangular output) instead of the display
|
|
-- spout_output_fisheye.json: a window where the rendering is sent to spout (fisheye
|
|
-- output) instead of the display
|
|
|
|
-- Variable: Profile
|
|
-- Sets the profile that should be loaded by OpenSpace.
|
|
Profile = "default"
|
|
-- Profile = "default_full"
|
|
-- Profile = "gaia"
|
|
-- Profile = "insight"
|
|
-- Profile = "juno"
|
|
-- Profile = "jwst"
|
|
-- Profile = "mars"
|
|
-- Profile = "messenger"
|
|
-- Profile = "newhorizons"
|
|
-- Profile = "osirisrex"
|
|
-- Profile = "rosetta"
|
|
-- Profile = "touch"
|
|
-- Profile = "voyager"
|
|
|
|
-- These are profiles that are set to "read-only"
|
|
ReadOnlyProfiles = {
|
|
"apollo",
|
|
"asteroids",
|
|
"bastilleday2000",
|
|
"dawn",
|
|
"default",
|
|
"default_full",
|
|
"gaia",
|
|
"insight",
|
|
"juno",
|
|
"jwst",
|
|
"mars",
|
|
"messenger",
|
|
"newhorizons",
|
|
"osirisrex",
|
|
"rosetta",
|
|
"solarstorm2012",
|
|
"touch",
|
|
"voyager"
|
|
}
|
|
|
|
-- 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 = {
|
|
"${SCRIPTS}/customization.lua"
|
|
}
|
|
|
|
-- 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",
|
|
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 "${BASE}/../OpenSpaceData"
|
|
}
|
|
|
|
ModuleConfigurations = {
|
|
GlobeBrowsing = {
|
|
TileCacheSize = 2048, -- for all globes (CPU and GPU memory)
|
|
MRFCacheEnabled = false,
|
|
MRFCacheLocation = "${BASE}/mrf_cache"
|
|
},
|
|
Sync = {
|
|
SynchronizationRoot = "${SYNC}",
|
|
HttpSynchronizationRepositories = {
|
|
"http://data.openspaceproject.com/request"
|
|
-- "http://openspace.sci.utah.edu/request"
|
|
}
|
|
},
|
|
Server = {
|
|
AllowAddresses = { "127.0.0.1", "localhost" },
|
|
SkyBrowserUpdateTime = 50,
|
|
Interfaces = {
|
|
{
|
|
Type = "TcpSocket",
|
|
Identifier = "DefaultTcpSocketInterface",
|
|
Port = 4681,
|
|
Enabled = true,
|
|
DefaultAccess = "Deny",
|
|
RequirePasswordAddresses = {},
|
|
Password = ""
|
|
},
|
|
{
|
|
Type = "WebSocket",
|
|
Identifier = "DefaultWebSocketInterface",
|
|
Port = 4682,
|
|
Enabled = true,
|
|
DefaultAccess = "Deny",
|
|
RequirePasswordAddresses = {},
|
|
Password = ""
|
|
}
|
|
}
|
|
},
|
|
WebBrowser = {
|
|
Enabled = true
|
|
},
|
|
WebGui = {
|
|
Address = "localhost",
|
|
HttpPort = 4680,
|
|
WebSocketInterface = "DefaultWebSocketInterface"
|
|
},
|
|
CefWebGui = {
|
|
-- GuiScale = 2.0,
|
|
Enabled = true,
|
|
Visible = true
|
|
},
|
|
Space = {
|
|
ShowExceptions = 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", Append = false }
|
|
},
|
|
CapabilitiesVerbosity = "Full"
|
|
}
|
|
ScriptLog = "${LOGS}/ScriptLog.txt"
|
|
|
|
Documentation = {
|
|
Path = "${DOCUMENTATION}/"
|
|
}
|
|
|
|
VersionCheckUrl = "http://data.openspaceproject.com/latest-version"
|
|
|
|
UseMultithreadedInitialization = true
|
|
LoadingScreen = {
|
|
ShowMessage = true,
|
|
ShowNodeNames = true,
|
|
ShowProgressbar = false
|
|
}
|
|
CheckOpenGLState = false
|
|
LogEachOpenGLCall = false
|
|
PrintEvents = false
|
|
ConsoleKey = "GRAVEACCENT"
|
|
|
|
ShutdownCountdown = 3
|
|
ScreenshotUseDate = true
|
|
BypassLauncher = false
|
|
|
|
-- 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 = false,
|
|
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 = { }
|
|
}
|