diff --git a/CMakeLists.txt b/CMakeLists.txt index dfe4464edc..bd4adeff10 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -31,7 +31,6 @@ set(OPENSPACE_VERSION_MINOR 15) set(OPENSPACE_VERSION_PATCH 2) set(OPENSPACE_VERSION_STRING "Beta-7") - set(OPENSPACE_BASE_DIR "${PROJECT_SOURCE_DIR}") set(OPENSPACE_CMAKE_EXT_DIR "${OPENSPACE_BASE_DIR}/support/cmake") set(GHOUL_BASE_DIR "${OPENSPACE_BASE_DIR}/ext/ghoul") @@ -134,6 +133,11 @@ if (MSVC) set(GHOUL_OPTIMIZATION_ENABLE_OTHER_OPTIMIZATIONS ${OPENSPACE_OPTIMIZATION_ENABLE_OTHER_OPTIMIZATIONS} CACHE BOOL "" FORCE) endif () +if (UNIX AND CMAKE_CXX_COMPILER_ID MATCHES "Clang") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++17 -stdlib=libc++") + set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -stdlib=libc++ -lc++ -lc++abi") +endif () + include(src/CMakeLists.txt) ########################################################################################## diff --git a/Jenkinsfile b/Jenkinsfile index 20f10f29c0..545a72709b 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -67,7 +67,7 @@ def moduleCMakeFlags() { def flags = ''; for (module in modules) { - flags += "-D OPENSPACE_MODULE_${module.toUpperCase()}=ON " + flags += "-DOPENSPACE_MODULE_${module.toUpperCase()}=ON " } return flags; } @@ -78,35 +78,69 @@ def moduleCMakeFlags() { // Pipeline start // -parallel master: { - node('master') { - stage('master/scm') { +parallel tools: { + node('tools') { + stage('tools/scm') { deleteDir(); - gitHelper.checkoutGit(url, branch); + gitHelper.checkoutGit(url, branch, false); helper.createDirectory('build'); } - stage('master/cppcheck/create') { - sh 'cppcheck --enable=all --xml --xml-version=2 -i ext --suppressions-list=support/cppcheck/suppressions.txt include modules src tests 2> build/cppcheck.xml'; - } - stage('master/cloc/create') { - sh 'cloc --by-file --exclude-dir=build,data,ext --xml --out=build/cloc.xml --force-lang-def=support/cloc/langDef --quiet .'; - } + stage('tools/cppcheck') { + sh( + script: 'cppcheck --enable=all --xml --xml-version=2 -i ext --suppressions-list=support/cppcheck/suppressions.txt include modules src tests 2> build/cppcheck.xml', + label: 'CPPCheck' + ) + recordIssues( + id: 'tools-cppcheck', + tool: cppCheck() + ) + } } }, -linux: { - node('linux') { - stage('linux/scm') { +linux_gcc: { + node('linux' && 'gcc') { + stage('linux-gcc/scm') { + deleteDir(); + gitHelper.checkoutGit(url, branch); + } + stage('linux-gcc/build(make)') { + def cmakeCompileOptions = moduleCMakeFlags(); + cmakeCompileOptions += ' -DMAKE_BUILD_TYPE=Release'; + // Not sure why the linking of OpenSpaceTest takes so long + compileHelper.build(compileHelper.Make(), compileHelper.Gcc(), cmakeCompileOptions, 'OpenSpace', 'build-make'); + compileHelper.recordCompileIssues(compileHelper.Gcc()); + } + stage('linux-gcc/build(ninja)') { + def cmakeCompileOptions = moduleCMakeFlags(); + cmakeCompileOptions += '-DMAKE_BUILD_TYPE=Release'; + // Not sure why the linking of OpenSpaceTest takes so long + compileHelper.build(compileHelper.Ninja(), compileHelper.Gcc(), cmakeCompileOptions, 'OpenSpace', 'build-ninja'); + } + stage('linux-gcc/test') { + // testHelper.runUnitTests('build/OpenSpaceTest'); + } + } // node('linux') +}, +linux_clang: { + node('linux' && 'clang') { + stage('linux-clang/scm') { deleteDir() gitHelper.checkoutGit(url, branch); } - stage('linux/build') { + stage('linux-clang/build(make)') { + def cmakeCompileOptions = moduleCMakeFlags() + cmakeCompileOptions += ' -DMAKE_BUILD_TYPE=Release' // Not sure why the linking of OpenSpaceTest takes so long - compileHelper.build(compileHelper.Make(), compileHelper.Gcc(), moduleCMakeFlags(), 'OpenSpace', 'build-all'); + compileHelper.build(compileHelper.Make(), compileHelper.Clang(), cmakeCompileOptions, 'OpenSpace', 'build-make'); + compileHelper.recordCompileIssues(compileHelper.Clang()); } - stage('linux/warnings') { - // compileHelper.recordCompileIssues(compileHelper.Gcc()); + stage('linux-clang/build(ninja)') { + def cmakeCompileOptions = moduleCMakeFlags() + cmakeCompileOptions += '-DMAKE_BUILD_TYPE=Release' + // Not sure why the linking of OpenSpaceTest takes so long + compileHelper.build(compileHelper.Ninja(), compileHelper.Clang(), cmakeCompileOptions, 'OpenSpace', 'build-ninja'); } - stage('linux/test') { + stage('linux-clang/test') { // testHelper.runUnitTests('build/OpenSpaceTest'); } } // node('linux') @@ -118,11 +152,12 @@ windows: { deleteDir(); gitHelper.checkoutGit(url, branch); } - stage('windows/build') { - compileHelper.build(compileHelper.VisualStudio(), compileHelper.VisualStudio(), moduleCMakeFlags(), '', 'build-all'); + stage('windows/build(msvc)') { + compileHelper.build(compileHelper.VisualStudio(), compileHelper.VisualStudio(), moduleCMakeFlags(), '', 'build-msvc'); + compileHelper.recordCompileIssues(compileHelper.VisualStudio()); } - stage('windows/warnings') { - // compileHelper.recordCompileIssues(compileHelper.VisualStudio()); + stage('windows/build(ninja)') { + compileHelper.build(compileHelper.Ninja(), compileHelper.VisualStudio(), moduleCMakeFlags(), '', 'build-ninja'); } stage('windows/test') { // Currently, the unit tests are failing on Windows @@ -131,36 +166,21 @@ windows: { } // node('windows') } }, -osx: { - node('osx') { - stage('osx/scm') { +macos: { + node('macos') { + stage('macos/scm') { deleteDir(); gitHelper.checkoutGit(url, branch); } - stage('osx/build') { - compileHelper.build(compileHelper.Xcode(), compileHelper.Clang(), moduleCMakeFlags(), '', 'build-all'); + stage('macos/build(make)') { + compileHelper.build(compileHelper.Make(), compileHelper.Clang(), moduleCMakeFlags(), '', 'build-make'); } - stage('osx/warnings') { - // compileHelper.recordCompileIssues(compileHelper.Clang()); + stage('macos/build(xcode)') { + compileHelper.build(compileHelper.Xcode(), compileHelper.Xcode(), moduleCMakeFlags(), '', 'build-xcode'); } - stage('osx/test') { + stage('macos/test') { // Currently, the unit tests are crashing on OS X // testHelper.runUnitTests('build/Debug/OpenSpaceTest') } } // node('osx') } - -// -// Post-build actions -// -node('master') { - stage('master/cppcheck/publish') { - // publishCppcheck(pattern: 'build/cppcheck.xml'); - } - stage('master/cloc/publish') { - sloccountPublish(encoding: '', pattern: 'build/cloc.xml'); - } - stage('master/notifications') { - slackHelper.sendChangeSetSlackMessage(currentBuild); - } -} diff --git a/apps/OpenSpace/ext/sgct b/apps/OpenSpace/ext/sgct index 3d3835c38c..f90ab136ef 160000 --- a/apps/OpenSpace/ext/sgct +++ b/apps/OpenSpace/ext/sgct @@ -1 +1 @@ -Subproject commit 3d3835c38c8b87972f406ed44af1b5b2d48b1600 +Subproject commit f90ab136efee69581f0a9a42651f2ebede7b292a diff --git a/data/assets/base.asset b/data/assets/base.asset index 1ff8a66825..866d47292f 100644 --- a/data/assets/base.asset +++ b/data/assets/base.asset @@ -43,30 +43,6 @@ asset.require('customization/globebrowsing') -- Keybindings that are specific for this scene local Keybindings = { - { - Key = "b", - Name = "Toggle background", - Command = propertyHelper.invert('Scene.MilkyWay.Renderable.Enabled') .. - propertyHelper.invert('Scene.Stars.Renderable.Enabled'), - Documentation = "Toggle background (Stars and Milkyway).", - GuiPath = "/Rendering", - Local = false - }, - { - Key = "g", - Name = "Toggle background/shading", - Command = propertyHelper.invert('Scene.MilkyWay.Renderable.Enabled') .. - propertyHelper.invert('Scene.Stars.Renderable.Enabled') .. - propertyHelper.invert('Scene.Earth.Renderable.Layers.NightLayers.Earth_at_Night_2012.Enabled') .. - propertyHelper.invert('Scene.EarthAtmosphere.Renderable.Enabled') .. - propertyHelper.invert('Scene.MarsAtmosphere.Renderable.Enabled') .. - propertyHelper.invert('Scene.Earth.Renderable.Layers.WaterMasks.MODIS_Water_Mask.Enabled') .. - propertyHelper.invert('Scene.Moon.Renderable.Enabled') .. - propertyHelper.invert('Scene.Sun.Renderable.Enabled'), - Documentation = "Toogles background and shading mode on the Earth and Mars alongside visibility of the Moon and the Sun", - GuiPath = "/Rendering", - Local = false - }, { Key = "h", Name="Toggle Trails", diff --git a/data/assets/examples/globetranslation.asset b/data/assets/examples/globetranslation.asset index 4f400883bd..3345e68fe7 100644 --- a/data/assets/examples/globetranslation.asset +++ b/data/assets/examples/globetranslation.asset @@ -32,11 +32,11 @@ local Example_Fixed_Height = { Renderable = { Type = "RenderableModel", Body = "NEW HORIZONS", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/NewHorizonsCleanModel.obj", ColorTexture = textures .. "/NHTexture.jpg" - } + }} }, GUI = { Path = "/Example" @@ -57,11 +57,11 @@ local Example_Adaptive_Height = { Renderable = { Type = "RenderableModel", Body = "NEW HORIZONS", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/NewHorizonsCleanModel.obj", ColorTexture = textures .. "/NHTexture.jpg" - } + }} }, GUI = { Path = "/Example" diff --git a/data/assets/examples/slidedeck.asset b/data/assets/examples/slidedeck.asset index 14073d5251..74068d52ee 100644 --- a/data/assets/examples/slidedeck.asset +++ b/data/assets/examples/slidedeck.asset @@ -28,15 +28,16 @@ asset.onInitialize(function () end helper.setCurrentSlide(deck, 1) - openspace.bindKey("RIGHT", "nextSlide()", "Next slide", "Next slide", "/Slides") - openspace.bindKey("LEFT", "previousSlide()", "Previous slide", "Previous slide", "/Slides") - openspace.bindKey("UP", "toggleSlides()", "Toggle slides", "Toggle slides", "/Slides") + openspace.bindKey("KP_6", "nextSlide()", "Next slide", "Next slide", "/Slides") + openspace.bindKey("KP_4", "previousSlide()", "Previous slide", "Previous slide", "/Slides") + openspace.bindKey("KP_0", "toggleSlides()", "Toggle slides", "Toggle slides", "/Slides") end) asset.onDeinitialize(function() - openspace.clearKey("RIGHT") - openspace.clearKey("LEFT") + openspace.clearKey("KP_6") + openspace.clearKey("KP_4") + openspace.clearKey("KP_0") helper.removeDeck(deck) end) diff --git a/data/assets/scene/digitaluniverse/2dF.asset b/data/assets/scene/digitaluniverse/2dF.asset index 2da1fb619d..bf848bcde3 100644 --- a/data/assets/scene/digitaluniverse/2dF.asset +++ b/data/assets/scene/digitaluniverse/2dF.asset @@ -35,10 +35,34 @@ local object = { }, GUI = { Name = "2dF Galaxies", - Path = "/Universe/Galaxies" + Path = "/Universe/Galaxies", + Description = [[Census 229,293 galaxies. DU Version 1.7.
+ The Two-degree Field (2dF) Survey was a project designed to map portions of the + extragalactic universe. The 2dF instrument was mounted on the 3.9-meter + (12.8-foot) Anglo-Australian Telescope (AAT), located 450 km (280 miles) + northwest of Sydney. The telescope has a two-degree field of view on the sky, + enabling large parts of the sky to be observed at one time. For each pointing of + the telescope, the instrument can acquire up to 400 spectra simultaneously via + optical fibers that feed into two spectrographs. Each spectrograph sees light + that is between 350 nm and 800 nm, spanning the visible spectrum.

The + 2dF survey has three main components: the North Galactic Pole strip, the South + Galactic Pole strip, and the random fields that surround the South Galactic Pole + strip. The galaxy survey is composed of about 230,000 galaxies with brightness and + redshift measurements. (Description from URL)

Data Reference: 2dF Galaxy + Redshift Survey (2dFGRS Team, 1998-2003)]] } } - assetHelper.registerSceneGraphNodesAndExport(asset, { object }) + + +asset.meta = { + Name = "2dF Galaxies", + Version = "2.0", + Description = [[Digital Universe asset for the The Two-degree Field (2dF) Survey.]], + Author = "Brian Abbott (AMNH), Eric Gawiser (Rutgers U)", + URL = "https://www.amnh.org/research/hayden-planetarium/digital-universe", + License = "AMNH Digital Universe", + Identifiers = "2dF" +} diff --git a/data/assets/scene/digitaluniverse/2mass.asset b/data/assets/scene/digitaluniverse/2mass.asset index c27557c282..f852f3a707 100644 --- a/data/assets/scene/digitaluniverse/2mass.asset +++ b/data/assets/scene/digitaluniverse/2mass.asset @@ -37,10 +37,28 @@ local object = { }, GUI = { Name = "2MASS Galaxies", - Path = "/Universe/Galaxies" + Path = "/Universe/Galaxies", + Description = [[ The Two Micron All-Sky Survey (2MASS) is an infrared survey + of the sky published in 2003. Because it is looking in the infrared, and + this is a composite of the 2MASS point-source catalog, most of the light + from this survey is starlight. In visible light, clouds of gas and dust + obscure our view. However, in infrared, the longer wavelengths of light can + penetrate these clouds without being scattered, thereby revealing stars + that would normally be hidden to our eye. (Description from URL)]], } } - assetHelper.registerSceneGraphNodesAndExport(asset, { object }) + + +asset.meta = { + Name = "2MASS Galaxies", + Version = "1.0", + Description = [[ Digital Universe asset for the Two Micron All-Sky Survey (2MASS) + survey]], + Author = "Brian Abbott (AMNH)", + URL = "https://www.amnh.org/research/hayden-planetarium/digital-universe", + License = "AMNH Digital Universe", + Identifiers = "2MASS" +} diff --git a/data/assets/scene/digitaluniverse/6dF.asset b/data/assets/scene/digitaluniverse/6dF.asset index 2843b142d4..5ae38458bb 100644 --- a/data/assets/scene/digitaluniverse/6dF.asset +++ b/data/assets/scene/digitaluniverse/6dF.asset @@ -35,10 +35,31 @@ local object = { }, GUI = { Name = "6dF Galaxies", - Path = "/Universe/Galaxies" + Path = "/Universe/Galaxies", + Description = [[Census 109,569 galaxies. DU Version 1.4.
The Six-degree Field + (6dF) Galaxy Survey mapped nearly half the sky from the Anglo-Australian + Observatory. Unlike previous datasets, this one is not all-sky, meaning there + are patches of sky that are not covered. In this case, the entire northern + hemisphere has no coverage at all. This catalog overlaps with the Tully + dataset, and there is a noticeable difference in the quality of these + datasets. Tully is much tighter and the structure is more apparent, while the + 6dF data are more spread out. This is because of local motions within galaxy + clusters have not been corrected in these data. (Description from URL) +

Data Reference: The 6dF Galaxy Survey Redshift Catalogue + (Jones+, 2009)]] } } - assetHelper.registerSceneGraphNodesAndExport(asset, { object }) + + +asset.meta = { + Name = "6dF Galaxies", + Version = "2.0", + Description = [[Digital Universe asset for The Six-degree Field (6dF) Galaxy Survey]], + Author = "Brian Abbott (AMNH)", + URL = "https://www.amnh.org/research/hayden-planetarium/digital-universe", + License = "AMNH Digital Universe", + Identifiers = "6dF" +} diff --git a/data/assets/scene/digitaluniverse/abell.asset b/data/assets/scene/digitaluniverse/abell.asset index 80b5bbbe94..2f19ff5ff8 100644 --- a/data/assets/scene/digitaluniverse/abell.asset +++ b/data/assets/scene/digitaluniverse/abell.asset @@ -43,10 +43,32 @@ local object = { }, GUI = { Name = "Abell Galaxy Clusters", - Path = "/Universe/Galaxies" + Path = "/Universe/Galaxies", + Description = [[Census 2,246 galaxies. DU Version 1.4.
The Abell catalog + includes all the nearby, and not so nearby, galaxy clusters. The northern + hemisphere survey, published in 1958, was compiled by George Abell (1927–1983) + from the Palomar Sky Survey plates. A subsequent southern hemisphere catalog + was published posthumously in 1989. Further analysis by Brent Tully determined + their distance and three-dimensional distribution. Each point in this data set + represents a cluster of tens to hundreds (possibly even thousands) of + galaxies, similar to the Virgo or Fornax Clusters. You will notice some points + are assigned colors while most are gray. The data set also has an arbitrary + cut-off for completeness, resulting in the rectangular shape of the data set. + (Description from URL)

Data Reference: Abell Clusters of Rich + Galaxies, Brent Tully (U Hawaii), Stuart Levy (NCSA/UIUC)]], } } - assetHelper.registerSceneGraphNodesAndExport(asset, { object }) + + +asset.meta = { + Name = "Abell Galaxy Clusters", + Version = "2.0", + Description = [[Digital Universe asset for The Abell catalog]], + Author = "Stuart Levy (NCSA/UIUC), Brian Abbott (AMNH)", + URL = "https://www.amnh.org/research/hayden-planetarium/digital-universe", + License = "AMNH Digital Universe", + Identifiers = "Abell" +} diff --git a/data/assets/scene/digitaluniverse/alternatestarlabels.asset b/data/assets/scene/digitaluniverse/alternatestarlabels.asset index dcef9924a2..7adb9ca9b9 100644 --- a/data/assets/scene/digitaluniverse/alternatestarlabels.asset +++ b/data/assets/scene/digitaluniverse/alternatestarlabels.asset @@ -25,10 +25,26 @@ local object = { }, GUI = { Name = "Stars Labels - Alternate", - Path = "/Milky Way/Stars" + Path = "/Milky Way/Stars", + Description = [[Census 3,550 star names. DU Version 1.7.
The main star data + identify the accepted IAU star names for the brightest stars. However, astronomers + have long cataloged thousands of stars beyond the brightest ones we see. Several + attempts over thousands of years to name all the visible stars have led to two + main catalogs: Johann Bayer's Catalog from 1603 and John Flamsteed's Catalog + published in 1725. (Description from URL)

Data Reference: Various + sources]], } } +asset.meta = { + Name = "Stars Labels - Alternate", + Version = "1.0", + Description = [[Digital Universe asset for alternate start labels]], + Author = "Brian Abbott (AMNH)", + URL = "https://www.amnh.org/research/hayden-planetarium/digital-universe", + License = "AMNH Digital Universe", + Identifiers = "StarLabelsAlternate" +} assetHelper.registerSceneGraphNodesAndExport(asset, { object }) diff --git a/data/assets/scene/digitaluniverse/backgroundradiation.asset b/data/assets/scene/digitaluniverse/backgroundradiation.asset index 66a2c70a46..a59f4d9374 100644 --- a/data/assets/scene/digitaluniverse/backgroundradiation.asset +++ b/data/assets/scene/digitaluniverse/backgroundradiation.asset @@ -89,6 +89,7 @@ local planck = { FadeInThreshold = 0.4 }, GUI = { + Name = "Planck", Path = "/Universe/Cosmic Microwave Background" } } @@ -246,3 +247,19 @@ assetHelper.registerSceneGraphNodesAndExport(asset, { wmap, cbe, planck, multiverse_planck_1, multiverse_planck_2, multiverse_planck_3, multiverse_planck_4, Halpha }) + + +asset.meta = { + Name = "Background Radiation", + Version = "2.0", + Description = [[Various AllSky images for the Milky Way and observable Universe. + Included: Wilkinson Microwave Anisotropy Probe (WMAP), Cosmic Background Explorer, + Planck, Planck Multiverse 1-4, and H Alpha

Data Reference: Planck/ESA and + the Planck Collaboration, Wilkinson Microwave Anisotropy Probe/NASA, Doug + Finkbeiner (Princeton)]], + Author = "Brian Abbott (AMNH), OpenSpace Team", + URL = "https://www.amnh.org/research/hayden-planetarium/digital-universe", + License = "AMNH Digital Universe", + Identifiers = "WMAP,CBE,Planck,PlanckMultiverse1,PlanckMultiverse2" .. + "PlanckMultiverse3,PlanckMultiverse4,HAlpha" +} diff --git a/data/assets/scene/digitaluniverse/clusters.asset b/data/assets/scene/digitaluniverse/clusters.asset index 3f0475d98b..7525c55978 100644 --- a/data/assets/scene/digitaluniverse/clusters.asset +++ b/data/assets/scene/digitaluniverse/clusters.asset @@ -31,10 +31,24 @@ local object = { }, GUI = { Name = "Galaxy Cluster Labels", - Path = "/Universe/Galaxies" + Path = "/Universe/Galaxies", + Description = [[Census 15 galaxy cluster labels. DU Version 1.2.
The Galaxy + clusters dataset is a series of labels that mark where the large clusters of + galaxies are in the nearby universe. These labels must be used in conjunction + with the Tully galaxy group.(Description from URL)

Data Reference: + Brian Abbott (AMNH)]], } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { object }) + + +asset.meta = { + Name = "Galaxy Clusters Labels", + Version = "1.0", + Description = [[Digital Universe asset for Galaxy Clusters]], + Author = "Brian Abbott (AMNH)", + URL = "https://www.amnh.org/research/hayden-planetarium/digital-universe", + License = "AMNH Digital Universe", + Identifiers = "GalaxyClusterLabels" +} diff --git a/data/assets/scene/digitaluniverse/constellationbounds.asset b/data/assets/scene/digitaluniverse/constellationbounds.asset index 35dd792e2c..6c64402132 100644 --- a/data/assets/scene/digitaluniverse/constellationbounds.asset +++ b/data/assets/scene/digitaluniverse/constellationbounds.asset @@ -36,10 +36,22 @@ local object = { }, GUI = { Name = "Constellation Bounds", - Path = "/Milky Way/Constellations" + Path = "/Milky Way/Constellations", + Description = [[A Spherical mesh dividing the sky into regions that fit the + constellations.]], } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { object }) + + +asset.meta = { + Name = "Constellation Bounds", + Version = "1.0", + Description = [[DU asset providing a Spherical mesh dividing the sky into regions that + fit the constellations.]], + Author = "Brian Abbott (AMNH)", + URL = "https://www.amnh.org/research/hayden-planetarium/digital-universe", + License = "AMNH Digital Universe", + Identifiers = "ConstellationBounds" +} diff --git a/data/assets/scene/digitaluniverse/constellations.asset b/data/assets/scene/digitaluniverse/constellations.asset index 216a320283..93a522bbe9 100644 --- a/data/assets/scene/digitaluniverse/constellations.asset +++ b/data/assets/scene/digitaluniverse/constellations.asset @@ -48,10 +48,29 @@ local constellations = { Unit = "pc" }, GUI = { - Path = "/Milky Way/Constellations" + Name = "Constellations", + Path = "/Milky Way/Constellations", + Description = [[Census 88 constellations and labels. DU Version 2.3.
These + modern constellations are largely based on those of the Babylonians and + Greeks; however, most cultures have their own figures and stories of the sky. + More than half the official constellations adopted by scientists in 1930 were + known to the ancients over 2,000 years ago. Each star falls into one of these + 88 regions. Of course, today we know the stars in any given constellation do + not necessarily have any physical relationship with one another. One star may + be nearby, while an adjacent star in the sky may be far away.(Description + from URL)

Data Reference: various]], } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { constellationsExtragalactic, constellations }) + + +asset.meta = { + Name = "Constellations", + Version = "1.0", + Description = [[Digital Universe asset for constellation lines]], + Author = "Brian Abbott (AMNH)", + URL = "https://www.amnh.org/research/hayden-planetarium/digital-universe", + License = "AMNH Digital Universe", + Identifiers = "Constellations,ConstellationsExtragalactic" +} diff --git a/data/assets/scene/digitaluniverse/deepsky.asset b/data/assets/scene/digitaluniverse/deepsky.asset index 4789551408..00b3f1f180 100644 --- a/data/assets/scene/digitaluniverse/deepsky.asset +++ b/data/assets/scene/digitaluniverse/deepsky.asset @@ -51,7 +51,8 @@ local deepSkyPoints = { }, GUI = { Name = "Deep Sky Objects Points", - Path = "/Universe/Galaxies" + Path = "/Universe/Galaxies", + Description = [[Point cloud and labels for Deep Sky Objects]] } } @@ -80,8 +81,30 @@ local deepSkyImages = { }, GUI = { Name = "Deep Sky Objects Images", - Path = "/Universe/Galaxies" + Path = "/Universe/Galaxies", + Description = [[Census: 63 images and labels. DU Version 1.3.
These data are + 2-D images of Messier objects placed in 3-D space. Not only do we place these + images at the proper location and give them the correct orientation, we also + size them accurately so that you can fly to the globular cluster M13, for + example, and see just how small the cluster of hundreds of thousands of stars + is relative to the rest of the Galaxy. Included Messier Objects by number are: + 6, 7, 11, 16, 18, 21, 23-26, 29, 34-39, 41, 46-48, 50, 52, 67, 93, 103, 2-5, + 9, 10, 12-15, 19, 22, 28, 30, 53-56, 68-72, 75, 79, 80, 92, 107, 27, 57, 76, + 97, 8, 17, 20, 78, 1 (Description from URL)

Data Reference: Largely + NOAO and various other sources (each image has a ref)]], } } assetHelper.registerSceneGraphNodesAndExport(asset, { deepSkyPoints, deepSkyImages }) + + +asset.meta = { + Name = "Deep Sky Objects Images", + Version = "1.0", + Description = [[Digital Universe asset for Deep Sky Objects and their Images]], + Author = "Nate Greenstein, Matt Everhart, Brian Abbott (AMNH)", + URL = "https://www.amnh.org/research/hayden-planetarium/digital-universe", + License = "AMNH Digital Universe", + Identifiers = "DeepSkyObjects,DeepSkyObjectsImages" +} + diff --git a/data/assets/scene/digitaluniverse/dwarfs.asset b/data/assets/scene/digitaluniverse/dwarfs.asset index a302fd9154..2135911fe8 100644 --- a/data/assets/scene/digitaluniverse/dwarfs.asset +++ b/data/assets/scene/digitaluniverse/dwarfs.asset @@ -41,10 +41,36 @@ local object = { }, GUI = { Name = "Brown Dwarfs", - Path = "/Milky Way" + Path = "/Milky Way", + Description = [[Census: 785 L dwarfs, 101 T dwarfs, 17 Y dwarfs. DU Version 6.4. +
In astronomy, there are dwarf stars-red, white, and brown-dwarf novae, + and even dwarf galaxies. As you might imagine, astronomers use the term dwarf + when they refer to the smaller objects in any given class. For decades it was + believed that M stars were the coolest stars in the Galaxy. Some M stars, + called red dwarfs, make up 70% of the stars in the Galaxy, including our + nearest known neighbor, Proxima Centauri. However, a new class of objects, + even cooler than M stars, was recently discovered and given a spectral type + of L. L-type objects straddle the boundary between red dwarfs and brown + dwarfs, the latter of which are not massive enough to ignite the nuclear + processes necessary for it to shine as a star. L-type objects are typically + very dim stars or brown dwarfs. Even cooler than L-type objects are T-type + objects. These are mostly brown dwarfs and resemble large, massive, + Jupiter-like objects, too large to be planets and typically too small to be + stars. Beyond the T dwarfs are the Y-type objects, which are even more + dim.(Description from URL)

Data Reference: The Brown Dwarf Kinematics + Project (Faherty+ 2019)]] } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { object }) + + +asset.meta = { + Name = "Brown Dwarfs", + Version = "2.0", + Description = [[Digital Universe asset for Brown Dwarfs]], + Author = "Brian Abbott (AMNH)", + URL = "https://www.amnh.org/research/hayden-planetarium/digital-universe", + License = "AMNH Digital Universe", + Identifiers = "Dwarfs" +} diff --git a/data/assets/scene/digitaluniverse/exoplanets.asset b/data/assets/scene/digitaluniverse/exoplanets.asset index 7915477f17..81ea3477ca 100644 --- a/data/assets/scene/digitaluniverse/exoplanets.asset +++ b/data/assets/scene/digitaluniverse/exoplanets.asset @@ -39,10 +39,27 @@ local object = { EnablePixelSizeControl = true, }, GUI = { - Path = "/Milky Way/Exoplanets" + Name = "Exoplanets", + Path = "/Milky Way/Exoplanets", + Description = [[Census: 4,055 planets in 3,023 systems. DU Version 20.11.
+ Extrasolar planets, or exoplanets, are a relatively new phenomenon in + astronomy. While many astronomers believed in their existence, no + observational evidence was available until 1995. Since that time, scientists + have discovered thousands of systems consisting of one or more planets around + a host star.(Description from URL)

Data Reference: NASA Exoplanet + Archive (CalTech/NASA)]], } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { object }) + + +asset.meta = { + Name = "Exoplanets", + Version = "1.0", + Description = [[Digital Universe asset for Exoplanets]], + Author = "Brian Abbott (AMNH)", + URL = "https://www.amnh.org/research/hayden-planetarium/digital-universe", + License = "AMNH Digital Universe", + Identifiers = "Exoplanets" +} diff --git a/data/assets/scene/digitaluniverse/globularclusters.asset b/data/assets/scene/digitaluniverse/globularclusters.asset index 035052eea1..9b0f95ebb3 100644 --- a/data/assets/scene/digitaluniverse/globularclusters.asset +++ b/data/assets/scene/digitaluniverse/globularclusters.asset @@ -38,10 +38,42 @@ local object = { }, GUI = { Name = "Globular Clusters", - Path = "/Milky Way" + Path = "/Milky Way", + Description = [[Census: 157 globular clusters. DU Version 2.6.
Globular star + clusters are gravitationally bound groups of 100,000 to 1 million stars. They + are compact, spherical “balls” of stars with very high stellar densities in + their centers (stars near their center are within a light year of one + another). These clusters are typically 30 to 100 light years in diameter. If + Earth were located inside one of these clusters, our sky would be lit by an + abundance of stars brighter than the Sun. The globular clusters form one of + the most complete data sets in the Atlas. Data for the clusters represent + almost all the clusters in our Galaxy—several on the opposite side of Galactic + center may be invisible to us. The clusters orbit the Milky Way in random + orientations, as comets orbit the Sun.(Description from URL)

Data + Reference: Properties of Galactic Globular Clusters, C. Francis+ + (U Cambridge)]], } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { object }) + + +asset.meta = { + Name = "Globular Clusters", + Version = "2.0", + Description = [[Census: 157 globular clusters. DU Version 2.6. Globular star clusters + are gravitationally bound groups of 100,000 to 1 million stars. They are compact, + spherical “balls” of stars with very high stellar densities in their centers (stars + near their center are within a light year of one another). These clusters are + typically 30 to 100 light years in diameter. If Earth were located inside one of these + clusters, our sky would be lit by an abundance of stars brighter than the Sun. The + globular clusters form one of the most complete data sets in the Atlas. Data for the + clusters represent almost all the clusters in our Galaxy—several on the opposite side + of Galactic center may be invisible to us. The clusters orbit the Milky Way in random + orientations, as comets orbit the Sun.(Description from URL)

Data Reference: + Properties of Galactic Globular Clusters, C. Francis+ (U Cambridge)]], + Author = "Brian Abbott (AMNH)", + URL = "https://www.amnh.org/research/hayden-planetarium/digital-universe", + License = "AMNH Digital Universe", + Identifiers = "GlobularClusters" +} diff --git a/data/assets/scene/digitaluniverse/grids.asset b/data/assets/scene/digitaluniverse/grids.asset index dcb069250a..31483f3243 100644 --- a/data/assets/scene/digitaluniverse/grids.asset +++ b/data/assets/scene/digitaluniverse/grids.asset @@ -533,3 +533,23 @@ assetHelper.registerSceneGraphNodesAndExport(asset, { galacticLabels, plane1ld, plane1lm, plane1ly, plane10ly, plane100ly, plane1kly, plane10kly, plane100kly, plane1Mly, plane10Mly, plane100Mly, plane20Gly }) + + +asset.meta = { + Name = "Grids", + Version = "2.0", + Description = [[Various grids for showing size reference. Included: 10,000 light year + grid, 10 light year grid, 20 billion light year grid, 10 million light year grid, + 100 light year grid, 100 million light year grid, Ecliptic Coordinate Sphere + (500-light-year radius), Galactic Coordinate Sphere (1000-light-year radius), + Galaxy Coordinate Grid, Celestial Coordinates / Radio Sphere (dynamic radius), 1 + billion light year grid, Celestial Coordinate Sphere (1000000-light-year radius), + 1,000 light year grid, 1 million light year grid, 1 light year grid]], + Author = "Brian Abbott (AMNH)", + URL = "https://www.amnh.org/research/hayden-planetarium/digital-universe", + License = "AMNH Digital Universe", + Identifiers = "RadioSphere,OortSphere,EclipticSphere,EclipticSphereLabels,Equatorial," + .. "EquatorialSphereLabels,GalacticSphere,GalacticSphereLabels,1ldGrid,1lmGrid," + .. "1lyGrid,10lyGrid,100lyGrid,1klyGrid,10klyGrid,100klyGrid,1MlyGrid,10MlyGrid," + .. "100MlyGrid,20GlyGrid" +} diff --git a/data/assets/scene/digitaluniverse/groups.asset b/data/assets/scene/digitaluniverse/groups.asset index 682f7fb65b..1f324cef43 100644 --- a/data/assets/scene/digitaluniverse/groups.asset +++ b/data/assets/scene/digitaluniverse/groups.asset @@ -32,10 +32,23 @@ local object = { }, GUI = { Name = "Galaxy Group Labels", - Path = "/Universe/Galaxies" + Path = "/Universe/Galaxies", + Description = [[Census: 62 galaxy group labels. DU Version 1.2.
The Galaxy + Groups data are a set of labels that mark the nearby galaxy groups. The Milky Way + is in the Local Group, and we are surrounded by many other groups.(Description + from URL)

Data Reference: Brian Abbott (AMNH)]] } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { object }) + + +asset.meta = { + Name = "Galaxy Group Labels", + Version = "1.0", + Author = "Brian Abbott (AMNH)", + Description = [[Digital Universe asset for Galaxy Groups]], + URL = "https://www.amnh.org/research/hayden-planetarium/digital-universe", + License = "AMNH Digital Universe", + Identifiers = "NearbyGalaxyGroups" +} diff --git a/data/assets/scene/digitaluniverse/h2regions.asset b/data/assets/scene/digitaluniverse/h2regions.asset index db9cf215c6..a54f40fe2f 100644 --- a/data/assets/scene/digitaluniverse/h2regions.asset +++ b/data/assets/scene/digitaluniverse/h2regions.asset @@ -38,10 +38,30 @@ local object = { }, GUI = { Name = "HII Regions", - Path = "/Milky Way" + Path = "/Milky Way", + Description = [[Census: 1,271 nebulae. DU Version 4.6.
H ii (pronounced + H-two) regions are stellar nurseries for newborn stars. Stars are born from + condensing clouds of hydrogen gas. As these clouds condense, the densities + become high enough to form stars. From Earth's perspective, you'll notice that + the H ii regions all lie close to the Galactic plane. This is not an accident + of nature. These star-forming regions lie in the plane of the Galaxy because + that is where star formation occurs in spiral galaxies such as our Milky Way. + Because of this, they are great tracers of the spiral arms of the Galaxy, and + were instrumental in our understanding of the Galaxy's overall structure + (Description from URL)

Data Reference: The WISE catalog of Galactic + HII Regions (Anderson+, 2014)]], } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { object }) + + +asset.meta = { + Name = "HII Regions", + Version = "1.0", + Description = [[Digital Universe asset for HII Regions]], + Author = "Carter Emmart, Brian Abbott (AMNH)", + URL = "https://www.amnh.org/research/hayden-planetarium/digital-universe", + License = "AMNH Digital Universe", + Identifiers = "HIIRegions" +} diff --git a/data/assets/scene/digitaluniverse/kepler.asset b/data/assets/scene/digitaluniverse/kepler.asset index 75e102fe89..8480f925a1 100644 --- a/data/assets/scene/digitaluniverse/kepler.asset +++ b/data/assets/scene/digitaluniverse/kepler.asset @@ -34,10 +34,29 @@ local object = { }, GUI = { Name = "Kepler Planetary Candidates", - Path = "/Milky Way/Exoplanets" + Path = "/Milky Way/Exoplanets", + Description = [[Census: 3,254 stars. DU Version 9.3.
The exoplanet candidate + stars are likely hosts for exoplanets. These are stars plucked from NASA's Kepler + and TESS space telescopes. The Kepler mission was designed to stare at one spot, + roughly twelve degrees across, in the constellation Cygnus. By staring at one + spot, the spacecraft could monitor over 500,000 stars in that field for subtle + variations in brightness.The data included here are the stars that are considered + good candidates to host planets. Rather than represent them photo-realistically, + with accurate colors, we choose to visualize them as generic, pure yellow stars. + (Description from URL)

Data Reference: NASA Exoplanet Archive + (CalTech/NASA)]], } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { object }) + + +asset.meta = { + Name = "Kepler Planetary Candidates", + Version = "2.0", + Description = [[Digital Universe asset for Kepler Planetary Candidates]], + Author = "Brian Abbott, Emily Rice, and Jason No (AMNH)", + URL = "https://www.amnh.org/research/hayden-planetarium/digital-universe", + License = "AMNH Digital Universe", + Identifiers = "KeplerPlanetaryCandidates" +} diff --git a/data/assets/scene/digitaluniverse/localdwarfs.asset b/data/assets/scene/digitaluniverse/localdwarfs.asset index df011129ee..41fb19c836 100644 --- a/data/assets/scene/digitaluniverse/localdwarfs.asset +++ b/data/assets/scene/digitaluniverse/localdwarfs.asset @@ -39,10 +39,30 @@ local object = { }, GUI = { Name = "Local Group", - Path = "/Universe/Galaxies" + Path = "/Universe/Galaxies", + Description = [[Census: 102 galaxies. DU Version 6.4.
A group of galaxies is + a small number of large galaxies that are typically surrounded by a large + number of small galaxies. The Milky Way belongs to the Local Group, and is one + of roughly 100 galaxies in that group. The Milky Way, the Andromeda Galaxy + (also known as Messier 31, or M31), and the Triangulum Galaxy (M33) are three + of the largest galaxies in the Local Group. Each is a spiral galaxy containing + hundreds of billions of stars. Surrounding the Milky Way and Andromeda are a + bevy of dwarf galaxies-smaller, often irregular galaxies, that contain + hundreds of millions to a few billion stars. (Description from URL)

+ Data Reference: Properties of dwarf galaxies in the Local Group + (McConnachie+, 2012)]], } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { object }) + + +asset.meta = { + Name = "Local Group", + Version = "2.0", + Description = [[Digital Universe asset for the Local Goup]], + Author = "Brian Abbott (AMNH)", + URL = "https://www.amnh.org/research/hayden-planetarium/digital-universe", + License = "AMNH Digital Universe", + Identifiers = "LocalDwarfGalaxies" +} diff --git a/data/assets/scene/digitaluniverse/milkyway.asset b/data/assets/scene/digitaluniverse/milkyway.asset index 814ce42fe2..058a333f2c 100644 --- a/data/assets/scene/digitaluniverse/milkyway.asset +++ b/data/assets/scene/digitaluniverse/milkyway.asset @@ -1,60 +1,6 @@ local assetHelper = asset.require('util/asset_helper') - - -local sphereTextures = asset.syncedResource({ - Name = "Milky Way Sphere Textures", - Type = "HttpSynchronization", - Identifier = "milkyway_textures", - Version = 2 -}) - -local planeTextures = asset.syncedResource({ - Name = "Milky Way Plane Textures", - Type = "HttpSynchronization", - Identifier = "digitaluniverse_milkyway_textures", - Version = 2 -}) - -local planeSpeck = asset.syncedResource({ - Name = "Milky Way Plane Speck", - Type = "HttpSynchronization", - Identifier = "digitaluniverse_milkyway_speck", - Version = 1 -}) - -local homespeck = asset.syncedResource({ - Name = "Home Speck File", - Type = "HttpSynchronization", - Identifier = "digitaluniverse_home_speck", - Version = 1 -}) - -local sphere = { - Identifier = "MilkyWay", - Transform = { - Rotation = { - Type = "StaticRotation", - Rotation = {0, 0, 3.14159265359} - } - }, - Renderable = { - Type = "RenderableSphere", - Size = 9.2E21, - Segments = 40, - Opacity = 0.35, - Texture = sphereTextures .. "/DarkUniverse_mellinger_4k.jpg", - Orientation = "Inside", - UseAdditiveBlending = true, - MirrorTexture = true, - FadeOutThreshold = 0.0015, - Background = true - }, - GUI = { - Name = "Milky Way Sphere", - Path = "/Milky Way" - } -} +local dataPaths = asset.require("scene/digitaluniverse/milkyway_data") local plane = { Identifier = "MilkyWayGalaxyImage", @@ -65,58 +11,38 @@ local plane = { Color = { 1.0, 1.0, 1.0 }, Opacity = 0.99, ScaleFactor = 2.8, - File = planeSpeck .. "/galaxy.speck", - TexturePath = planeTextures, + File = dataPaths.SpeckPath .. "/galaxy.speck", + TexturePath = dataPaths.TexturesPath, Luminosity = "size", ScaleLuminosity = 1.0, - -- Fade in value in the same unit as "Unit" FadeInDistances = { 3000.0, 50000.0 }, PlaneMinSize = 5.0, Unit = "pc" }, GUI = { Name = "Milky Way Galaxy Image", - Path = "/Universe/Galaxies" + Path = "/Universe/Galaxies", + Description = [[Census: 1 image. DU Version 2.2.
The exterior view of the + Milky Way is simply a two-dimensional image. The image is that of NGC 1232, a + galaxy thought to resemble our Milky Way. The image has been properly sized + and approximately oriented to function as a placeholder, allowing one to see + the context of the Galaxy relative to other data in the atlas. The features + you see in the image, of course, do not represent our Galaxy, per se, but + resemble similar features found in our Galaxy.(Description from URL) +

Data Reference: European Southern Observatory]] } } -local homeLabel = { - Identifier = "HomeLabel", - Renderable = { - Type = "RenderableBillboardsCloud", - Enabled = false, - Color = { 1.0, 0.4, 0.2 }, - Opacity = 0.99, - ScaleFactor = 500.0, - --File = homespeck .. "/home.speck", - -- Texture = textures .. "/point3.png", - DrawLabels = true, - LabelFile = homespeck .. "/home.label", - TextColor = { 0.8, 0.8, 0.8 }, - TextSize = 20.50, - TextMinSize = 16.0, - TransformationMatrix = { - -0.7357425748, 0.67726129641, 0.0, 0.0, - -0.074553778365, -0.080991471307, 0.9939225904, 0.0, - 0.67314530211, 0.73127116582, 0.11008126223, 0.0, - 0.0, 0.0, 0.0, 1.0 - }, - Unit = "Mpc", - -- Fade in value in the same unit as "Unit" - FadeInDistances = { 0.05, 1.0 }, - -- Max size in pixels - BillboardMaxSize = 8.22, - BillboardMinSize = 0.0, - --CorrectionSizeEndDistance = 22.0, - --CorrectionSizeFactor = 10.45 - EnablePixelSizeControl = true - }, - GUI = { - Name = "Home Label", - Path = "/Universe/Galaxies" - } +assetHelper.registerSceneGraphNodesAndExport(asset, { plane }) + + +asset.meta = { + Name = "MilkyWay Galaxy", + Version = "2.0", + Description = [[Digital Universe asset containt 2D image of the MilkyWay. For + extragalactic viewing]], + Author = "Brian Abbott, Carter Emmart (AMNH)", + URL = "https://www.amnh.org/research/hayden-planetarium/digital-universe", + License = "AMNH Digital Universe", + Identifiers = "MilkyWayGalaxyImage" } - - - -assetHelper.registerSceneGraphNodesAndExport(asset, { sphere, plane, homeLabel }) diff --git a/data/assets/scene/digitaluniverse/milkyway_arm_labels.asset b/data/assets/scene/digitaluniverse/milkyway_arm_labels.asset new file mode 100644 index 0000000000..c973b8bb9d --- /dev/null +++ b/data/assets/scene/digitaluniverse/milkyway_arm_labels.asset @@ -0,0 +1,63 @@ +local assetHelper = asset.require('util/asset_helper') + +local dataPaths = asset.require("scene/digitaluniverse/milkyway_data") + +local plane = { + Identifier = "MilkyWayGalaxyArmLabelsImage", + Parent = "Root", + Renderable = { + Type = "RenderablePlanesCloud", + Enabled = false, + Color = { 1.0, 1.0, 1.0 }, + Opacity = 0.99, + ScaleFactor = 2.8, + File = dataPaths.SpeckPath .. "/galaxyArmLabels.speck", + TexturePath = dataPaths.TexturesPath, + Luminosity = "size", + ScaleLuminosity = 1.0, + FadeInDistances = { 3000.0, 50000.0 }, + PlaneMinSize = 5.0, + Unit = "pc" + }, + GUI = { + Name = "Milky Way Arms Labels", + Path = "/Universe/Galaxies", + Description = [[ Census: 1 image. DU Version: 1.2. This image contains labels for + the Milky Way's spiral arms. We label them in this manner ("hard coding" the + labels into an image rather than having native labels) so that they can retain + their size, shape, and location as they overlay the galaxy. (Description from + Digital Universe Data Profiles)]], + } +} + +assetHelper.registerSceneGraphNodesAndExport(asset, { plane }) + + +asset.meta = { + Name = "Milky Way Arms Labels", + Version = "1.0", + Description = [[ Image with arm labels for the Milky Way galaxy]], + Author = "Brian Abbott (AMNH)", + URL = "https://www.amnh.org/research/hayden-planetarium/digital-universe", + License = [[ Copyright © American Museum of Natural History. All rights reserved. +

Downloading the Atlas: AMNH offers the Atlas free of charge via our + website, http://www.haydenplanetarium.org/. The User is free to download and/or + duplicate verbatim copies of the Atlas provided this license and copyright + information accompany the Atlas.

Modifying the Atlas: The user is free to + modify the Atlas by either adding data or altering existing data, provided it is + for personal use only. Once the user modifies the Atlas, it is no longer part of + AMNH's Atlas and cannot be used publicly alongside or within the Atlas without + written permission from AMNH.

Distributing the Atlas: The user is + forbidden to distribute and use the Atlas for profit, as part of a software and/or + production system that will subsequently be redistributed, or for public + consumption (via print, electronic media, or broadcast/produced pieces) without + written permission from AMNH.

Neither the names of American Museum of + Natural History and Hayden Planetarium nor the names of their contributors may be + used to endorse or promote products derived from this Atlas without specific, + prior written permission.

The Atlas is free but is offered WITHOUT ANY + WARRANTY of any kind. We provide the Atlas as is and take no responsibility for + any damage resulting from the use of this Atlas. The entire risk as to the quality + and performance of this product is with the user.

For more information, + please visit http://www.haydenplanetarium.org/universe]], + Identifiers = "MilkyWayGalaxyArmLabelsImage" +} diff --git a/data/assets/scene/digitaluniverse/milkyway_data.asset b/data/assets/scene/digitaluniverse/milkyway_data.asset new file mode 100644 index 0000000000..855ebcc48f --- /dev/null +++ b/data/assets/scene/digitaluniverse/milkyway_data.asset @@ -0,0 +1,16 @@ +local planeTextures = asset.syncedResource({ + Name = "Milky Way Plane Textures", + Type = "HttpSynchronization", + Identifier = "digitaluniverse_milkyway_textures", + Version = 2 +}) + +local planeSpeck = asset.syncedResource({ + Name = "Milky Way Plane Speck", + Type = "HttpSynchronization", + Identifier = "digitaluniverse_milkyway_speck", + Version = 1 +}) + +asset.export("TexturesPath", planeTextures) +asset.export("SpeckPath", planeSpeck) diff --git a/data/assets/scene/digitaluniverse/milkyway_label.asset b/data/assets/scene/digitaluniverse/milkyway_label.asset new file mode 100644 index 0000000000..aca337344c --- /dev/null +++ b/data/assets/scene/digitaluniverse/milkyway_label.asset @@ -0,0 +1,57 @@ +--milkyway_label.asset +local assetHelper = asset.require('util/asset_helper') + + + +local homespeck = asset.syncedResource({ + Name = "Home Speck File", + Type = "HttpSynchronization", + Identifier = "digitaluniverse_home_speck", + Version = 1 +}) + +local homeLabel = { + Identifier = "HomeLabel", + Renderable = { + Type = "RenderableBillboardsCloud", + Enabled = false, + Color = { 1.0, 0.4, 0.2 }, + Opacity = 0.99, + ScaleFactor = 500.0, + DrawLabels = true, + LabelFile = homespeck .. "/home.label", + TextColor = { 0.8, 0.8, 0.8 }, + TextSize = 20.50, + TextMinSize = 16.0, + TransformationMatrix = { + -0.7357425748, 0.67726129641, 0.0, 0.0, + -0.074553778365, -0.080991471307, 0.9939225904, 0.0, + 0.67314530211, 0.73127116582, 0.11008126223, 0.0, + 0.0, 0.0, 0.0, 1.0 + }, + Unit = "Mpc", + FadeInDistances = { 0.05, 1.0 }, + BillboardMaxSize = 8.22, + BillboardMinSize = 0.0, + EnablePixelSizeControl = true + }, + GUI = { + Name = "Home Label", + Path = "/Universe/Galaxies", + Description = [[Label for the Milky Way titled "Home", sided for the galactic + level]], + } +} + +assetHelper.registerSceneGraphNodesAndExport(asset, { homeLabel }) + + +asset.meta = { + Name = "Home Label", + Version = "1.0", + Description = [[Label for the Milky Way titled "Home", sided for the galactic level]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "HomeLabel" +} diff --git a/data/assets/scene/digitaluniverse/milkyway_sphere.asset b/data/assets/scene/digitaluniverse/milkyway_sphere.asset new file mode 100644 index 0000000000..28b14ded2a --- /dev/null +++ b/data/assets/scene/digitaluniverse/milkyway_sphere.asset @@ -0,0 +1,52 @@ +local assetHelper = asset.require('util/asset_helper') + + + +local sphereTextures = asset.syncedResource({ + Name = "Milky Way Sphere Textures", + Type = "HttpSynchronization", + Identifier = "milkyway_textures", + Version = 2 +}) + + +local sphere = { + Identifier = "MilkyWay", + Transform = { + Rotation = { + Type = "StaticRotation", + Rotation = {0, 0, 3.14159265359} + } + }, + Renderable = { + Type = "RenderableSphere", + Size = 9.2E21, + Segments = 40, + Opacity = 0.35, + Texture = sphereTextures .. "/DarkUniverse_mellinger_4k.jpg", + Orientation = "Inside", + UseAdditiveBlending = true, + MirrorTexture = true, + FadeOutThreshold = 0.0015, + Background = true + }, + GUI = { + Name = "Milky Way Sphere", + Path = "/Milky Way", + Description = [[All sky image of the Milky Way that is visible when inside. Fades + out when zooming away from the Milky Way]], + } +} + +assetHelper.registerSceneGraphNodesAndExport(asset, { sphere }) + + +asset.meta = { + Name = "Milky Way Galaxy Sphere", + Version = "2.0", + Description = [[All sky image of the Milky Way]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "MilkyWay" +} diff --git a/data/assets/scene/digitaluniverse/obassociations.asset b/data/assets/scene/digitaluniverse/obassociations.asset index ad25602989..93d0c4d316 100644 --- a/data/assets/scene/digitaluniverse/obassociations.asset +++ b/data/assets/scene/digitaluniverse/obassociations.asset @@ -42,10 +42,30 @@ local object = { }, GUI = { Name = "OB Associations", - Path = "/Milky Way" + Path = "/Milky Way", + Description = [[Census: 61 OB associations. DU Version 2.4.
OB associations + are young groups of stars that were formed within a giant molecular cloud, but + have dispersed after the original gas and dust from the cloud was blown away + by the star's radiation pressure. Although an association's stars are no + longer gravitationally bound to one another, they share a common motion in + space because they were formed from the same cloud. This allows astronomers to + easily determine OB association membership stars. These objects are color + coded by their spiral arm membership. Blue associations trace the Sagittarius + Arm. Purple associations are in the local Orion Spur. Orange associations are + in the Perseus Arm (Description from URL)

Data Reference: New List of + OB Associations (Melnik+)]], } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { object }) + + +asset.meta = { + Name = "OB Associations", + Version = "2.0", + Description = [[Digital Universe asset for OB Associations]], + Author = "Brian Abbott (AMNH)", + URL = "https://www.amnh.org/research/hayden-planetarium/digital-universe", + License = "AMNH Digital Universe", + Identifiers = "OBAssociations" +} diff --git a/data/assets/scene/digitaluniverse/openclusters.asset b/data/assets/scene/digitaluniverse/openclusters.asset index d060f744db..4da9e44a02 100644 --- a/data/assets/scene/digitaluniverse/openclusters.asset +++ b/data/assets/scene/digitaluniverse/openclusters.asset @@ -38,10 +38,30 @@ local object = { }, GUI = { Name = "Open Star Clusters", - Path = "/Milky Way" + Path = "/Milky Way", + Description = [[Census: 2,040 clusters. DU Version 5.7.
OB associations are + young groups of stars that were formed within a giant molecular cloud, but + have dispersed after the original gas and dust from the cloud was blown away + by the star's radiation pressure. Although an association's stars are no + longer gravitationally bound to one another, they share a common motion in + space because they were formed from the same cloud. This allows astronomers to + easily determine OB association membership stars. These objects are color + coded by their spiral arm membership. Blue associations trace the Sagittarius + Arm. Purple associations are in the local Orion Spur. Orange associations are + in the Perseus Arm (Description from URL)

Data Reference: Optically + visible open clusters and Candidates (Dias+ 2002-2015)]], } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { object }) + + +asset.meta = { + Name = "Open Star Clusters", + Version = "2.0", + Description = [[Digital Universe asset for Open Star Clusters]], + Author = "Brian Abbott (AMNH)", + URL = "https://www.amnh.org/research/hayden-planetarium/digital-universe", + License = "AMNH Digital Universe", + Identifiers = "OpenStarClusters" +} diff --git a/data/assets/scene/digitaluniverse/planetarynebulae.asset b/data/assets/scene/digitaluniverse/planetarynebulae.asset index 685cd6d21a..3c56a24762 100644 --- a/data/assets/scene/digitaluniverse/planetarynebulae.asset +++ b/data/assets/scene/digitaluniverse/planetarynebulae.asset @@ -38,10 +38,27 @@ local object = { }, GUI = { Name = "Planetary Nebulae", - Path = "/Milky Way" + Path = "/Milky Way", + Description = [[Census: 283 nebulae. DU Version 2.8.
A planetary nebula is an + expanding shell of gas ejected from a star late in its life cycle. Appearing + like greenish disks to a telescopic observer, planetary nebulae received their + name from their resemblance to the gaseous planets of our solar system. In no + way are they related to planets, rather, they are products of dying stars. + (Description from URL)

Data Reference: Planetary Nebulae distances + in Gaia DR2 (Kimeswenger+, 2018), Strasbourg-ESO Catalog of Planetary Nebulae + (Acker+ 1992)]], } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { object }) + + +asset.meta = { + Name = "Planetary Nebulae", + Version = "2.0", + Description = [[Digital Universe asset for Planetary Nebulae]], + Author = "Brian Abbott (AMNH)", + URL = "https://www.amnh.org/research/hayden-planetarium/digital-universe", + License = "AMNH Digital Universe", + Identifiers = "PlanetaryNebulae" +} diff --git a/data/assets/scene/digitaluniverse/pulsars.asset b/data/assets/scene/digitaluniverse/pulsars.asset index bd58260f22..8b572b9391 100644 --- a/data/assets/scene/digitaluniverse/pulsars.asset +++ b/data/assets/scene/digitaluniverse/pulsars.asset @@ -37,10 +37,32 @@ local object = { EnablePixelSizeControl = false }, GUI = { - Path = "/Milky Way" + Name = "Pulsars", + Path = "/Milky Way", + Description = [[Census: 2,498 pulsars. DU Version 5.6.
Upon death, stars + leave behind one of three possible remnants: a white dwarf, a neutron star, or + a black hole. Stars that are more massive than the sun will often become + neutron stars in a violent explosion called a supernova. During a supernova, + the core of the star collapses under such high pressure that the electrons, + which normally remain outside the atomic nucleus, are forced to combine with + the protons in the nucleus. Atomic nuclei break apart, producing what is + called a degenerate state of matter. The collapse is halted when the material + cannot be packed any tighter. At this point, the star has a radius of about + 10-15 kilometers. The density of this material is so high that a teaspoonful + would weigh about 100 million tons on Earth. (Description from URL)

+ Data Reference: ATNF Pulsar Catalogue, (Manchester+, 2005)]], } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { object }) + + +asset.meta = { + Name = "Pulsars", + Version = "2.0", + Description = [[Digital Universe asset for Pulsars.]], + Author = "Brian Abbott (AMNH)", + URL = "https://www.amnh.org/research/hayden-planetarium/digital-universe", + License = "AMNH Digital Universe", + Identifiers = "Pulsars" +} diff --git a/data/assets/scene/digitaluniverse/quasars.asset b/data/assets/scene/digitaluniverse/quasars.asset index be9b11e59b..c1363977d8 100644 --- a/data/assets/scene/digitaluniverse/quasars.asset +++ b/data/assets/scene/digitaluniverse/quasars.asset @@ -35,10 +35,28 @@ local object = { EnablePixelSizeControl = true }, GUI = { - Path = "/Universe" + Name = "Quasars", + Path = "/Universe", + Description = [[Census: 569,442 quasars. DU Version 2.2.
+ Quasars are the most distant objects we can see. They are extremely active + galaxies that contain supermassive black holes which are gobbling up material + at a furious rate. The Million Quasars Catalogue is an aggregate catalog of + several surveys, including 2dF and Sloan. So, it should not be surprising that + the shape of these data mimic the shape of the Sloan and 2dF galaxy surveys, + with large parts of the sky unobserved.(Description from URL)

Data + Reference: The Million Quasars catalog (Flesch, 2017)]] } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { object }) + + +asset.meta = { + Name = "Quasars", + Version = "2.0", + Description = [[Digital Universe asset for Quasars.]], + Author = "Brian Abbott (AMNH)", + URL = "https://www.amnh.org/research/hayden-planetarium/digital-universe", + License = "AMNH Digital Universe", + Identifiers = "Quasars" +} diff --git a/data/assets/scene/digitaluniverse/sdss.asset b/data/assets/scene/digitaluniverse/sdss.asset index 56d92df264..aea7142560 100644 --- a/data/assets/scene/digitaluniverse/sdss.asset +++ b/data/assets/scene/digitaluniverse/sdss.asset @@ -44,10 +44,34 @@ local object = { }, GUI = { Name = "Sloan Digital Sky Survey", - Path = "/Universe/Galaxies" + Path = "/Universe/Galaxies", + Description = [[Census: 2,600,258 galaxies. DU Version 10.6.
The Sloan Digital + Sky Survey (SDSS) is an ambitious project to image about 35% of the sky, deep + into the universe. The survey measured the position and brightness of almost 1 + billion objects, and obtained spectra to more than 4 million objects. This is + not an all-sky survey, so there are large parts of the sky that remain + unobserved, which produces the bow tie distribution and the black areas where + there surely are galaxies, but we have yet to observe them. These galaxies + appear to extend beyond the 2dF survey to distances that exceed 5 billion + light years. However, the weblike structure of clusters, filaments, and voids + seems to fade by about 2 billion light years. Beyond this distance, the + completeness of the survey drops so that only the intrinsically bright + galaxies are visible. The weblike cosmic structure is echoed in these data, + with orange clusters standing out among the less dense aqua-colored galaxies + and the less dense regions of green-colored galaxies. (Description from URL) +

Data Reference: Sloan Digital Sky Survey (http://www.sdss.org/)]] } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { object }) + + +asset.meta = { + Name = "Sloan Digital Sky Survey", + Version = "2.0", + Description = [[Digital Universe asset for The Sloan Digital Sky Survey (SDSS).]], + Author = "Brian Abbott (AMNH)", + URL = "https://www.amnh.org/research/hayden-planetarium/digital-universe", + License = "AMNH Digital Universe", + Identifiers = "SloanDigitalSkySurvey" +} diff --git a/data/assets/scene/digitaluniverse/starlabels.asset b/data/assets/scene/digitaluniverse/starlabels.asset index 6e12b8e7eb..62fda28888 100644 --- a/data/assets/scene/digitaluniverse/starlabels.asset +++ b/data/assets/scene/digitaluniverse/starlabels.asset @@ -26,10 +26,21 @@ local object = { }, GUI = { Name = "Stars Labels", - Path = "/Milky Way/Stars" + Path = "/Milky Way/Stars", + Description = [[Labels for stars in the Milky Way. See 'Stars' for more + info.]], } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { object }) + + +asset.meta = { + Name = "Star Labels", + Version = "2.0", + Description = [[Digital Universe asset for labels of the stars.]], + Author = "Brian Abbott (AMNH)", + URL = "https://www.amnh.org/research/hayden-planetarium/digital-universe", + License = "AMNH Digital Universe", + Identifiers = "StarsLabels" +} diff --git a/data/assets/scene/digitaluniverse/starorbits.asset b/data/assets/scene/digitaluniverse/starorbits.asset index 212d2a9b3f..fad2c66b5e 100644 --- a/data/assets/scene/digitaluniverse/starorbits.asset +++ b/data/assets/scene/digitaluniverse/starorbits.asset @@ -28,7 +28,8 @@ local sunOrbit = { }, GUI = { Name = "Sun Orbit", - Path = "/Milky Way/Stars/Stars Orbits" + Path = "/Milky Way/Stars/Stars Orbits", + Description = [["Orbits of the Sun around the Milky Way"]] } } @@ -50,7 +51,8 @@ local barnardsOrbit = { }, GUI = { Name = "Barnards Orbit", - Path = "/Milky Way/Stars/Stars Orbits" + Path = "/Milky Way/Stars/Stars Orbits", + Description = [["Orbits of Barnard's Star around the Milky Way"]] } } @@ -72,7 +74,8 @@ local kapteynsOrbit = { }, GUI = { Name = "Kapteyns Orbit", - Path = "/Milky Way/Stars/Stars Orbits" + Path = "/Milky Way/Stars/Stars Orbits", + Description = [["Orbits of Kapteyn's Star around the Milky Way"]] } } @@ -94,7 +97,8 @@ local lacaille9352Orbit = { }, GUI = { Name = "Lacaille 9352 Orbit", - Path = "/Milky Way/Stars/Stars Orbits" + Path = "/Milky Way/Stars/Stars Orbits", + Description = [["Orbits of Lacaille9352 around the Milky Way"]] } } @@ -116,7 +120,8 @@ local lSR1826Orbit = { }, GUI = { Name = "LSR1826+3014 Orbit", - Path = "/Milky Way/Stars/Stars Orbits" + Path = "/Milky Way/Stars/Stars Orbits", + Description = [["Orbits of LSR1826+3014 around the Milky Way"]] } } @@ -138,7 +143,8 @@ local lSRJ0822Orbit = { }, GUI = { Name = "LSRJ0822+1700 Orbit", - Path = "/Milky Way/Stars/Stars Orbits" + Path = "/Milky Way/Stars/Stars Orbits", + Description = [["Orbits of LSRJ0822+1700 around the Milky Way"]] } } @@ -160,7 +166,8 @@ local pM_J13420Orbit = { }, GUI = { Name = "PM_J13420-3415 Orbit", - Path = "/Milky Way/Stars/Stars Orbits" + Path = "/Milky Way/Stars/Stars Orbits", + Description = [["Orbits of PM_J13420-3415 around the Milky Way"]] } } @@ -168,3 +175,18 @@ assetHelper.registerSceneGraphNodesAndExport(asset, { sunOrbit, barnardsOrbit, pM_J13420Orbit, lSRJ0822Orbit, lSR1826Orbit, lacaille9352Orbit, kapteynsOrbit }) + + +asset.meta = { + Name = "Star Orbits", + Version = "1.0", + Description = [[Select Star Orbital paths that delineate their trajectory around the + Milky Way over 1 billion years into the future. Included: Sun, Barnards, Kapteyns, + Lacaille 9352, LSR1826+3014, LSRJ0822+1700, PM_J13420-3415.

Data + Reference: Sebastien Lepine (AMNH)]], + Author = "Brian Abbott (AMNH)", + URL = "https://www.amnh.org/research/hayden-planetarium/digital-universe", + License = "AMNH Digital Universe", + Identifiers = "SunOrbit,BarnardsOrbit,KapteynsOrbit,pM_J13420Orbit,LSR1826Orbit," .. + "LSRJ0822Orbit,lacaille9352Orbit" +} diff --git a/data/assets/scene/digitaluniverse/stars.asset b/data/assets/scene/digitaluniverse/stars.asset index 0407908aab..3978780626 100644 --- a/data/assets/scene/digitaluniverse/stars.asset +++ b/data/assets/scene/digitaluniverse/stars.asset @@ -43,7 +43,15 @@ local stars = { RenderMethod = "Texture Based" -- or PSF }, GUI = { - Path = "/Milky Way/Stars" + Name = "Stars", + Path = "/Milky Way/Stars", + Description = [[Census: 117,003 stars with 321 labels.
DU Version 7.8. This + star catalog is a combination of all available star catalogs, wherein we + choose the best distance available to place the stars around the Sun as + accurately as is possible. (Description from URL)

Data Reference: + XHIP: An Extended Hipparcos Compilation (Anderson E., Francis C. 2012); + Hipparcos Catalog (European Space Agency 1997); Gliese Catalog (Gliese and + Jahriess 1991)]], } } @@ -62,8 +70,21 @@ local sunstar = { }, GUI = { Name = "Sun", - Path = "/Milky Way/Stars" + Path = "/Milky Way/Stars", + Description = [[Individual star to represent the sun when outside of the solar + system]] } } assetHelper.registerSceneGraphNodesAndExport(asset, { stars, sunstar }) + + +asset.meta = { + Name = "Stars", + Version = "2.0", + Description = [[Digital Universe asset for the stars.]], + Author = "Brian Abbott (AMNH)", + URL = "https://www.amnh.org/research/hayden-planetarium/digital-universe", + License = "AMNH Digital Universe", + Identifiers = "Stars" +} diff --git a/data/assets/scene/digitaluniverse/superclusters.asset b/data/assets/scene/digitaluniverse/superclusters.asset index 6ebbb1f488..9e2f74d287 100644 --- a/data/assets/scene/digitaluniverse/superclusters.asset +++ b/data/assets/scene/digitaluniverse/superclusters.asset @@ -38,10 +38,25 @@ local object = { }, GUI = { Name = "Galaxy Superclusters", - Path = "/Universe/Galaxies" + Path = "/Universe/Galaxies", + Description = [[Census: 33 labels. DU Version 1.3.
The superclusters dataset + is a set of labels that mark the major galaxy superclusters in the local universe. + They correspond to, and should be viewed with, the Abell clusters. Astronomers + estimate there are 10 million superclusters in the observable universe. + (Description from URL)

Data Reference: Superclusters of Abell and X-ray + clusters (Einasto+, 2001)]] } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { object }) + + +asset.meta = { + Name = "Galaxy Superclusters", + Version = "2.0", + Description = [[Digital Universe asset for Galaxy Superclusters.]], + Author = "Brian Abbott (AMNH)", + URL = "https://www.amnh.org/research/hayden-planetarium/digital-universe", + License = "AMNH Digital Universe", + Identifiers = "GalaxySuperclusters" +} diff --git a/data/assets/scene/digitaluniverse/supernovaremnants.asset b/data/assets/scene/digitaluniverse/supernovaremnants.asset index c821080e65..29b0f6bc3e 100644 --- a/data/assets/scene/digitaluniverse/supernovaremnants.asset +++ b/data/assets/scene/digitaluniverse/supernovaremnants.asset @@ -40,10 +40,24 @@ local object = { }, GUI = { Name = "Supernova Remnants", - Path = "/Milky Way" + Path = "/Milky Way", + Description = [[Census: 112 supernova remnants.
DU Version 3.7. A supernova + remnant is the ejected gas that results from a supernova. It glows for a + cosmically short period of time before mixing with the interstellar medium. + (Description from URL)

Data Reference: The First Fermi LAT SNR + Catalog (Acero+, 2016)]], } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { object }) + + +asset.meta = { + Name = "Supernova Remnants", + Version = "2.0", + Description = [[Digital Universe asset for Supernova Remnants.]], + Author = "Brian Abbott (AMNH)", + URL = "https://www.amnh.org/research/hayden-planetarium/digital-universe", + License = "AMNH Digital Universe", + Identifiers = "SupernovaRemnants" +} diff --git a/data/assets/scene/digitaluniverse/tully.asset b/data/assets/scene/digitaluniverse/tully.asset index 45ce730432..31cc4cb3ab 100644 --- a/data/assets/scene/digitaluniverse/tully.asset +++ b/data/assets/scene/digitaluniverse/tully.asset @@ -32,7 +32,7 @@ local tullyPoints = { ColorOption = { "prox5Mpc" }, ColorRange = { { 1.0, 30.0 } }, LabelFile = speck .. "/tully.label", - DrawLabels = true, + DrawLabels = false, TextColor = { 0.7, 0.7, 0.7 }, TextSize = 19.36, TextMinSize = 8.2, @@ -54,7 +54,23 @@ local tullyPoints = { }, GUI = { Name = "Tully Galaxies", - Path = "/Universe/Galaxies" + Path = "/Universe/Galaxies", + Description = [[Census: 30,059 galaxies. DU Version 1.5.
The Tully Catalog is + the most polished, accurate catalog of nearby galaxies. It includes over 30,000 + galaxies in the local universe that surround the Milky Way. This catalog + demonstrates the large-scale structure of the universe exceptionally well. And, + each galaxy has a representative image reflecting its morphological type, and is + properly sized and inclined. Size and shape. The data form a cube, which is an + arbitrary cutoff based on the completeness of these data. Beyond this, data from + these sources are not as reliable, so effort is made to show a complete picture, + albeit limited by observations (for example, we cannot see dwarf galaxies much + beyond the Local Group). The size of the cube is roughly 1 billion light years on + a diagonal (so the farthest galaxies in the dataset are about 1 billion light + years from the Milky Way), or about 700 million light years per side. +

Colors. Orange denotes more dense regions of the local universe, aqua is + given to galaxies in an intermediate-density area, and green is given to lower + density regions.(Description from URL)

Data Reference: Tully Galaxy + Catalog: Brent Tully (U Hawaii), Stuart Levy (NCSA/UIUC)]] } } @@ -83,9 +99,30 @@ local tullyImages = { }, GUI = { Name = "Tully Galaxies Images", - Path = "/Universe/Galaxies" + Path = "/Universe/Galaxies", + Description = [[Each galaxy is represented by an image + that represents its morphological type (spiral, elliptical, etc.). Most of these + come from The Galaxy Catalog. A handful of nearby galaxies are represented by + their actual images, which come mostly from the National Optical Astronomy + Observatory (NOAO). Each of these images has been altered from its original state. + These images were taken from Earth on some of the world’s largest telescopes, so + foreground stars from our own Galaxy appear in each image. We are representing + galaxies in extragalactic space, so we have removed the stars from each image. + (Description from URL)

Data Reference: Tully Galaxy Catalog: Brent Tully + (U Hawaii), Stuart Levy (NCSA/UIUC)]] } } - assetHelper.registerSceneGraphNodesAndExport(asset, { tullyPoints, tullyImages }) + + +asset.meta = { + Name = "Tully Galaxies", + Version = "3.0", + Description = [[Digital Universe asset for Tully Galaxies, including point cloud and + images.]], + Author = "Stuart Levy (NCSA/UIUC), Brian Abbott (AMNH)", + URL = "https://www.amnh.org/research/hayden-planetarium/digital-universe", + License = "AMNH Digital Universe", + Identifiers = "TullyGalaxies,TullyGalaxiesImages" +} diff --git a/data/assets/scene/digitaluniverse/voids.asset b/data/assets/scene/digitaluniverse/voids.asset index 420ebe54b7..8156708b9e 100644 --- a/data/assets/scene/digitaluniverse/voids.asset +++ b/data/assets/scene/digitaluniverse/voids.asset @@ -25,10 +25,30 @@ local object = { Unit = "Mpc" }, GUI = { - Path = "/Universe/Galaxies" + Name = "Voids", + Path = "/Universe/Galaxies", + Description = [[ Census: 24 cosmic voids. DU Version 1.2.
Cosmic voids are + vast, empty spaces where there are either no galaxies, or very few galaxies. + They are associated with cold spots in the cosmic microwave background (CMB) + light, the earliest picture we have of the universe (see page 58). Those cold + spots in the CMB evolved into large voids, some as much as 300 million light + years in diameter. Labels roughly denote the location of cosmic voids in the + Tully galaxies. Voids are only visible with motion cuing as you spin around + these data. The labels help to guide the eye and provide sign posts for the + largest voids in our cosmic neighborhood. (Description from URL)

Data + Reference: various sources]] } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { object }) + + +asset.meta = { + Name = "Voids", + Version = "2.0", + Author = "Brian Abbott (AMNH)", + Description = [[Digital Universe asset for Cosmic voids.]], + URL = "https://www.amnh.org/research/hayden-planetarium/digital-universe", + License = "AMNH Digital Universe", + Identifiers = "Voids" +} diff --git a/data/assets/scene/milkyway/constellations/constellation_art.asset b/data/assets/scene/milkyway/constellations/constellation_art.asset index 4d4ad4e64f..c77fa2e29f 100644 --- a/data/assets/scene/milkyway/constellations/constellation_art.asset +++ b/data/assets/scene/milkyway/constellations/constellation_art.asset @@ -5,11 +5,11 @@ local images = asset.syncedResource({ Name = "Constellation Images", Type = "HttpSynchronization", Identifier = "constellation_images", - Version = 1 + Version = 2 }) --function that reads the file -local createConstellations = function (guiPath, constellationfile) +local createConstellations = function (baseIdentifier, guiPath, constellationfile) local genConstellations = {}; --skip the first line local notFirstLine = false; @@ -33,7 +33,8 @@ local createConstellations = function (guiPath, constellationfile) group = (group == '' and globe or group) local aconstellation = { - Identifier = guiPath .. '-' .. name, + -- Identifier = guiPath .. '-' .. name, + Identifier = baseIdentifier .. '-' .. abbreviation, Parent = transforms.SolarSystemBarycenter.Identifier, Transform = { Translation = { @@ -83,7 +84,7 @@ local nodes = {} asset.onInitialize(function () local constellationsCSV = images .. "/constellation_data.csv" - nodes = createConstellations('Constellation Art', constellationsCSV) + nodes = createConstellations('ConstellationArt', 'Constellation Art', constellationsCSV) for _, n in ipairs(nodes) do openspace.addSceneGraphNode(n); end @@ -101,6 +102,6 @@ asset.meta = { Version = "1.0", Description = "Artistic images depicting the constellations", Author = "James Hedberg", - URL = "jameshedberg.com", + URL = "http://jameshedberg.com", License = "CC-BY" } diff --git a/data/assets/scene/milkyway/constellations/constellation_data.csv b/data/assets/scene/milkyway/constellations/constellation_data.csv deleted file mode 100644 index 7c02f310de..0000000000 --- a/data/assets/scene/milkyway/constellations/constellation_data.csv +++ /dev/null @@ -1,85 +0,0 @@ -Data about Constellations columns are: group, name, x, y, z, scale, imageName, rotX, rotY, rotZ, centerStar -normal,Ori,Orion,-550.8742,-259.3621,-188.9620,1.5,Ori.png,1.128407,1.058407,1.668407,HD37128 -zodiac,Tau,Taurus,-18.7277,-0.3175,-6.9092,1.2,Tau.png,1.198407,0.908407,1.378407,Aldebran -zodiac,Ari,Aries,-13.2892,9.4519,-11.9378,0.8,Ari.png,0.668407,0.538407,0.518407,Hamal -zodiac,Gem,Gemini,-362.5493,-102.2245,79.4030,0.85,Gem.png,-0.731593,2.268407,-0.451593,Mekbuda -zodiac,Cnc,Cancer,-30.9209,-16.4584,22.6601,0.8,Cnc.png,-1.151593,1.888407,-1.041593,HD74442 -zodiac,Leo,Leo,-17.9030,-13.2719,31.4196,1.33,Leo.png,-0.131593,2.448407,0.418407,HD89484 -zodiac,Vir,Virgo,36.5809,-35.1877,62.3341,1.5,Vir.png,-0.371593,3.138407,0.518407,HD116658 -zodiac,Lib,Libra,17.5393,-6.2768,14.5916,1.0,Lib.png,-1.011593,3.138407,1.318407,HD130819 -zodiac,Sco,Scorpius,137.4378,-19.4456,37.3606,1.2,Sco.png,1.698407,-1.001593,-1.751593,HD148478 -zodiac,Sgr,Sagittarius,66.2304,11.1498,-14.8095,1.2,Sgr.png,1.728407,-1.321593,-1.751593,HD175191 -zodiac,Cap,Capricornus,32.9799,20.0621,-29.3945,1.3,Cap.png,1.158407,-0.881593,-0.561593,HD200761 -zodiac,Aqr,Aquarius,86.5090,149.4078,-155.8102,1.2,Aqr.png,-2.921593,-2.391593,-2.551593,-2.511593 -zodiac,Psc,Pisces,-28.0235,45.3150,-76.8893,1.6,Psc.png,0.458407,-0.001593,0.618407,HD4656 -northern,Uma,Ursa Major,-12.0503,7.1931,19.8974,1.6,UMa.png,0.748407,2.398407,0.658407,HD95418 -northern,Dra,Draco,-1.4340,20.6566,23.5098,1.9,Dra.png,0.658407,-2.541593,1.058407,HD137759 -southern,Ant,Antila,-0.2233,-103.8908,42.7940,1.3,Ant.png,1.848407,0.198407,-3.141593,HD90610 -southern,Crv,Corvus,8.0442,-16.8858,19.3984,1.1,Crv.png,2.198407,-0.041593,-2.221593,HD108767 -southern,Cet,Cetus,-28.7960,7.2425,-73.6693,1.5,Cet.png,0.238407,0.368407,0.688407,HD11353 -southern,Cha,Chameleon,53.5121,-108.3624,-38.1807,1.1,Cha.png,-1.801593,2.738407,0.448407,HD92305 -northern,Cam,Camelopardalis,-304.8155,179.0620,71.1454,1.7,Cam.png,2.128407,1.228407,1.478407,HD31910 -equatorial,Aql,Aquila,11.7741,9.7467,-1.6418,1.0,Aql.png,-2.601593,-2.511593,-3.141593,HD182640 -southern,Aps,Apus,31.6370,-32.5620,-16.5786,1.1,Aps.png,-1.691593,-2.281593,0.838407,HD149324 -northern,Lyn,Lynx,-98.3174,4.4830,67.2289,1.2,Lyn.png,1.688407,1.768407,1.668407,HD70272 -southern,Phe,Phoenix,5.0172,-4.2096,-22.8088,1.5,Phe.png,-3.141593,3.138407,-3.141593,HD6595 -northern,Cyg,Cygnus,78.7445,375.2440,12.4995,1.4,Cyg.png,1.668407,-0.931593,-0.261593,HD194093 -southern,Cen,Centaurus,20.1398,-33.1830,9.5915,2.7,Cen.png,-1.291593,3.088407,0.458407,HD110304 -northern,Aur,Auriga,-12.3062,3.8595,1.0302,1.5,Aur.png,1.378407,1.108407,1.178407,HD34029 -northern,Peg,Pegasus,0.9791,32.5947,-27.7339,2.42,Peg.png,0.918407,-0.221593,-0.191593,HD218045 -southern,Hya,Hydra,-2.9043,-33.5496,25.8962,3,Hya.png,-0.531593,2.838407,0.368407,HD93813 -southern,Oct,Octans,22.0434,-27.8601,-24.3108,1.0,Oct.png,-0.911593,0.398407,1.198407,HD214846 -southern,Nor,Norma,34.9251,-17.5643,0.0068,1.0,Nor.png,-1.631593,-2.421593,1.298407,HD146686 -southern,Mus,Musca,48.8888,-79.2952,-10.2828,1.25,Mus.png,-1.871593,3.138407,0.358407,HD109668 -southern,Hyi,Hydrus,3.2767,-4.7183,-4.7829,1.1,Hyi.png,2.438407,-3.141593,-2.381593,HD2151 -northern,Lac,Lacerta,-6.0878,30.5794,-3.6064,1.0,Lac.png,-1.521593,-2.391593,3.138407,HD213558 -equatorial,Lep,Lepus,-212.6297,-184.4909,-132.1156,1.0,Lep.png,-1.801593,-2.351593,-0.861593,HD36673 -southern,Lup,Lupus,129.1166,-102.2983,33.3251,1.2,Lup.png,-1.191593,-2.391593,0.798407,HD129056 -southern,Men,Mensa,2.4149,-8.5586,-4.8892,1.0,Men.png,-2.101593,-2.781593,0.828407,HD43834 -southern,Mic,Microscopium,51.0335,11.1671,-44.3692,1.0,Mic.png,0.728407,-0.831593,-0.561593,HD199951 -equatorial,Mon,Monoceros,-93.0725,-66.8909,8.6548,1.2,Mon.png,-1.331593,1.988407,-0.891593,HD55185 -southern,Pav,Pavo,4.4549,-2.5959,-3.2739,1.3,Pav.png,-2.391593,-2.171593,1.648407,HD190248 -southern,Ind,Indus,133.6149,-53.5569,-115.9552,1.5,Ind.png,-2.031593,-1.491593,1.758407,HD198700 -northern,LMi,Leo Minor,-23.3948,-2.5770,38.0756,1.1,LMi.png,-3.141593,0.478407,-2.201593,HD90537 -northern,Lyr,Lyra,2.8086,6.7630,2.5555,1.0,Lyr.png,-1.831593,-2.091593,3.141500,HD172167 -northern,Her,Hercules,14.0526,14.9773,12.5478,1.3,Her.png,-1.511593,-1.811593,2.288407,HD156164 -southern,Gru,Grus,18.6528,-3.2893,-24.6602,1.3,Gru.png,-3.141593,-2.511593,-2.901593,HD209952 -southern,Crt,Crater,1.5886,-43.9831,40.3390,1.3,Crt.png,-0.521593,3.140000,0.588407,HD98430 -northern,Del,Delphinus,14.8599,24.6150,-8.0550,1.2,Del.png,1.308407,-0.951593,-0.241593,HD196524 -southern,Dor,Dorado,-0.6460,-9.3172,-6.9654,1.2,Dor.png,2.118407,1.768407,-2.901593,HD33262 -northern,Equ,Equuleus,27.7363,41.7071,-27.4371,1.2,Equ.png,-1.801593,-2.511593,2.558407,HD202447 -southern,Eri,Eridanus,-37.5153,-23.5231,-65.6368,2.1,Eri.png,0.128407,0.698407,0.998407,HD20720 -southern,For,Fornax,-14.0351,-17.8282,-46.5514,1.4,For.png,3.138407,2.678407,-2.351593,HD17652 -southern,Hor,Horologium,2.1021,-27.1310,-40.5136,1.2,Hor.png,-3.141593,2.468407,-2.191593,HD16920 -southern,Pyx,Pyxis,-66.7424,-248.9639,26.0445,1.2,Pyx.png,1.838407,-1.651593,2.708407,HD74575 -southern,Ret,Reticulum,2.8130,-37.2904,-33.2644,1.5,Ret.png,1.998407,2.188407,-2.591593,HD27256 -northern,Sge,Sagitta,44.3886,70.9446,-7.6264,1.2,Sge.png,-0.741593,-2.231593,2.108407,HD189319 -southern,Scl,Sculptor,21.6545,-6.8861,-166.5240,1.3,Scl.png,-0.071593,-0.221593,0.638407,HD2429 -southern,Sct,Scutum,48.8939,21.5158,-0.1629,1.2,Sct.png,1.188407,-1.271593,-0.971593,HD171443 -southern,Tuc,Tucana,35.3950,-20.2535,-45.2324,1.1,Tuc.png,-0.351593,-0.161593,0.308407,HD211416 -northern,Tri,Triangulum,-26.6263,21.9119,-16.2254,1.2,Tri.png,1.168407,0.218407,0.558407,HD13161 -southern,TrA,Triangulum Australe,96.2283,-76.4459,-33.5257,1.2,TrA.png,-1.991593,-2.491593,1.128407,HD150798 -southern,Tel,Telescopium,72.3444,-14.5016,-20.0248,1.2,Tel.png,-0.461593,-1.731593,0.298407,HD169467 -southern,Ara,Ara,164.9273,-75.6246,-35.3100,1.1,Ara.png,-1.381593,-2.131593,1.048407,HD157244 -southern,Cae,Caelum,-6.0961,-13.7926,-13.3392,1.0,Cae.png,-0.661593,0.948407,0.418407,HD29875 -southern,CMa,Canis Major,-1.7693,-1.9125,-0.4074,1.3,CMa.png,1.128407,1.048407,1.878407,HD48915 -northern,CMi,Canis Minor,-2.8348,-1.8906,0.7881,1.2,CMi.png,2.538407,1.138407,-3.141593,HD61421 -southern,Vol,Volans,37.6000,-182.7856,-62.6559,1.2,Vol.png,-2.441593,1.988407,-0.351593,HD68520 -northern,UMi,Ursa Minor,-11.3527,27.2100,25.1835,1.3,UMi.png,-2.491593,-0.581593,-2.381593,HD131873 -northern,And,Andromdeda,-32.8276,43.3946,-27.8475,1.6,And.png,-2.021593,-3.141593,-2.521593,HD6860 -northern,Boo,Bootes,11.2468,14.9864,30.4945,2.0,Boo.png,-3.141593,-0.601593,-2.361593,HD135722 -northern,Vul,Vulpecula,46.7540,77.7780,5.3953,1.1,Vul.png,-2.301593,-2.061593,-3.141593,HD131873 -northern,CVn,Canes Venatici,-3.1198,5.7935,33.1368,1.3,CVn.png,0.148407,3.138407,0.428407,HD112413 -southern,Cir,Circinus,11.4255,-11.6937,-1.3129,1.0,Cir.png,1.448407,-0.391593,-2.211593,HD128898 -northern,Com,Coma Berenices,1.9257,-1.2062,12.2465,1.4,Com.png,3.138407,-0.051593,-2.711593,HD114378 -southern,CrA,Corona Australis,146.1322,-4.7492,-53.7124,1.0,CrA.png,-3.141593,-2.021593,-3.141593,HD178345 -northern,CrB,Corona Borealis,33.5737,32.0314,52.9729,1.3,CrB.png,-3.141593,-0.601593,-2.271593,HD143107 -northern,Cas,Cassiopeia,-36.3073,59.4424,-7.6926,1.4,Cas.png,-1.431593,3.128407,-2.331593,HD3712 -northern,Cep,Cepheus,-2.8178,14.4985,2.3848,1.7,Cep.png,-1.331593,-2.291593,-2.931593,HD203280 -southern,Car,Carina Vela Puppis,14.1325,-188.6018,-42.2785,2.0,Car.png,2.078407,1.048407,-3.111593,HD71129 -northern,Col,Columba,-11.2568,-20.5973,-11.9895,1.0,Col.png,2.518407,1.358407,-2.981593,HD39425 -northern,Per,Perseus,-139.8202,79.8063,-16.2631,1.3,Per.png,-1.751593,2.428407,-2.411593,HD22928 -northern,Oph,Ophiuchus,127.9419,14.0822,56.2015,3.2,Oph.png,2.178407,-0.781593,-1.681593,HD149757 -southern,PsA,Piscis Austrinus,99.9977,47.6679,-199.6345,1.0,PsA.png,3.138407,-2.541593,-2.881593,HD214748 -southern,Cru,Crux,49.3509,-85.0446,-0.6223,1.1,Cru.png,1.718407,0.048407,-2.741593,HD108248 -southern,Pic,Pictor,-4.5417,-45.5649,-27.1768,1.0,Pic.png,2.568407,2.138407,-2.081593,HD39523 diff --git a/data/assets/scene/milkyway/constellations/constellation_keybinds.asset b/data/assets/scene/milkyway/constellations/constellation_keybinds.asset index f527e59fb4..ac310f24a2 100644 --- a/data/assets/scene/milkyway/constellations/constellation_keybinds.asset +++ b/data/assets/scene/milkyway/constellations/constellation_keybinds.asset @@ -4,9 +4,9 @@ local Keybindings = { { Key = "c", Name = "Show Constellation Art", - Command = "openspace.setPropertyValue('Scene.Constellation Art*.Renderable.Opacity', 0);" .. - "openspace.setPropertyValue('Scene.Constellation Art*.Renderable.Enabled', true);" .. - "openspace.setPropertyValue('Scene.Constellation Art*.Renderable.Opacity', 0.1, 2);", + Command = "openspace.setPropertyValue('Scene.ConstellationArt*.Renderable.Opacity', 0);" .. + "openspace.setPropertyValue('Scene.ConstellationArt*.Renderable.Enabled', true);" .. + "openspace.setPropertyValue('Scene.ConstellationArt*.Renderable.Opacity', 0.1, 2);", Documentation = "Enables and fades up constellation art work", GuiPath = "/Rendering", Local = false @@ -14,7 +14,7 @@ local Keybindings = { { Key = "SHIFT+c", Name = "Hide Constellation Art", - Command = "openspace.setPropertyValue('Scene.Constellation Art*.Renderable.Opacity', 0, 2);", + Command = "openspace.setPropertyValue('Scene.ConstellationArt*.Renderable.Opacity', 0, 2);", Documentation = "Fades out constellation artwork", GuiPath = "/Rendering", Local = false @@ -22,7 +22,7 @@ local Keybindings = { { Key = "CTRL+c", Name = "Disable Constellation Art", - Command = "openspace.setPropertyValue('Scene.Constellation Art*.Renderable.Enabled', false);", + Command = "openspace.setPropertyValue('Scene.ConstellationArt*.Renderable.Enabled', false);", Documentation = "Disable constellation artwork", GuiPath = "/Rendering", Local = false @@ -36,3 +36,13 @@ end) asset.onDeinitialize(function () scene_helper.unbindKeys(Keybindings) end) + + +asset.meta = { + Name = "Constellation Image Keybinds", + Version = "1.0", + Description = "Keybinds for fading in and out the constellations", + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT License" +} diff --git a/data/assets/scene/milkyway/milkyway/eso.asset b/data/assets/scene/milkyway/milkyway/eso.asset index 95eb437099..1820632dc6 100644 --- a/data/assets/scene/milkyway/milkyway/eso.asset +++ b/data/assets/scene/milkyway/milkyway/eso.asset @@ -35,6 +35,4 @@ local object = { } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { object }) diff --git a/data/assets/scene/milkyway/milkyway/volume.asset b/data/assets/scene/milkyway/milkyway/volume.asset index 2ae420e931..4f87af5456 100644 --- a/data/assets/scene/milkyway/milkyway/volume.asset +++ b/data/assets/scene/milkyway/milkyway/volume.asset @@ -52,3 +52,15 @@ local MilkyWayVolumeGalaxy = { local objects = { MilkyWayVolumeGalaxy } assetHelper.registerSceneGraphNodesAndExport(asset, objects) + + +asset.meta = { + Name = "Milky Way Volume", + Version = "1.0", + Description = [[Volumetric rendering of Milky Way galaxy based on simulation from + NAOJ.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT License", + Identifiers = "MilkyWayVolume" +} diff --git a/data/assets/scene/milkyway/objects/orionnebula/cluster.asset b/data/assets/scene/milkyway/objects/orionnebula/cluster.asset index 843ca22825..d2c3ff1727 100644 --- a/data/assets/scene/milkyway/objects/orionnebula/cluster.asset +++ b/data/assets/scene/milkyway/objects/orionnebula/cluster.asset @@ -29,6 +29,7 @@ local OrionClusterStars = { assetHelper.registerSceneGraphNodesAndExport(asset, { OrionClusterStars }) + asset.meta = { Name = "Orion Nebula Star Cluster", Version = "1.0", @@ -47,5 +48,6 @@ But the distance of each star has been derived from this educated-guess approach cluster distribution. ]], Author = "AMNH Digital Universe", URL = "https://www.amnh.org/research/hayden-planetarium/digital-universe", - License = "custom" + License = "AMNH Digital Universe", + Identifiers = "OrionClusterStars" } diff --git a/data/assets/scene/milkyway/objects/orionnebula/nebula.asset b/data/assets/scene/milkyway/objects/orionnebula/nebula.asset index 24e8c2eaa3..0eaf64e257 100644 --- a/data/assets/scene/milkyway/objects/orionnebula/nebula.asset +++ b/data/assets/scene/milkyway/objects/orionnebula/nebula.asset @@ -135,6 +135,7 @@ assetHelper.registerSceneGraphNodesAndExport(asset, { OrionNebulaProplydsModel }) + asset.meta = { Name = "Orion Nebula Model", Version = "1.0", @@ -153,5 +154,7 @@ think of an HII region as a sort of tremendous explosion, taking place over mill and the bow shocks are part of the outward rush of material. ]], Author = "AMNH Digital Universe", URL = "https://www.amnh.org/research/hayden-planetarium/digital-universe", - License = "custom" + License = "AMNH Digital Universe", + Identifiers = "OrionNebulaModel,OrionNebulaModel,OrionNebulaProplydsModel,".. + "OrionNebulaShocksModel" } diff --git a/data/assets/scene/milkyway/stars/denver.asset b/data/assets/scene/milkyway/stars/denver.asset index 8cf214031f..d33c65aaea 100644 --- a/data/assets/scene/milkyway/stars/denver.asset +++ b/data/assets/scene/milkyway/stars/denver.asset @@ -40,6 +40,15 @@ local object = { } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { object }) + + +asset.meta = { + Name = "Stars Denver", + Version = "1.0", + Description = [[Alternative Milky Way Atlas: based on HIPPARCOS and Yale Bright + Star catalogs]], + Author = "Ka chun Yu", + URL = "http://openspaceproject.com", + License = "Creative Commons Attribution-Share Alike 3.0 Unported" +} diff --git a/data/assets/scene/solarsystem/dwarf_planets/pluto/charon/charon.asset b/data/assets/scene/solarsystem/dwarf_planets/pluto/charon/charon.asset index b9a30df0b5..35e6fe6436 100644 --- a/data/assets/scene/solarsystem/dwarf_planets/pluto/charon/charon.asset +++ b/data/assets/scene/solarsystem/dwarf_planets/pluto/charon/charon.asset @@ -50,6 +50,14 @@ local Charon = { } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { Charon }) + + +asset.meta = { + Name = "Charon", + Version = "1.0", + Description = [[ Charon globe with labels.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/dwarf_planets/pluto/charon/charon_trail.asset b/data/assets/scene/solarsystem/dwarf_planets/pluto/charon/charon_trail.asset index 4a64b0d59b..be77c85a0b 100644 --- a/data/assets/scene/solarsystem/dwarf_planets/pluto/charon/charon_trail.asset +++ b/data/assets/scene/solarsystem/dwarf_planets/pluto/charon/charon_trail.asset @@ -17,12 +17,26 @@ local CharonTrailBarycentric = { Period = 6.38723, Resolution = 1000 }, + Tag = { + "moonTrail_solarSystem", + "moonTrail_dwarf", + "moonTrail_pluto", + "moonTrail_minor" }, GUI = { Name = "Charon Barycentric Trail", Path = "/Solar System/Dwarf Planets/Pluto" } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { CharonTrailBarycentric }) + + +asset.meta = { + Name = "Charon Barycentric Trail", + Version = "1.0", + Description = [[ Trail of Charon as observed by Pluto Barycenter. Data from + NASA Spice (see base spice asset)]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/dwarf_planets/pluto/charon/default_layers.asset b/data/assets/scene/solarsystem/dwarf_planets/pluto/charon/default_layers.asset index dfe4586fcc..267e9e8494 100644 --- a/data/assets/scene/solarsystem/dwarf_planets/pluto/charon/default_layers.asset +++ b/data/assets/scene/solarsystem/dwarf_planets/pluto/charon/default_layers.asset @@ -5,5 +5,16 @@ local colorLayer = asset.require(colorLayersPath .. "/greyscale_usgs") -- Set enabled layers (temporary solution) -- @TODO: do this using a boolean that's passed to the 'asset.require' instead asset.onInitialize(function () - openspace.setPropertyValueSingle("Scene.Charon.Renderable.Layers.ColorLayers." .. colorLayer.layer.Identifier .. ".Enabled", true) + openspace.setPropertyValueSingle("Scene.Charon.Renderable.Layers.ColorLayers." .. + colorLayer.layer.Identifier .. ".Enabled", true) end) + + +asset.meta = { + Name = "Default Charon Layers", + Version = "1.0", + Description = [[ Default Charon layers are: Black & White USGS]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/dwarf_planets/pluto/charon/layers/colorlayers/greyscale_usgs.asset b/data/assets/scene/solarsystem/dwarf_planets/pluto/charon/layers/colorlayers/greyscale_usgs.asset index 058e4caf91..b27d24046e 100644 --- a/data/assets/scene/solarsystem/dwarf_planets/pluto/charon/layers/colorlayers/greyscale_usgs.asset +++ b/data/assets/scene/solarsystem/dwarf_planets/pluto/charon/layers/colorlayers/greyscale_usgs.asset @@ -11,3 +11,22 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Charon Black & White & White [USGS]", + Version = "1.0", + Description = [[ Charon New Horizons LORRI MVIC Global Mosaic 300m v1. This detailed, + high-quality global mosaic of Pluto’s largest moon, Charon, was assembled from nearly + all of the highest-resolution images obtained by the Long-Range Reconnaissance Imager + (LORRI) and the Multispectral Visible Imaging Camera (MVIC) on New Horizons. The + mosaic is the most detailed and comprehensive global view yet of Charon’s surface + using New Horizons data. Standing out on Charon is an enormous trough at least 350 + kilometers long, and reaching 14 kilometers deep –more than seven times as deep as the + Grand Canyon. This mosaic is available in equirectangular projection at an equatorial + pixel scale of 300 meters per pixel (m). (Description from URL)]], + Author = "USGS", + URL = "https://astrogeology.usgs.gov/search/map/Charon/NewHorizons/" .. + "Charon_NewHorizons_Global_Mosaic_300m_Jul2017", + License = "NASA/PDS" +} diff --git a/data/assets/scene/solarsystem/dwarf_planets/pluto/default_layers.asset b/data/assets/scene/solarsystem/dwarf_planets/pluto/default_layers.asset index 317cd138c4..b5e907d024 100644 --- a/data/assets/scene/solarsystem/dwarf_planets/pluto/default_layers.asset +++ b/data/assets/scene/solarsystem/dwarf_planets/pluto/default_layers.asset @@ -5,5 +5,16 @@ local colorLayer = asset.require(colorLayersPath .. "/greyscale_usgs") -- Set enabled layers (temporary solution) -- @TODO: do this using a boolean that's passed to the 'asset.require' instead asset.onInitialize(function () - openspace.setPropertyValueSingle("Scene.Pluto.Renderable.Layers.ColorLayers." .. colorLayer.layer.Identifier .. ".Enabled", true) + openspace.setPropertyValueSingle("Scene.Pluto.Renderable.Layers.ColorLayers." .. + colorLayer.layer.Identifier .. ".Enabled", true) end) + + +asset.meta = { + Name = "Default Pluto Layers", + Version = "1.0", + Description = [[ Default Pluto layers are: Black & White USGS]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} \ No newline at end of file diff --git a/data/assets/scene/solarsystem/dwarf_planets/pluto/kernels.asset b/data/assets/scene/solarsystem/dwarf_planets/pluto/kernels.asset index a29ab30df4..1baaddf851 100644 --- a/data/assets/scene/solarsystem/dwarf_planets/pluto/kernels.asset +++ b/data/assets/scene/solarsystem/dwarf_planets/pluto/kernels.asset @@ -12,3 +12,13 @@ local PlutoKernels = { } asset.export("PlutoKernels", PlutoKernels) + + +asset.meta = { + Name = "Pluto Spice Kernels", + Version = "1.0", + Description = [[ Generic SPICE kernels for Pluto.]], + Author = "OpenSpace Team", + URL = "https://naif.jpl.nasa.gov/pub/naif/pds/wgc/kernels/spk/", + License = "NASA" +} diff --git a/data/assets/scene/solarsystem/dwarf_planets/pluto/layers/colorlayers/greyscale_usgs.asset b/data/assets/scene/solarsystem/dwarf_planets/pluto/layers/colorlayers/greyscale_usgs.asset index 61acdb513c..6c5738adbd 100644 --- a/data/assets/scene/solarsystem/dwarf_planets/pluto/layers/colorlayers/greyscale_usgs.asset +++ b/data/assets/scene/solarsystem/dwarf_planets/pluto/layers/colorlayers/greyscale_usgs.asset @@ -11,3 +11,25 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Pluto Black & White & White [USGS]", + Version = "1.0", + Description = [[ This detailed, high-quality global mosaic of Pluto was assembled from + nearly all of the highest-resolution images obtained by the Long-Range + Reconnaissance Imager (LORRI) and the Multispectral Visible Imaging Camera (MVIC) + on New Horizons.The mosaic is the most detailed and comprehensive global view yet + of Pluto’s surface using New Horizons data. It includes topography data of the + hemisphere visible to New Horizons during the spacecraft’s closest approach. The + topography is derived from digital stereo-image mapping tools that measure the + parallax – or the difference in the apparent relative positions – of features on + the surface obtained at different viewing angles during the encounter. Scientists + use these parallax displacements of high and low terrain to estimate landform + heights.The mosaic is available in Equirectangular projection at an equatorial + pixel scale of 300 meters per pixel (m). (Description from URL)]], + Author = "USGS", + URL = "https://astrogeology.usgs.gov/search/map/Pluto/NewHorizons/" .. + "Pluto_NewHorizons_Global_Mosaic_300m_Jul2017", + License = "NASA/PDS" +} diff --git a/data/assets/scene/solarsystem/dwarf_planets/pluto/minor/hydra.asset b/data/assets/scene/solarsystem/dwarf_planets/pluto/minor/hydra.asset index 10edebc8a9..37c7f0d6cf 100644 --- a/data/assets/scene/solarsystem/dwarf_planets/pluto/minor/hydra.asset +++ b/data/assets/scene/solarsystem/dwarf_planets/pluto/minor/hydra.asset @@ -21,6 +21,7 @@ local Hydra = { SegmentsPerPatch = 64, Layers = {} }, + Tag = { "moon_solarSystem", "moon_dwarf", "moon_pluto" }, GUI = { Path = "/Solar System/Dwarf Planets/Pluto" } @@ -40,12 +41,26 @@ local HydraTrail = { Period = 38.20177, Resolution = 1000 }, + Tag = { + "moonTrail_solarSystem", + "moonTrail_dwarf", + "moonTrail_pluto", + "moonTrail_minor" }, GUI = { Name = "Hydra Trail", Path = "/Solar System/Dwarf Planets/Pluto" } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { Hydra, HydraTrail }) + + +asset.meta = { + Name = "Hydra", + Version = "1.0", + Description = [[ Globe and trail for Pluto's moon Hydra. Data from + NASA Spice (see base spice asset)]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/dwarf_planets/pluto/minor/kerberos.asset b/data/assets/scene/solarsystem/dwarf_planets/pluto/minor/kerberos.asset index 25aec2f0b6..cda22633dd 100644 --- a/data/assets/scene/solarsystem/dwarf_planets/pluto/minor/kerberos.asset +++ b/data/assets/scene/solarsystem/dwarf_planets/pluto/minor/kerberos.asset @@ -21,6 +21,7 @@ local Kerberos = { SegmentsPerPatch = 64, Layers = {} }, + Tag = { "moon_solarSystem", "moon_dwarf", "moon_pluto" }, GUI = { Path = "/Solar System/Dwarf Planets/Pluto" } @@ -40,12 +41,26 @@ local KerberosTrail = { Period = 32.16756, Resolution = 1000 }, + Tag = { + "moonTrail_solarSystem", + "moonTrail_dwarf", + "moonTrail_pluto", + "moonTrail_minor" }, GUI = { Name = "Hydra Trail", Path = "/Solar System/Dwarf Planets/Pluto" } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { Kerberos, KerberosTrail }) + + +asset.meta = { + Name = "Kerberos", + Version = "1.0", + Description = [[ Globe and trail for Pluto's moon Kerberos. Data from + NASA Spice (see base spice asset)]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/dwarf_planets/pluto/minor/nix.asset b/data/assets/scene/solarsystem/dwarf_planets/pluto/minor/nix.asset index fac09bf119..bea389470d 100644 --- a/data/assets/scene/solarsystem/dwarf_planets/pluto/minor/nix.asset +++ b/data/assets/scene/solarsystem/dwarf_planets/pluto/minor/nix.asset @@ -21,6 +21,7 @@ local Nix = { SegmentsPerPatch = 64, Layers = {} }, + Tag = { "moon_solarSystem", "moon_dwarf", "moon_pluto" }, GUI = { Path = "/Solar System/Dwarf Planets/Pluto" } @@ -40,12 +41,26 @@ local NixTrail = { Period = 24.85463, Resolution = 1000 }, + Tag = { + "moonTrail_solarSystem", + "moonTrail_dwarf", + "moonTrail_pluto", + "moonTrail_minor" }, GUI = { Name = "Nix Trail", Path = "/Solar System/Dwarf Planets/Pluto" } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { Nix, NixTrail }) + + +asset.meta = { + Name = "Nix", + Version = "1.0", + Description = [[ Globe and trail for Pluto's moon Nix. Data from + NASA Spice (see base spice asset)]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/dwarf_planets/pluto/minor/styx.asset b/data/assets/scene/solarsystem/dwarf_planets/pluto/minor/styx.asset index ceca463f5f..25c369e4e7 100644 --- a/data/assets/scene/solarsystem/dwarf_planets/pluto/minor/styx.asset +++ b/data/assets/scene/solarsystem/dwarf_planets/pluto/minor/styx.asset @@ -21,6 +21,7 @@ local Styx = { SegmentsPerPatch = 64, Layers = {} }, + Tag = { "moon_solarSystem", "moon_dwarf", "moon_pluto" }, GUI = { Path = "/Solar System/Dwarf Planets/Pluto" } @@ -40,12 +41,26 @@ local StyxTrail = { Period = 20.16155, Resolution = 1000 }, + Tag = { + "moonTrail_solarSystem", + "moonTrail_dwarf", + "moonTrail_pluto", + "moonTrail_minor" }, GUI = { Name = "Styx Trail", Path = "/Solar System/Dwarf Planets/Pluto" } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { Styx, StyxTrail }) + + +asset.meta = { + Name = "Styx", + Version = "1.0", + Description = [[ Globe and trail for Pluto's moon Styx. Data from + NASA Spice (see base spice asset)]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/dwarf_planets/pluto/pluto.asset b/data/assets/scene/solarsystem/dwarf_planets/pluto/pluto.asset index ceb9a72424..667c201781 100644 --- a/data/assets/scene/solarsystem/dwarf_planets/pluto/pluto.asset +++ b/data/assets/scene/solarsystem/dwarf_planets/pluto/pluto.asset @@ -72,3 +72,13 @@ local PlutoLabel = { } assetHelper.registerSceneGraphNodesAndExport(asset, { Pluto, PlutoLabel }) + + +asset.meta = { + Name = "Pluto", + Version = "1.0", + Description = [[ Pluto globe, and main planet label.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/dwarf_planets/pluto/pluto_trail.asset b/data/assets/scene/solarsystem/dwarf_planets/pluto/pluto_trail.asset index 145d3c4973..9fd47cf804 100644 --- a/data/assets/scene/solarsystem/dwarf_planets/pluto/pluto_trail.asset +++ b/data/assets/scene/solarsystem/dwarf_planets/pluto/pluto_trail.asset @@ -17,12 +17,22 @@ local PlutoTrailBarycentric = { Period = 6.38723, Resolution = 1000 }, + Tag = { "planetTrail_solarSystem", "planetTrail_dwarf" }, GUI = { Name = "Pluto Barycentric Trail", Path = "/Solar System/Dwarf Planets/Pluto" } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { PlutoTrailBarycentric }) + + +asset.meta = { + Name = "Pluto Barycentric Trail", + Version = "1.0", + Description = [[ Trail of Pluto as observed by it's Barrycenter. Data from + NASA Spice (see base spice asset)]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/dwarf_planets/pluto/system.asset b/data/assets/scene/solarsystem/dwarf_planets/pluto/system.asset index c6497de839..3f21014b5b 100644 --- a/data/assets/scene/solarsystem/dwarf_planets/pluto/system.asset +++ b/data/assets/scene/solarsystem/dwarf_planets/pluto/system.asset @@ -8,3 +8,13 @@ asset.require('./minor/kerberos') asset.require('./minor/nix') asset.require('./minor/styx') + +asset.meta = { + Name = "Pluto System", + Version = "1.0", + Description = [[ Meta asset for the Pluto system, containing : Pluto, Pluto Trail, + Charon, Charon Trail, Hydra, Kerberos, Nix, and Styx]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/dwarf_planets/pluto/trail.asset b/data/assets/scene/solarsystem/dwarf_planets/pluto/trail.asset index ea4fda9347..44eafbb893 100644 --- a/data/assets/scene/solarsystem/dwarf_planets/pluto/trail.asset +++ b/data/assets/scene/solarsystem/dwarf_planets/pluto/trail.asset @@ -27,6 +27,15 @@ local PlutoBarycenterTrail = { } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { PlutoBarycenterTrail }) + + +asset.meta = { + Name = "Pluto Barycenter Trail", + Version = "1.0", + Description = [[ Trail of Pluto as observed by the Sun. Data from + NASA Spice (see base spice asset)]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/dwarf_planets/pluto/transforms.asset b/data/assets/scene/solarsystem/dwarf_planets/pluto/transforms.asset index 3c1df553ce..f9be7f483d 100644 --- a/data/assets/scene/solarsystem/dwarf_planets/pluto/transforms.asset +++ b/data/assets/scene/solarsystem/dwarf_planets/pluto/transforms.asset @@ -22,6 +22,14 @@ local PlutoBarycenter = { } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { PlutoBarycenter }) + + +asset.meta = { + Name = "Pluto Transforms", + Version = "1.0", + Description = [[ Pluto Barycenter transform]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/interstellar/c-2019_q4_borisov.asset b/data/assets/scene/solarsystem/interstellar/c-2019_q4_borisov.asset index a21679ce59..2796e28dc1 100644 --- a/data/assets/scene/solarsystem/interstellar/c-2019_q4_borisov.asset +++ b/data/assets/scene/solarsystem/interstellar/c-2019_q4_borisov.asset @@ -23,7 +23,7 @@ local C2019Q4BorisovTrail = { SampleInterval = 60 * 60 * 24 * 7 }, GUI = { - Name = "C-2019 Q4 Borisov Trail", + Name = "C/2019 Q4 Borisov Trail", Path = "/Solar System/Interstellar" } } @@ -38,9 +38,23 @@ local C2019Q4BorisovPosition = { }, }, GUI = { - Name = "C-2019 Q4 Borisov", + Name = "C/2019 Q4 Borisov", Path = "/Solar System/Interstellar" } } assetHelper.registerSceneGraphNodesAndExport(asset, { C2019Q4BorisovPosition, C2019Q4BorisovTrail }) + + +asset.meta = { + Name = "C/2019 Q4 Borisov", + Version = "1.0", + Description = [[ This asset contains the trail + and position of C-2019 Q4 Borisov from 2015 JAN 01 00:00:00 + to 2024 JAN 01 00:00:00. Data from JPL Horizons']], + Author = "OpenSpace Team", + URL = "https://ssd.jpl.nasa.gov/horizons.cgi", + License = [[ JPL-authored documents are sponsored by NASA under Contract + NAS7-030010. All documents available from this server may be protected + under the U.S. and Foreign Copyright Laws."]] +} diff --git a/data/assets/scene/solarsystem/interstellar/oumuamua.asset b/data/assets/scene/solarsystem/interstellar/oumuamua.asset index 2b972b5c3a..cf6cce4a0a 100644 --- a/data/assets/scene/solarsystem/interstellar/oumuamua.asset +++ b/data/assets/scene/solarsystem/interstellar/oumuamua.asset @@ -45,3 +45,14 @@ local OumuamuaPosition = { } assetHelper.registerSceneGraphNodesAndExport(asset, { OumuamuaPosition, OumuamuaTrail }) + + +asset.meta = { + Name = "'Oumuamua", + Version = "1.0", + Description = [[ This asset contains the trail and position of 'Oumuamua from 2014 + JAN 01 00:00:00 to 2023 JAN 01 00:00:00. Data from JPL Horizons']], + Author = "OpenSpace Team", + URL = "https://ssd.jpl.nasa.gov/horizons.cgi", + License = "NASA" +} diff --git a/data/assets/scene/solarsystem/missions/apollo/11/apollo11.asset b/data/assets/scene/solarsystem/missions/apollo/11/apollo11.asset index 8fa2acf516..26aa8175f2 100644 --- a/data/assets/scene/solarsystem/missions/apollo/11/apollo11.asset +++ b/data/assets/scene/solarsystem/missions/apollo/11/apollo11.asset @@ -56,11 +56,11 @@ local Apollo11Model = { }, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/Apollo_CSM_shrunk_rotated_xy_double_size.obj", ColorTexture = models .. "/gray.png" - }, + }}, LightSources = asset_helper.getDefaultLightSources(sun_transforms.SolarSystemBarycenter.Identifier) }, GUI = { @@ -175,11 +175,11 @@ local Apollo11LemDescentModel = { }, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = lem_model.modelFolder .. "/lmremoved.obj", ColorTexture = lem_model.modelFolder .. "/LM-2_ver2clean_u1_v1.jpeg" - }, + }}, SpecularIntensity = 0.0, RotationVector = { 273.750,28.0,309.85 }, LightSources = asset_helper.getDefaultLightSources(sun_transforms.SolarSystemBarycenter.Identifier) @@ -205,11 +205,11 @@ local Apollo11LemLandedModel = { }, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = lem_model.modelFolder .. "/LM-2_ver2clean.obj", ColorTexture = lem_model.modelFolder .. "/LM-2_ver2clean_u1_v1.jpeg" - }, + }}, SpecularIntensity = 0.0, RotationVector = { 273.750,28.0,309.85 }, LightSources = asset_helper.getDefaultLightSources(sun_transforms.SolarSystemBarycenter.Identifier) @@ -220,7 +220,6 @@ local Apollo11LemLandedModel = { } } - local exportList = { Apollo11Position, Apollo11LemPosition, diff --git a/data/assets/scene/solarsystem/missions/apollo/11/lem.asset b/data/assets/scene/solarsystem/missions/apollo/11/lem.asset index 5186ed9057..24f630ca96 100644 --- a/data/assets/scene/solarsystem/missions/apollo/11/lem.asset +++ b/data/assets/scene/solarsystem/missions/apollo/11/lem.asset @@ -36,11 +36,11 @@ local Apollo11LemModel = { }, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = lem_model.modelFolder .. "/LM-2_ver2clean.obj", ColorTexture = lem_model.modelFolder .. "/LM-2_ver2clean_u1_v1.jpeg" - }, + }}, RotationVector = { 91.044090,171.229706,111.666664 }, LightSources = asset_helper.getDefaultLightSources(sun_transforms.SolarSystemBarycenter.Identifier) }, diff --git a/data/assets/scene/solarsystem/missions/apollo/15/apollo15.asset b/data/assets/scene/solarsystem/missions/apollo/15/apollo15.asset index 584a064313..7e6001679f 100644 --- a/data/assets/scene/solarsystem/missions/apollo/15/apollo15.asset +++ b/data/assets/scene/solarsystem/missions/apollo/15/apollo15.asset @@ -63,12 +63,12 @@ local Apollo15 = { -- Parent = Apollo15.Identifier, -- Renderable = { -- Type = "RenderableModel", --- Geometry = { +-- Geometry = {{ -- Type = "MultiModelGeometry", -- -- GeometryFile = models .. "/Apollo_Spacecraft.obj" -- GeometryFile = models .. "/Apollo_CSM_shrunk_rotated_xy_doubble_size.obj", -- ColorTexture = models .. "/gray.png" --- }, +-- }}, -- LightSources = LightSources, -- DisableFaceCulling = true -- }, @@ -110,6 +110,4 @@ for k,v in pairs(model_part) do table.insert(list, v) end - assetHelper.registerSceneGraphNodesAndExport(asset, list) - diff --git a/data/assets/scene/solarsystem/missions/apollo/17/bouldersstation2.asset b/data/assets/scene/solarsystem/missions/apollo/17/bouldersstation2.asset index e14c5e7566..343b6859ff 100644 --- a/data/assets/scene/solarsystem/missions/apollo/17/bouldersstation2.asset +++ b/data/assets/scene/solarsystem/missions/apollo/17/bouldersstation2.asset @@ -47,11 +47,11 @@ local Station2Boulder1Model = { }, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/b1-v2.obj", ColorTexture = models .. "/b1-v2_u1_v1.jpeg" - }, + }}, RotationVector = { 243.243256 ,206.270264, 309.677429 }, LightSources = LightSources, PerformShading = false, @@ -93,11 +93,11 @@ local Station2Boulder2Model = { }, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/b2model.obj", ColorTexture = models .. "/b2model_u1_v1.jpeg" - }, + }}, RotationVector = { 66.162155, 7.783780, 114.193550 }, LightSources = LightSources, PerformShading = false, @@ -139,11 +139,11 @@ local Station2Boulder3Model = { }, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/b3model.obj", ColorTexture = models .. "/b3model_u1_v1.jpeg" - }, + }}, RotationVector = { 161.513519 ,243.243256, 65.806450 }, LightSources = LightSources, PerformShading = false, diff --git a/data/assets/scene/solarsystem/missions/apollo/17/bouldersstation6.asset b/data/assets/scene/solarsystem/missions/apollo/17/bouldersstation6.asset index 828c2b039b..54dd555a22 100644 --- a/data/assets/scene/solarsystem/missions/apollo/17/bouldersstation6.asset +++ b/data/assets/scene/solarsystem/missions/apollo/17/bouldersstation6.asset @@ -58,11 +58,11 @@ local Station6Frag1Model = { }, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/A17-S6-frag1.obj", ColorTexture = models .. "/A17-S6-frag1.png" - }, + }}, RotationVector = { 235.909088,165.000000,286.299194 }, LightSources = LightSources, PerformShading = false, @@ -105,11 +105,11 @@ local Station6Frag2Model = { }, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/station6_boulder_frag2.obj", ColorTexture = models .. "/frag2crop_u1_v1.jpeg" - }, + }}, RotationVector = { 336.959991,210.239990,325.984253 }, LightSources = LightSources, PerformShading = false, @@ -140,11 +140,11 @@ local Station6Frag3Model = { }, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/station6_boulder_frag3.obj", ColorTexture = models .. "/frag3crop_u1_v1.jpeg" - }, + }}, RotationVector = { 293.181824,255.000000,4.090910 }, LightSources = LightSources, PerformShading = false, diff --git a/data/assets/scene/solarsystem/missions/apollo/17/bouldersstation7.asset b/data/assets/scene/solarsystem/missions/apollo/17/bouldersstation7.asset index 6385768d1d..f15fc34f93 100644 --- a/data/assets/scene/solarsystem/missions/apollo/17/bouldersstation7.asset +++ b/data/assets/scene/solarsystem/missions/apollo/17/bouldersstation7.asset @@ -47,11 +47,11 @@ local Station7BoulderModel = { }, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/b7model.obj", ColorTexture = models .. "/b7model_u1_v1.jpeg" - }, + }}, RotationVector = { 1.945950,274.378387,212.903214 }, LightSources = LightSources, PerformShading = false, diff --git a/data/assets/scene/solarsystem/missions/apollo/17/lem.asset b/data/assets/scene/solarsystem/missions/apollo/17/lem.asset index 9c901a59a2..84455792ef 100644 --- a/data/assets/scene/solarsystem/missions/apollo/17/lem.asset +++ b/data/assets/scene/solarsystem/missions/apollo/17/lem.asset @@ -34,11 +34,11 @@ local Apollo17LemModel = { }, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = model.modelFolder .. "/LM-2_ver2clean.obj", ColorTexture = model.modelFolder .. "/LM-2_ver2clean_u1_v1.jpeg" - }, + }}, SpecularIntensity = 0.0, RotationVector = { 110.255219,171.229706,126.666664 }, LightSources = asset_helper.getDefaultLightSources(sun_transforms.SolarSystemBarycenter.Identifier) diff --git a/data/assets/scene/solarsystem/missions/dawn/ceres.asset b/data/assets/scene/solarsystem/missions/dawn/ceres.asset index 0e7fd2fead..ade7683eea 100644 --- a/data/assets/scene/solarsystem/missions/dawn/ceres.asset +++ b/data/assets/scene/solarsystem/missions/dawn/ceres.asset @@ -55,6 +55,4 @@ local Ceres = { } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { Ceres }) diff --git a/data/assets/scene/solarsystem/missions/dawn/dawn.asset b/data/assets/scene/solarsystem/missions/dawn/dawn.asset index 5fefe46052..d1c5faffd9 100644 --- a/data/assets/scene/solarsystem/missions/dawn/dawn.asset +++ b/data/assets/scene/solarsystem/missions/dawn/dawn.asset @@ -650,11 +650,11 @@ local Dawn = { Renderable = { Type = "RenderableModel", Body = "DAWN", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/mainbodydawn.obj", ColorTexture = textures .. "/gray.png" - }, + }}, LightSources = LightSources }, GUI = { @@ -682,11 +682,11 @@ local DawnSolarArray1 = { Renderable = { Type = "RenderableModel", Body = "DAWN", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/solarpanelleft.obj", ColorTexture = textures .. "/gray.png" - }, + }}, LightSources = LightSources }, GUI = { @@ -713,11 +713,11 @@ local DawnSolarArray2 = { Renderable = { Type = "RenderableModel", Body = "DAWN", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/solarpanelright.obj", ColorTexture = textures .. "/gray.png" - }, + }}, LightSources = LightSources }, GUI = { diff --git a/data/assets/scene/solarsystem/missions/dawn/dawn_kernels.asset b/data/assets/scene/solarsystem/missions/dawn/dawn_kernels.asset index bac98c64a6..c559946178 100644 --- a/data/assets/scene/solarsystem/missions/dawn/dawn_kernels.asset +++ b/data/assets/scene/solarsystem/missions/dawn/dawn_kernels.asset @@ -5,4 +5,4 @@ local Kernels = asset.syncedResource({ Version = 2 }) -asset.export("Kernels", Kernels) \ No newline at end of file +asset.export("Kernels", Kernels) diff --git a/data/assets/scene/solarsystem/missions/dawn/vesta.asset b/data/assets/scene/solarsystem/missions/dawn/vesta.asset index 2d555b6834..b2889c09ad 100644 --- a/data/assets/scene/solarsystem/missions/dawn/vesta.asset +++ b/data/assets/scene/solarsystem/missions/dawn/vesta.asset @@ -45,11 +45,11 @@ local Vesta = { }, Renderable = { Type = "RenderableModelProjection", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/VestaComet_5000.obj", ColorTexture = textures .. "/dummy.jpg" - }, + }}, BoundingSphereRadius = 10.0, Projection = { Sequence = images, @@ -136,5 +136,4 @@ local VestaTrail = { } } - assetHelper.registerSceneGraphNodesAndExport(asset, { Vesta, VestaTrail }) diff --git a/data/assets/scene/solarsystem/missions/gaia/gaia.asset b/data/assets/scene/solarsystem/missions/gaia/gaia.asset index 55de00a894..2fe536e223 100644 --- a/data/assets/scene/solarsystem/missions/gaia/gaia.asset +++ b/data/assets/scene/solarsystem/missions/gaia/gaia.asset @@ -39,11 +39,11 @@ local Gaia = { Renderable = { Type = "RenderableModel", Body = "GAIA", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = model .. "/gaia.obj", ColorTexture = textures .. "/gaia-baked.png" - }, + }}, LightSources = { { Type = "SceneGraphLightSource", diff --git a/data/assets/scene/solarsystem/missions/insight/edl.asset b/data/assets/scene/solarsystem/missions/insight/edl.asset index 62552b57f7..09b3f11358 100644 --- a/data/assets/scene/solarsystem/missions/insight/edl.asset +++ b/data/assets/scene/solarsystem/missions/insight/edl.asset @@ -167,11 +167,11 @@ local Insight_Entry_CapsuleA = { Parent = Insight.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models_cruise_cone .. "/cruise_insight_doubleside2_newcapsule_diffuse.obj", ColorTexture = models_cruise_cone .. "/insight_newcapsule_diffuse.jpg" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources, }, @@ -192,11 +192,11 @@ local Insight_Entry_Capsule_Ring = { Parent = Insight.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models_cruise_cone .. "/insight_cruise_cone_ring_foil_gold.obj", ColorTexture = models_cruise_cone .. "/foil_gold_ramp.png" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources, }, @@ -217,11 +217,11 @@ local Insight_Entry_Capsule_Plugs = { Parent = Insight.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models_cruise_cone .. "/insight_cruise_cone_capsule_diffuse.obj", ColorTexture = models_cruise_cone .. "/insight_capsule_diffuse.png" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources, }, @@ -242,11 +242,11 @@ local Insight_Entry_Heatshield = { Parent = Insight.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models_cruise_cone .. "/insight_cruise_heatshield_foil_gold.obj", ColorTexture = models_cruise_cone .. "/foil_gold_ramp.png" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources, }, @@ -267,11 +267,11 @@ local Insight_Parachute_0 = { Parent = Insight.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models_chutes .. "/insight_chute_frame01_diff1.obj", ColorTexture = models_chutes .. "/chute_diff.png" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources, }, @@ -292,11 +292,11 @@ local Insight_Parachute_Cords_0 = { Parent = Insight.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models_chutes .. "/insight_chute_frame01_cords1.obj", ColorTexture = models_chutes .. "/foil_gold_ramp.png" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources, }, @@ -317,11 +317,11 @@ local Insight_Parachute_20 = { Parent = Insight.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models_chutes .. "/insight_chute_frame20_diff1.obj", ColorTexture = models_chutes .. "/chute_diff.png" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources, }, @@ -342,11 +342,11 @@ local Insight_Parachute_Cords_20 = { Parent = Insight.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models_chutes .. "/insight_chute_frame20_cords1.obj", ColorTexture = models_chutes .. "/foil_gold_ramp.png" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources, }, @@ -367,11 +367,11 @@ local Insight_Parachute_40 = { Parent = Insight.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models_chutes .. "/chute_doubleside_frame40_diff.obj", ColorTexture = models_chutes .. "/chute_diff.png" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources, }, @@ -392,11 +392,11 @@ local Insight_Parachute_Cords_40 = { Parent = Insight.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models_chutes .. "/insight_chute_frame40_cords1.obj", ColorTexture = models_chutes .. "/foil_gold_ramp.png" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources, }, @@ -417,11 +417,11 @@ local Insight_Lander_A001 = { Parent = Insight.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models_lander_lander_deck .. "/insight_lander_deck_AO01.obj", ColorTexture = models_lander_lander_deck .. "/InSIGHT_AO_01.jpg" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources, }, @@ -442,11 +442,11 @@ local Insight_Lander_A002 = { Parent = Insight.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models_lander_lander_deck .. "/insight_lander_deck_AO02.obj", ColorTexture = models_lander_lander_deck .. "/InSIGHT_AO_02.jpg" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources, }, @@ -467,11 +467,11 @@ local Insight_Lander_A003 = { Parent = Insight.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models_lander_lander_deck .. "/insight_lander_deck_AO03.obj", ColorTexture = models_lander_lander_deck .. "/InSIGHT_AO_03.jpg" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources, }, @@ -492,11 +492,11 @@ local Insight_Lander_A004 = { Parent = Insight.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models_lander_lander_deck .. "/insight_lander_deck_AO04.obj", ColorTexture = models_lander_lander_deck .. "/InSIGHT_AO_04.jpg" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources, }, @@ -517,11 +517,11 @@ local Insight_Lander_A005 = { Parent = Insight.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models_lander_lander_deck .. "/insight_lander_deck_AO05.obj", ColorTexture = models_lander_lander_deck .. "/InSIGHT_AO_05.jpg" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources, }, @@ -542,11 +542,11 @@ local Insight_Lander_A006 = { Parent = Insight.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models_lander_lander_deck .. "/insight_lander_deck_AO06.obj", ColorTexture = models_lander_lander_deck .. "/InSIGHT_AO_06.jpg" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources, }, @@ -567,11 +567,11 @@ local Insight_Lander_A007 = { Parent = Insight.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models_lander_lander_deck .. "/insight_lander_deck_AO07.obj", ColorTexture = models_lander_lander_deck .. "/InSIGHT_AO_07.jpg" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources, }, @@ -592,11 +592,11 @@ local Insight_Lander_A008 = { Parent = Insight.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models_lander_lander_deck .. "/insight_lander_deck_AO08.obj", ColorTexture = models_lander_lander_deck .. "/InSIGHT_AO_08.jpg" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources, }, @@ -617,11 +617,11 @@ local Insight_Lander_foil1 = { Parent = Insight.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models_lander_lander_deck .. "/insight_lander_deck_foil1.obj", ColorTexture = models_lander_lander_deck .. "/foil_silver_ramp.jpg" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources, }, @@ -642,11 +642,11 @@ local Insight_Lander_Tex01 = { Parent = Insight.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models_lander_lander_deck .. "/insight_lander_deck_tex01.obj", ColorTexture = models_lander_lander_deck .. "/InSIGHT_tex_01.jpg" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources, }, @@ -667,11 +667,11 @@ local Insight_Lander_Tex02 = { Parent = Insight.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models_lander_lander_deck .. "/insight_lander_deck_tex02.obj", ColorTexture = models_lander_lander_deck .. "/InSIGHT_tex_02.jpg" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources, }, @@ -692,11 +692,11 @@ local Insight_Legs_Stowed_tex = { Parent = Insight.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models_lander_legs_stow .. "/insight_lander_legs_stow_tex01.obj", ColorTexture = models_lander_legs_stow .. "/InSIGHT_tex_01.jpg" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources, }, @@ -717,11 +717,11 @@ local Insight_Legs_Stowed_AO06 = { Parent = Insight.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models_lander_legs_stow .. "/insight_lander_legs_stow_AO06.obj", ColorTexture = models_lander_legs_stow .. "/InSIGHT_AO_06.jpg" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources, }, @@ -742,11 +742,11 @@ local Insight_Legs_Deployed_tex = { Parent = Insight.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models_lander_legs_deploy .. "/insight_lander_legs_deploy_tex01.obj", ColorTexture = models_lander_legs_deploy .. "/InSIGHT_tex_01.jpg" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources, }, @@ -767,11 +767,11 @@ local Insight_Legs_Deployed_AO06 = { Parent = Insight.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models_lander_legs_deploy .. "/insight_lander_legs_deploy_AO06.obj", ColorTexture = models_lander_legs_deploy .. "/InSIGHT_AO_06.jpg" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources, }, @@ -792,11 +792,11 @@ local Insight_Panels_Stowed_tex = { Parent = Insight.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models_lander_panels_stow .. "/insight_lander_panels_stow_tex01.obj", ColorTexture = models_lander_panels_stow .. "/InSIGHT_tex_01.jpg" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources, }, @@ -817,11 +817,11 @@ local Insight_Panels_Stowed_tex2 = { Parent = Insight.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models_lander_panels_stow .. "/insight_lander_panels_stow_tex02.obj", ColorTexture = models_lander_panels_stow .. "/InSIGHT_tex_02.jpg" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources, }, @@ -842,11 +842,11 @@ local Insight_Panels_Stowed_AO01 = { Parent = Insight.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models_lander_panels_stow .. "/insight_lander_panels_stow_AO01.obj", ColorTexture = models_lander_panels_stow .. "/InSIGHT_AO_01.jpg" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources, }, @@ -867,11 +867,11 @@ local Insight_Panels_Deployed_tex = { Parent = Insight.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models_lander_panels_deploy .. "/insight_lander_panels_deploy_tex01.obj", ColorTexture = models_lander_panels_deploy .. "/InSIGHT_tex_01.jpg" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources, }, @@ -892,11 +892,11 @@ local Insight_Panels_Deployed_tex2 = { Parent = Insight.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models_lander_panels_deploy .. "/insight_lander_panels_deploy_tex02.obj", ColorTexture = models_lander_panels_deploy .. "/InSIGHT_tex_02.jpg" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources, }, @@ -917,11 +917,11 @@ local Insight_Panels_Deployed_AO06 = { Parent = Insight.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models_lander_panels_deploy .. "/insight_lander_panels_deploy_AO01.obj", ColorTexture = models_lander_panels_deploy .. "/InSIGHT_AO_01.jpg" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources, }, diff --git a/data/assets/scene/solarsystem/missions/juno/juno.asset b/data/assets/scene/solarsystem/missions/juno/juno.asset index 7f3d8412c3..3fa10954f3 100644 --- a/data/assets/scene/solarsystem/missions/juno/juno.asset +++ b/data/assets/scene/solarsystem/missions/juno/juno.asset @@ -157,11 +157,11 @@ local Juno = { }, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = model .. "/Juno.obj", ColorTexture = textures .. "/gray.png" - }, + }}, ModelTransform = RotationMatrix, LightSources = assetHelper.getDefaultLightSources(sunTransforms.SolarSystemBarycenter.Identifier) }, @@ -197,6 +197,4 @@ local JunoTrail = { } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { Juno, JunoTrail }) diff --git a/data/assets/scene/solarsystem/missions/messenger/mercurymagnetosphere.asset b/data/assets/scene/solarsystem/missions/messenger/mercurymagnetosphere.asset index 35dfbe7110..3098de18a3 100644 --- a/data/assets/scene/solarsystem/missions/messenger/mercurymagnetosphere.asset +++ b/data/assets/scene/solarsystem/missions/messenger/mercurymagnetosphere.asset @@ -1,6 +1,6 @@ -- mercurymagnetosphere.asset - local assetHelper = asset.require('util/asset_helper') +local mercuryTransforms = asset.require('scene/solarsystem/planets/mercury/transforms') local localFolder = asset.syncedResource({ Name = "Mercury Magnetosphere", @@ -15,7 +15,7 @@ local MercuryRadius = 2.4397E6 local Magnetosphere = { Name = "Mercury Magnetosphere", Identifier = "MercuryMagnetosphere", - Parent = "MercuryBarycenter", + Parent = mercuryTransforms.MercuryBarycenter.Identifier, SceneRadius = 0.8E+5, Renderable = { Type = "RenderableTimeVaryingVolume", diff --git a/data/assets/scene/solarsystem/missions/messenger/messengerSC.asset b/data/assets/scene/solarsystem/missions/messenger/messengerSC.asset index f78d1f3655..8d3ac248ce 100644 --- a/data/assets/scene/solarsystem/missions/messenger/messengerSC.asset +++ b/data/assets/scene/solarsystem/missions/messenger/messengerSC.asset @@ -92,11 +92,11 @@ local MessengerProbeBlack = { Parent = Messenger.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MessengerProbe_black.obj", ColorTexture = models .. "/Tex_black.png" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources }, @@ -111,11 +111,11 @@ local MessengerProbeFoil = { Parent = Messenger.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MessengerProbe_foil.obj", ColorTexture = models .. "/foil_n2.png" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources }, @@ -130,11 +130,11 @@ local MessengerProbeHeatShield = { Parent = Messenger.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MessengerProbe_heatShield.obj", ColorTexture = models .. "/AO_heatshield4.png" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources }, @@ -149,11 +149,11 @@ local MessengerProbeMetal = { Parent = Messenger.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MessengerProbe_metal.obj", ColorTexture = models .. "/Tex_grey.png" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources }, @@ -169,11 +169,11 @@ local MessengerProbePanels = { Parent = Messenger.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MessengerProbe_panels.obj", ColorTexture = models .. "/Messenger_tex.png" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources }, diff --git a/data/assets/scene/solarsystem/missions/newhorizons/fov.asset b/data/assets/scene/solarsystem/missions/newhorizons/fov.asset index 45c7f7ba7e..1b46601397 100644 --- a/data/assets/scene/solarsystem/missions/newhorizons/fov.asset +++ b/data/assets/scene/solarsystem/missions/newhorizons/fov.asset @@ -368,8 +368,6 @@ local Rex = { } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { Lorri, RalphLeisa, diff --git a/data/assets/scene/solarsystem/missions/newhorizons/kernels.asset b/data/assets/scene/solarsystem/missions/newhorizons/kernels.asset index ed6816032b..e008d59119 100644 --- a/data/assets/scene/solarsystem/missions/newhorizons/kernels.asset +++ b/data/assets/scene/solarsystem/missions/newhorizons/kernels.asset @@ -41,8 +41,6 @@ local PlutoKernels = { Kernels .. "/NavSE_plu047_od122.bsp" } - - asset.export("Kernels", Kernels) asset.export("NewHorizonsKernels", NewHorizonsKernels) asset.export("PlutoKernels", PlutoKernels) diff --git a/data/assets/scene/solarsystem/missions/newhorizons/label.asset b/data/assets/scene/solarsystem/missions/newhorizons/label.asset index 69267f9f5f..6b6aae4f5e 100644 --- a/data/assets/scene/solarsystem/missions/newhorizons/label.asset +++ b/data/assets/scene/solarsystem/missions/newhorizons/label.asset @@ -14,11 +14,11 @@ local Labels = { Renderable = { Type = "RenderableModel", Body = "NEW HORIZONS", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/Labels.obj", ColorTexture = textures .. "/labels.png" - }, + }}, AmbientIntensity = 0.8 }, GUI = { @@ -26,6 +26,4 @@ local Labels = { } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { Labels }) diff --git a/data/assets/scene/solarsystem/missions/newhorizons/model.asset b/data/assets/scene/solarsystem/missions/newhorizons/model.asset index b5b95ba870..7df1162644 100644 --- a/data/assets/scene/solarsystem/missions/newhorizons/model.asset +++ b/data/assets/scene/solarsystem/missions/newhorizons/model.asset @@ -22,11 +22,11 @@ local NewHorizons = { Renderable = { Type = "RenderableModel", Body = "NEW HORIZONS", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/NewHorizonsCleanModel.obj", ColorTexture = textures .. "/NHTexture.jpg" - }, + }}, AmbientIntensity = 0.0, DiffuseIntensity = 1.0, SpecularIntensity = 1.0, @@ -50,8 +50,6 @@ local NewHorizons = { } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { NewHorizons }) asset.export("NewHorizonsTextures", textures) asset.export("NewHorizonsModels", models) diff --git a/data/assets/scene/solarsystem/missions/newhorizons/trail.asset b/data/assets/scene/solarsystem/missions/newhorizons/trail.asset index 9ebb30c5d6..dbb2a6d987 100644 --- a/data/assets/scene/solarsystem/missions/newhorizons/trail.asset +++ b/data/assets/scene/solarsystem/missions/newhorizons/trail.asset @@ -29,8 +29,6 @@ local TrailAtPluto = { } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { TrailAtPluto }) diff --git a/data/assets/scene/solarsystem/missions/newhorizons/transforms.asset b/data/assets/scene/solarsystem/missions/newhorizons/transforms.asset index 2ce8b47f00..cbcbab62da 100644 --- a/data/assets/scene/solarsystem/missions/newhorizons/transforms.asset +++ b/data/assets/scene/solarsystem/missions/newhorizons/transforms.asset @@ -46,8 +46,6 @@ local NewHorizonsPosition = { } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { PlutoBarycenterAccurate, NewHorizonsPosition diff --git a/data/assets/scene/solarsystem/missions/osirisrex/bennu.asset b/data/assets/scene/solarsystem/missions/osirisrex/bennu.asset index c6c5856413..8d672d4d43 100644 --- a/data/assets/scene/solarsystem/missions/osirisrex/bennu.asset +++ b/data/assets/scene/solarsystem/missions/osirisrex/bennu.asset @@ -34,11 +34,11 @@ local Bennu = { Renderable = { Type = "RenderableModelProjection", Body = BENNU_BODY, - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/BennuTextured.obj", ColorTexture = textures .. "/gray.png" - }, + }}, Projection = { Sequence = asset.localResource('InstrumentTimes'), SequenceType = "instrument-times", @@ -111,5 +111,4 @@ local BennuTrail = { } - assetHelper.registerSceneGraphNodesAndExport(asset, { Bennu, BennuTrail }) diff --git a/data/assets/scene/solarsystem/missions/osirisrex/model.asset b/data/assets/scene/solarsystem/missions/osirisrex/model.asset index b383470092..8d9d4537e2 100644 --- a/data/assets/scene/solarsystem/missions/osirisrex/model.asset +++ b/data/assets/scene/solarsystem/missions/osirisrex/model.asset @@ -216,11 +216,11 @@ local OsirisRex = { Renderable = { Type = "RenderableModel", Body = "OSIRIS-REX", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/orx_base_resized_12_sep_2016.obj", ColorTexture = textures .. "/osirisTex.png" - }, + }}, LightSources = LightSources }, GUI = { @@ -246,11 +246,11 @@ local PolyCam = { Renderable = { Type = "RenderableModel", Body = "OSIRIS-REX", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/orx_polycam_resized_12_sep_2016.obj", ColorTexture = textures .. "/osirisTex.png" - }, + }}, LightSources = LightSources }, GUI = { @@ -265,11 +265,11 @@ local Rexis = { Renderable = { Type = "RenderableModel", Body = "OSIRIS-REX", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/orx_rexis_resized_12_sep_2016.obj", ColorTexture = textures .. "/osirisTex.png" - }, + }}, LightSources = LightSources }, Transform = { @@ -334,8 +334,6 @@ local RexisFov = { } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { OsirisRex, PolyCam, diff --git a/data/assets/scene/solarsystem/missions/osirisrex/script_schedule.asset b/data/assets/scene/solarsystem/missions/osirisrex/script_schedule.asset index 4bbf29979c..c30315862d 100644 --- a/data/assets/scene/solarsystem/missions/osirisrex/script_schedule.asset +++ b/data/assets/scene/solarsystem/missions/osirisrex/script_schedule.asset @@ -15,4 +15,4 @@ end) asset.onDeinitialize(function () openspace.scriptScheduler.clear() -end) \ No newline at end of file +end) diff --git a/data/assets/scene/solarsystem/missions/osirisrex/trail.asset b/data/assets/scene/solarsystem/missions/osirisrex/trail.asset index b156ee96c6..92fbaf68ac 100644 --- a/data/assets/scene/solarsystem/missions/osirisrex/trail.asset +++ b/data/assets/scene/solarsystem/missions/osirisrex/trail.asset @@ -71,8 +71,6 @@ local OsirisRexTrailBennu = { } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { OsirisRexTrailEarth, OsirisRexTrailSolarSystem, diff --git a/data/assets/scene/solarsystem/missions/osirisrex/transforms.asset b/data/assets/scene/solarsystem/missions/osirisrex/transforms.asset index e464ab5e20..62a2e42faa 100644 --- a/data/assets/scene/solarsystem/missions/osirisrex/transforms.asset +++ b/data/assets/scene/solarsystem/missions/osirisrex/transforms.asset @@ -21,6 +21,4 @@ local BennuBarycenter = { } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { BennuBarycenter }) diff --git a/data/assets/scene/solarsystem/missions/perseverance/model.asset b/data/assets/scene/solarsystem/missions/perseverance/model.asset index 95554d5a6e..37fae9f463 100644 --- a/data/assets/scene/solarsystem/missions/perseverance/model.asset +++ b/data/assets/scene/solarsystem/missions/perseverance/model.asset @@ -61,11 +61,11 @@ local Body = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_BODY_new_1.obj", ColorTexture = textures .. "/tex_01.png" - }, + }}, LightSources = LightSources, PerformShading = false, }, @@ -83,11 +83,11 @@ local Body_detail = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_BODY_new_1_new_detail.obj", ColorTexture = textures .. "/tex_01.png" - }, + }}, LightSources = LightSources, PerformShading = false, }, @@ -104,11 +104,11 @@ local Body_staticParts_1 = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_BODY_new_2.obj", ColorTexture = textures .. "/tex_02.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -124,11 +124,11 @@ local Body_staticParts_2 = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_BODY_new_3.obj", ColorTexture = textures .. "/tex_03.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -144,11 +144,11 @@ local Body_staticParts_3 = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_BODY_new_4.obj", ColorTexture = textures .. "/tex_04.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -164,11 +164,11 @@ local Body_staticParts_4 = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_BODY_new_5.obj", ColorTexture = textures .. "/tex_05.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -184,11 +184,11 @@ local Body_staticParts_5 = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_BODY_new_A0.obj", ColorTexture = textures .. "/parts_AO.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -205,11 +205,11 @@ local RA_Shoulder_AZ = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_RA_SHOULDER_AZ_new.obj", ColorTexture = textures .. "/tex_03.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -225,11 +225,11 @@ local RA_Shoulder_AZ_detail_1 = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_RA_SHOULDER_AZ_detail_1.obj", ColorTexture = textures .. "/tex_05.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -245,11 +245,11 @@ local RA_Shoulder_AZ_detail_2 = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_RA_SHOULDER_AZ_detail_2.obj", ColorTexture = textures .. "/tex_01.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -266,11 +266,11 @@ local RA_Shoulder_EL_1 = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_RA_SHOULDER_EL_1.obj", ColorTexture = textures .. "/tex_01.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -287,11 +287,11 @@ local RA_Shoulder_EL_detail_1 = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_RA_SHOULDER_EL_detail_1.obj", ColorTexture = textures .. "/tex_04.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -307,11 +307,11 @@ local RA_Shoulder_EL_detail_2 = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_RA_SHOULDER_EL_detail_2.obj", ColorTexture = textures .. "/tex_05.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -329,11 +329,11 @@ local RA_Shoulder_EL_2 = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_RA_SHOULDER_EL_2.obj", ColorTexture = textures .. "/tex_03.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -350,11 +350,11 @@ local RA_Elbow_1 = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_RA_ELBOW_1.obj", ColorTexture = textures .. "/tex_01.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -370,11 +370,11 @@ local RA_Elbow_detail_1 = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_RA_ELBOW_detail_1.obj", ColorTexture = textures .. "/tex_04.png", - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -390,11 +390,11 @@ local RA_Elbow_detail_2 = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_RA_ELBOW_detail_2.obj", ColorTexture = textures .. "/tex_05.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -411,11 +411,11 @@ local RA_Elbow_2 = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_RA_ELBOW_2.obj", ColorTexture = textures .. "/tex_03.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -433,11 +433,11 @@ local RA_Wrist = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_RA_TURRET_new_1.obj", ColorTexture = textures .. "/tex_03.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -453,11 +453,11 @@ local RA_Wrist_details = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_RA_TURRET_new_1_details.obj", ColorTexture = textures .. "/tex_01.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -474,11 +474,11 @@ local RA_Turret = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_RA_TURRET_new_2.obj", ColorTexture = textures .. "/tex_04.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -495,11 +495,11 @@ local RA_Turret_details_1 = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_RA_TURRET_new_2_detail_1.obj", ColorTexture = textures .. "/tex_05.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -515,11 +515,11 @@ local RA_Turret_details_2 = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_RA_TURRET_new_2_detail_2.obj", ColorTexture = textures .. "/tex_03.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -536,11 +536,11 @@ local RSM_root = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_RSM_ROOT.obj", ColorTexture = textures .. "/tex_04.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -556,11 +556,11 @@ local RSM_AZ = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_RSM_AZ.obj", ColorTexture = textures .. "/tex_04.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -576,11 +576,11 @@ local RSM_EL = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_RSM_EL.obj", ColorTexture = textures .. "/tex_04.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -597,11 +597,11 @@ local HGA_AZ = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_HGA_AZ_0ANGLE.obj", ColorTexture = textures .. "/tex_02.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -617,11 +617,11 @@ local HGA_EL = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_HGA_EL.obj", ColorTexture = textures .. "/tex_02.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -638,11 +638,11 @@ local SAM_Cover_1 = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_SAM_FIXED_COVER_1.obj", ColorTexture = textures .. "/MSLTextureTest.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -658,11 +658,11 @@ local SAM_Cover_2 = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_SAM_FIXED_COVER_2.obj", ColorTexture = textures .. "/MSLTextureTest.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -678,11 +678,11 @@ local CHEMIN_Bottom = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_CHEMIN.obj", ColorTexture = textures .. "/MSLTextureTest.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -699,11 +699,11 @@ local Wheel_Base = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_WHEEL_BASE.obj", ColorTexture = textures .. "/tex_02.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -718,11 +718,11 @@ local Wheel_Base_2 = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_WHEEL_BASE_2.obj", ColorTexture = textures .. "/tex_03.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -739,11 +739,11 @@ local Wheel_Leg_1_L = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_WHEEL_LEG_1_L.obj", ColorTexture = textures .. "/tex_03.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -759,11 +759,11 @@ local Wheel_Leg_1A_L_detail = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_WHEEL_LEG_1A_L_detail.obj", ColorTexture = textures .. "/tex_05.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -779,11 +779,11 @@ local Wheel_Leg_1B_L_detail = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_WHEEL_LEG_1B_L_detail.obj", ColorTexture = textures .. "/tex_05.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -799,11 +799,11 @@ local Wheel_Leg_2_L = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_WHEEL_LEG_2_L_new.obj", ColorTexture = textures .. "/tex_03.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -819,11 +819,11 @@ local Wheel_Wrist_F_L = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_WHEEL_WRIST_F_L.obj", ColorTexture = textures .. "/tex_02.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -839,11 +839,11 @@ local Wheel_Wrist_hub_F_L = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_WHEEL_WRIST_1B_F_L.obj", ColorTexture = textures .. "/tex_02.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -859,11 +859,11 @@ local Wheel_F_L = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_WHEEL_L.obj", ColorTexture = textures .. "/tex_03.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -879,11 +879,11 @@ local Wheel_C_L = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_WHEEL_L.obj", ColorTexture = textures .. "/tex_03.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -899,11 +899,11 @@ local Wheel_Wrist_B_L = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_WHEEL_WRIST_B_L.obj", ColorTexture = textures .. "/tex_02.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -919,11 +919,11 @@ local Wheel_Wrist_hub_B_L = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_WHEEL_WRIST_1B_B_L.obj", ColorTexture = textures .. "/tex_02.png" - }, + }}, LightSources = LightSources, PerformShading = false, }, @@ -940,11 +940,11 @@ local Wheel_B_L = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_WHEEL_L.obj", ColorTexture = textures .. "/tex_03.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -961,11 +961,11 @@ local Wheel_Leg_1_R = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_WHEEL_LEG_1_R.obj", ColorTexture = textures .. "/tex_03.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -981,11 +981,11 @@ local Wheel_Leg_1A_R_detail = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_WHEEL_LEG_1A_R_detail.obj", ColorTexture = textures .. "/tex_05.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -1001,11 +1001,11 @@ local Wheel_Leg_1B_R_detail = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_WHEEL_LEG_1B_R_detail.obj", ColorTexture = textures .. "/tex_05.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -1021,11 +1021,11 @@ local Wheel_Leg_2_R = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_WHEEL_LEG_2_R_new.obj", ColorTexture = textures .. "/tex_03.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -1041,12 +1041,12 @@ local Wheel_Wrist_F_R = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_WHEEL_WRIST_F_R.obj", --GeometryFile = models .. "/MSL_WHEEL_WRIST_F_L.obj", ColorTexture = textures .. "/tex_02.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -1062,11 +1062,11 @@ local Wheel_Wrist_hub_F_R = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_WHEEL_WRIST_1B_F_R.obj", ColorTexture = textures .. "/tex_02.png", - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -1082,11 +1082,11 @@ local Wheel_F_R = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_WHEEL_R.obj", ColorTexture = textures .. "/tex_03.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -1102,11 +1102,11 @@ local Wheel_C_R = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_WHEEL_R.obj", ColorTexture = textures .. "/tex_03.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -1122,11 +1122,11 @@ local Wheel_Wrist_B_R = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_WHEEL_WRIST_1A_B_R.obj", ColorTexture = textures .. "/tex_02.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -1142,11 +1142,11 @@ local Wheel_Wrist_hub_B_R = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_WHEEL_WRIST_1B_B_R.obj", ColorTexture = textures .. "/tex_02.png" - }, + }}, LightSources = LightSources, PerformShading = false }, @@ -1162,11 +1162,11 @@ local Wheel_B_R = { Renderable = { Type = "RenderableModel", Body = "MARS SCIENCE LABORATORY", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/MSL_WHEEL_R.obj", ColorTexture = textures .. "/tex_03.png" - }, + }}, LightSources = LightSources, PerformShading = false }, diff --git a/data/assets/scene/solarsystem/missions/perseverance/perseverance.asset b/data/assets/scene/solarsystem/missions/perseverance/perseverance.asset index 64667cbd70..f1e3b55cd7 100644 --- a/data/assets/scene/solarsystem/missions/perseverance/perseverance.asset +++ b/data/assets/scene/solarsystem/missions/perseverance/perseverance.asset @@ -1,5 +1,3 @@ --perseverance.asset asset.require('./model') asset.require('./trail') - - diff --git a/data/assets/scene/solarsystem/missions/pioneer/pioneer10.asset b/data/assets/scene/solarsystem/missions/pioneer/pioneer10.asset index 04d9cab085..f76730f83c 100644 --- a/data/assets/scene/solarsystem/missions/pioneer/pioneer10.asset +++ b/data/assets/scene/solarsystem/missions/pioneer/pioneer10.asset @@ -1,12 +1,7 @@ local assetHelper = asset.require('util/asset_helper') local sunTransforms = asset.require('scene/solarsystem/sun/transforms') +local model = asset.require("scene/solarsystem/missions/pioneer/pioneermodel") -local modelFolder = asset.syncedResource({ - Name = "Pioneer 10/11 Models", - Type = "HttpSynchronization", - Identifier = "pioneer_10_11_model", - Version = 2 -}) local kernelsFolder = asset.syncedResource({ Name = "Pioneer Kernels", @@ -30,15 +25,7 @@ local Pioneer10 = { Kernels = kernelsList }, }, - Renderable = { - Type = "RenderableModel", - Geometry = { - Type = "MultiModelGeometry", - GeometryFile = modelFolder .. "/Pioneer.obj", - ColorTexture = modelFolder .. "/gray.png" - }, - LightSources = assetHelper.getDefaultLightSources(sunTransforms.SolarSystemBarycenter.Identifier) - }, + Renderable = model.PioneerModel, GUI = { Name = "Pioneer 10", Path = "/Solar System/Missions/Pioneer/10" diff --git a/data/assets/scene/solarsystem/missions/pioneer/pioneer11.asset b/data/assets/scene/solarsystem/missions/pioneer/pioneer11.asset index def3eeacc5..5e69367ae1 100644 --- a/data/assets/scene/solarsystem/missions/pioneer/pioneer11.asset +++ b/data/assets/scene/solarsystem/missions/pioneer/pioneer11.asset @@ -1,12 +1,7 @@ local assetHelper = asset.require('util/asset_helper') local sunTransforms = asset.require('scene/solarsystem/sun/transforms') +local model = asset.require("scene/solarsystem/missions/pioneer/pioneermodel") -local modelFolder = asset.syncedResource({ - Name = "Pioneer 10/11 Models", - Type = "HttpSynchronization", - Identifier = "pioneer_10_11_model", - Version = 2 -}) local kernelsFolder = asset.syncedResource({ Name = "Pioneer Kernels", @@ -33,15 +28,7 @@ local Pioneer11 = { Kernels = kernelsList }, }, - Renderable = { - Type = "RenderableModel", - Geometry = { - Type = "MultiModelGeometry", - GeometryFile = modelFolder .. "/Pioneer.obj", - ColorTexture = modelFolder .. "/gray.png" - }, - LightSources = assetHelper.getDefaultLightSources(sunTransforms.SolarSystemBarycenter.Identifier) - }, + Renderable = model.PioneerModel, GUI = { Name = "Pioneer 11", Path = "/Solar System/Missions/Pioneer/11" diff --git a/data/assets/scene/solarsystem/missions/pioneer/pioneermodel.asset b/data/assets/scene/solarsystem/missions/pioneer/pioneermodel.asset new file mode 100644 index 0000000000..1903e5bb71 --- /dev/null +++ b/data/assets/scene/solarsystem/missions/pioneer/pioneermodel.asset @@ -0,0 +1,23 @@ +local assetHelper = asset.require('util/asset_helper') + + +local modelFolder = asset.syncedResource({ + Name = "Pioneer 10/11 Models", + Type = "HttpSynchronization", + Identifier = "pioneer_10_11_model", + Version = 2 +}) + +local ModelRenderable = { + Type = "RenderableModel", + Geometry = {{ + Type = "MultiModelGeometry", + GeometryFile = modelFolder .. "/Pioneer.obj", + ColorTexture = modelFolder .. "/gray.png" + }}, + LightSources = assetHelper.getDefaultLightSources( + sunTransforms.SolarSystemBarycenter.Identifier + ) +} + +asset.export("PioneerModel", ModelRenderable) diff --git a/data/assets/scene/solarsystem/missions/rosetta/67p.asset b/data/assets/scene/solarsystem/missions/rosetta/67p.asset index fd9d09ff50..d3d6405208 100644 --- a/data/assets/scene/solarsystem/missions/rosetta/67p.asset +++ b/data/assets/scene/solarsystem/missions/rosetta/67p.asset @@ -54,11 +54,11 @@ local Comet67P = { }, Renderable = { Type = "RenderableModelProjection", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/67P_rotated_5_130.obj", ColorTexture = textures .. "/gray.jpg" - }, + }}, Projection = { Sequence = { imagesDestination }, SequenceType = "image-sequence", diff --git a/data/assets/scene/solarsystem/missions/rosetta/rosetta.asset b/data/assets/scene/solarsystem/missions/rosetta/rosetta.asset index 8b29ea4180..7a839f5281 100644 --- a/data/assets/scene/solarsystem/missions/rosetta/rosetta.asset +++ b/data/assets/scene/solarsystem/missions/rosetta/rosetta.asset @@ -138,11 +138,11 @@ local RosettaBlackFoil = { Renderable = { Type = "RenderableModel", Body = "ROSETTA", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/black_foil.obj", ColorTexture = textures .. "/foil_silver_ramp.png" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources }, @@ -158,11 +158,11 @@ local RosettaBlackParts = { Renderable = { Type = "RenderableModel", Body = "ROSETTA", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/black_parts.obj", ColorTexture = textures .. "/foil_silver_ramp.png" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources }, @@ -178,11 +178,11 @@ local RosettaDish = { Renderable = { Type = "RenderableModel", Body = "ROSETTA", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/dish.obj", ColorTexture = textures .. "/dish_AO.png" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources }, @@ -198,11 +198,11 @@ local RosettaParts = { Renderable = { Type = "RenderableModel", Body = "ROSETTA", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/parts.obj", ColorTexture = textures .. "/parts2_AO.png" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources }, @@ -218,11 +218,11 @@ local RosettaSilverFoil = { Renderable = { Type = "RenderableModel", Body = "ROSETTA", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/silver_foil.obj", ColorTexture = textures .. "/foil_silver_ramp.png" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources }, @@ -238,11 +238,11 @@ local RosettaVents = { Renderable = { Type = "RenderableModel", Body = "ROSETTA", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/vents.obj", ColorTexture = textures .. "/tex_01.png" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources }, @@ -258,11 +258,11 @@ local RosettaWingA = { Renderable = { Type = "RenderableModel", Body = "ROSETTA", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .."/wingA.obj", ColorTexture = textures .. "/tex_01.png" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources }, @@ -278,11 +278,11 @@ local RosettaWingB = { Renderable = { Type = "RenderableModel", Body = "ROSETTA", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/wingB.obj", ColorTexture = textures .. "/tex_01.png" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources }, @@ -298,11 +298,11 @@ local RosettaYellowFoil = { Renderable = { Type = "RenderableModel", Body = "ROSETTA", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/yellow_foil.obj", ColorTexture = textures .. "/foil_gold_ramp.png" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources }, @@ -347,11 +347,11 @@ local PhilaeFoil = { Renderable = { Type = "RenderableModel", Body = "ROSETTA", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/lander_foil.obj", ColorTexture = textures .. "/foil_silver_ramp.png" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources }, @@ -367,11 +367,11 @@ local PhilaeLids = { Renderable = { Type = "RenderableModel", Body = "ROSETTA", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/lander_lids.obj", ColorTexture = textures .. "/parts2_AO.png" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources }, @@ -387,11 +387,11 @@ local PhilaeParts = { Renderable = { Type = "RenderableModel", Body = "ROSETTA", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/lander_parts.obj", ColorTexture = textures .. "/foil_silver_ramp.png" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources }, @@ -407,11 +407,11 @@ local PhilaeSolarPanels = { Renderable = { Type = "RenderableModel", Body = "ROSETTA", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/lander_solarp.obj", ColorTexture = textures .. "/tex_01.png" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources }, @@ -513,8 +513,6 @@ local PhilaeTrail = { } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { Rosetta, RosettaModel, diff --git a/data/assets/scene/solarsystem/missions/voyager/voyager1.asset b/data/assets/scene/solarsystem/missions/voyager/voyager1.asset index f93ffdefe6..a03d0be7cc 100644 --- a/data/assets/scene/solarsystem/missions/voyager/voyager1.asset +++ b/data/assets/scene/solarsystem/missions/voyager/voyager1.asset @@ -80,11 +80,11 @@ local Voyager1Main = { Parent = Voyager1.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/voyager-main.obj", ColorTexture = models .. "/voyager-main.jpg" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources }, @@ -99,11 +99,11 @@ local Voyager1Antenna = { Parent = Voyager1.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/voyager-antenna.obj", ColorTexture = models .. "/voyager-antenna.png" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources }, @@ -230,8 +230,6 @@ local VoyagerTrailCruiseSaturnInf = { } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { Voyager1, Voyager1Main, diff --git a/data/assets/scene/solarsystem/missions/voyager/voyager2.asset b/data/assets/scene/solarsystem/missions/voyager/voyager2.asset index 993b86dc90..2fa89e5719 100644 --- a/data/assets/scene/solarsystem/missions/voyager/voyager2.asset +++ b/data/assets/scene/solarsystem/missions/voyager/voyager2.asset @@ -83,11 +83,11 @@ local Voyager2Main = { Parent = Voyager2.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/voyager-main.obj", ColorTexture = models .. "/voyager-main.jpg" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources }, @@ -102,11 +102,11 @@ local Voyager2Antenna = { Parent = Voyager2.Identifier, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/voyager-antenna.obj", ColorTexture = models .. "/voyager-antenna.png" - }, + }}, ModelTransform = RotationMatrix, LightSources = LightSources }, @@ -325,8 +325,6 @@ local VoyagerTrailCruiseNeptuneInf = { } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { Voyager2, Voyager2Main, diff --git a/data/assets/scene/solarsystem/planets/default_layers.asset b/data/assets/scene/solarsystem/planets/default_layers.asset index 2ad62dd2c1..4fc2b0ada0 100644 --- a/data/assets/scene/solarsystem/planets/default_layers.asset +++ b/data/assets/scene/solarsystem/planets/default_layers.asset @@ -26,3 +26,14 @@ asset.require('./saturn/titan/default_layers') asset.require('./uranus/default_layers') asset.require('./venus/default_layers') + + +asset.meta = { + Name = "Default Solar System Layers", + Version = "1.0", + Description = [[ Adds default layers for all planets. Remove this asset and include + individual layers for planets to customize planet layers]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/earth/atmosphere.asset b/data/assets/scene/solarsystem/planets/earth/atmosphere.asset index 7b3197b84f..c46df1f9b4 100644 --- a/data/assets/scene/solarsystem/planets/earth/atmosphere.asset +++ b/data/assets/scene/solarsystem/planets/earth/atmosphere.asset @@ -96,10 +96,20 @@ local Atmosphere = { }, GUI = { Name = "Earth Atmosphere", - Path = "/Solar System/Planets/Earth" + Path = "/Solar System/Planets/Earth", + Description = [[ Atmosphere of Earth.]] } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { Atmosphere }) + + +asset.meta = { + Name = "Earth Atmosphere", + Version = "1.0", + Description = [[ RenderableAtmosphere for Earth.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "EarthAtmosphere" +} diff --git a/data/assets/scene/solarsystem/planets/earth/default_layers.asset b/data/assets/scene/solarsystem/planets/earth/default_layers.asset index 21410493d5..459913ca3e 100644 --- a/data/assets/scene/solarsystem/planets/earth/default_layers.asset +++ b/data/assets/scene/solarsystem/planets/earth/default_layers.asset @@ -40,8 +40,28 @@ local watermask = asset.require(waterMasksPath .. "/modis_water_mask") -- Set enabled layers (temporary solution) -- @TODO: do this using a boolean that's passed to the 'asset.require' instead asset.onInitialize(function () - openspace.setPropertyValueSingle("Scene.Earth.Renderable.Layers.ColorLayers." .. colorLayer.layer.Identifier .. ".Enabled", true) - openspace.setPropertyValueSingle("Scene.Earth.Renderable.Layers.HeightLayers." .. heightLayer.layer.Identifier .. ".Enabled", true) - openspace.setPropertyValueSingle("Scene.Earth.Renderable.Layers.NightLayers." .. nightLayer.layer.Identifier .. ".Enabled", true) - openspace.setPropertyValueSingle("Scene.Earth.Renderable.Layers.WaterMasks." .. watermask.layer.Identifier .. ".Enabled", true) + openspace.setPropertyValueSingle("Scene.Earth.Renderable.Layers.ColorLayers." .. + colorLayer.layer.Identifier .. ".Enabled", true) + openspace.setPropertyValueSingle("Scene.Earth.Renderable.Layers.HeightLayers." .. + heightLayer.layer.Identifier .. ".Enabled", true) + openspace.setPropertyValueSingle("Scene.Earth.Renderable.Layers.NightLayers." .. + nightLayer.layer.Identifier .. ".Enabled", true) + openspace.setPropertyValueSingle("Scene.Earth.Renderable.Layers.WaterMasks." .. + watermask.layer.Identifier .. ".Enabled", true) end) + + +asset.meta = { + Name = "Default Earth Layers", + Version = "1.0", + Description = [[ Default Earth layers are: ESRI VIIRS Combo, ESRI World Imagery, VIIRS + SNPP (Temporal), Aqua Modis (Temporal), Terra Modis (Temporal), BMNG, AMSR2 GCOM + W1 Sea Ice Concentration (Temporal), MODIS Terra Chlorophyll A (Temporal), GHRSST, + L4 G1SST Sea Surface Temperature (Temporal), GHRSST L4 MUR Sea Surface Temperature + (Temporal), World Elevation (3D), Earth at Night 2012, Coastlines, Reference + Features, Reference Labels, Tile Indicies, Size Reference, Gebco, and Modis Water + Mask.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/earth/earth.asset b/data/assets/scene/solarsystem/planets/earth/earth.asset index be78f5c522..73d63828c9 100644 --- a/data/assets/scene/solarsystem/planets/earth/earth.asset +++ b/data/assets/scene/solarsystem/planets/earth/earth.asset @@ -2,8 +2,6 @@ local transforms = asset.require('./transforms') local assetHelper = asset.require('util/asset_helper') local labelsPath = asset.require('./earth_globelabels').LabelsPath -asset.require('./trail') - -- local earthEllipsoid = { 6378137.0, 6378137.0, 6356752.314245 } local earthEllipsoid = { 6378137.0, 6378137.0, 6378137.0 } @@ -22,13 +20,11 @@ local Earth = { -- All radius in meters Radius = 696.3E6 }, - --Source2 = { Name = "Monolith", Radius = 0.01E6, }, Caster1 = { Name = "Moon", -- All radius in meters Radius = 1.737E6 } - --Caster2 = { Name = "Independency Day Ship", Radius = 0.0, } }, Labels = { Enable = false, @@ -50,25 +46,15 @@ local Earth = { }, Tag = { "planet_solarSystem", "planet_terrestrial" }, GUI = { - Path = "/Solar System/Planets/Earth" + Name = "Earth", + Path = "/Solar System/Planets/Earth", + Description = "Third rock from the Sun" } } local EarthLabel = { Identifier = "EarthLabel", Parent = Earth.Identifier, - -- Transform = { - -- Translation = { - -- Type = "SpiceTranslation", - -- Target = "EARTH", - -- Observer = "EARTH BARYCENTER" - -- }, - -- -- Rotation = { - -- -- Type = "SpiceRotation", - -- -- SourceFrame = "IAU_MOON", - -- -- DestinationFrame = "GALACTIC" - -- -- } - -- }, Renderable = { Enabled = false, Type = "RenderableLabels", @@ -90,11 +76,11 @@ local EarthLabel = { Tag = { "solarsystem_labels" }, GUI = { Name = "Earth Label", - Path = "/Solar System/Planets/Earth" + Path = "/Solar System/Planets/Earth", + Description = "Main label for Earth" } } - assetHelper.registerSceneGraphNodesAndExport(asset, { Earth, EarthLabel }) @@ -104,5 +90,6 @@ asset.meta = { Description = [[ Earth is a special planet with special needs ]], Author = "OpenSpace Team", URL = "http://openspaceproject.com", - License = "MIT license" + License = "MIT license", + Identifiers = "Earth,EarthLabel" } diff --git a/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/amsr2_gcom_w1_sea_ice_concentration_temporal.asset b/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/amsr2_gcom_w1_sea_ice_concentration_temporal.asset index 86acf6cfb8..cbca713bac 100644 --- a/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/amsr2_gcom_w1_sea_ice_concentration_temporal.asset +++ b/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/amsr2_gcom_w1_sea_ice_concentration_temporal.asset @@ -11,7 +11,13 @@ local layer = { "1d", "2km", "png" - ) + ), + Description = [[ Temporal coverage: 02 July 2012 - Present. The Advanced Microwave + Scanning Radiometer-E/Advanced Microwave Scanning Radiometer-2 (AMSR-E/AMSR2) + unified "Sea Ice Concentration (12 km)" layer displays the percent of sea ice + concentration in the polar regions as a daily composite of the AMSR2 1:30 a.m. + ascending and 1:30 p.m. descending half-orbit passes, at a spatial resolution + of 12 km. (Description from NASA Worldview)]] } asset.onInitialize(function () @@ -19,3 +25,15 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "AMSR2 GCOM W1 Sea Ice Concentration (Temporal)", + Version = "1.0", + Description = [[ GIBS hosted layer created with + openspace.globebrowsing.createTemporalGibsGdalXml ]], + Author = "NASA EOSDIS Global Imagery Browse Services", + URL = "https://earthdata.nasa.gov/eosdis/science-system-description/eosdis-components/gibs", + License = "NASA", + Identifiers = "AMSR2_GCOM_W1_Sea_Ice_Concentration_Temporal" +} diff --git a/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/aqua_modis_temporal.asset b/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/aqua_modis_temporal.asset index 7c65fe269f..503d014e93 100644 --- a/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/aqua_modis_temporal.asset +++ b/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/aqua_modis_temporal.asset @@ -11,7 +11,18 @@ local layer = { "1d", "250m", "jpg" - ) + ), + Description = [[ Temporal coverage: 03 July 2002 - Present. True Color: Red = Band 1, + Green = Band 4, Blue = Band 3. These images are called true-color or natural color + because this combination of wavelengths is similar to what the human eye would see. + The images are natural-looking images of land surface, oceanic and atmospheric + features. The downside of this set of bands is that they tend to produce a hazy image. + The MODIS Corrected Reflectance imagery is available only as near real-time imagery. + The imagery can be visualized in Worldview and the Global Imagery Browse Services + (GIBS). The sensor resolution is 500 m and 250 m (Bands 1 and 2 have a sensor + resolution of 250 m, Bands 3 - 7 have a sensor resolution of 500m, and Bands 8 - 36 + are 1 km. Band 1 is used to sharpen Band 3, 4, 6, and 7), imagery resolution is 250 m, + and the temporal resolution is daily. (Description from NASA Worldview)]] } asset.onInitialize(function () @@ -19,3 +30,15 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Aqua Modis (Temporal)", + Version = "1.0", + Description = [[ GIBS hosted layer created with + openspace.globebrowsing.createTemporalGibsGdalXml ]], + Author = "NASA EOSDIS Global Imagery Browse Services", + URL = "https://earthdata.nasa.gov/eosdis/science-system-description/eosdis-components/gibs", + License = "NASA", + Identifiers = "Aqua_Modis_Temporal" +} diff --git a/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/bmng_sweden.asset b/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/bmng_sweden.asset index 7cd8f71b96..64314513ab 100644 --- a/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/bmng_sweden.asset +++ b/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/bmng_sweden.asset @@ -4,7 +4,9 @@ local globeIdentifier = asset.require("./../../earth").Earth.Identifier local layer = { Identifier = "BMNG_Sweden", Name = "BMNG [Sweden]", - FilePath = mapServiceConfigsPath .. "/LiU/Bmng.wms" + FilePath = mapServiceConfigsPath .. "/LiU/Bmng.wms", + Description = [[ Web loaded full resolution map of Blue Marble Next Generation. + This map is hosted on the OpenSpace servers in Sweden]], } asset.onInitialize(function () @@ -12,3 +14,15 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Blue Marble Next Generation (Sweden)", + Version = "1.0", + Description = [[ Web loaded full resolution map of Blue Marble Next Generation. + This map is hosted on the OpenSpace servers in Sweden]], + Author = "OpenSpace Team", + URL = "https://visibleearth.nasa.gov/collection/1484/blue-marble", + License = "NASA", + Identifiers = "BMNG_Sweden" +} diff --git a/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/bmng_utah.asset b/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/bmng_utah.asset index b3c064e3d9..7f115b2db3 100644 --- a/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/bmng_utah.asset +++ b/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/bmng_utah.asset @@ -4,7 +4,9 @@ local globeIdentifier = asset.require("./../../earth").Earth.Identifier local layer = { Identifier = "BMNG_Utah", Name = "BMNG [Utah]", - FilePath = mapServiceConfigsPath .. "/Utah/Bmng.wms" + FilePath = mapServiceConfigsPath .. "/Utah/Bmng.wms", + Description = [[ Web loaded full resolution map of Blue Marble Next Generation. + This map is hosted on the OpenSpace servers in Utah]], } asset.onInitialize(function () @@ -12,3 +14,15 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Blue Marble Next Generation (Utah)", + Version = "1.0", + Description = [[ Web loaded full resolution map of Blue Marble Next Generation. + This map is hosted on the OpenSpace servers in Utah]], + Author = "OpenSpace Team", + URL = "https://visibleearth.nasa.gov/collection/1484/blue-marble", + License = "NASA", + Identifiers = "BMNG_Utah" +} diff --git a/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/esri_imagery_world_2D.asset b/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/esri_imagery_world_2D.asset index 228093d4fe..cfd621fbae 100644 --- a/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/esri_imagery_world_2D.asset +++ b/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/esri_imagery_world_2D.asset @@ -4,7 +4,16 @@ local globeIdentifier = asset.require("./../../earth").Earth.Identifier local layer = { Identifier = "ESRI_Imagery_World_2D", Name = "ESRI Imagery World 2D", - FilePath = mapServiceConfigsPath .. "/ESRI/ESRI_Imagery_World_2D.wms" + FilePath = mapServiceConfigsPath .. "/ESRI/ESRI_Imagery_World_2D.wms", + Description = [[This map presents low-resolution imagery for the world and + high-resolution imagery for the United States and other metropolitan areas around + the world. The map includes NASA Blue Marble: Next Generation 500m resolution + imagery at small scales (above 1:1,000,000), i-cubed 15m eSAT imagery at + medium-to-large scales (down to 1:70,000) for the world, and USGS 15m Landsat + imagery for Antarctica. It also includes 1m i-cubed Nationwide Select imagery for + the continental United States, and GeoEye IKONOS 1m resolution imagery for Hawaii, + parts of Alaska, and several hundred metropolitan areas around the world. + (Description from URL)]], } asset.onInitialize(function () @@ -12,3 +21,14 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "ESRI Imagery World 2D", + Version = "1.0", + Description = [[Older 2D imager map layer for Earth. This layer is hosted by ESRI.]], + Author = "ESRI", + URL = "https://www.arcgis.com/home/item.html?id=21b4ba14d9e5472d97afcbb819f7368e", + License = "Esri Master License Agreement", + Identifiers = "ESRI_Imagery_World_2D" +} diff --git a/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/esri_viirs_combo.asset b/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/esri_viirs_combo.asset index a7d8021dca..10522fae95 100644 --- a/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/esri_viirs_combo.asset +++ b/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/esri_viirs_combo.asset @@ -36,7 +36,9 @@ local layer = { }, }, PadTiles = false, - Fallback = fallBackLayer + Fallback = fallBackLayer, + Description = [[Level based layer combining "VIIRS SNPP (Temporal)" and ESRI World + Imagery. "VIIRS SNPP (Temporal)" is faded out at tile level 4]] } asset.onInitialize(function () @@ -44,3 +46,15 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "ESRI VIIRS Combo", + Version = "1.0", + Description = [[Level based layer combining "VIIRS SNPP (Temporal)" and ESRI World + Imagery. "VIIRS SNPP (Temporal)" is faded out at tile level 4]], + Author = "OpenSpace Tem", + URL = "http://www.openspaceproject.com", + License = "MIT License", + Identifiers = "ESRI_VIIRS_Combo" +} diff --git a/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/esri_world_imagery.asset b/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/esri_world_imagery.asset index 110c1067f3..7f9e511ee7 100644 --- a/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/esri_world_imagery.asset +++ b/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/esri_world_imagery.asset @@ -4,7 +4,17 @@ local globeIdentifier = asset.require("./../../earth").Earth.Identifier local layer = { Identifier = "ESRI_World_Imagery", Name = "ESRI World Imagery", - FilePath = mapServiceConfigsPath .. "/ESRI/World_Imagery.wms" + FilePath = mapServiceConfigsPath .. "/ESRI/World_Imagery.wms", + Description = [[World Imagery provides one meter or better satellite and aerial + imagery in many parts of the world and lower resolution satellite imagery + worldwide. The map includes 15m TerraColor imagery at small and mid-scales + (~1:591M down to ~1:72k) and 2.5m SPOT Imagery (~1:288k to ~1:72k) for the world. + The map features 0.5m resolution imagery in the continental United States and + parts of Western Europe from Maxar. Additional Maxar sub-meter imagery is + featured in many parts of the world. In other parts of the world, imagery at + different resolutions has been contributed by the GIS User Community. In select + communities, very high resolution imagery (down to 0.03m) is available down to + ~1:280 scale. (Description from URL)]] } asset.onInitialize(function () @@ -12,3 +22,14 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "ESRI World Imagery", + Version = "1.0", + Description = [[Main web loaded map layer for Earth. This layer is hosted by ESRI.]], + Author = "ESRI", + URL = "https://www.arcgis.com/home/item.html?id=10df2279f9684e4a9f6a7f08febac2a9", + License = "Esri Master License Agreement", + Identifiers = "ESRI_World_Imagery" +} diff --git a/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/fallbacks/blue_marble.asset b/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/fallbacks/blue_marble.asset index 00a84bb426..59cbafb1cc 100644 --- a/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/fallbacks/blue_marble.asset +++ b/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/fallbacks/blue_marble.asset @@ -5,6 +5,19 @@ local layer = { Identifier = "Blue_Marble", Name = "Blue Marble", FilePath = texturesPath .. "/earth_bluemarble.jpg", + Description = [[ Earth image from Blue Marble Next Generation ]], } asset.export("layer", layer) + + +asset.meta = { + Name = "Blue Marble", + Version = "1.0", + Description = [[ Fallback layer for earth image if no internet is available. Contains + Blue Marble Next Generation ]], + Author = "OpenSpace Team", + URL = "https://visibleearth.nasa.gov/collection/1484/blue-marble", + License = "NASA", + Identifiers = "Blue_Marble" +} diff --git a/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/ghrsst_l4_g1sst_sea_surface_temperature_temporal.asset b/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/ghrsst_l4_g1sst_sea_surface_temperature_temporal.asset index f841f0e7c0..0e4d577f5e 100644 --- a/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/ghrsst_l4_g1sst_sea_surface_temperature_temporal.asset +++ b/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/ghrsst_l4_g1sst_sea_surface_temperature_temporal.asset @@ -1,17 +1,21 @@ local globeIdentifier = asset.require("./../../earth").Earth.Identifier local layer = { - Identifier = "GHRSST_L4_MUR_Sea_Surface_Temperature_Temporal", - Name = "GHRSST L4 MUR Sea Surface Temperature (Temporal)", + Identifier = "GHRSST_L4_G1SST_Sea_Surface_Temperature_Temporal", + Name = "GHRSST L4 G1SST Sea Surface Temperature (Temporal)", Type = "TemporalTileLayer", FilePath = openspace.globebrowsing.createTemporalGibsGdalXml( - "GHRSST_L4_MUR_Sea_Surface_Temperature", - "2002-06-01", - "Yesterday", + "GHRSST_L4_G1SST_Sea_Surface_Temperature", + "2010-06-21", + "2019-12-08", "1d", "1km", "png" - ) + ), + Description = [[ Temporal coverage: 21 June 2010 - 08 December 2019. The imagery + resolution is 1 km, and the temporal resolution is daily.]], + Author = "NASA EOSDIS Global Imagery Browse Services" + } asset.onInitialize(function () @@ -19,3 +23,16 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "GHRSST L4 MUR Sea Surface Temperature (Temporal)", + Version = "1.0", + Description = [[ GIBS hosted layer created with + openspace.globebrowsing.createTemporalGibsGdalXml ]], + Author = "NASA EOSDIS Global Imagery Browse Services", + URL = "https://earthdata.nasa.gov/eosdis/science-system-description/" .. + "eosdis-components/gibs", + License = "NASA", + Identifiers = "GHRSST_L4_G1SST_Sea_Surface_Temperature_Temporal" +} diff --git a/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/ghrsst_l4_mur_sea_surface_temperature_temporal.asset b/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/ghrsst_l4_mur_sea_surface_temperature_temporal.asset index b2d60321b3..c1e0ba9f84 100644 --- a/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/ghrsst_l4_mur_sea_surface_temperature_temporal.asset +++ b/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/ghrsst_l4_mur_sea_surface_temperature_temporal.asset @@ -1,17 +1,19 @@ local globeIdentifier = asset.require("./../../earth").Earth.Identifier local layer = { - Identifier = "Terra_Modis_Temporal", - Name = "Terra Modis (Temporal)", + Identifier = "GHRSST_L4_MUR_Sea_Surface_Temperature_Temporal", + Name = "GHRSST L4 MUR Sea Surface Temperature (Temporal)", Type = "TemporalTileLayer", FilePath = openspace.globebrowsing.createTemporalGibsGdalXml( - "MODIS_Terra_CorrectedReflectance_TrueColor", - "2000-02-24", + "GHRSST_L4_MUR_Sea_Surface_Temperature", + "2002-06-01", "Yesterday", "1d", - "250m", + "1km", "jpg" - ) + ), + Description = [[ Temporal coverage: 01 June 2002 - Present. The imagery resolution + is 1 km, and the temporal resolution is daily.]] } asset.onInitialize(function () @@ -19,3 +21,16 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "GHRSST L4 MUR Sea Surface Temperature (Temporal)", + Version = "1.0", + Description = [[ GIBS hosted layer created with + openspace.globebrowsing.createTemporalGibsGdalXml ]], + Author = "NASA EOSDIS Global Imagery Browse Services", + URL = "https://earthdata.nasa.gov/eosdis/science-system-description/".. + "eosdis-components/gibs", + License = "NASA", + Identifiers = "GHRSST_L4_MUR_Sea_Surface_Temperature_Temporal" +} diff --git a/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/modis_terra_chlorophyll_a_temporal.asset b/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/modis_terra_chlorophyll_a_temporal.asset index 4cf909831c..32cea1a7e7 100644 --- a/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/modis_terra_chlorophyll_a_temporal.asset +++ b/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/modis_terra_chlorophyll_a_temporal.asset @@ -11,7 +11,9 @@ local layer = { "1d", "1km", "png" - ) + ), + Description = [[ Temporal coverage: 02 July 2013 - Present. The imagery resolution + is 1 km, and the temporal resolution is daily.]] } asset.onInitialize(function () @@ -19,3 +21,16 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "MODIS Terra Chlorophyll A (Temporal)", + Version = "1.0", + Description = [[ GIBS hosted layer created with + openspace.globebrowsing.createTemporalGibsGdalXml ]], + Author = "NASA EOSDIS Global Imagery Browse Services", + URL = "https://earthdata.nasa.gov/eosdis/science-system-description/" .. + "eosdis-components/gibs", + License = "NASA", + Identifiers = "MODIS_Terra_Chlorophyll_A_Temporal" +} diff --git a/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/terra_modis_temporal.asset b/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/terra_modis_temporal.asset index b2d60321b3..b114f114b6 100644 --- a/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/terra_modis_temporal.asset +++ b/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/terra_modis_temporal.asset @@ -11,7 +11,9 @@ local layer = { "1d", "250m", "jpg" - ) + ), + Description = [[ Temporal coverage: 02 July 2013 - Present. The imagery resolution + is 1 km, and the temporal resolution is daily.]] } asset.onInitialize(function () @@ -19,3 +21,16 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Terra Modis (Temporal)", + Version = "1.0", + Description = [[ GIBS hosted layer created with + openspace.globebrowsing.createTemporalGibsGdalXml ]], + Author = "NASA EOSDIS Global Imagery Browse Services", + URL = "https://earthdata.nasa.gov/eosdis/science-system-description/".. + "eosdis-components/gibs", + License = "NASA", + Identifiers = "Terra_Modis_Temporal" +} diff --git a/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/viirs_snpp_temporal.asset b/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/viirs_snpp_temporal.asset index 19672b3e58..1a8982274f 100644 --- a/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/viirs_snpp_temporal.asset +++ b/data/assets/scene/solarsystem/planets/earth/layers/colorlayers/viirs_snpp_temporal.asset @@ -11,7 +11,9 @@ local layer = { "1d", "250m", "jpg" - ) + ), + Description = [[ Temporal coverage: 11 November 2015 - Present. The imagery resolution + is 0.25 km, and the temporal resolution is daily.]] } asset.onInitialize(function () @@ -19,3 +21,16 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "VIIRS SNPP (Temporal)", + Version = "1.0", + Description = [[ This layer has the best daily Earth Image. GIBS hosted layer created + with openspace.globebrowsing.createTemporalGibsGdalXml ]], + Author = "NASA EOSDIS Global Imagery Browse Services", + URL = "https://earthdata.nasa.gov/eosdis/science-system-description/" .. + "eosdis-components/gibs", + License = "NASA", + Identifiers = "VIIRS_SNPP_Temporal" +} diff --git a/data/assets/scene/solarsystem/planets/earth/layers/heightlayers/fallbacks/blue_marble_height.asset b/data/assets/scene/solarsystem/planets/earth/layers/heightlayers/fallbacks/blue_marble_height.asset index f9a4a10cc4..c896d37583 100644 --- a/data/assets/scene/solarsystem/planets/earth/layers/heightlayers/fallbacks/blue_marble_height.asset +++ b/data/assets/scene/solarsystem/planets/earth/layers/heightlayers/fallbacks/blue_marble_height.asset @@ -4,6 +4,19 @@ local layer = { Name = "Earth Bluemarble Height", Identifier = "Earth_Bluemarble_Height", FilePath = texturesPath .. "/earth_bluemarble_height.jpg", + Description = [[ Topographic layer from Blue Marble Next Generation]] } asset.export("layer", layer) + + +asset.meta = { + Name = "Earth Bluemarble Height", + Version = "1.0", + Description = [[ Fallback layer for earth height if no internet is available. Contains + Blue Marble Next Generation Topographic]], + Author = "NASA", + URL = "https://visibleearth.nasa.gov/collection/1484/blue-marble", + License = "NASA", + Identifiers = "Earth_Bluemarble_Height" +} diff --git a/data/assets/scene/solarsystem/planets/earth/layers/heightlayers/terrain_tileset.asset b/data/assets/scene/solarsystem/planets/earth/layers/heightlayers/terrain_tileset.asset index 79f374944c..19c40c9b84 100644 --- a/data/assets/scene/solarsystem/planets/earth/layers/heightlayers/terrain_tileset.asset +++ b/data/assets/scene/solarsystem/planets/earth/layers/heightlayers/terrain_tileset.asset @@ -8,7 +8,12 @@ local layer = { Name = "Terrain tileset", FilePath = mapServiceConfigsPath .. "/ESRI/Terrain.wms", TilePixelSize = 64, - Fallback = fallBackLayer + Fallback = fallBackLayer, + Description = [[This globe layer presents elevation data at approximately 90m or 1km + per pixel resolution for the world. The elevation data includes 90m Shuttle Radar + Topography Mission (SRTM) elevation data from NASA and National + Geospatial-Intelligence Agency (NGA) where it is available and 1km GTOPO30 + data from the USGS elsewhere. Vertical units are measured in meters.]], } asset.onInitialize(function () @@ -16,3 +21,15 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "World Elevation (3D)", + Version = "1.0", + Description = [[Main web loaded height layer for Earth. This layer is hosted by + ESRI.]], + Author = "ESRI", + URL = "https://www.arcgis.com/home/item.html?id=1b48cd3b6276416784fe90a68c580a89", + License = "Esri Master License Agreement", + Identifiers = "Terrain_tileset" +} diff --git a/data/assets/scene/solarsystem/planets/earth/layers/nightlayers/earth_at_night_2012.asset b/data/assets/scene/solarsystem/planets/earth/layers/nightlayers/earth_at_night_2012.asset index 277e9acf5a..659125449e 100644 --- a/data/assets/scene/solarsystem/planets/earth/layers/nightlayers/earth_at_night_2012.asset +++ b/data/assets/scene/solarsystem/planets/earth/layers/nightlayers/earth_at_night_2012.asset @@ -7,7 +7,9 @@ local layer = { Identifier = "Earth_at_Night_2012", Name = "Earth at Night 2012", FilePath = mapServiceConfigsPath .. "/GIBS/night/VIIRS_CityLights_2012.wms", - Fallback = fallBackLayer + Fallback = fallBackLayer, + Description = [[ The lights of cities and villages trace the outlines of civilization + in this global view. ]], } asset.onInitialize(function () @@ -15,3 +17,14 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Earth at Night 2012", + Version = "1.0", + Description = [[Main web loaded night layer for Earth. This layer is hosted by GIBS.]], + Author = "OpenSpace Team", + URL = "https://visibleearth.nasa.gov/images/79765/night-lights-2012-map", + License = "NASA", + Identifiers = "Earth_at_Night_2012" +} diff --git a/data/assets/scene/solarsystem/planets/earth/layers/nightlayers/earth_at_night_temporal.asset b/data/assets/scene/solarsystem/planets/earth/layers/nightlayers/earth_at_night_temporal.asset index fd3422c73e..8effe06be3 100644 --- a/data/assets/scene/solarsystem/planets/earth/layers/nightlayers/earth_at_night_temporal.asset +++ b/data/assets/scene/solarsystem/planets/earth/layers/nightlayers/earth_at_night_temporal.asset @@ -11,7 +11,25 @@ local layer = { "1d", "500m", "png" - ) + ), + Description = [[ The VIIRS Nighttime Imagery (Day/Night Band, Enhanced Near Constant + Contrast) layer shows the Earth's surface and atmosphere using a sensor designed + to capture low-light emission sources, under varying illumination conditions. It + is displayed as a grey-scale image. Sources of illumination include both natural + and anthropogenic sources of light emissions. Lunar reflection can be used to + highlight the location and features of clouds and other terrestrial features such + as sea ice and snow cover when there is partial to full moon conditions. When + there is no moonlight, natural and anthropogenic night time light emissions are + highlighted such as city lights, lightning, auroras, fires, gas flares, and + fishing fleets. This layer is useful for showing patterns of human activity and + energy behaviors such as cities and highways, the holiday periods, the tracking + of shipping and fishing fleets at night and, the burning of waste natural gas + (gas flares) from on and offshore oil/gas production sites.

The VIIRS + Nighttime Imagery (Day/Night Band, Enhanced Near Constant Contrast) layer is + available from the Visible Infrared Imaging Radiometer Suite (VIIRS) on the joint + NASA/NOAA Suomi National Polar orbiting Partnership (Suomi NPP) satellite. + The sensor resolution is 750 m at nadir, imagery resolution is 500 m, and the + temporal resolution is daily. (Description from NASA Worldview)]], } asset.onInitialize(function () @@ -19,3 +37,15 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Earth at Night (Temporal)", + Version = "1.0", + Description = [[Temporal layer for earth with daily night image. This layer is a GIBS + hosted layer created with openspace.globebrowsing.createTemporalGibsGdalXml ]], + Author = "OpenSpace Team", + URL = "https://worldview.earthdata.nasa.gov/?l=VIIRS_SNPP_DayNightBand_ENCC", + License = "NASA", + Identifiers = "Earth_at_Night_Temporal" +} diff --git a/data/assets/scene/solarsystem/planets/earth/layers/nightlayers/fallbacks/earth_night_texture.asset b/data/assets/scene/solarsystem/planets/earth/layers/nightlayers/fallbacks/earth_night_texture.asset index 7ccea6f59f..38b8a630fe 100644 --- a/data/assets/scene/solarsystem/planets/earth/layers/nightlayers/fallbacks/earth_night_texture.asset +++ b/data/assets/scene/solarsystem/planets/earth/layers/nightlayers/fallbacks/earth_night_texture.asset @@ -1,9 +1,21 @@ local texturesPath = asset.require("./../../../earth_textures").TexturesPath local layer = { - Identifier = "Earth_Night Texture", + Identifier = "Earth_Night_Texture", Name = "Earth Night Texture", FilePath = texturesPath .. "/earth_night.jpg", + Description = [[ Earth's city lights are clearly visible from space ]] } asset.export("layer", layer) + + +asset.meta = { + Name = "Blue Marble Night", + Version = "1.0", + Description = [[ Fallback layer for earth night image if no internet is available. ]], + Author = "OpenSpace Team", + URL = "https://visibleearth.nasa.gov/collection/1484/blue-marble", + License = "NASA", + Identifiers = "Earth_Night_Texture" +} diff --git a/data/assets/scene/solarsystem/planets/earth/markers.asset b/data/assets/scene/solarsystem/planets/earth/markers.asset index beeaa55e27..29e0dd8f73 100644 --- a/data/assets/scene/solarsystem/planets/earth/markers.asset +++ b/data/assets/scene/solarsystem/planets/earth/markers.asset @@ -22,6 +22,15 @@ local EarthMarker = { } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { EarthMarker }) + + +asset.meta = { + Name = "Earth marker", + Version = "1.0", + Description = [[ Earth marker with name, sized for Solar System view]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "EarthMarker" +} diff --git a/data/assets/scene/solarsystem/planets/earth/moon/default_layers.asset b/data/assets/scene/solarsystem/planets/earth/moon/default_layers.asset index a46e934e2b..956609cac7 100644 --- a/data/assets/scene/solarsystem/planets/earth/moon/default_layers.asset +++ b/data/assets/scene/solarsystem/planets/earth/moon/default_layers.asset @@ -22,6 +22,8 @@ asset.require(heightLayersPath .. "/loladem_sweden") -- Set enabled layers (temporary solution) -- @TODO: do this using a boolean that's passed to the 'asset.require' instead asset.onInitialize(function () - openspace.setPropertyValueSingle("Scene.Moon.Renderable.Layers.ColorLayers." .. colorLayer.layer.Identifier .. ".Enabled", true) - openspace.setPropertyValueSingle("Scene.Moon.Renderable.Layers.HeightLayers." .. heightLayer.layer.Identifier .. ".Enabled", true) + openspace.setPropertyValueSingle("Scene.Moon.Renderable.Layers.ColorLayers." .. + colorLayer.layer.Identifier .. ".Enabled", true) + openspace.setPropertyValueSingle("Scene.Moon.Renderable.Layers.HeightLayers." .. + heightLayer.layer.Identifier .. ".Enabled", true) end) diff --git a/data/assets/scene/solarsystem/planets/earth/moon/moon.asset b/data/assets/scene/solarsystem/planets/earth/moon/moon.asset index 3859cf2b28..b3daa4d330 100644 --- a/data/assets/scene/solarsystem/planets/earth/moon/moon.asset +++ b/data/assets/scene/solarsystem/planets/earth/moon/moon.asset @@ -3,7 +3,6 @@ local transforms = asset.require('scene/solarsystem/planets/earth/transforms') local sunAsset = asset.require('scene/solarsystem/sun/sun') local earthAsset = asset.require('../earth') asset.require('spice/base') -asset.require('./trail') local labelsPath = asset.require('./moon_labels').LabelsPath local Moon = { @@ -58,6 +57,15 @@ local Moon = { } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { Moon }) + + +asset.meta = { + Name = "Moon", + Version = "1.0", + Description = [[ Moon globe with labels. ]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "Moon" +} diff --git a/data/assets/scene/solarsystem/planets/earth/moon/moon_labels.asset b/data/assets/scene/solarsystem/planets/earth/moon/moon_labels.asset index ea360826f2..543fe45d03 100644 --- a/data/assets/scene/solarsystem/planets/earth/moon/moon_labels.asset +++ b/data/assets/scene/solarsystem/planets/earth/moon/moon_labels.asset @@ -4,4 +4,5 @@ local LabelsPath = asset.syncedResource({ Identifier = "moon_labels", Version = 1 }) -asset.export("LabelsPath", LabelsPath) \ No newline at end of file + +asset.export("LabelsPath", LabelsPath) diff --git a/data/assets/scene/solarsystem/planets/earth/moon/trail.asset b/data/assets/scene/solarsystem/planets/earth/moon/trail.asset index bd96ce84ac..e1e17c44dc 100644 --- a/data/assets/scene/solarsystem/planets/earth/moon/trail.asset +++ b/data/assets/scene/solarsystem/planets/earth/moon/trail.asset @@ -25,6 +25,16 @@ local MoonTrail = { } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { MoonTrail }) + + +asset.meta = { + Name = "Moon Trail", + Version = "1.0", + Description = [[ Moon Trail - This asset contains the trail of the Moon. + Data from NASA Spice (see base spice asset)]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "MoonTrail" +} diff --git a/data/assets/scene/solarsystem/planets/earth/satellites/misc/iss.asset b/data/assets/scene/solarsystem/planets/earth/satellites/misc/iss.asset index bfde270d5a..635c56d9f0 100644 --- a/data/assets/scene/solarsystem/planets/earth/satellites/misc/iss.asset +++ b/data/assets/scene/solarsystem/planets/earth/satellites/misc/iss.asset @@ -250,7 +250,35 @@ local initializeAndAddNodes = function() } } - table.insert(nodes, issTrail) + local IssLabel = { + Identifier = "IssLabel", + Parent = iss.Identifier, + + Renderable = { + Enabled = false, + Type = "RenderableLabels", + LabelText = "ISS", + FontSize = 100.0, + LabelSize = 3.4, + LabelMaxSize = 100.0, + LabelMinSize = 1.0, + LabelOrientationOption = "Camera View Direction", + BlendMode = "Additive", + EnableFading = true, + FadeStartUnit = "au", + FadeStartDistance = 0.15, + FadeStartSpeed = 1.0, + FadeEndUnit = "au", + FadeEndDistance = 15.0, + FadeEndSpeed = 25.0 + }, + Tag = { "solarsystem_labels" }, + GUI = { + Name = "ISS Label", + Path = "/Solar System/Planets/Earth/Satellites" + } +} + return { iss, parentNode, issTrail } end @@ -260,4 +288,23 @@ asset.onInitialize(function () openspace.addSceneGraphNode(node) end openspace.setPropertyValueSingle("Scene.ISSparentNode.Rotation.yAxis-InvertObject", true) + end) + +asset.onDeinitialize(function () + for i=1, #nodes do + openspace.removeSceneGraphNode(nodes[#nodes + 1 - i].Identifier) + end +end) + + + +asset.meta = { + Name = "ISS", + Version = "1.0", + Description = [[ Model and Trail for ISS. Model from NASA 3D models, trail from + CELESTRAK]], + Author = "OpenSpace Team", + URL = "https://celestrak.com/", + License = "NASA" +} diff --git a/data/assets/scene/solarsystem/planets/earth/satellites/satellites_all.asset b/data/assets/scene/solarsystem/planets/earth/satellites/satellites_all.asset index 312d2f2cfb..953bb149ec 100644 --- a/data/assets/scene/solarsystem/planets/earth/satellites/satellites_all.asset +++ b/data/assets/scene/solarsystem/planets/earth/satellites/satellites_all.asset @@ -6,3 +6,14 @@ asset.require('./satellites_misc') asset.require('./satellites_navigation') asset.require('./satellites_science') asset.require('./satellites_weather') + + +asset.meta = { + Name = "Satellites All", + Version = "1.0", + Description = [[ Meta asset for all satellites of Earth. Containing all other meta + assets.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/earth/satellites/satellites_communications.asset b/data/assets/scene/solarsystem/planets/earth/satellites/satellites_communications.asset index 872322c03c..6341917a7d 100644 --- a/data/assets/scene/solarsystem/planets/earth/satellites/satellites_communications.asset +++ b/data/assets/scene/solarsystem/planets/earth/satellites/satellites_communications.asset @@ -11,3 +11,15 @@ asset.require('./communications/other_comm') asset.require('./communications/gorizont') asset.require('./communications/raduga') asset.require('./communications/molniya') + + +asset.meta = { + Name = "Satellites Communications", + Version = "1.0", + Description = [[ Meta asset for communications satellites of Earth. Containing groups: + geostationary, intelsat, ses, iridium, iridium_next, orbcomm, globalstar, amateur, + experimental, other_comm, gorizont, raduga and molniya.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/earth/satellites/satellites_debris.asset b/data/assets/scene/solarsystem/planets/earth/satellites/satellites_debris.asset index 03feae1272..04f73ac275 100644 --- a/data/assets/scene/solarsystem/planets/earth/satellites/satellites_debris.asset +++ b/data/assets/scene/solarsystem/planets/earth/satellites/satellites_debris.asset @@ -3,3 +3,15 @@ asset.require('./debris/debris_breezem') asset.require('./debris/debris_fengyun') asset.require('./debris/debris_iridium33') asset.require('./debris/debris_kosmos2251') + + +asset.meta = { + Name = "Satellites Debris", + Version = "1.0", + Description = [[ Meta asset for space debris of Earth. Containing groups: + debris_asat, debris_breezem, debris_fengyun, debris_iridium33, and + debris_kosmos2251.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/earth/satellites/satellites_interesting.asset b/data/assets/scene/solarsystem/planets/earth/satellites/satellites_interesting.asset index 71151f4358..e5ae453077 100644 --- a/data/assets/scene/solarsystem/planets/earth/satellites/satellites_interesting.asset +++ b/data/assets/scene/solarsystem/planets/earth/satellites/satellites_interesting.asset @@ -4,3 +4,14 @@ asset.require('./navigation/gps') asset.require('./misc/spacestations') asset.require('./misc/iss') asset.require('./misc/tle-new') + + +asset.meta = { + Name = "Satellites Interesting", + Version = "1.0", + Description = [[ Meta asset for interesting satellites of Earth. Containing groups: + brightest, geostationary, gps, spacestations, iss, and tle-new.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/earth/satellites/satellites_misc.asset b/data/assets/scene/solarsystem/planets/earth/satellites/satellites_misc.asset index bd4c0d88b9..e44d1b4c6b 100644 --- a/data/assets/scene/solarsystem/planets/earth/satellites/satellites_misc.asset +++ b/data/assets/scene/solarsystem/planets/earth/satellites/satellites_misc.asset @@ -2,3 +2,14 @@ asset.require('./misc/military') asset.require('./misc/radar') asset.require('./misc/cubesats') asset.require('./misc/other') + + +asset.meta = { + Name = "Satellites Misc", + Version = "1.0", + Description = [[ Meta asset for misc satellites of Earth. Containing groups: + military, radar, cubesats, and other.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/earth/satellites/satellites_navigation.asset b/data/assets/scene/solarsystem/planets/earth/satellites/satellites_navigation.asset index 6765ad4118..4ba584613d 100644 --- a/data/assets/scene/solarsystem/planets/earth/satellites/satellites_navigation.asset +++ b/data/assets/scene/solarsystem/planets/earth/satellites/satellites_navigation.asset @@ -5,3 +5,14 @@ asset.require('./navigation/gps') asset.require('./navigation/musson') asset.require('./navigation/nnss') asset.require('./navigation/sbas') + + +asset.meta = { + Name = "Satellites Navigation", + Version = "1.0", + Description = [[ Meta asset for navigation satellites of Earth. Containing groups: + beidou, galileo, glosnass, gps, musson, nnss, and sbas.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/earth/satellites/satellites_science.asset b/data/assets/scene/solarsystem/planets/earth/satellites/satellites_science.asset index cb1ecee8e3..b4fcc359c9 100644 --- a/data/assets/scene/solarsystem/planets/earth/satellites/satellites_science.asset +++ b/data/assets/scene/solarsystem/planets/earth/satellites/satellites_science.asset @@ -2,3 +2,14 @@ asset.require('./science/spaceearth') asset.require('./science/geodetic') asset.require('./science/engineering') asset.require('./science/education') + + +asset.meta = { + Name = "Satellites Science", + Version = "1.0", + Description = [[ Meta asset for science satellites of Earth. Containing groups: + spaceearth, geodetic, engineering, and education.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/earth/satellites/satellites_weather.asset b/data/assets/scene/solarsystem/planets/earth/satellites/satellites_weather.asset index fe272e6816..e3177c98b2 100644 --- a/data/assets/scene/solarsystem/planets/earth/satellites/satellites_weather.asset +++ b/data/assets/scene/solarsystem/planets/earth/satellites/satellites_weather.asset @@ -8,3 +8,14 @@ asset.require('./weather/sarsat') asset.require('./weather/spire') asset.require('./weather/tdrss') asset.require('./weather/weather') + + +asset.meta = { + Name = "Satellites Weather", + Version = "1.0", + Description = [[ Meta asset for weather satellites of Earth. Containing groups: argos, + dmc, earth_resources, geos, noaa, planet, sarsat, spire, tdrss, and weather.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/earth/satellites/weather/aqua.asset b/data/assets/scene/solarsystem/planets/earth/satellites/weather/aqua.asset new file mode 100644 index 0000000000..9d2587e1fd --- /dev/null +++ b/data/assets/scene/solarsystem/planets/earth/satellites/weather/aqua.asset @@ -0,0 +1,121 @@ +local assetHelper = asset.require('util/asset_helper') +local satelliteHelper = asset.require('util/tle_helper') +local transforms = asset.require('scene/solarsystem/planets/earth/transforms') +local sunTransforms = asset.require('scene/solarsystem/sun/transforms') + +local url = "https://celestrak.com/satcat/tle.php?CATNR=27424" +local identifier = "Aqua" +local filename = "Aqua.txt" +local nodes = {} +local tle = satelliteHelper.downloadTLEFile(asset, url, identifier, filename) + + +asset.onInitialize(function () + + local lineElement = satelliteHelper.makeSingleLineElement(tle, filename) + local period = satelliteHelper.getPeriodFromElement(lineElement) + local path = tle .. "/" .. filename + + local Aqua = { + Identifier = "Aqua", + Parent = transforms.EarthInertial.Identifier, + BoundingSphere = 30, + Transform = { + Translation = { + Type = "TLETranslation", + Body = identifier, + Observer = transforms.EarthInertial.Identifier, + File = path, + LineNumber = 1 + }, + Rotation = { + Type = "SpiceRotation", + SourceFrame = "GALACTIC", + DestinationFrame = "J2000", + } + }, + Tag = { "earth_satellite", "Aqua" }, + GUI = { + Path = "/Solar System/Planets/Earth/Satellites/Aqua" + } + } + + local AquaTrail = { + Identifier = identifier .. "_trail", + Parent = transforms.EarthInertial.Identifier, + Renderable = { + Type = "RenderableTrailOrbit", + Translation = { + Type = "TLETranslation", + Body = identifier, + Observer = transforms.EarthInertial.Identifier, + File = path, + LineNumber = 1, + RenderBinMode = "PostDeferredTransparent" + }, + Color = { 0.9, 0.6715, 0.0 }, + Fade = 1.5, + Period = period, + Resolution = 320 + }, + Tag = { "earth_satellite", "Aqua" }, + GUI = { + Name = "Terra Trail", + Path = "/Solar System/Planets/Earth/Satellites/Aqua" + } + } + + local AquaLabel = { + Identifier = "AquaLabel", + Parent = Aqua.Identifier, + + Renderable = { + Enabled = false, + Type = "RenderableLabels", + LabelText = "SNPP", + FontSize = 100.0, + LabelSize = 4.0, + LabelMaxSize = 100.0, + LabelMinSize = 1.0, + LabelOrientationOption = "Camera View Direction", + BlendMode = "Additive", + EnableFading = true, + FadeStartUnit = "au", + FadeStartDistance = 0.15, + FadeStartSpeed = 1.0, + FadeEndUnit = "au", + FadeEndDistance = 15.0, + FadeEndSpeed = 25.0 + }, + Tag = { "solarsystem_labels" }, + GUI = { + Name = "Aqua Label", + Path = "/Solar System/Planets/Earth" + } + } + + table.insert(nodes, Aqua) + table.insert(nodes, AquaTrail) + table.insert(nodes, AquaLabel) + for _, node in ipairs(nodes) do + openspace.addSceneGraphNode(node) + end + +end) + +asset.onDeinitialize(function () + for _, node in ipairs(nodes) do + openspace.removeSceneGraphNode(node) + end +end) + + +asset.meta = { + Name = "Aqua", + Version = "1.0", + Description = [[ Trail for Aqua. trail from + CELESTRAK. Can be used in conjuntion with Aqua Modis (Temporal) layer for Earth]], + Author = "OpenSpace Team", + URL = "https://celestrak.com/", + License = "NASA" +} diff --git a/data/assets/scene/solarsystem/planets/earth/satellites/weather/snpp.asset b/data/assets/scene/solarsystem/planets/earth/satellites/weather/snpp.asset new file mode 100644 index 0000000000..ff812053a1 --- /dev/null +++ b/data/assets/scene/solarsystem/planets/earth/satellites/weather/snpp.asset @@ -0,0 +1,123 @@ +local assetHelper = asset.require('util/asset_helper') +local satelliteHelper = asset.require('util/tle_helper') +local transforms = asset.require('scene/solarsystem/planets/earth/transforms') +local sunTransforms = asset.require('scene/solarsystem/sun/transforms') + +local url = "https://celestrak.com/satcat/tle.php?CATNR=37849" +local identifier = "SNPP" +local filename = "SNPP.txt" +local nodes = {} +local tle = satelliteHelper.downloadTLEFile(asset, url, identifier, filename) + + +asset.onInitialize(function () + + local lineElement = satelliteHelper.makeSingleLineElement(tle, filename) + local period = satelliteHelper.getPeriodFromElement(lineElement) + local path = tle .. "/" .. filename + + local SNPP = { + Identifier = "SNPP", + Parent = transforms.EarthInertial.Identifier, + BoundingSphere = 30, + Transform = { + Translation = { + Type = "TLETranslation", + Body = identifier, + Observer = transforms.EarthInertial.Identifier, + File = path, + LineNumber = 1 + }, + Rotation = { + Type = "SpiceRotation", + SourceFrame = "GALACTIC", + DestinationFrame = "J2000", + } + }, + Tag = { "earth_satellite", "SNPP" }, + GUI = { + Path = "/Solar System/Planets/Earth/Satellites/SNPP" + } + } + + + local SNPPTrail = { + Identifier = identifier .. "_trail", + Parent = transforms.EarthInertial.Identifier, + Renderable = { + Type = "RenderableTrailOrbit", + Translation = { + Type = "TLETranslation", + Body = identifier, + Observer = transforms.EarthInertial.Identifier, + File = path, + LineNumber = 1, + RenderBinMode = "PostDeferredTransparent" + }, + Color = { 0.9, 0.6715, 0.0 }, + Fade = 1.5, + Period = period, + Resolution = 320 + }, + Tag = { "earth_satellite", "SNPP" }, + GUI = { + Name = "SNPP Trail", + Path = "/Solar System/Planets/Earth/Satellites/SNPP" + } + } + + local SNPPLabel = { + Identifier = "SNPPLabel", + Parent = SNPP.Identifier, + + Renderable = { + Enabled = false, + Type = "RenderableLabels", + LabelText = "SNPP", + FontSize = 100.0, + LabelSize = 4.0, + LabelMaxSize = 100.0, + LabelMinSize = 1.0, + LabelOrientationOption = "Camera View Direction", + BlendMode = "Additive", + EnableFading = true, + FadeStartUnit = "au", + FadeStartDistance = 0.15, + FadeStartSpeed = 1.0, + FadeEndUnit = "au", + FadeEndDistance = 15.0, + FadeEndSpeed = 25.0 + }, + Tag = { "solarsystem_labels" }, + GUI = { + Name = "SNPP Label", + Path = "/Solar System/Planets/Earth" + } + } + + table.insert(nodes, SNPP) + table.insert(nodes, SNPPTrail) + table.insert(nodes, SNPPLabel) + for _, node in ipairs(nodes) do + openspace.addSceneGraphNode(node) + end + +end) + + +asset.onDeinitialize(function () + for _, node in ipairs(nodes) do + openspace.removeSceneGraphNode(node) + end +end) + + +asset.meta = { + Name = "SNPP", + Version = "1.0", + Description = [[ Trail for SNPP. trail from + CELESTRAK. Can be used in conjunction with VIIRS SNPP (Temporal) layer for Earth.]], + Author = "OpenSpace Team", + URL = "https://celestrak.com/", + License = "NASA" +} diff --git a/data/assets/scene/solarsystem/planets/earth/satellites/weather/terra.asset b/data/assets/scene/solarsystem/planets/earth/satellites/weather/terra.asset new file mode 100644 index 0000000000..0cdae52344 --- /dev/null +++ b/data/assets/scene/solarsystem/planets/earth/satellites/weather/terra.asset @@ -0,0 +1,122 @@ +local assetHelper = asset.require('util/asset_helper') +local satelliteHelper = asset.require('util/tle_helper') +local transforms = asset.require('scene/solarsystem/planets/earth/transforms') +local sunTransforms = asset.require('scene/solarsystem/sun/transforms') + +local url = "https://celestrak.com/satcat/tle.php?CATNR=25994" +local identifier = "Terra" +local filename = "Terra.txt" +local nodes = {} +local tle = satelliteHelper.downloadTLEFile(asset, url, identifier, filename) + + +asset.onInitialize(function () + + local lineElement = satelliteHelper.makeSingleLineElement(tle, filename) + local period = satelliteHelper.getPeriodFromElement(lineElement) + local path = tle .. "/" .. filename + + local Terra = { + Identifier = "Terra", + Parent = transforms.EarthInertial.Identifier, + BoundingSphere = 30, + Transform = { + Translation = { + Type = "TLETranslation", + Body = identifier, + Observer = transforms.EarthInertial.Identifier, + File = path, + LineNumber = 1 + }, + Rotation = { + Type = "SpiceRotation", + SourceFrame = "GALACTIC", + DestinationFrame = "J2000", + } + }, + Tag = { "earth_satellite", "Terra" }, + GUI = { + Path = "/Solar System/Planets/Earth/Satellites/Terra" + } + } + + + local TerraTrail = { + Identifier = identifier .. "_trail", + Parent = transforms.EarthInertial.Identifier, + Renderable = { + Type = "RenderableTrailOrbit", + Translation = { + Type = "TLETranslation", + Body = identifier, + Observer = transforms.EarthInertial.Identifier, + File = path, + LineNumber = 1, + RenderBinMode = "PostDeferredTransparent" + }, + Color = { 0.9, 0.6715, 0.0 }, + Fade = 1.5, + Period = period, + Resolution = 320 + }, + Tag = { "earth_satellite", "Terra" }, + GUI = { + Name = "Terra Trail", + Path = "/Solar System/Planets/Earth/Satellites/Terra" + } + } + + local TerraLabel = { + Identifier = "TerraLabel", + Parent = Terra.Identifier, + + Renderable = { + Enabled = false, + Type = "RenderableLabels", + LabelText = "SNPP", + FontSize = 100.0, + LabelSize = 4.0, + LabelMaxSize = 100.0, + LabelMinSize = 1.0, + LabelOrientationOption = "Camera View Direction", + BlendMode = "Additive", + EnableFading = true, + FadeStartUnit = "au", + FadeStartDistance = 0.15, + FadeStartSpeed = 1.0, + FadeEndUnit = "au", + FadeEndDistance = 15.0, + FadeEndSpeed = 25.0 + }, + Tag = { "solarsystem_labels" }, + GUI = { + Name = "Terra Label", + Path = "/Solar System/Planets/Earth" + } + } + + table.insert(nodes, Terra) + table.insert(nodes, TerraTrail) + table.insert(nodes, TerraLabel) + for _, node in ipairs(nodes) do + openspace.addSceneGraphNode(node) + end + +end) + +asset.onDeinitialize(function () + for _, node in ipairs(nodes) do + openspace.removeSceneGraphNode(node) + end +end) + + +asset.meta = { + Name = "Terra", + Version = "1.0", + Description = [[ Trail for Terra. trail from + CELESTRAK. Can be used in conjuntion with Terra Modis (Temporal) layer for Earth]], + Author = "OpenSpace Team", + URL = "https://celestrak.com/", + License = "NASA" +} diff --git a/data/assets/scene/solarsystem/planets/earth/trail.asset b/data/assets/scene/solarsystem/planets/earth/trail.asset index 7abe222003..f750fa6103 100644 --- a/data/assets/scene/solarsystem/planets/earth/trail.asset +++ b/data/assets/scene/solarsystem/planets/earth/trail.asset @@ -25,6 +25,16 @@ local EarthTrail = { } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { EarthTrail }) + + +asset.meta = { + Name = "Earth Trail", + Version = "1.0", + Description = [[ Trail of Earth as observed by the Sun. Data from NASA Spice (see + base spice asset)]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "EarthTrail" +} diff --git a/data/assets/scene/solarsystem/planets/earth/transforms.asset b/data/assets/scene/solarsystem/planets/earth/transforms.asset index c0052befb6..067bce9c88 100644 --- a/data/assets/scene/solarsystem/planets/earth/transforms.asset +++ b/data/assets/scene/solarsystem/planets/earth/transforms.asset @@ -79,3 +79,15 @@ assetHelper.registerSceneGraphNodesAndExport(asset, { EarthInertial, EarthIAU }) + + +asset.meta = { + Name = "Earth Transforms", + Version = "1.0", + Description = [[ Earth transforms: Earth Barycenter, Earth Center, Earth Inertial, + Earth IAU. A scene graph node is created for each transform.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "EarthBarycenter,EarthCenter,EarthInertial,EarthIAU" +} diff --git a/data/assets/scene/solarsystem/planets/jupiter/callisto/callisto.asset b/data/assets/scene/solarsystem/planets/jupiter/callisto/callisto.asset index cf1828b9de..254e335c2e 100644 --- a/data/assets/scene/solarsystem/planets/jupiter/callisto/callisto.asset +++ b/data/assets/scene/solarsystem/planets/jupiter/callisto/callisto.asset @@ -50,6 +50,15 @@ local Callisto = { } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { Callisto }) + + +asset.meta = { + Name = "Callisto", + Version = "1.0", + Description = [[ Callisto globe with labels.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "Callisto" +} diff --git a/data/assets/scene/solarsystem/planets/jupiter/callisto/default_layers.asset b/data/assets/scene/solarsystem/planets/jupiter/callisto/default_layers.asset index 0ebb18faa8..3a25007312 100644 --- a/data/assets/scene/solarsystem/planets/jupiter/callisto/default_layers.asset +++ b/data/assets/scene/solarsystem/planets/jupiter/callisto/default_layers.asset @@ -5,5 +5,16 @@ local colorLayer = asset.require(colorLayersPath .. "/callisto_texture") -- Set enabled layers (temporary solution) -- @TODO: do this using a boolean that's passed to the 'asset.require' instead asset.onInitialize(function () - openspace.setPropertyValueSingle("Scene.Callisto.Renderable.Layers.ColorLayers." .. colorLayer.layer.Identifier .. ".Enabled", true) + openspace.setPropertyValueSingle("Scene.Callisto.Renderable.Layers.ColorLayers." .. + colorLayer.layer.Identifier .. ".Enabled", true) end) + + +asset.meta = { + Name = "Default Callisto Layers", + Version = "1.0", + Description = [[ Default Callisto layers are: Callisto Texture]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/jupiter/callisto/layers/colorlayers/callisto_texture.asset b/data/assets/scene/solarsystem/planets/jupiter/callisto/layers/colorlayers/callisto_texture.asset index 39cd2108e8..e65a91c782 100644 --- a/data/assets/scene/solarsystem/planets/jupiter/callisto/layers/colorlayers/callisto_texture.asset +++ b/data/assets/scene/solarsystem/planets/jupiter/callisto/layers/colorlayers/callisto_texture.asset @@ -11,3 +11,13 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Callisto Texutre", + Version = "1.0", + Description = [[ Default jpg texture for Callisto]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", +} diff --git a/data/assets/scene/solarsystem/planets/jupiter/callisto/trail.asset b/data/assets/scene/solarsystem/planets/jupiter/callisto/trail.asset index f3dccc4bb8..8a6b20b932 100644 --- a/data/assets/scene/solarsystem/planets/jupiter/callisto/trail.asset +++ b/data/assets/scene/solarsystem/planets/jupiter/callisto/trail.asset @@ -27,6 +27,16 @@ local CallistoTrail = { } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { CallistoTrail }) + + +asset.meta = { + Name = "Callisto Trail", + Version = "1.0", + Description = [[ Trail of Callisto as observed by the Jupiter. Data from NASA Spice + (see base spice asset)]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "CallistoTrail" +} diff --git a/data/assets/scene/solarsystem/planets/jupiter/default_layers.asset b/data/assets/scene/solarsystem/planets/jupiter/default_layers.asset index e9fa9b0e32..90e28e7615 100644 --- a/data/assets/scene/solarsystem/planets/jupiter/default_layers.asset +++ b/data/assets/scene/solarsystem/planets/jupiter/default_layers.asset @@ -5,5 +5,16 @@ local colorLayer = asset.require(colorLayersPath .. "/jupiter_texture") -- Set enabled layers (temporary solution) -- @TODO: do this using a boolean that's passed to the 'asset.require' instead asset.onInitialize(function () - openspace.setPropertyValueSingle("Scene.Jupiter.Renderable.Layers.ColorLayers." .. colorLayer.layer.Identifier .. ".Enabled", true) + openspace.setPropertyValueSingle("Scene.Jupiter.Renderable.Layers.ColorLayers." .. + colorLayer.layer.Identifier .. ".Enabled", true) end) + + +asset.meta = { + Name = "Default Jupiter Layers", + Version = "1.0", + Description = [[ Default Jupiter layers are: Jupiter Texture]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/jupiter/europa/default_layers.asset b/data/assets/scene/solarsystem/planets/jupiter/europa/default_layers.asset index e817bafb21..fb98ba0847 100644 --- a/data/assets/scene/solarsystem/planets/jupiter/europa/default_layers.asset +++ b/data/assets/scene/solarsystem/planets/jupiter/europa/default_layers.asset @@ -6,5 +6,16 @@ local colorLayer = asset.require(colorLayersPath .. "/voyager_global_mosaic") -- Set enabled layers (temporary solution) -- @TODO: do this using a boolean that's passed to the 'asset.require' instead asset.onInitialize(function () - openspace.setPropertyValueSingle("Scene.Europa.Renderable.Layers.ColorLayers." .. colorLayer.layer.Identifier .. ".Enabled", true) + openspace.setPropertyValueSingle("Scene.Europa.Renderable.Layers.ColorLayers." .. + colorLayer.layer.Identifier .. ".Enabled", true) end) + + +asset.meta = { + Name = "Default Europa Layers", + Version = "1.0", + Description = [[ Default Europa layers are: Europa Texture]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/jupiter/europa/europa.asset b/data/assets/scene/solarsystem/planets/jupiter/europa/europa.asset index 8e296655a5..866fe6d973 100644 --- a/data/assets/scene/solarsystem/planets/jupiter/europa/europa.asset +++ b/data/assets/scene/solarsystem/planets/jupiter/europa/europa.asset @@ -50,6 +50,15 @@ local Europa = { } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { Europa }) + + +asset.meta = { + Name = "Mimas", + Version = "1.0", + Description = [[ Europa globe with labels.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "Europa" +} diff --git a/data/assets/scene/solarsystem/planets/jupiter/europa/layers/colorlayers/europa_texture.asset b/data/assets/scene/solarsystem/planets/jupiter/europa/layers/colorlayers/europa_texture.asset index dce37ba260..45c9eedce5 100644 --- a/data/assets/scene/solarsystem/planets/jupiter/europa/layers/colorlayers/europa_texture.asset +++ b/data/assets/scene/solarsystem/planets/jupiter/europa/layers/colorlayers/europa_texture.asset @@ -11,3 +11,13 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Europa Texutre", + Version = "1.0", + Description = [[ Default jpg texture for Europa]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/jupiter/europa/layers/colorlayers/voyager_global_mosaic.asset b/data/assets/scene/solarsystem/planets/jupiter/europa/layers/colorlayers/voyager_global_mosaic.asset index da00b65927..30de152eb3 100644 --- a/data/assets/scene/solarsystem/planets/jupiter/europa/layers/colorlayers/voyager_global_mosaic.asset +++ b/data/assets/scene/solarsystem/planets/jupiter/europa/layers/colorlayers/voyager_global_mosaic.asset @@ -13,3 +13,23 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Voyager Global Mosaic", + Version = "1.0", + Description = [[ Europa Voyager - Galileo SSI Global Mosaic 500m v2. This global map + base of Europa utilizes the best image quality and moderate resolution coverage + supplied by the Galileo SSI (Solid-State Imaging) instrument and Voyager 1 and 2. + The image data was selected on the basis of overall image quality, reasonable + input resolution (from 20 km/pixel for gap fill to as high as 200 meters per + pixel[m]), and availability of moderate viewing and sun angles for topography. + The map projections are based on a sphere having a radius of 1,562.09 kilometers. + A Simple Cylindrical projection was used at a resolution of 500 m. (Description + from URL)]], + Author = "USGS", + URL = "https://astrogeology.usgs.gov/search/map/Europa/Voyager-Galileo/" .. + "Europa_Voyager_GalileoSSI_global_mosaic_500m", + License = "NASA/PDS", + Identifiers = "Voyager_Global_Mosaic" +} diff --git a/data/assets/scene/solarsystem/planets/jupiter/europa/trail.asset b/data/assets/scene/solarsystem/planets/jupiter/europa/trail.asset index 63adced944..b046be6929 100644 --- a/data/assets/scene/solarsystem/planets/jupiter/europa/trail.asset +++ b/data/assets/scene/solarsystem/planets/jupiter/europa/trail.asset @@ -27,6 +27,16 @@ local EuropaTrail = { } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { EuropaTrail }) + + +asset.meta = { + Name = "Europa Trail", + Version = "1.0", + Description = [[ Trail of Europa as observed by the Jupiter. Data from NASA Spice (see + base spice asset)]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "EuropaTrail" +} diff --git a/data/assets/scene/solarsystem/planets/jupiter/ganymede/default_layers.asset b/data/assets/scene/solarsystem/planets/jupiter/ganymede/default_layers.asset index 5bb823b9a8..28575c7e7c 100644 --- a/data/assets/scene/solarsystem/planets/jupiter/ganymede/default_layers.asset +++ b/data/assets/scene/solarsystem/planets/jupiter/ganymede/default_layers.asset @@ -5,5 +5,16 @@ local colorLayer = asset.require(colorLayersPath .. "/ganymede_texture") -- Set enabled layers (temporary solution) -- @TODO: do this using a boolean that's passed to the 'asset.require' instead asset.onInitialize(function () - openspace.setPropertyValueSingle("Scene.Ganymede.Renderable.Layers.ColorLayers." .. colorLayer.layer.Identifier .. ".Enabled", true) + openspace.setPropertyValueSingle("Scene.Ganymede.Renderable.Layers.ColorLayers." .. + colorLayer.layer.Identifier .. ".Enabled", true) end) + + +asset.meta = { + Name = "Default Ganymede Layers", + Version = "1.0", + Description = [[ Default Ganymede layers are: Ganymede Texture]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/jupiter/ganymede/ganymede.asset b/data/assets/scene/solarsystem/planets/jupiter/ganymede/ganymede.asset index 530745e4b7..265bd4b4fa 100644 --- a/data/assets/scene/solarsystem/planets/jupiter/ganymede/ganymede.asset +++ b/data/assets/scene/solarsystem/planets/jupiter/ganymede/ganymede.asset @@ -50,6 +50,15 @@ local Ganymede = { } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { Ganymede }) + + +asset.meta = { + Name = "Ganymede", + Version = "1.0", + Description = [[ Ganymede globe with labels.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "Ganymede" +} diff --git a/data/assets/scene/solarsystem/planets/jupiter/ganymede/layers/colorlayers/ganymede_texture.asset b/data/assets/scene/solarsystem/planets/jupiter/ganymede/layers/colorlayers/ganymede_texture.asset index 8da0ba37ea..dbd3d147ec 100644 --- a/data/assets/scene/solarsystem/planets/jupiter/ganymede/layers/colorlayers/ganymede_texture.asset +++ b/data/assets/scene/solarsystem/planets/jupiter/ganymede/layers/colorlayers/ganymede_texture.asset @@ -11,3 +11,13 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Ganymede Texutre", + Version = "1.0", + Description = [[ Default jpg texture for Ganymede]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/jupiter/ganymede/trail.asset b/data/assets/scene/solarsystem/planets/jupiter/ganymede/trail.asset index 3dfb4913d9..ffd26252e8 100644 --- a/data/assets/scene/solarsystem/planets/jupiter/ganymede/trail.asset +++ b/data/assets/scene/solarsystem/planets/jupiter/ganymede/trail.asset @@ -27,6 +27,16 @@ local GanymedeTrail = { } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { GanymedeTrail }) + + +asset.meta = { + Name = "Ganymede Trail", + Version = "1.0", + Description = [[ Trail of Ganymede as observed by the Jupiter. Data from NASA Spice + (see base spice asset)]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "GanymedeTrail" +} diff --git a/data/assets/scene/solarsystem/planets/jupiter/io/default_layers.asset b/data/assets/scene/solarsystem/planets/jupiter/io/default_layers.asset index e77dce099f..88ea13de9c 100644 --- a/data/assets/scene/solarsystem/planets/jupiter/io/default_layers.asset +++ b/data/assets/scene/solarsystem/planets/jupiter/io/default_layers.asset @@ -5,5 +5,16 @@ local colorLayer = asset.require(colorLayersPath .. "/io_texture") -- Set enabled layers (temporary solution) -- @TODO: do this using a boolean that's passed to the 'asset.require' instead asset.onInitialize(function () - openspace.setPropertyValueSingle("Scene.Io.Renderable.Layers.ColorLayers." .. colorLayer.layer.Identifier .. ".Enabled", true) + openspace.setPropertyValueSingle("Scene.Io.Renderable.Layers.ColorLayers." .. + colorLayer.layer.Identifier .. ".Enabled", true) end) + + +asset.meta = { + Name = "Default Io Layers", + Version = "1.0", + Description = [[ Default Io layers are: Io Texture]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/jupiter/io/io.asset b/data/assets/scene/solarsystem/planets/jupiter/io/io.asset index 55ecb7a35b..43f6786cc6 100644 --- a/data/assets/scene/solarsystem/planets/jupiter/io/io.asset +++ b/data/assets/scene/solarsystem/planets/jupiter/io/io.asset @@ -50,6 +50,15 @@ local Io = { } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { Io }) + + +asset.meta = { + Name = "Io", + Version = "1.0", + Description = [[ Io globe with labels.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "Io" +} diff --git a/data/assets/scene/solarsystem/planets/jupiter/io/layers/colorlayers/io_texture.asset b/data/assets/scene/solarsystem/planets/jupiter/io/layers/colorlayers/io_texture.asset index 26afb6b399..efa39f0b3d 100644 --- a/data/assets/scene/solarsystem/planets/jupiter/io/layers/colorlayers/io_texture.asset +++ b/data/assets/scene/solarsystem/planets/jupiter/io/layers/colorlayers/io_texture.asset @@ -11,3 +11,13 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Io Texutre", + Version = "1.0", + Description = [[ Default jpg texture for Io]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/jupiter/io/trail.asset b/data/assets/scene/solarsystem/planets/jupiter/io/trail.asset index 75fd312b91..9752f31aa7 100644 --- a/data/assets/scene/solarsystem/planets/jupiter/io/trail.asset +++ b/data/assets/scene/solarsystem/planets/jupiter/io/trail.asset @@ -27,6 +27,16 @@ local IoTrail = { } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { IoTrail }) + + +asset.meta = { + Name = "Io Trail", + Version = "1.0", + Description = [[ Trail of Io as observed by the Jupiter. Data from NASA Spice (see + base spice asset)]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "IoTrail" +} diff --git a/data/assets/scene/solarsystem/planets/jupiter/jupiter.asset b/data/assets/scene/solarsystem/planets/jupiter/jupiter.asset index a581d7f1c0..824c99a8c9 100644 --- a/data/assets/scene/solarsystem/planets/jupiter/jupiter.asset +++ b/data/assets/scene/solarsystem/planets/jupiter/jupiter.asset @@ -47,3 +47,14 @@ local JupiterLabel = { } assetHelper.registerSceneGraphNodesAndExport(asset, { Jupiter, JupiterLabel }) + + +asset.meta = { + Name = "Jupiter", + Version = "1.0", + Description = [[ Jupiter globe, and main planet label.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "Jupiter,JupiterLabel" +} diff --git a/data/assets/scene/solarsystem/planets/jupiter/kernels.asset b/data/assets/scene/solarsystem/planets/jupiter/kernels.asset index cbceefcfc2..d6346db64d 100644 --- a/data/assets/scene/solarsystem/planets/jupiter/kernels.asset +++ b/data/assets/scene/solarsystem/planets/jupiter/kernels.asset @@ -7,3 +7,13 @@ local Kernels = asset.syncedResource({ asset.export("jup310", Kernels .. '/jup310.bsp') asset.export("jup341", Kernels .. '/jup341.bsp') + + +asset.meta = { + Name = "Jupiter Spice Kernels", + Version = "1.0", + Description = [[ Generic SPICE kernels for Jupiter.]], + Author = "OpenSpace Team", + URL = "https://naif.jpl.nasa.gov/pub/naif/pds/wgc/kernels/spk/", + License = "NASA" +} diff --git a/data/assets/scene/solarsystem/planets/jupiter/layers/colorlayers/jupiter_texture.asset b/data/assets/scene/solarsystem/planets/jupiter/layers/colorlayers/jupiter_texture.asset index 8273c454c6..395196807a 100644 --- a/data/assets/scene/solarsystem/planets/jupiter/layers/colorlayers/jupiter_texture.asset +++ b/data/assets/scene/solarsystem/planets/jupiter/layers/colorlayers/jupiter_texture.asset @@ -11,3 +11,13 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Jupiter Texutre", + Version = "1.0", + Description = [[ Default jpg texture for Jupiter]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/jupiter/major_moons.asset b/data/assets/scene/solarsystem/planets/jupiter/major_moons.asset index 3c11019a0b..693a481429 100644 --- a/data/assets/scene/solarsystem/planets/jupiter/major_moons.asset +++ b/data/assets/scene/solarsystem/planets/jupiter/major_moons.asset @@ -2,3 +2,14 @@ asset.require('./callisto/callisto') asset.require('./europa/europa') asset.require('./ganymede/ganymede') asset.require('./io/io') + + +asset.meta = { + Name = "Jupiter Major Moons", + Version = "1.0", + Description = [[ Meta asset containing Jupiters major moons: Callisto, Europa, + Ganymede, and Io]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/jupiter/minor/ananke_group.asset b/data/assets/scene/solarsystem/planets/jupiter/minor/ananke_group.asset index 10e0a917db..d054212f4a 100644 --- a/data/assets/scene/solarsystem/planets/jupiter/minor/ananke_group.asset +++ b/data/assets/scene/solarsystem/planets/jupiter/minor/ananke_group.asset @@ -191,9 +191,20 @@ local anankeGroup = { } } - - assetHelper.registerSceneGraphNodesAndExport( asset, proceduralGlobes.createGlobes(anankeGroup) ) + + +asset.meta = { + Name = "Jupiter Ananke Group Moons", + Version = "1.0", + Description = [[ Procedural Globe asset containing Jupiter's Ananke Group + moons: S2010J2, Thelxinoe, Euanthe, Iocaste, S2003J16, Praxidike, Harpalyke, + Mneme, Hermippe, Thyone, and Ananke. Blank globes + and SPICE trails are generated for each moon.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/jupiter/minor/carme_group.asset b/data/assets/scene/solarsystem/planets/jupiter/minor/carme_group.asset index 8de8a13d85..3581f98f57 100644 --- a/data/assets/scene/solarsystem/planets/jupiter/minor/carme_group.asset +++ b/data/assets/scene/solarsystem/planets/jupiter/minor/carme_group.asset @@ -255,9 +255,20 @@ local carmeGroup = { }, } - - assetHelper.registerSceneGraphNodesAndExport( asset, proceduralGlobes.createGlobes(carmeGroup) ) + + +asset.meta = { + Name = "Jupiter Carme Group Moons", + Version = "1.0", + Description = [[ Procedural Globe asset containing Jupiter's Carme Group + moons: Herse, Aitne, Kale, Taygete, Chaldene, Erinome, Kallichore, Kalyke, + Pasithee, S2010J1, Eukelade, Arche, Isonoe, Carme, and S2003J5. Blank globes + and SPICE trails are generated for each moon.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/jupiter/minor/carpo_group.asset b/data/assets/scene/solarsystem/planets/jupiter/minor/carpo_group.asset index 7938f89387..ed8974eabe 100644 --- a/data/assets/scene/solarsystem/planets/jupiter/minor/carpo_group.asset +++ b/data/assets/scene/solarsystem/planets/jupiter/minor/carpo_group.asset @@ -29,9 +29,19 @@ local carpoGroup = { } } - - assetHelper.registerSceneGraphNodesAndExport( asset, proceduralGlobes.createGlobes(carpoGroup) ) + + +asset.meta = { + Name = "Jupiter Carpo Group Moons", + Version = "1.0", + Description = [[ Procedural Globe asset containing Jupiter's Carpo Group + moons: Carpo. Blank globes and SPICE trails + are generated for each moon.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/jupiter/minor/himalia_group.asset b/data/assets/scene/solarsystem/planets/jupiter/minor/himalia_group.asset index be1c62726f..f4d1d8573b 100644 --- a/data/assets/scene/solarsystem/planets/jupiter/minor/himalia_group.asset +++ b/data/assets/scene/solarsystem/planets/jupiter/minor/himalia_group.asset @@ -94,9 +94,19 @@ local himaliaGroup = { } } - - assetHelper.registerSceneGraphNodesAndExport( asset, proceduralGlobes.createGlobes(himaliaGroup) ) + + +asset.meta = { + Name = "Jupiter Himalia Group Moons", + Version = "1.0", + Description = [[ Procedural Globe asset containing Jupiter's Himalia Group + moons: Leda, Himalia, Lysithea, Elara and Dia. Blank globes and SPICE trails + are generated for each moon.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/jupiter/minor/inner_group.asset b/data/assets/scene/solarsystem/planets/jupiter/minor/inner_group.asset index 2cf3045233..0710efed8c 100644 --- a/data/assets/scene/solarsystem/planets/jupiter/minor/inner_group.asset +++ b/data/assets/scene/solarsystem/planets/jupiter/minor/inner_group.asset @@ -77,9 +77,19 @@ local innerMoons = { } } - - assetHelper.registerSceneGraphNodesAndExport( asset, proceduralGlobes.createGlobes(innerMoons) ) + + +asset.meta = { + Name = "Jupiter Inner Group Moons", + Version = "1.0", + Description = [[ Procedural Globe asset containing Jupiter's Inner Group + moons: Metis, Adrastea, Amalthea, and Thebe. Blank globes and SPICE trails + are generated for each moon.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/jupiter/minor/other_groups.asset b/data/assets/scene/solarsystem/planets/jupiter/minor/other_groups.asset index d7951c5185..2668c2a019 100644 --- a/data/assets/scene/solarsystem/planets/jupiter/minor/other_groups.asset +++ b/data/assets/scene/solarsystem/planets/jupiter/minor/other_groups.asset @@ -149,9 +149,19 @@ local otherGroups = { } } - - assetHelper.registerSceneGraphNodesAndExport( asset, proceduralGlobes.createGlobes(otherGroups) ) + + +asset.meta = { + Name = "Jupiter Pasiphae Other Moons", + Version = "1.0", + Description = [[ Procedural Globe asset containing Jupiter's Other Group + moons: S2003J12, S/2003J3, S2011J1, S2003J19, S2003J10, S2003J23, S2003J9, + and S2003J2. Blank globes and SPICE trails are generated for each moon.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/jupiter/minor/pasiphae_group.asset b/data/assets/scene/solarsystem/planets/jupiter/minor/pasiphae_group.asset index b577a3e5f1..0839c8f271 100644 --- a/data/assets/scene/solarsystem/planets/jupiter/minor/pasiphae_group.asset +++ b/data/assets/scene/solarsystem/planets/jupiter/minor/pasiphae_group.asset @@ -340,9 +340,21 @@ local pasiphaeGroup = { } } - - assetHelper.registerSceneGraphNodesAndExport( asset, proceduralGlobes.createGlobes(pasiphaeGroup) ) + + +asset.meta = { + Name = "Jupiter Pasiphae Group Moons", + Version = "1.0", + Description = [[ Procedural Globe asset containing Jupiter's Pasiphae Group + moons: Euporie, S2003J18, Helike, Orthosie, S2016J1, S2003J15, Aoede, Callirrhoe, + Eurydome, Kore, Cyllene, S2011J2, S2017J1, S2003J4, Pasiphae, Hegemone, Sinope, + Sponde, Autonoe and Megaclite. Blank globes and SPICE trails are generated for + each moon.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/jupiter/minor/themisto_group.asset b/data/assets/scene/solarsystem/planets/jupiter/minor/themisto_group.asset index f7a5899dc9..9e280321a6 100644 --- a/data/assets/scene/solarsystem/planets/jupiter/minor/themisto_group.asset +++ b/data/assets/scene/solarsystem/planets/jupiter/minor/themisto_group.asset @@ -29,9 +29,18 @@ local themistoGroup = { } } - - assetHelper.registerSceneGraphNodesAndExport( asset, proceduralGlobes.createGlobes(themistoGroup) ) + + +asset.meta = { + Name = "Jupiter Themisto Group Moons", + Version = "1.0", + Description = [[ Procedural Globe asset containing Jupiter's Themisto Group + moons: Themisto. Blank globes and SPICE trails are generated for each moon.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/jupiter/minor_moons.asset b/data/assets/scene/solarsystem/planets/jupiter/minor_moons.asset index 0609399eef..8c48b6f6ac 100644 --- a/data/assets/scene/solarsystem/planets/jupiter/minor_moons.asset +++ b/data/assets/scene/solarsystem/planets/jupiter/minor_moons.asset @@ -6,3 +6,14 @@ asset.require('./minor/inner_group') asset.require('./minor/other_groups') asset.require('./minor/pasiphae_group') asset.require('./minor/themisto_group') + + +asset.meta = { + Name = "Jupiter Minor Moons", + Version = "1.0", + Description = [[ Meta asset containing eight moon groups: Ananke, Carme, Carpo, + Himalia, Pasiphae, Themisto, Inner, and Other]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/jupiter/trail.asset b/data/assets/scene/solarsystem/planets/jupiter/trail.asset index c78bce02ca..7d3afaaebd 100644 --- a/data/assets/scene/solarsystem/planets/jupiter/trail.asset +++ b/data/assets/scene/solarsystem/planets/jupiter/trail.asset @@ -25,6 +25,16 @@ local JupiterTrail = { } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { JupiterTrail }) + + +asset.meta = { + Name = "Jupiter Trail", + Version = "1.0", + Description = [[ Trail of Jupiter as observed by the Sun. Data from NASA Spice (see + base spice asset)]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "JupiterTrail" +} diff --git a/data/assets/scene/solarsystem/planets/jupiter/trail_earth.asset b/data/assets/scene/solarsystem/planets/jupiter/trail_earth.asset new file mode 100644 index 0000000000..3abeef018a --- /dev/null +++ b/data/assets/scene/solarsystem/planets/jupiter/trail_earth.asset @@ -0,0 +1,42 @@ +local assetHelper = asset.require('util/asset_helper') +local transforms = asset.require('scene/solarsystem/sun/transforms') +local earthTransforms = asset.require('scene/solarsystem/planets/earth/transforms') +asset.require("spice/base") + + + +local JupiterTrailEarth = { + Identifier = "JupiterTrailEarth", + Parent = earthTransforms.EarthBarycenter.Identifier, + Renderable = { + Type = "RenderableTrailOrbit", + Translation = { + Type = "SpiceTranslation", + Target = "JUPITER BARYCENTER", + Observer = "EARTH" + }, + Color = { 1.0, 0.5, 0.2 }, + Period = 224.695, + Resolution = 1000, + Enabled = false + }, + Tag = { "planetTrail_solarSystem_alt", "planetTrail_terrestrial_alt" }, + GUI = { + Name = "Jupiter trail from Earth", + Path = "/Solar System/Planets/Jupiter", + Hidden = false + } +} + +asset.meta = { + Name = "Jupiter Trail from Earth", + Version = "1.0", + Description = [[ Trail of Jupiter as observed by the Earth. Data from NASA + SPICE (see base spice asset)]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "VenusTrailEarth" +} + +assetHelper.registerSceneGraphNodesAndExport(asset, { JupiterTrailEarth }) diff --git a/data/assets/scene/solarsystem/planets/jupiter/transforms.asset b/data/assets/scene/solarsystem/planets/jupiter/transforms.asset index c0e1178b83..dde80c565a 100644 --- a/data/assets/scene/solarsystem/planets/jupiter/transforms.asset +++ b/data/assets/scene/solarsystem/planets/jupiter/transforms.asset @@ -22,3 +22,14 @@ local JupiterBarycenter = { } assetHelper.registerSceneGraphNodesAndExport(asset, { JupiterBarycenter }) + + +asset.meta = { + Name = "Jupiter Transforms", + Version = "1.0", + Description = [[ Jupiter Barycenter transform]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "JupiterBarycenter" +} diff --git a/data/assets/scene/solarsystem/planets/mars/atmosphere.asset b/data/assets/scene/solarsystem/planets/mars/atmosphere.asset index d0a465ea2a..06b1d7a1c8 100644 --- a/data/assets/scene/solarsystem/planets/mars/atmosphere.asset +++ b/data/assets/scene/solarsystem/planets/mars/atmosphere.asset @@ -59,10 +59,20 @@ local Atmosphere = { }, GUI = { Name = "Mars Atmosphere", - Path = "/Solar System/Planets/Mars" + Path = "/Solar System/Planets/Mars", + Description = [[ Atmosphere of Mars.]] } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { Atmosphere }) + + +asset.meta = { + Name = "Mars Atmosphere", + Version = "1.0", + Description = [[ RenderableAtmosphere for Mars.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "MarsAtmosphere" +} diff --git a/data/assets/scene/solarsystem/planets/mars/default_layers.asset b/data/assets/scene/solarsystem/planets/mars/default_layers.asset index 02edb1606a..08c7963363 100644 --- a/data/assets/scene/solarsystem/planets/mars/default_layers.asset +++ b/data/assets/scene/solarsystem/planets/mars/default_layers.asset @@ -20,7 +20,6 @@ asset.require(colorLayersPath .. "/ctx_mosaic_sweden") asset.require(colorLayersPath .. "/ctx_blended_01") -- Height layers -asset.require(heightLayersPath .. "/mola") asset.require(heightLayersPath .. "/mola_europe") local heightLayer = asset.require(heightLayersPath .. "/mola_utah") @@ -31,6 +30,20 @@ asset.require(overlaysPath .. "/size_reference") -- Set enabled layers (temporary solution) -- @TODO: do this using a boolean that's passed to the 'asset.require' instead asset.onInitialize(function () - openspace.setPropertyValueSingle("Scene.Mars.Renderable.Layers.ColorLayers." .. colorLayer.layer.Identifier .. ".Enabled", true) - openspace.setPropertyValueSingle("Scene.Mars.Renderable.Layers.HeightLayers." .. heightLayer.layer.Identifier .. ".Enabled", true) + openspace.setPropertyValueSingle("Scene.Mars.Renderable.Layers.ColorLayers." .. + colorLayer.layer.Identifier .. ".Enabled", true) + openspace.setPropertyValueSingle("Scene.Mars.Renderable.Layers.HeightLayers." .. + heightLayer.layer.Identifier .. ".Enabled", true) end) + + +asset.meta = { + Name = "Default Mars Layers", + Version = "1.0", + Description = [[ Default Mars layers are: MOC WA Color, Viking MDIM, MOLA Pseudo + Color, MOLA HRSC, Themis IR Day, Themis IR Night, CTX Mosaic, and CTX Blended + beta01]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/HiRISE.asset b/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/HiRISE.asset new file mode 100644 index 0000000000..edd5ec0a78 --- /dev/null +++ b/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/HiRISE.asset @@ -0,0 +1,24 @@ +--todo add hirise through asset file like we do for ctx_blended. +--curretly added via globebrowsing customization + + +asset.meta = { + Name = "HiRISE Local Set", + Version = "1.0", + Description = [[ HiRISE (High Resolution Imaging Science Experiment) is the most + powerful camera ever sent to another planet, one of six instruments onboard the + Mars Reconnaissance Orbiter. We launched in 2005, arrived at Mars in 2006 and have + been imaging ever since. Our camera’s high resolution capability (imaging up to 30 + centimeters per pixel) remains unprecedented for any existing orbiter in the study + of the Red Planet, as well as being an indispensable instrument for helping to + select landing sites for robotic and future human exploration. In the past decade, + we’ve also imaged avalanches in progress, and discovered dark flows that may or + may not be briny seeps. Hundreds of science papers have been published with our + data. (Description from URL). This map contains a subet set of the HiRISE + imagaery, only containing locations where a corresponding HiRISE digital terrain + model (DTM) was available as of 2018.]], + Author = "USGS", + URL = "https://www.uahirise.org", + License = "Esri Master License Agreement", + Identifiers = "OnMarsHiRISELS" +} diff --git a/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/ctx_blended_01.asset b/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/ctx_blended_01.asset index f762b02170..f6ae50ead9 100644 --- a/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/ctx_blended_01.asset +++ b/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/ctx_blended_01.asset @@ -9,7 +9,22 @@ local layer = { Settings = { Gamma = 2.14, Multiplier = 1.54 - } + }, + Description = [[This product contains CTX data through MRO release 45, CTX mission + phase J21 (December 1, 2017). The mosaic is comprised of 74,196 separate CTX + images out of 95,106 available (78.0%). Orbits not included were either (1) low + signal/noise (increased atmospheric opacity), or (2) redundant coverage (stereo + targets, change detection, etc.). With low-quality images removed, the mosaic + covers 97.3% of Mars. The mosaic covers 88°S to 88°N. All data are resampled to + 5.0 m/px, including 2,334 orbits (3.14%) that are natively higher resolution than + 5.0 m/px, though no images are higher resolution than 4.93 m/px. The planet was + divided into 3,960 4°x4° tiles, which are not blended with each other in this + version. As we describe below, every pixel can be traced to its host orbit through + vectorized seam-maps that are provided with every tile. These seam-maps provide + pixel-for-pixel spatial documentation of image seams, to prevent misinterpretation + of seams as possible landforms and to provide instant access to original data. A + completely seamless CTX mosaic is currently infeasible, so seam-maps are required + to prevent misinterpretation. (Description from URL)]], } asset.onInitialize(function () @@ -17,3 +32,15 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "CTX Blended beta01", + Version = "1.0", + Description = [[New blended CTX map for Mars from CalTech Murray lab. This map is + hosted by ESRI.]], + Author = "Caltech Murray Lab", + URL = "http://murray-lab.caltech.edu/CTX/", + License = "Esri Master License Agreement", + Identifiers = "CTX_blended_01" +} diff --git a/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/fallbacks/mars_texture.asset b/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/fallbacks/mars_texture.asset index 9138ba0a24..d0cdd92783 100644 --- a/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/fallbacks/mars_texture.asset +++ b/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/fallbacks/mars_texture.asset @@ -7,3 +7,13 @@ local layer = { } asset.export("layer", layer) + + +asset.meta = { + Name = "Mars Texutre", + Version = "1.0", + Description = [[ Default jpg texture for Mars]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/mars_texture.asset b/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/mars_texture.asset index fca27b6889..fdba12b9bb 100644 --- a/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/mars_texture.asset +++ b/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/mars_texture.asset @@ -5,6 +5,7 @@ local layer = { Identifier = "Mars_Texture", Name = "Mars Texture", FilePath = texturesPath .. "/mars.jpg", + Description = [[ Default jpg texture for Mars]] } asset.onInitialize(function () @@ -12,3 +13,13 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Mars Texutre", + Version = "1.0", + Description = [[ Jpg texture for Mars, available for offline use.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/moc_wa_color_liu.asset b/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/moc_wa_color_liu.asset index f45d9afdd0..e9f44a9537 100644 --- a/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/moc_wa_color_liu.asset +++ b/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/moc_wa_color_liu.asset @@ -11,7 +11,11 @@ local layer = { Gamma = 1.6, Multiplier = 1.07 }, - Fallback = fallbackLayer + Fallback = fallbackLayer, + Description = [[This map is an AMNH version of the global mossaic produced by the + Mars Global Surveyor Wide Angle Camera. This version has color added and the + shadows subdued based on the MOLA DTM. Data Reference: + https://www.jpl.nasa.gov/spaceimages/details.php?id=PIA03467.]], } asset.onInitialize(function () @@ -19,3 +23,15 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "MOC WA Color [Sweden]", + Version = "1.0", + Description = [[Main color map layer for Mars. This map is hosted + on the OpenSpace server in Sweden.]], + Author = "OpenSpace Team", + URL = "http://www.openspaceproject.com", + License = "NASA/PDS", + Identifiers = "MOLA_HRSC_Sweden" +} diff --git a/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/moc_wa_color_utah.asset b/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/moc_wa_color_utah.asset index 8763d19f74..54a3dab794 100644 --- a/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/moc_wa_color_utah.asset +++ b/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/moc_wa_color_utah.asset @@ -11,7 +11,11 @@ local layer = { Gamma = 1.6, Multiplier = 1.07 }, - Fallback = fallbackLayer + Fallback = fallbackLayer, + Description = [[This map is an AMNH version of the global mossaic produced by the + Mars Global Surveyor Wide Angle Camera. This version has color added and the + shadows subdued based on the MOLA DTM. Data Reference: + https://www.jpl.nasa.gov/spaceimages/details.php?id=PIA03467]], } asset.onInitialize(function () @@ -19,3 +23,15 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "MOC WA Color [Utah]", + Version = "1.0", + Description = [[Main color map layer for Mars. This map is hosted + on the OpenSpace server in Utah.]], + Author = "OpenSpace Team", + URL = "http://www.openspaceproject.com", + License = "NASA/PDS", + Identifiers = "MOC_WA_Color_Utah" +} diff --git a/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/mola_hrsc_sweden.asset b/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/mola_hrsc_sweden.asset index 2737ce9ecf..a5862618ff 100644 --- a/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/mola_hrsc_sweden.asset +++ b/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/mola_hrsc_sweden.asset @@ -4,7 +4,11 @@ local globeIdentifier = asset.require("./../../mars").Mars.Identifier local layer = { Identifier = "MOLA_HRSC_Sweden", Name = "MOLA HRSC [Sweden]", - FilePath = mapServiceConfigs .. "/LiU/Mola_HRSC.wms" + FilePath = mapServiceConfigs .. "/LiU/Mola_HRSC.wms", + Description = [[ This map layer is colorzied based elevation data from MOLA and HRSC. + Compared to MOLA Psuedo Color, this layer has no terrain shading, which is + suitable for use when combing with other layers. Data Reference: + https://astrogeology.usgs.gov/search/map/Mars/Topography/HRSC_MOLA_Blend/Mars_HRSC_MOLA_BlendDEM_Global_200mp_v2]], } asset.onInitialize(function () @@ -12,3 +16,15 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "MOLA HRSC [Sweden]", + Version = "1.0", + Description = [[ Colorzied elevation data for Mars. This map is hosted on the + OpenSpace server in Sweden.]], + Author = "OpenSpace Team", + URL = "http://www.openspaceproject.com", + License = "NASA/PDS", + Identifiers = "MOLA_HRSC_Sweden" +} diff --git a/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/mola_hrsc_utah.asset b/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/mola_hrsc_utah.asset index 66bae74e0c..87a1e1cf94 100644 --- a/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/mola_hrsc_utah.asset +++ b/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/mola_hrsc_utah.asset @@ -4,7 +4,11 @@ local globeIdentifier = asset.require("./../../mars").Mars.Identifier local layer = { Identifier = "MOLA_HRSC_Utah", Name = "MOLA HRSC [Utah]", - FilePath = mapServiceConfigs .. "/Utah/Mola_HRSC.wms" + FilePath = mapServiceConfigs .. "/Utah/Mola_HRSC.wms", + Description = [[ This map layer is colorzied based elevation data from MOLA and HRSC. + Compared to MOLA Psuedo Color, this layer has no terrain shading, which is + suitable for use when combing with other layers. Data Reference: + https://astrogeology.usgs.gov/search/map/Mars/Topography/HRSC_MOLA_Blend/Mars_HRSC_MOLA_BlendDEM_Global_200mp_v2]], } asset.onInitialize(function () @@ -12,3 +16,15 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "MOLA HRSC [Utah]", + Version = "1.0", + Description = [[ Colorzied elevation data for Mars. This map is hosted on the + OpenSpace server in Sweden.]], + Author = "OpenSpace Team", + URL = "http://www.openspaceproject.com", + License = "NASA/PDS", + Identifiers = "MOLA_HRSC_Sweden" +} diff --git a/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/mola_pseudo_color_sweden.asset b/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/mola_pseudo_color_sweden.asset index 2b8889c87b..73920dac15 100644 --- a/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/mola_pseudo_color_sweden.asset +++ b/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/mola_pseudo_color_sweden.asset @@ -4,7 +4,21 @@ local globeIdentifier = asset.require("./../../mars").Mars.Identifier local layer = { Identifier = "MOLA_Pseudo_Color_Sweden", Name = "MOLA Pseudo Color [Sweden]", - FilePath = mapServiceConfigs .. "/LiU/Mola_PseudoColor.wms" + FilePath = mapServiceConfigs .. "/LiU/Mola_PseudoColor.wms", + Description = [[This map is based on data from the Mars Orbiter Laser Altimeter (MOLA) + (Smith, et al., 2001), an instrument on NASA’s Mars Global Surveyor (MGS) + spacecraft (Albee, et al., 2001). The image used for the base of this map + represents more than 600 million measurements gathered between 1999 and 2001, + adjusted for consistency (Neumann, et al., 2001; Neumann, et al., 2003) and + converted to planetary radii. These have been converted to elevations above the + areoid as determined from a Martian gravity field solution GMM-2B (Lemoine, et + al., 2001), truncated to degree and order 50, and oriented according to current + standards (see below). The average accuracy of each point is originally ~100 + meters in horizontal position and ~1 meter in radius (Neumann, et al., 2001; + Neumann, et al., 2003). However, the total elevation uncertainty is at least ±3 m + due to the global error in the areoid (±1.8 meters; Lemoine, et al., 2001) and + regional uncertainties in its shape (Neumann, 2002). Pixel resolution of this map + is 463 meters per pixel (m). (Description from URL). Data Reference: (See URL).]], } asset.onInitialize(function () @@ -12,3 +26,16 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "MOLA Pseudo Color [Sweden]", + Version = "1.0", + Description = [[ Colorzied elevation data for Mars (with shading). This map is hosted + on the OpenSpace server in Sweden.]], + Author = "USGS", + URL = "https://astrogeology.usgs.gov/search/map/Mars/GlobalSurveyor/MOLA/" .. + "Mars_MGS_MOLA_ClrShade_merge_global_463m", + License = "NASA/PDS", + Identifiers = "MOLA_Pseudo_Color_Sweden" +} diff --git a/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/mola_pseudo_color_utah.asset b/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/mola_pseudo_color_utah.asset index dcb1ac18f4..3844cc5f09 100644 --- a/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/mola_pseudo_color_utah.asset +++ b/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/mola_pseudo_color_utah.asset @@ -4,7 +4,21 @@ local globeIdentifier = asset.require("./../../mars").Mars.Identifier local layer = { Identifier = "MOLA_Pseudo_Color_Utah", Name = "MOLA Pseudo Color [Utah]", - FilePath = mapServiceConfigs .. "/Utah/Mola_PseudoColor.wms" + FilePath = mapServiceConfigs .. "/Utah/Mola_PseudoColor.wms", + Description = [[This map is based on data from the Mars Orbiter Laser Altimeter (MOLA) + (Smith, et al., 2001), an instrument on NASA’s Mars Global Surveyor (MGS) + spacecraft (Albee, et al., 2001). The image used for the base of this map + represents more than 600 million measurements gathered between 1999 and 2001, + adjusted for consistency (Neumann, et al., 2001; Neumann, et al., 2003) and + converted to planetary radii. These have been converted to elevations above the + areoid as determined from a Martian gravity field solution GMM-2B (Lemoine, et + al., 2001), truncated to degree and order 50, and oriented according to current + standards (see below). The average accuracy of each point is originally ~100 + meters in horizontal position and ~1 meter in radius (Neumann, et al., 2001; + Neumann, et al., 2003). However, the total elevation uncertainty is at least ±3 m + due to the global error in the areoid (±1.8 meters; Lemoine, et al., 2001) and + regional uncertainties in its shape (Neumann, 2002). Pixel resolution of this map + is 463 meters per pixel (m). (Description from URL). Data Reference: (See URL)]], } asset.onInitialize(function () @@ -12,3 +26,16 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "MOLA Pseudo Color [Utah]", + Version = "1.0", + Description = [[ Colorzied elevation data for Mars (with shading). This map is hosted + on the OpenSpace server in Utah.]], + Author = "USGS", + URL = "https://astrogeology.usgs.gov/search/map/Mars/GlobalSurveyor/MOLA/" .. + "Mars_MGS_MOLA_ClrShade_merge_global_463m", + License = "NASA/PDS", + Identifiers = "MOLA_Pseudo_Color_Utah" +} diff --git a/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/themis_ir_day_sweden.asset b/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/themis_ir_day_sweden.asset index 89faa5565b..5a8b2847e7 100644 --- a/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/themis_ir_day_sweden.asset +++ b/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/themis_ir_day_sweden.asset @@ -5,7 +5,17 @@ local layer = { Identifier = "Themis_IR_Day_Sweden", Name = "Themis IR Day [Sweden]", FilePath = mapServiceConfigs .. "/LiU/Themis_IR_Day.wms", - BlendMode = "Color" + BlendMode = "Color", + Description = [[This mosaic represents the Thermal Emission Imaging System (THEMIS) + -daytime infrared (IR) 100 meter/pixel mosaic (version 12) released in the summer + of 2014 by Arizona State University. Values represent only a visual representation + of day-time temperatures. The original values have been stretched and blended to + make a more seamless mosaic.

Reference: * Edwards, C. S., K. J. Nowicki, + P. R. Christensen, J. Hill, N. Gorelick, and K. Murray (2011), Mosaicking of + global planetary image datasets: 1. Techniques and data processing for Thermal + Emission Imaging System (THEMIS) multi‐spectral data, J. Geophys. Res., 116, + E10008, doi:10.1029/2010JE003755. http://dx.doi.org/10.1029/2010JE003755 + (Description from URL).]], } asset.onInitialize(function () @@ -13,3 +23,16 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Themis IR Day [Sweden]", + Version = "1.0", + Description = [[Themis Day layer for Mars. This map is hosted on the OpenSpace server + in Sweden.]], + Author = "USGS", + URL = "https://astrogeology.usgs.gov/search/map/Mars/Odyssey/THEMIS-IR-Mosaic-ASU/" .. + "Mars_MO_THEMIS-IR-Day_mosaic_global_100m_v12", + License = "NASA/PDS", + Identifiers = "Themis_IR_Day_Sweden" +} diff --git a/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/themis_ir_day_utah.asset b/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/themis_ir_day_utah.asset index 08a6f6a6ce..0226af185d 100644 --- a/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/themis_ir_day_utah.asset +++ b/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/themis_ir_day_utah.asset @@ -5,7 +5,17 @@ local layer = { Identifier = "Themis_IR_Day_Utah", Name = "Themis IR Day [Utah]", FilePath = mapServiceConfigs .. "/Utah/Themis_IR_Day.wms", - BlendMode = "Color" + BlendMode = "Color", + Description = [[This mosaic represents the Thermal Emission Imaging System (THEMIS) + -daytime infrared (IR) 100 meter/pixel mosaic (version 12) released in the summer + of 2014 by Arizona State University. Values represent only a visual representation + of day-time temperatures. The original values have been stretched and blended to + make a more seamless mosaic.

Reference: * Edwards, C. S., K. J. Nowicki, + P. R. Christensen, J. Hill, N. Gorelick, and K. Murray (2011), Mosaicking of + global planetary image datasets: 1. Techniques and data processing for Thermal + Emission Imaging System (THEMIS) multi‐spectral data, J. Geophys. Res., 116, + E10008, doi:10.1029/2010JE003755. http://dx.doi.org/10.1029/2010JE003755 + (Description from URL).]], } asset.onInitialize(function () @@ -13,3 +23,16 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Themis IR Day [Utah]", + Version = "1.0", + Description = [[Themis Day layer for Mars. This map is hosted on the OpenSpace server + in Utah.]], + Author = "USGS", + URL = "https://astrogeology.usgs.gov/search/map/Mars/Odyssey/THEMIS-IR-Mosaic-ASU/" .. + "Mars_MO_THEMIS-IR-Day_mosaic_global_100m_v12", + License = "NASA/PDS", + Identifiers = "Themis_IR_Day_Utah" +} diff --git a/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/themis_ir_night_sweden.asset b/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/themis_ir_night_sweden.asset index c824296cd3..fab55ffd4a 100644 --- a/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/themis_ir_night_sweden.asset +++ b/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/themis_ir_night_sweden.asset @@ -5,7 +5,18 @@ local layer = { Identifier = "Themis_IR_Night_Sweden", Name = "Themis IR Night [Sweden]", FilePath = mapServiceConfigs .. "/LiU/Themis_IR_Night.wms", - BlendMode = "Color" + BlendMode = "Color", + Description = [[This mosaic represents the Thermal Emission Imaging System (THEMIS) + -nighttime infrared (IR) 100 meter/pixel mosaic (version 12) released in the + summer of 2014 by Arizona State University. Values represent only a visual + representation of night-time temperatures. The original values have been stretched + and blended to make a more seamless mosaic. Coverage is only from 60N to 60S + latitude.

Reference: * Edwards, C.S., K. J. Nowicki, P. R. Christensen, + J. Hill, N. Gorelick, and K. Murray (2011), Mosaicking of global planetary image + datasets: 1. Techniques and data processing for Thermal Emission Imaging System + (THEMIS) multi‐spectral data, J. Geophys. Res., 116, E10008, + doi:10.1029/2010JE003755. http://dx.doi.org/10.1029/2010JE003755 (Description from + URL).]], } asset.onInitialize(function () @@ -13,3 +24,16 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Themis IR Night [Sweden]", + Version = "1.0", + Description = [[Themis Night layer for Mars. This map is hosted on the OpenSpace + server in Sweden.]], + Author = "USGS", + URL = "https://astrogeology.usgs.gov/search/map/Mars/Odyssey/THEMIS-IR-Mosaic-ASU/" .. + "Mars_MO_THEMIS-IR-Night_mosaic_60N60S_100m_v14", + License = "NASA/PDS", + Identifiers = "Themis_IR_Night_Sweden" +} diff --git a/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/themis_ir_night_utah.asset b/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/themis_ir_night_utah.asset index 1d0442f7f5..fdb5cc593e 100644 --- a/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/themis_ir_night_utah.asset +++ b/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/themis_ir_night_utah.asset @@ -5,7 +5,18 @@ local layer = { Identifier = "Themis_IR_Night_Utah", Name = "Themis IR Night [Utah]", FilePath = mapServiceConfigs .. "/Utah/Themis_IR_Night.wms", - BlendMode = "Color" + BlendMode = "Color", + Description = [[This mosaic represents the Thermal Emission Imaging System (THEMIS) + -nighttime infrared (IR) 100 meter/pixel mosaic (version 12) released in the + summer of 2014 by Arizona State University. Values represent only a visual + representation of night-time temperatures. The original values have been stretched + and blended to make a more seamless mosaic. Coverage is only from 60N to 60S + latitude.

Reference: * Edwards, C.S., K. J. Nowicki, P. R. Christensen, + J. Hill, N. Gorelick, and K. Murray (2011), Mosaicking of global planetary image + datasets: 1. Techniques and data processing for Thermal Emission Imaging System + (THEMIS) multi‐spectral data, J. Geophys. Res., 116, E10008, + doi:10.1029/2010JE003755. http://dx.doi.org/10.1029/2010JE003755 (Description from + URL).]], } asset.onInitialize(function () @@ -13,3 +24,16 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Themis IR Night [Utah]", + Version = "1.0", + Description = [[Themis Night layer for Mars. This map is hosted on the OpenSpace + server in Utah.]], + Author = "USGS", + URL = "https://astrogeology.usgs.gov/search/map/Mars/Odyssey/THEMIS-IR-Mosaic-ASU/" .. + "Mars_MO_THEMIS-IR-Night_mosaic_60N60S_100m_v14", + License = "NASA/PDS", + Identifiers = "Themis_IR_Night_Utah" +} diff --git a/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/viking_mdim_sweden.asset b/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/viking_mdim_sweden.asset index 68cb2ab512..e43878ff1f 100644 --- a/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/viking_mdim_sweden.asset +++ b/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/viking_mdim_sweden.asset @@ -4,7 +4,26 @@ local globeIdentifier = asset.require("./../../mars").Mars.Identifier local layer = { Identifier = "Viking_MDIM_Sweden", Name = "Viking MDIM [Sweden]", - FilePath = mapServiceConfigs .. "/LiU/MDIM.wms" + FilePath = mapServiceConfigs .. "/LiU/MDIM.wms", + Description = [[This global image map of Mars has a resolution of 256 pixels/degree + (scale approximately 232 meters per pixel (m) at the equator). The colorized + mosaic was completed by NASA AMES which warped the original Viking colorized + mosaic and blended over the latest black/white Mars Digital Image Model + (MDIM 2.1). The positional accuracy of features in MDIM 2.1 is estimated to be + roughly one pixel (200 m), compared to 3 km for MDIM 2.0 released in 2001 and >6 + km for MDIM 1.0 released in 1991. In addition to relatively imprecise geodetic + control, the previous mosaics were affected by changing definitions of + cartographic parameters (such as the definition of zero longitude), + resulting in an overall longitude shift of as much as 0.2° between the early MDIMs + and other datasets. The new mosaic uses the most recent coordinate system + definitions for Mars. These definitions have been widely adopted by NASA missions + and other users of planetary data and are likely to remain in use for a decade or + more. As a result, MDIM 2.1 not only registers precisely with data from current + missions such as Mars Global Surveyor (MGS) and 2001 Mars Odyssey but will serve + as an accurate basemap on which data from future missions can be plotted. + (Description from URL).

References: Williams, D. R. (2018). Viking + Mission to Mars. https://nssdc.gsfc.nasa.gov/planetary/viking.html Additional + references available here: http://astrogeology.usgs.gov/maps/mdim-2-1 ]], } asset.onInitialize(function () @@ -12,3 +31,16 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Viking MDIM [Sweden]", + Version = "1.0", + Description = [[ Alternate image layer for Mars. This map is hosted + on the OpenSpace server in Sweden.]], + Author = "USGS", + URL = "https://astrogeology.usgs.gov/search/map/Mars/Viking/MDIM21/" .. + "Mars_Viking_MDIM21_ClrMosaic_global_232m", + License = "NASA/PDS", + Identifiers = "Viking_MDIM_Sweden" +} diff --git a/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/viking_mdim_utah.asset b/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/viking_mdim_utah.asset index 2c87a9341f..550069100e 100644 --- a/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/viking_mdim_utah.asset +++ b/data/assets/scene/solarsystem/planets/mars/layers/colorlayers/viking_mdim_utah.asset @@ -4,7 +4,26 @@ local globeIdentifier = asset.require("./../../mars").Mars.Identifier local layer = { Identifier = "Viking_MDIM_Utah", Name = "Viking MDIM [Utah]", - FilePath = mapServiceConfigs .. "/Utah/Mdim.wms" + FilePath = mapServiceConfigs .. "/Utah/Mdim.wms", + Description = [[This global image map of Mars has a resolution of 256 pixels/degree + (scale approximately 232 meters per pixel (m) at the equator). The colorized + mosaic was completed by NASA AMES which warped the original Viking colorized + mosaic and blended over the latest black/white Mars Digital Image Model + (MDIM 2.1). The positional accuracy of features in MDIM 2.1 is estimated to be + roughly one pixel (200 m), compared to 3 km for MDIM 2.0 released in 2001 and >6 + km for MDIM 1.0 released in 1991. In addition to relatively imprecise geodetic + control, the previous mosaics were affected by changing definitions of + cartographic parameters (such as the definition of zero longitude), + resulting in an overall longitude shift of as much as 0.2° between the early MDIMs + and other datasets. The new mosaic uses the most recent coordinate system + definitions for Mars. These definitions have been widely adopted by NASA missions + and other users of planetary data and are likely to remain in use for a decade or + more. As a result, MDIM 2.1 not only registers precisely with data from current + missions such as Mars Global Surveyor (MGS) and 2001 Mars Odyssey but will serve + as an accurate basemap on which data from future missions can be plotted. + (Description from URL).

References: Williams, D. R. (2018). Viking + Mission to Mars. https://nssdc.gsfc.nasa.gov/planetary/viking.html Additional + references available here: http://astrogeology.usgs.gov/maps/mdim-2-1 ]], } asset.onInitialize(function () @@ -12,3 +31,16 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Viking MDIM [Utah]", + Version = "1.0", + Description = [[ Alternate image layer for Mars. This map is hosted + on the OpenSpace server in Utah.]], + Author = "USGS", + URL = "https://astrogeology.usgs.gov/search/map/Mars/Viking/MDIM21/" .. + "Mars_Viking_MDIM21_ClrMosaic_global_232m", + License = "NASA/PDS", + Identifiers = "Viking_MDIM_Utah" +} diff --git a/data/assets/scene/solarsystem/planets/mars/layers/heightlayers/mola.asset b/data/assets/scene/solarsystem/planets/mars/layers/heightlayers/mola.asset deleted file mode 100644 index bfeed2d2e6..0000000000 --- a/data/assets/scene/solarsystem/planets/mars/layers/heightlayers/mola.asset +++ /dev/null @@ -1,15 +0,0 @@ -local mapServiceConfigs = asset.localResource("./../../map_service_configs") -local globeIdentifier = asset.require("./../../mars").Mars.Identifier - -local layer = { - Identifier = "Mola", - Name = "Mola Elevation", - FilePath = mapServiceConfigs .. "/Mars_MGS_MOLA_DEM.wms", - TilePixelSize = 90 -} - -asset.onInitialize(function () - openspace.globebrowsing.addLayer(globeIdentifier, "HeightLayers", layer) -end) - -asset.export("layer", layer) diff --git a/data/assets/scene/solarsystem/planets/mars/layers/heightlayers/mola_europe.asset b/data/assets/scene/solarsystem/planets/mars/layers/heightlayers/mola_europe.asset index d9cb1735e7..a46993113c 100644 --- a/data/assets/scene/solarsystem/planets/mars/layers/heightlayers/mola_europe.asset +++ b/data/assets/scene/solarsystem/planets/mars/layers/heightlayers/mola_europe.asset @@ -3,9 +3,23 @@ local globeIdentifier = asset.require("./../../mars").Mars.Identifier local layer = { Identifier = "Mola_Europe", - Name = "Mola Elevation [Europe]", + Name = "Mola Elevation [Sweden]", FilePath = mapServiceConfigs .. "/LiU/Mola_Elevation.wms", - TilePixelSize = 90 + TilePixelSize = 90, + Description = [[ This digital elevation model (DEM) is based on data from the Mars + Orbiter Laser Altimeter (MOLA; Smith et al., 2001), an instrument on NASA's Mars + Global Surveyor (MGS) spacecraft (Albee et al., 2001). The MOLA DEM represents + more than 600 million measurements gathered between 1999 and 2001, adjusted for + consistency (Neumann et al., 2001; Neumann, Smith & Zuber, 2003) and converted to + planetary radii. These have been converted to elevations above the areoid as + determined from a Martian gravity field solution GMM-2B (Lemoine et al., 2001), + truncated to degree and order 50, and oriented according to current standards. + The average accuracy of each point is originally ~100 meters in horizontal + position and ~1 meter in radius (Neumann et al., 2001). However, the total + elevation uncertainty is at least ±3 m due to the global error in the areoid + (±1.8 meters; Neumann et al., 2001) and regional uncertainties in its shape + (Neumann, 2002). Pixel resolution is 463 meters per pixel (m). (Description from + URL). Data Reference: (See URL).]], } asset.onInitialize(function () @@ -13,3 +27,16 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Mola Elevation [Sweden]", + Version = "1.0", + Author = "USGS", + Description = [[ Global elevation layer for Mars. This layer is hosted on the + OpenSpace server in Sweden.]], + URL = "https://astrogeology.usgs.gov/search/map/Mars/GlobalSurveyor/MOLA/" .. + "Mars_MGS_MOLA_DEM_mosaic_global_463m", + License = "NASA/PDS", + Identifiers = "Mola_Europe" +} diff --git a/data/assets/scene/solarsystem/planets/mars/layers/heightlayers/mola_utah.asset b/data/assets/scene/solarsystem/planets/mars/layers/heightlayers/mola_utah.asset index c2cd50d329..c433db084a 100644 --- a/data/assets/scene/solarsystem/planets/mars/layers/heightlayers/mola_utah.asset +++ b/data/assets/scene/solarsystem/planets/mars/layers/heightlayers/mola_utah.asset @@ -5,7 +5,21 @@ local layer = { Identifier = "Mola_Utah", Name = "Mola Elevation [Utah]", FilePath = mapServiceConfigs .. "/Utah/Mola_Elevation.wms", - TilePixelSize = 90 + TilePixelSize = 90, + Description = [[ This digital elevation model (DEM) is based on data from the Mars + Orbiter Laser Altimeter (MOLA; Smith et al., 2001), an instrument on NASA's Mars + Global Surveyor (MGS) spacecraft (Albee et al., 2001). The MOLA DEM represents + more than 600 million measurements gathered between 1999 and 2001, adjusted for + consistency (Neumann et al., 2001; Neumann, Smith & Zuber, 2003) and converted to + planetary radii. These have been converted to elevations above the areoid as + determined from a Martian gravity field solution GMM-2B (Lemoine et al., 2001), + truncated to degree and order 50, and oriented according to current standards. + The average accuracy of each point is originally ~100 meters in horizontal + position and ~1 meter in radius (Neumann et al., 2001). However, the total + elevation uncertainty is at least ±3 m due to the global error in the areoid + (±1.8 meters; Neumann et al., 2001) and regional uncertainties in its shape + (Neumann, 2002). Pixel resolution is 463 meters per pixel (m). (Description from + URL). Data Reference: (See URL).]], } asset.onInitialize(function () @@ -13,3 +27,16 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Mola Elevation [Utah]", + Version = "1.0", + Description = [[ Global elevation layer for Mars. This layer is hosted on the + OpenSpace server in Utah.]], + Author = "USGS", + URL = "https://astrogeology.usgs.gov/search/map/Mars/GlobalSurveyor/MOLA/" .. + "Mars_MGS_MOLA_DEM_mosaic_global_463m", + License = "NASA/PDS", + Identifiers = "Mola_Utah" +} diff --git a/data/assets/scene/solarsystem/planets/mars/map_service_configs/Mars_MGS_MOLA_DEM.wms b/data/assets/scene/solarsystem/planets/mars/map_service_configs/Mars_MGS_MOLA_DEM.wms deleted file mode 100644 index b50fc7ba32..0000000000 --- a/data/assets/scene/solarsystem/planets/mars/map_service_configs/Mars_MGS_MOLA_DEM.wms +++ /dev/null @@ -1,18 +0,0 @@ - - - http://d1poygwgh8gv6r.cloudfront.net/catalog/Mars_MGS_MOLA_DEM_mosaic_global_463m_8/1.0.0//default/default028mm/${z}/${y}/${x}.png - image/png - - - 5 - 2 - 1 - top - - Byte - EPSG:4326 - 256 - 256 - 2 - 5 - diff --git a/data/assets/scene/solarsystem/planets/mars/mars.asset b/data/assets/scene/solarsystem/planets/mars/mars.asset index 666f90e7bd..97d7a0d453 100644 --- a/data/assets/scene/solarsystem/planets/mars/mars.asset +++ b/data/assets/scene/solarsystem/planets/mars/mars.asset @@ -41,7 +41,9 @@ local Mars = { }, Tag = { "planet_solarSystem", "planet_terrestrial" }, GUI = { - Path = "/Solar System/Planets/Mars" + Name = "Mars", + Path = "/Solar System/Planets/Mars", + Description = [[ Main globe for Mars with labels and map layers.]] } } @@ -68,8 +70,20 @@ local MarsLabel = { Tag = { "solarsystem_labels" }, GUI = { Name = "Mars Label", - Path = "/Solar System/Planets/Mars" + Path = "/Solar System/Planets/Mars", + Description = [[ Main label for Mars]] } } assetHelper.registerSceneGraphNodesAndExport(asset, { Mars, MarsLabel }) + + +asset.meta = { + Name = "Mars", + Version = "1.0", + Description = [[ Mars globe, and main globe label.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "Mars,MarsLabel" +} diff --git a/data/assets/scene/solarsystem/planets/mars/moons/deimos.asset b/data/assets/scene/solarsystem/planets/mars/moons/deimos.asset index 0b27982a7d..621d9252f0 100644 --- a/data/assets/scene/solarsystem/planets/mars/moons/deimos.asset +++ b/data/assets/scene/solarsystem/planets/mars/moons/deimos.asset @@ -3,14 +3,6 @@ local assetHelper = asset.require('util/asset_helper') local kernels = asset.require('../mar097').Kernels --- local textures = asset.syncedResource({ --- Name = "Mars Textures", --- Type = "HttpSynchronization", --- Identifier = "mars_textures", --- Version = 1 --- }) - - local Deimos = { Identifier = "Deimos", Parent = transforms.MarsBarycenter.Identifier, @@ -37,7 +29,9 @@ local Deimos = { }, Tag = { "moon_solarSystem", "moon_terrestrial", "moon_mars" }, GUI = { - Path = "/Solar System/Planets/Mars" + Name = "Deimos", + Path = "/Solar System/Planets/Mars", + Description = [[One of two moons of Mars.]] } } @@ -58,10 +52,20 @@ local DeimosTrail = { Tag = { "moonTrail_solarSystem", "moonTrail_terrestrial", "moonTrail_mars" }, GUI = { Name = "Deimos Trail", - Path = "/Solar System/Planets/Mars" + Path = "/Solar System/Planets/Mars", + Description = [[Trail for Deimos]] } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { Deimos, DeimosTrail }) + + +asset.meta = { + Name = "Deimos", + Version = "1.0", + Description = [[ RenderableGlobe and Trail for Deimos.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "Deimos,DeimosTrail" +} diff --git a/data/assets/scene/solarsystem/planets/mars/moons/phobos.asset b/data/assets/scene/solarsystem/planets/mars/moons/phobos.asset index 899b674980..cbd9353046 100644 --- a/data/assets/scene/solarsystem/planets/mars/moons/phobos.asset +++ b/data/assets/scene/solarsystem/planets/mars/moons/phobos.asset @@ -3,14 +3,6 @@ local assetHelper = asset.require('util/asset_helper') local kernels = asset.require('../mar097').Kernels --- local textures = asset.syncedResource({ --- Name = "Mars Textures", --- Type = "HttpSynchronization", --- Identifier = "mars_textures", --- Version = 1 --- }) - - local Phobos = { Identifier = "Phobos", Parent = transforms.MarsBarycenter.Identifier, @@ -37,7 +29,9 @@ local Phobos = { }, Tag = { "moon_solarSystem", "moon_terrestrial", "moon_mars" }, GUI = { - Path = "/Solar System/Planets/Mars" + Name = "Phobos", + Path = "/Solar System/Planets/Mars", + Description = [[One of two moons of Mars.]] } } @@ -58,10 +52,20 @@ local PhobosTrail = { Tag = { "moonTrail_solarSystem", "moonTrail_terrestrial", "moonTrail_mars" }, GUI = { Name = "Phobos Trail", - Path = "/Solar System/Planets/Mars" + Path = "/Solar System/Planets/Mars", + Description = [[Trail for Phobos.]] } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { Phobos, PhobosTrail }) + + +asset.meta = { + Name = "Phobos", + Version = "1.0", + Description = [[ RenderableGlobe and Trail for Phobos.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "Phobos,PhobosTrail" +} diff --git a/data/assets/scene/solarsystem/planets/mars/trail.asset b/data/assets/scene/solarsystem/planets/mars/trail.asset index 19e201a8af..04c64c8b92 100644 --- a/data/assets/scene/solarsystem/planets/mars/trail.asset +++ b/data/assets/scene/solarsystem/planets/mars/trail.asset @@ -21,10 +21,21 @@ local MarsTrail = { Tag = { "planetTrail_solarSystem", "planetTrail_terrestrial" }, GUI = { Name = "Mars Trail", - Path = "/Solar System/Planets/Mars" + Path = "/Solar System/Planets/Mars", + Description = [[ Trail of Mars as observed by the Sun. Data from NASA Spice (see + base spice asset)]], } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { MarsTrail }) + + +asset.meta = { + Name = "Mars Trail", + Version = "1.0", + Description = [[ Main Mars trail from SPICE.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "MarsTrail" +} diff --git a/data/assets/scene/solarsystem/planets/mars/trail_earth.asset b/data/assets/scene/solarsystem/planets/mars/trail_earth.asset new file mode 100644 index 0000000000..e24f49a1fe --- /dev/null +++ b/data/assets/scene/solarsystem/planets/mars/trail_earth.asset @@ -0,0 +1,44 @@ +local assetHelper = asset.require('util/asset_helper') +local transforms = asset.require('scene/solarsystem/sun/transforms') +local earthTransforms = asset.require('scene/solarsystem/planets/earth/transforms') +asset.require("spice/base") + + + +local MarsTrailEarth = { + Identifier = "MarsTrailEarth", + Parent = earthTransforms.EarthBarycenter.Identifier, + Renderable = { + Type = "RenderableTrailOrbit", + Translation = { + Type = "SpiceTranslation", + Target = "MARS BARYCENTER", + Observer = "EARTH" + }, + Color = { 1.0, 0.5, 0.2 }, + Period = 224.695, + Resolution = 1000, + Enabled = false + }, + Tag = { "planetTrail_solarSystem_alt", "planetTrail_terrestrial_alt" }, + GUI = { + Name = "Mars trail from Earth", + Path = "/Solar System/Planets/Mars", + Hidden = false, + Description = [[ Trail of Mars as observed by the Earth]], + } +} + +assetHelper.registerSceneGraphNodesAndExport(asset, { MarsTrailEarth }) + + +asset.meta = { + Name = "Mars Trail from Earth", + Version = "1.0", + Description = [[ Trail of Mars, parented to Earth with Earth as the SPICE observer. + Data from NASA SPICE (see base spice asset)]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "MarsTrailEarth" +} diff --git a/data/assets/scene/solarsystem/planets/mars/transforms.asset b/data/assets/scene/solarsystem/planets/mars/transforms.asset index c2a793a56b..e499f1204e 100644 --- a/data/assets/scene/solarsystem/planets/mars/transforms.asset +++ b/data/assets/scene/solarsystem/planets/mars/transforms.asset @@ -15,8 +15,20 @@ local MarsBarycenter = { GUI = { Name = "Mars Barycenter", Path = "/Solar System/Planets/Mars", - Hidden = true + Hidden = true, + Description = [[ SPICE Translation for targeting Mars Barycenter]], } } assetHelper.registerSceneGraphNodesAndExport(asset, { MarsBarycenter }) + + +asset.meta = { + Name = "Mars Transforms", + Version = "1.0", + Description = [[ Transform with position for Mars.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "MarsBarycenter" +} diff --git a/data/assets/scene/solarsystem/planets/mercury/default_layers.asset b/data/assets/scene/solarsystem/planets/mercury/default_layers.asset index 2d5408e96e..d815269d83 100644 --- a/data/assets/scene/solarsystem/planets/mercury/default_layers.asset +++ b/data/assets/scene/solarsystem/planets/mercury/default_layers.asset @@ -38,5 +38,19 @@ asset.require(colorLayersPath .. "/ssimap_02122015") -- Set enabled layers (temporary solution) -- @TODO: do this using a boolean that's passed to the 'asset.require' instead asset.onInitialize(function () - openspace.setPropertyValueSingle("Scene.Mercury.Renderable.Layers.ColorLayers." .. colorLayer.layer.Identifier .. ".Enabled", true) + openspace.setPropertyValueSingle("Scene.Mercury.Renderable.Layers.ColorLayers." .. + colorLayer.layer.Identifier .. ".Enabled", true) end) + + +asset.meta = { + Name = "Default Mercury Layers", + Version = "1.0", + Description = [[ Default Mercury layers are: Messenger MDIS, Messenger Mosaic2, + Messenger BDR, Messenger MDR, Messenger MP3, Messenger Hie, Messenger Hiw, + Messenger LOI, Messenger SHADE, Aluminum Abundance, Calcium Abundance, Iron + Abundance, Magnesium Abundance, and Silicon Abundance]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/mercury/layers/colorlayers/alsimap_02122015.asset b/data/assets/scene/solarsystem/planets/mercury/layers/colorlayers/alsimap_02122015.asset index b0603cdd67..5d6343e53f 100644 --- a/data/assets/scene/solarsystem/planets/mercury/layers/colorlayers/alsimap_02122015.asset +++ b/data/assets/scene/solarsystem/planets/mercury/layers/colorlayers/alsimap_02122015.asset @@ -2,6 +2,7 @@ local texturesPath = asset.require("./../../mercury_textures").TexturesPath local globeIdentifier = asset.require("./../../mercury").Mercury.Identifier local layer = { + Name = "Aluminium Abundance", Identifier = "alsimap_02122015", FilePath = texturesPath .. "/alsimap_02122015.png", BlendMode = "Multiply", diff --git a/data/assets/scene/solarsystem/planets/mercury/layers/colorlayers/casimap_02122015.asset b/data/assets/scene/solarsystem/planets/mercury/layers/colorlayers/casimap_02122015.asset index ff4e891428..65cce51790 100644 --- a/data/assets/scene/solarsystem/planets/mercury/layers/colorlayers/casimap_02122015.asset +++ b/data/assets/scene/solarsystem/planets/mercury/layers/colorlayers/casimap_02122015.asset @@ -2,6 +2,7 @@ local texturesPath = asset.require("./../../mercury_textures").TexturesPath local globeIdentifier = asset.require("./../../mercury").Mercury.Identifier local layer = { + Name = "Calcium Abundance", Identifier = "casimap_02122015", FilePath = texturesPath .. "/casimap_02122015.png", BlendMode = "Multiply", diff --git a/data/assets/scene/solarsystem/planets/mercury/layers/colorlayers/fesimap_02122015.asset b/data/assets/scene/solarsystem/planets/mercury/layers/colorlayers/fesimap_02122015.asset index 8ae0355ebf..f8413736b9 100644 --- a/data/assets/scene/solarsystem/planets/mercury/layers/colorlayers/fesimap_02122015.asset +++ b/data/assets/scene/solarsystem/planets/mercury/layers/colorlayers/fesimap_02122015.asset @@ -2,6 +2,7 @@ local texturesPath = asset.require("./../../mercury_textures").TexturesPath local globeIdentifier = asset.require("./../../mercury").Mercury.Identifier local layer = { + Name = "Iron Abundance", Identifier = "fesimap_02122015", FilePath = texturesPath .. "/fesimap_02122015.png", BlendMode = "Multiply", diff --git a/data/assets/scene/solarsystem/planets/mercury/layers/colorlayers/mgsimap_02122015.asset b/data/assets/scene/solarsystem/planets/mercury/layers/colorlayers/mgsimap_02122015.asset index 6642a8c0a8..5e1a9fb48b 100644 --- a/data/assets/scene/solarsystem/planets/mercury/layers/colorlayers/mgsimap_02122015.asset +++ b/data/assets/scene/solarsystem/planets/mercury/layers/colorlayers/mgsimap_02122015.asset @@ -2,6 +2,7 @@ local texturesPath = asset.require("./../../mercury_textures").TexturesPath local globeIdentifier = asset.require("./../../mercury").Mercury.Identifier local layer = { + Name = "Magnesium Abundance", Identifier = "mgsimap_02122015", FilePath = texturesPath .. "/mgsimap_02122015.png", Settings = { diff --git a/data/assets/scene/solarsystem/planets/mercury/layers/colorlayers/ssimap_02122015.asset b/data/assets/scene/solarsystem/planets/mercury/layers/colorlayers/ssimap_02122015.asset index 868030a387..7139cffd5f 100644 --- a/data/assets/scene/solarsystem/planets/mercury/layers/colorlayers/ssimap_02122015.asset +++ b/data/assets/scene/solarsystem/planets/mercury/layers/colorlayers/ssimap_02122015.asset @@ -2,6 +2,7 @@ local texturesPath = asset.require("./../../mercury_textures").TexturesPath local globeIdentifier = asset.require("./../../mercury").Mercury.Identifier local layer = { + Name = "Silicon Abundance", Identifier = "ssimap_02122015", FilePath = texturesPath .. "/ssimap_02122015.png", BlendMode = "Multiply", diff --git a/data/assets/scene/solarsystem/planets/mercury/mercury.asset b/data/assets/scene/solarsystem/planets/mercury/mercury.asset index 771c819783..a2d8f3e0e2 100644 --- a/data/assets/scene/solarsystem/planets/mercury/mercury.asset +++ b/data/assets/scene/solarsystem/planets/mercury/mercury.asset @@ -62,8 +62,19 @@ local MercuryLabel = { Tag = { "solarsystem_labels" }, GUI = { Name = "Mercury Label", - Path = "/Solar System/Planets/Mercury" + Path = "/Solar System/Planets/Mercury", } } assetHelper.registerSceneGraphNodesAndExport(asset, { Mercury, MercuryLabel }) + + +asset.meta = { + Name = "Mercury", + Version = "1.0", + Description = [[ Mercury globe with labels, and main planet label.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "Mercury,MercuryLabel" +} diff --git a/data/assets/scene/solarsystem/planets/mercury/trail.asset b/data/assets/scene/solarsystem/planets/mercury/trail.asset index c3ed6f8935..bba93b5374 100644 --- a/data/assets/scene/solarsystem/planets/mercury/trail.asset +++ b/data/assets/scene/solarsystem/planets/mercury/trail.asset @@ -21,10 +21,21 @@ local MercuryTrail = { Tag = { "planetTrail_solarSystem", "planetTrail_terrestrial" }, GUI = { Name = "Mercury Trail", - Path = "/Solar System/Planets/Mercury" + Path = "/Milky Way/Gaia/Mercury", + Description = [[ Trail of Mercury as observed by the Sun.]], } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { MercuryTrail }) + + +asset.meta = { + Name = "Mercury Trail", + Version = "1.0", + Description = [[ Main trail for Mercury. Data from NASA Spice (see + base spice asset)]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "MercuryTrail" +} diff --git a/data/assets/scene/solarsystem/planets/mercury/trail_earth.asset b/data/assets/scene/solarsystem/planets/mercury/trail_earth.asset new file mode 100644 index 0000000000..979e9a6abd --- /dev/null +++ b/data/assets/scene/solarsystem/planets/mercury/trail_earth.asset @@ -0,0 +1,44 @@ +local assetHelper = asset.require('util/asset_helper') +local transforms = asset.require('scene/solarsystem/sun/transforms') +local earthTransforms = asset.require('scene/solarsystem/planets/earth/transforms') +asset.require("spice/base") + + + +local MercuryTrailEarth = { + Identifier = "MercuryTrailEarth", + Parent = earthTransforms.EarthBarycenter.Identifier, + Renderable = { + Type = "RenderableTrailOrbit", + Translation = { + Type = "SpiceTranslation", + Target = "MERCURY BARYCENTER", + Observer = "EARTH" + }, + Color = { 1.0, 0.5, 0.2 }, + Period = 224.695, + Resolution = 1000, + Enabled = false + }, + Tag = { "planetTrail_solarSystem_alt", "planetTrail_terrestrial_alt" }, + GUI = { + Name = "Mercury trail from Earth", + Path = "/Solar System/Planets/Mercury", + Hidden = false, + Description = [[ Trail of Mercury as observed by the Earth.]], + } +} + +assetHelper.registerSceneGraphNodesAndExport(asset, { MercuryTrailEarth }) + + +asset.meta = { + Name = "Mercury Trail from Earth", + Version = "1.0", + Description = [[ Alternate trail of Mercury, as observed by the Earth rather then the + Sun.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "MercuryTrailEarth" +} diff --git a/data/assets/scene/solarsystem/planets/mercury/transforms.asset b/data/assets/scene/solarsystem/planets/mercury/transforms.asset index 035854e517..1e4f43bbe3 100644 --- a/data/assets/scene/solarsystem/planets/mercury/transforms.asset +++ b/data/assets/scene/solarsystem/planets/mercury/transforms.asset @@ -15,8 +15,20 @@ local MercuryBarycenter = { GUI = { Name = "Mercury Barycenter", Path = "/Solar System/Planets/Mercury", - Hidden = true + Hidden = true, + Description = [[ Mercury Barycenter position]], } } assetHelper.registerSceneGraphNodesAndExport(asset, { MercuryBarycenter }) + + +asset.meta = { + Name = "Mercury Transforms", + Version = "1.0", + Description = [[ Mercury Barycenter transform]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "MercuryBarycenter" +} diff --git a/data/assets/scene/solarsystem/planets/neptune/default_layers.asset b/data/assets/scene/solarsystem/planets/neptune/default_layers.asset index 024f19fbd2..4f16da0714 100644 --- a/data/assets/scene/solarsystem/planets/neptune/default_layers.asset +++ b/data/assets/scene/solarsystem/planets/neptune/default_layers.asset @@ -5,5 +5,16 @@ local colorLayer = asset.require(colorLayersPath .. "/neptune_texture") -- Set enabled layers (temporary solution) -- @TODO: do this using a boolean that's passed to the 'asset.require' instead asset.onInitialize(function () - openspace.setPropertyValueSingle("Scene.Neptune.Renderable.Layers.ColorLayers." .. colorLayer.layer.Identifier .. ".Enabled", true) + openspace.setPropertyValueSingle("Scene.Neptune.Renderable.Layers.ColorLayers." .. + colorLayer.layer.Identifier .. ".Enabled", true) end) + + +asset.meta = { + Name = "Default Neptune Layers", + Version = "1.0", + Description = [[ Default Neptune layers are: Neptune Texture]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/neptune/inner_moons.asset b/data/assets/scene/solarsystem/planets/neptune/inner_moons.asset index f81bb85487..b2820fb9b4 100644 --- a/data/assets/scene/solarsystem/planets/neptune/inner_moons.asset +++ b/data/assets/scene/solarsystem/planets/neptune/inner_moons.asset @@ -129,9 +129,19 @@ local innerMoons = { } } - - assetHelper.registerSceneGraphNodesAndExport( asset, proceduralGlobes.createGlobes(innerMoons) ) + + +asset.meta = { + Name = "Neptune Inner Moons", + Version = "1.0", + Description = [[ Procedural Globe asset containing Neptune' inner prograde moons: + Naiad, Thalassa, Despina, Galatea, Larissa, S2004N1, and Proteus. Blank globes and + SPICE trails are generated for each moon.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/neptune/irregular_prograde_moons.asset b/data/assets/scene/solarsystem/planets/neptune/irregular_prograde_moons.asset index 4b726b03d6..0c9f78b039 100644 --- a/data/assets/scene/solarsystem/planets/neptune/irregular_prograde_moons.asset +++ b/data/assets/scene/solarsystem/planets/neptune/irregular_prograde_moons.asset @@ -57,16 +57,26 @@ local irregularProgradeMoons = { Tags = tags, GUI = { Path = "/Solar System/Planets/Neptune/Moons/Irregular Prograde Moons" - }, + }, TrailColor = trailColor, OrbitPeriod = 9740.73, Kernels = kernel086 } } - - assetHelper.registerSceneGraphNodesAndExport( asset, proceduralGlobes.createGlobes(irregularProgradeMoons) ) + + +asset.meta = { + Name = "Neptune Irregular Prograde Moons", + Version = "1.0", + Description = [[ Procedural Globe asset containing Neptune' irregular prograde + moons: Halimede, Psamathe and Neso. Blank globes and SPICE trails are generated for + each moon.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/neptune/irregular_retrograde_moons.asset b/data/assets/scene/solarsystem/planets/neptune/irregular_retrograde_moons.asset index 340af608cd..26e9d46ead 100644 --- a/data/assets/scene/solarsystem/planets/neptune/irregular_retrograde_moons.asset +++ b/data/assets/scene/solarsystem/planets/neptune/irregular_retrograde_moons.asset @@ -63,9 +63,19 @@ local irregularRetrogradeMoons = { } } - - assetHelper.registerSceneGraphNodesAndExport( asset, proceduralGlobes.createGlobes(irregularRetrogradeMoons) ) + + +asset.meta = { + Name = "Neptune Irregular Retrograde Moons", + Version = "1.0", + Description = [[ Procedural Globe asset containing Neptune' irregular retrograde + moons: Nereid, Sao and Laomedeia. Blank globes and SPICE trails are generated for + each moon.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/neptune/kernels.asset b/data/assets/scene/solarsystem/planets/neptune/kernels.asset index 2637699924..588330a97f 100644 --- a/data/assets/scene/solarsystem/planets/neptune/kernels.asset +++ b/data/assets/scene/solarsystem/planets/neptune/kernels.asset @@ -9,3 +9,13 @@ asset.export("nep081", Kernels .. '/nep081.bsp') asset.export("nep086", Kernels .. '/nep086.bsp') asset.export("nep087", Kernels .. '/nep087.bsp') asset.export("nep088", Kernels .. '/nep088.bsp') + + +asset.meta = { + Name = "Neptune Spice Kernels", + Version = "1.0", + Description = [[ Generic SPICE kernels for Neptune.]], + Author = "OpenSpace Team", + URL = "https://naif.jpl.nasa.gov/pub/naif/pds/wgc/kernels/spk/", + License = "NASA" +} diff --git a/data/assets/scene/solarsystem/planets/neptune/layers/colorlayers/neptune_texture.asset b/data/assets/scene/solarsystem/planets/neptune/layers/colorlayers/neptune_texture.asset index ecd83b0928..ce7d259b94 100644 --- a/data/assets/scene/solarsystem/planets/neptune/layers/colorlayers/neptune_texture.asset +++ b/data/assets/scene/solarsystem/planets/neptune/layers/colorlayers/neptune_texture.asset @@ -11,3 +11,13 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Neptune Texutre", + Version = "1.0", + Description = [[ Default jpg texture for Neptune]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/neptune/major_moons.asset b/data/assets/scene/solarsystem/planets/neptune/major_moons.asset index a6b9ebde18..eb4df5b6cf 100644 --- a/data/assets/scene/solarsystem/planets/neptune/major_moons.asset +++ b/data/assets/scene/solarsystem/planets/neptune/major_moons.asset @@ -1 +1,11 @@ asset.require('./triton') + + +asset.meta = { + Name = "Neptune Minor Moons", + Version = "1.0", + Description = [[ Meta asset containing Neptune's major moon: Triton]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/neptune/neptune.asset b/data/assets/scene/solarsystem/planets/neptune/neptune.asset index ee3f021892..a4fc70ae9a 100644 --- a/data/assets/scene/solarsystem/planets/neptune/neptune.asset +++ b/data/assets/scene/solarsystem/planets/neptune/neptune.asset @@ -21,7 +21,9 @@ local Neptune = { }, Tag = { "planet_solarSystem", "planet_giants" }, GUI = { - Path = "/Solar System/Planets/Neptune" + Name = "Neptune", + Path = "/Solar System/Planets/Neptune", + Description = [[Neptune globe]] } } @@ -42,8 +44,20 @@ local NeptuneLabel = { Tag = { "solarsystem_labels" }, GUI = { Name = "Neptune Label", - Path = "/Solar System/Planets/Neptune" + Path = "/Solar System/Planets/Neptune", + Description = [[ Main planet label for Neptune.]], } } assetHelper.registerSceneGraphNodesAndExport(asset, { Neptune, NeptuneLabel }) + + +asset.meta = { + Name = "Neptune", + Version = "1.0", + Description = [[ Neptune globe, and main planet label.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "Neptune" +} diff --git a/data/assets/scene/solarsystem/planets/neptune/trail.asset b/data/assets/scene/solarsystem/planets/neptune/trail.asset index c1647a47da..7faf40750a 100644 --- a/data/assets/scene/solarsystem/planets/neptune/trail.asset +++ b/data/assets/scene/solarsystem/planets/neptune/trail.asset @@ -32,10 +32,20 @@ local NeptuneTrail = { Tag = { "planetTrail_solarSystem", "planetTrail_giants" }, GUI = { Name = "Neptune Trail", - Path = "/Solar System/Planets/Neptune" + Path = "/Solar System/Planets/Neptune", + Description = [[ Trail of Neptune as observed by the Sun.]] } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { NeptuneTrail }) + + +asset.meta = { + Name = "Neptune Trail", + Version = "1.0", + Description = [[ Main trail of Neptune. Data from NASA Spice (see base spice asset)]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "NeptuneTrail" +} diff --git a/data/assets/scene/solarsystem/planets/neptune/trail_earth.asset b/data/assets/scene/solarsystem/planets/neptune/trail_earth.asset new file mode 100644 index 0000000000..1fd86c1337 --- /dev/null +++ b/data/assets/scene/solarsystem/planets/neptune/trail_earth.asset @@ -0,0 +1,44 @@ +local assetHelper = asset.require('util/asset_helper') +local transforms = asset.require('scene/solarsystem/sun/transforms') +local earthTransforms = asset.require('scene/solarsystem/planets/earth/transforms') +asset.require("spice/base") + + + +local NeptuneTrailEarth = { + Identifier = "NeptuneTrailEarth", + Parent = earthTransforms.EarthBarycenter.Identifier, + Renderable = { + Type = "RenderableTrailOrbit", + Translation = { + Type = "SpiceTranslation", + Target = "NEPTUNE BARYCENTER", + Observer = "EARTH" + }, + Color = { 1.0, 0.5, 0.2 }, + Period = 224.695, + Resolution = 1000, + Enabled = false + }, + Tag = { "planetTrail_solarSystem_alt", "planetTrail_terrestrial_alt" }, + GUI = { + Name = "Neptune trail from Earth", + Path = "/Solar System/Planets/Neptune", + Hidden = false, + Description = [[ Trail of Neptune as observed by the Earth.]], + } +} + +assetHelper.registerSceneGraphNodesAndExport(asset, { NeptuneTrailEarth }) + + +asset.meta = { + Name = "Neptune Trail from Earth", + Version = "1.0", + Description = [[ Alternate trail of Neptune, as observed by the Earth rather then the + Sun.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "VenusTrailEarth" +} diff --git a/data/assets/scene/solarsystem/planets/neptune/transforms.asset b/data/assets/scene/solarsystem/planets/neptune/transforms.asset index 864501df6b..19a99b6b61 100644 --- a/data/assets/scene/solarsystem/planets/neptune/transforms.asset +++ b/data/assets/scene/solarsystem/planets/neptune/transforms.asset @@ -15,8 +15,20 @@ local NeptuneBarycenter = { GUI = { Name = "Neptune Barycenter", Path = "/Solar System/Planets/Neptune", - Hidden = true + Hidden = true, + Description = [[ Neptune Barycenter position]], } } assetHelper.registerSceneGraphNodesAndExport(asset, { NeptuneBarycenter }) + + +asset.meta = { + Name = "Neptune Transforms", + Version = "1.0", + Description = [[ Neptune Barycenter transform]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "NeptuneBarycenter" +} diff --git a/data/assets/scene/solarsystem/planets/neptune/triton.asset b/data/assets/scene/solarsystem/planets/neptune/triton.asset index 55bf22fbb5..6e8dcb5d4d 100644 --- a/data/assets/scene/solarsystem/planets/neptune/triton.asset +++ b/data/assets/scene/solarsystem/planets/neptune/triton.asset @@ -22,9 +22,19 @@ local Triton = { Kernels = kernel } - - assetHelper.registerSceneGraphNodesAndExport( asset, proceduralGlobes.createGlobes({ Triton }) ) + + +asset.meta = { + Name = "Triton", + Version = "1.0", + Description = [[ Procedural Globe asset containing Neptune's moon: Triton. + A blank globe and SPICE trail are generated for the moon.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "Triton" +} diff --git a/data/assets/scene/solarsystem/planets/planets.asset b/data/assets/scene/solarsystem/planets/planets.asset index fd537c3f98..d7ea310c0b 100644 --- a/data/assets/scene/solarsystem/planets/planets.asset +++ b/data/assets/scene/solarsystem/planets/planets.asset @@ -1,12 +1,16 @@ asset.require('./mercury/mercury') asset.require('./venus/venus') +asset.require('./venus/trail') +asset.require('./venus/trail_earth') asset.require('./venus/atmosphere') asset.require('./earth/earth') +asset.require('./earth/trail') asset.require('./earth/atmosphere') asset.require('./earth/markers') asset.require('./earth/moon/moon') +asset.require('./earth/moon/trail') asset.require('./mars/mars') asset.require('./mars/atmosphere') diff --git a/data/assets/scene/solarsystem/planets/saturn/default_layers.asset b/data/assets/scene/solarsystem/planets/saturn/default_layers.asset index 8bf7dab762..c447b26495 100644 --- a/data/assets/scene/solarsystem/planets/saturn/default_layers.asset +++ b/data/assets/scene/solarsystem/planets/saturn/default_layers.asset @@ -7,3 +7,13 @@ local colorLayer = asset.require(colorLayersPath .. "/saturn_texture") asset.onInitialize(function () openspace.setPropertyValueSingle("Scene.Saturn.Renderable.Layers.ColorLayers." .. colorLayer.layer.Identifier .. ".Enabled", true) end) + + +asset.meta = { + Name = "Default Saturn Layers", + Version = "1.0", + Description = [[ Default Saturn layers are: Saturn texture]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/dione/default_layers.asset b/data/assets/scene/solarsystem/planets/saturn/dione/default_layers.asset index a049613a10..32b2f9c147 100644 --- a/data/assets/scene/solarsystem/planets/saturn/dione/default_layers.asset +++ b/data/assets/scene/solarsystem/planets/saturn/dione/default_layers.asset @@ -5,5 +5,16 @@ local colorLayer = asset.require(colorLayersPath .. "/dione_texture") -- Set enabled layers (temporary solution) -- @TODO: do this using a boolean that's passed to the 'asset.require' instead asset.onInitialize(function () - openspace.setPropertyValueSingle("Scene.Dione.Renderable.Layers.ColorLayers." .. colorLayer.layer.Identifier .. ".Enabled", true) + openspace.setPropertyValueSingle("Scene.Dione.Renderable.Layers.ColorLayers." .. + colorLayer.layer.Identifier .. ".Enabled", true) end) + + +asset.meta = { + Name = "Default Dione Layers", + Version = "1.0", + Description = [[ Default Dione layers are: Dione Texture]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/dione/dione.asset b/data/assets/scene/solarsystem/planets/saturn/dione/dione.asset index 38e136eba1..bee85a6396 100644 --- a/data/assets/scene/solarsystem/planets/saturn/dione/dione.asset +++ b/data/assets/scene/solarsystem/planets/saturn/dione/dione.asset @@ -48,6 +48,14 @@ local Dione = { } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { Dione }) + + +asset.meta = { + Name = "Dione", + Version = "1.0", + Description = [[ Dione globe with labels]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/dione/layers/colorlayers/dione_texture.asset b/data/assets/scene/solarsystem/planets/saturn/dione/layers/colorlayers/dione_texture.asset index 764a01c156..c1ba6585d7 100644 --- a/data/assets/scene/solarsystem/planets/saturn/dione/layers/colorlayers/dione_texture.asset +++ b/data/assets/scene/solarsystem/planets/saturn/dione/layers/colorlayers/dione_texture.asset @@ -11,3 +11,13 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Dione Texutre", + Version = "1.0", + Description = [[ Default jpg texture for Dione]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/dione/trail.asset b/data/assets/scene/solarsystem/planets/saturn/dione/trail.asset index e68eea7f46..c94b6799ab 100644 --- a/data/assets/scene/solarsystem/planets/saturn/dione/trail.asset +++ b/data/assets/scene/solarsystem/planets/saturn/dione/trail.asset @@ -22,10 +22,19 @@ local DioneTrail = { Tag = { "moonTrail_solarSystem", "moonTrail_giants", "moonTrail_saturn" }, GUI = { Name = "Dione Trail", - Path = "/Solar System/Planets/Saturn/Moons" + Path = "/Solar System/Planets/Saturn/Moons", + Description = [[ Trail of Saturn's moon Dione as observed by Saturn]], } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { DioneTrail }) + + +asset.meta = { + Name = "Dione Trail", + Version = "1.0", + Description = [[ Trail for Dione. Data from NASA Spice (see base spice asset)]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/enceladus/default_layers.asset b/data/assets/scene/solarsystem/planets/saturn/enceladus/default_layers.asset index 1060a27b25..289882ed7f 100644 --- a/data/assets/scene/solarsystem/planets/saturn/enceladus/default_layers.asset +++ b/data/assets/scene/solarsystem/planets/saturn/enceladus/default_layers.asset @@ -6,5 +6,17 @@ local colorLayer = asset.require(colorLayersPath .. "/global_mosaic_100m_hpf") -- Set enabled layers (temporary solution) -- @TODO: do this using a boolean that's passed to the 'asset.require' instead asset.onInitialize(function () - openspace.setPropertyValueSingle("Scene.Enceladus.Renderable.Layers.ColorLayers." .. colorLayer.layer.Identifier .. ".Enabled", true) + openspace.setPropertyValueSingle("Scene.Enceladus.Renderable.Layers.ColorLayers." .. + colorLayer.layer.Identifier .. ".Enabled", true) end) + + +asset.meta = { + Name = "Default Enceladus Layers", + Version = "1.0", + Description = [[ Default Enceladus layers are: Enceladus Texture and Cassini Global + Mosaic 100m HPF]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/enceladus/enceladus.asset b/data/assets/scene/solarsystem/planets/saturn/enceladus/enceladus.asset index d27fc30a25..9285f80cd1 100644 --- a/data/assets/scene/solarsystem/planets/saturn/enceladus/enceladus.asset +++ b/data/assets/scene/solarsystem/planets/saturn/enceladus/enceladus.asset @@ -44,10 +44,21 @@ local Enceladus = { }, Tag = { "moon_solarSystem", "moon_giants", "moon_saturn" }, GUI = { - Path = "/Solar System/Planets/Saturn/Moons" + Name = "Enceladus", + Path = "/Solar System/Planets/Saturn/Moons", + Description = [[ Enceladus globe with labels]], } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { Enceladus }) + + +asset.meta = { + Name = "Enceladus", + Version = "1.0", + Description = [[ Enceladus globe with labels and map layers]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "Enceladus" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/enceladus/layers/colorlayers/enceladus_texture.asset b/data/assets/scene/solarsystem/planets/saturn/enceladus/layers/colorlayers/enceladus_texture.asset index b96eca1654..41b14b81c5 100644 --- a/data/assets/scene/solarsystem/planets/saturn/enceladus/layers/colorlayers/enceladus_texture.asset +++ b/data/assets/scene/solarsystem/planets/saturn/enceladus/layers/colorlayers/enceladus_texture.asset @@ -11,3 +11,13 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Enceladus Texutre", + Version = "1.0", + Description = [[ Default jpg texture for Enceladus]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/enceladus/layers/colorlayers/global_mosaic_100m_hpf.asset b/data/assets/scene/solarsystem/planets/saturn/enceladus/layers/colorlayers/global_mosaic_100m_hpf.asset index 3db67ee35e..cbb634c0fa 100644 --- a/data/assets/scene/solarsystem/planets/saturn/enceladus/layers/colorlayers/global_mosaic_100m_hpf.asset +++ b/data/assets/scene/solarsystem/planets/saturn/enceladus/layers/colorlayers/global_mosaic_100m_hpf.asset @@ -5,6 +5,12 @@ local layer = { Identifier = "Global_Mosaic_100m_HPF", Name = "Cassini Global Mosaic 100m HPF", FilePath = mapServiceConfigs .. "/Cassini_ISS_Global_Mosaic_100m_HPF.wms", + Description = [[ This mosaic represents the completion of a global control network of + Enceladus containing Cassini Imaging Science Subsystem (ISS) images. A total of + 586 images in CLR, GRN, UV3, and IR3 filters were selected for the control + network. The image selection criteria were based on coverage, quality, and a + spatial resolution between 50 and 500 meters per pixel (m) with phase angles less + than 120 degrees. (Description from URL).]] } asset.onInitialize(function () @@ -12,3 +18,16 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Cassini Global Mosaic 100m HPF", + Version = "1.0", + Description = [[ Cassini Global mosaic for Enceladus. This map is hosted on the + OpenSpace server Sweden.]], + Author = "USGS", + URL = "https://astrogeology.usgs.gov/search/map/Enceladus/Cassini/" .. + "Enceladus_Cassini_ISS_Global_Mosaic_100m_HPF", + License = "NASA/PDS", + Identifiers = "Global_Mosaic_100m_HPF" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/enceladus/trail.asset b/data/assets/scene/solarsystem/planets/saturn/enceladus/trail.asset index 8cb64aee9e..647228d2e1 100644 --- a/data/assets/scene/solarsystem/planets/saturn/enceladus/trail.asset +++ b/data/assets/scene/solarsystem/planets/saturn/enceladus/trail.asset @@ -22,10 +22,20 @@ local EnceladusTrail = { Tag = { "moonTrail_solarSystem", "moonTrail_giants", "moonTrail_saturn" }, GUI = { Name = "Enceladus Trail", - Path = "/Solar System/Planets/Saturn/Moons" + Path = "/Solar System/Planets/Saturn/Moons", + Description = [[ Trail of Saturn's moon Enceladus as observed by Saturn.]], } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { EnceladusTrail }) + + +asset.meta = { + Name = "Enceladus Trail", + Version = "1.0", + Description = [[ Trail for Enceladus. Data from NASA Spice (see base spice asset)]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "EnceladusTrail" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/hyperion/hyperion.asset b/data/assets/scene/solarsystem/planets/saturn/hyperion/hyperion.asset index 8698e41e73..3103501c3e 100644 --- a/data/assets/scene/solarsystem/planets/saturn/hyperion/hyperion.asset +++ b/data/assets/scene/solarsystem/planets/saturn/hyperion/hyperion.asset @@ -2,15 +2,7 @@ local transforms = asset.require('../transforms') local assetHelper = asset.require('util/asset_helper') local kernel = asset.require('../kernels').sat375 asset.require('./trail') - - - --- local textures = asset.syncedResource({ --- Name = "Hyperion textures", --- Type = "HttpSynchronization", --- Identifier = "hyperion_textures", --- Version = 1 --- }) +local labelsPath = asset.require('../saturn_globelabels').LabelsPath local Hyperion = { Identifier = "Hyperion", @@ -32,22 +24,40 @@ local Hyperion = { Type = "RenderableGlobe", Radii = { 360200, 266000, 205400}, SegmentsPerPatch = 64, - Layers = { - -- ColorLayers = { - -- { - -- Name = "Hyperion Texture", - -- FilePath = textures .. "/hyperion.jpg", - -- Enabled = true - -- } - -- } + Layers = {}, + Labels = { + Enable = false, + FileName = labelsPath .. "/hyperion.labels", + LabelAlignmentOption = "Horizontally", -- or Circularly + LabelsFontSize = 14.0, + LabelsSize = 8.0, + LabelsMinSize = 1.0, + LabelsMaxSize = 1500.0, + ProximityEnabled = false, + LabelsFadeInEnabled = true, + FadeInStartingDistance = 500000.0, + FadeOutStartingDistance = 1000000.0, + LabelsForceDomeRendering = true, + LabelsDistanceEPS = 1350000.0, + LabelsColor = { 1.0, 1.0, 0.0 } } }, Tag = { "moon_solarSystem", "moon_giants", "moon_saturn" }, GUI = { + Name = "Hyperion", Path = "/Solar System/Planets/Saturn/Moons" } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { Hyperion }) + + +asset.meta = { + Name = "Hyperion", + Version = "1.0", + Description = [[ Hyperion globe with labels]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "Hyperion" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/hyperion/trail.asset b/data/assets/scene/solarsystem/planets/saturn/hyperion/trail.asset index e8a3533014..bf16f431d2 100644 --- a/data/assets/scene/solarsystem/planets/saturn/hyperion/trail.asset +++ b/data/assets/scene/solarsystem/planets/saturn/hyperion/trail.asset @@ -26,6 +26,16 @@ local HyperionTrail = { } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { HyperionTrail }) + + +asset.meta = { + Name = "Hyperion Trail", + Version = "1.0", + Description = [[ Trail of Saturn's moon Hyperion as observed by Saturn. Data from NASA + Spice (see base spice asset)]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "HyperionTrail" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/iapetus/default_layers.asset b/data/assets/scene/solarsystem/planets/saturn/iapetus/default_layers.asset index 9e0f191bcd..22bd2e4002 100644 --- a/data/assets/scene/solarsystem/planets/saturn/iapetus/default_layers.asset +++ b/data/assets/scene/solarsystem/planets/saturn/iapetus/default_layers.asset @@ -5,5 +5,16 @@ local colorLayer = asset.require(colorLayersPath .. "/iapetus_texture") -- Set enabled layers (temporary solution) -- @TODO: do this using a boolean that's passed to the 'asset.require' instead asset.onInitialize(function () - openspace.setPropertyValueSingle("Scene.Iapetus.Renderable.Layers.ColorLayers." .. colorLayer.layer.Identifier .. ".Enabled", true) + openspace.setPropertyValueSingle("Scene.Iapetus.Renderable.Layers.ColorLayers." .. + colorLayer.layer.Identifier .. ".Enabled", true) end) + + +asset.meta = { + Name = "Default Iapetus Layers", + Version = "1.0", + Description = [[ Default Iapetus layers are: Iapetus Texture]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/iapetus/iapetus.asset b/data/assets/scene/solarsystem/planets/saturn/iapetus/iapetus.asset index 20dc032e50..63132da3ad 100644 --- a/data/assets/scene/solarsystem/planets/saturn/iapetus/iapetus.asset +++ b/data/assets/scene/solarsystem/planets/saturn/iapetus/iapetus.asset @@ -16,7 +16,7 @@ local Iapetus = { }, Rotation = { Type = "SpiceRotation", - SourceFrame = "IAU_ENCELADUS", + SourceFrame = "IAU_IAPETUS", DestinationFrame = "GALACTIC" } }, @@ -44,10 +44,21 @@ local Iapetus = { }, Tag = { "moon_solarSystem", "moon_giants", "moon_saturn" }, GUI = { - Path = "/Solar System/Planets/Saturn/Moons" + Name = "Iapetus", + Path = "/Solar System/Planets/Saturn/Moons", + Description = [[Third largest moon of Saturn. ]] } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { Iapetus }) + + +asset.meta = { + Name = "Iapetus", + Version = "1.0", + Description = [[ Iapetus globe with labels.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "Iapetus" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/iapetus/layers/colorlayers/iapetus_texture.asset b/data/assets/scene/solarsystem/planets/saturn/iapetus/layers/colorlayers/iapetus_texture.asset index 849919ac22..18015a6441 100644 --- a/data/assets/scene/solarsystem/planets/saturn/iapetus/layers/colorlayers/iapetus_texture.asset +++ b/data/assets/scene/solarsystem/planets/saturn/iapetus/layers/colorlayers/iapetus_texture.asset @@ -11,3 +11,13 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Iapetus Texutre", + Version = "1.0", + Description = [[ Default jpg texture for Iapetus]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/iapetus/trail.asset b/data/assets/scene/solarsystem/planets/saturn/iapetus/trail.asset index 12c6df8975..c8c089970b 100644 --- a/data/assets/scene/solarsystem/planets/saturn/iapetus/trail.asset +++ b/data/assets/scene/solarsystem/planets/saturn/iapetus/trail.asset @@ -22,10 +22,20 @@ local IapetusTrail = { Tag = { "moonTrail_solarSystem", "moonTrail_giants", "moonTrail_saturn" }, GUI = { Name = "Iapetus Trail", - Path = "/Solar System/Planets/Saturn/Moons" + Path = "/Solar System/Planets/Saturn/Moons", + Description = [[ Trail of Saturn's moon Iapetus as observed by Saturn.]], } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { IapetusTrail }) + + +asset.meta = { + Name = "Iapetus Trail", + Version = "1.0", + Description = [[Main trail for Iapetus. Data from NASA Spice (see base spice asset)]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "IapetusTrail" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/kernels.asset b/data/assets/scene/solarsystem/planets/saturn/kernels.asset index c641fa4b6c..04bb883e80 100644 --- a/data/assets/scene/solarsystem/planets/saturn/kernels.asset +++ b/data/assets/scene/solarsystem/planets/saturn/kernels.asset @@ -9,3 +9,13 @@ asset.export("sat319", Kernels .. '/sat319.bsp') asset.export("sat368", Kernels .. '/sat368.bsp') asset.export("sat375", Kernels .. '/sat375.bsp') asset.export("sat393", Kernels .. '/sat393.bsp') + + +asset.meta = { + Name = "Saturn Spice Kernels", + Version = "1.0", + Description = [[ Generic SPICE kernels for Saturn.]], + Author = "OpenSpace Team", + URL = "https://naif.jpl.nasa.gov/pub/naif/pds/wgc/kernels/spk/", + License = "NASA" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/layers/colorlayers/saturn_texture.asset b/data/assets/scene/solarsystem/planets/saturn/layers/colorlayers/saturn_texture.asset index 53db561179..04ae53450c 100644 --- a/data/assets/scene/solarsystem/planets/saturn/layers/colorlayers/saturn_texture.asset +++ b/data/assets/scene/solarsystem/planets/saturn/layers/colorlayers/saturn_texture.asset @@ -11,3 +11,13 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Saturn Texutre", + Version = "1.0", + Description = [[ Default jpg texture for Saturn]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/major_moons.asset b/data/assets/scene/solarsystem/planets/saturn/major_moons.asset index e14aa30f56..b6ed6156d6 100644 --- a/data/assets/scene/solarsystem/planets/saturn/major_moons.asset +++ b/data/assets/scene/solarsystem/planets/saturn/major_moons.asset @@ -6,3 +6,14 @@ asset.require('./mimas/mimas') asset.require('./rhea/rhea') asset.require('./tethys/tethys') asset.require('./titan/titan') + + +asset.meta = { + Name = "Saturn Major Moons", + Version = "1.0", + Description = [[ Meta asset containing Saturn's major moons: Dione, Enceladus, + Hyperion, Iapetus, Mimas, Rhea, Tethys, and Titan]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/mimas/default_layers.asset b/data/assets/scene/solarsystem/planets/saturn/mimas/default_layers.asset index b568501559..3521c2beb4 100644 --- a/data/assets/scene/solarsystem/planets/saturn/mimas/default_layers.asset +++ b/data/assets/scene/solarsystem/planets/saturn/mimas/default_layers.asset @@ -5,5 +5,16 @@ local colorLayer = asset.require(colorLayersPath .. "/mimas_texture") -- Set enabled layers (temporary solution) -- @TODO: do this using a boolean that's passed to the 'asset.require' instead asset.onInitialize(function () - openspace.setPropertyValueSingle("Scene.Mimas.Renderable.Layers.ColorLayers." .. colorLayer.layer.Identifier .. ".Enabled", true) + openspace.setPropertyValueSingle("Scene.Mimas.Renderable.Layers.ColorLayers." .. + colorLayer.layer.Identifier .. ".Enabled", true) end) + + +asset.meta = { + Name = "Default Mimas Layers", + Version = "1.0", + Description = [[ Default Mimas layers are: Mimas Texture]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/mimas/layers/colorlayers/mimas_texture.asset b/data/assets/scene/solarsystem/planets/saturn/mimas/layers/colorlayers/mimas_texture.asset index 355efd6b70..b2a293f92c 100644 --- a/data/assets/scene/solarsystem/planets/saturn/mimas/layers/colorlayers/mimas_texture.asset +++ b/data/assets/scene/solarsystem/planets/saturn/mimas/layers/colorlayers/mimas_texture.asset @@ -11,3 +11,13 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Mimas Texutre", + Version = "1.0", + Description = [[ Default jpg texture for Mimas]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/mimas/mimas.asset b/data/assets/scene/solarsystem/planets/saturn/mimas/mimas.asset index b453f6b0fa..e56c74a28d 100644 --- a/data/assets/scene/solarsystem/planets/saturn/mimas/mimas.asset +++ b/data/assets/scene/solarsystem/planets/saturn/mimas/mimas.asset @@ -44,10 +44,21 @@ local Mimas = { }, Tag = { "moon_solarSystem", "moon_giants", "moon_saturn" }, GUI = { - Path = "/Solar System/Planets/Saturn/Moons" + Name = "Mimas", + Path = "/Solar System/Planets/Saturn/Moons", + Description = [[That's no moon...]] } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { Mimas }) + + +asset.meta = { + Name = "Mimas", + Version = "1.0", + Description = [[ Mimas globe with labels.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "Mimas" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/mimas/trail.asset b/data/assets/scene/solarsystem/planets/saturn/mimas/trail.asset index 996d15614c..32355adc85 100644 --- a/data/assets/scene/solarsystem/planets/saturn/mimas/trail.asset +++ b/data/assets/scene/solarsystem/planets/saturn/mimas/trail.asset @@ -22,10 +22,20 @@ local MimasTrail = { Tag = { "moonTrail_solarSystem", "moonTrail_giants", "moonTrail_saturn" }, GUI = { Name = "Mimas Trail", - Path = "/Solar System/Planets/Saturn/Moons" + Path = "/Solar System/Planets/Saturn/Moons", + Description = [[ Trail of Saturn's moon Mimas as observed by Saturn.]], } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { MimasTrail }) + + +asset.meta = { + Name = "Mimas Trail", + Version = "1.0", + Description = [[ Main trail for Mimas. Data from NASA Spice (see base spice asset)]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "MimasTrail" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/minor/gallic_group.asset b/data/assets/scene/solarsystem/planets/saturn/minor/gallic_group.asset index a92d78ef07..6417551036 100644 --- a/data/assets/scene/solarsystem/planets/saturn/minor/gallic_group.asset +++ b/data/assets/scene/solarsystem/planets/saturn/minor/gallic_group.asset @@ -77,9 +77,19 @@ local gallicGroup = { }, } - - assetHelper.registerSceneGraphNodesAndExport( asset, proceduralGlobes.createGlobes(gallicGroup) ) + + +asset.meta = { + Name = "Saturn Gallic Group Moons", + Version = "1.0", + Description = [[ Procedural Globe asset containing Saturn's Gallic Group + moons: Albiorix, Bebhionn, Erriapus, and Tarvos. Blank globes and SPICE trails are + generated for each moon.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/minor/inuit_group.asset b/data/assets/scene/solarsystem/planets/saturn/minor/inuit_group.asset index 273a95d9f7..3bdd0ea65f 100644 --- a/data/assets/scene/solarsystem/planets/saturn/minor/inuit_group.asset +++ b/data/assets/scene/solarsystem/planets/saturn/minor/inuit_group.asset @@ -93,9 +93,19 @@ local inuitGroup = { }, } - - assetHelper.registerSceneGraphNodesAndExport( asset, proceduralGlobes.createGlobes(inuitGroup) ) + + +asset.meta = { + Name = "Saturn Inuit Group Moons", + Version = "1.0", + Description = [[ Procedural Globe asset containing Saturn's Inuit Group + moons: Kiviuq, Ijiraq, Paaliaq, Siarnaq and Tarqeq. Blank globes and SPICE trails + are generated for each moon.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/minor/norse_group.asset b/data/assets/scene/solarsystem/planets/saturn/minor/norse_group.asset index 8776452fd1..119b033e96 100644 --- a/data/assets/scene/solarsystem/planets/saturn/minor/norse_group.asset +++ b/data/assets/scene/solarsystem/planets/saturn/minor/norse_group.asset @@ -488,9 +488,21 @@ local norseGroup = { }, } - - assetHelper.registerSceneGraphNodesAndExport( asset, proceduralGlobes.createGlobes(norseGroup) ) + + +asset.meta = { + Name = "Saturn Norse Group Moons", + Version = "1.0", + Description = [[ Procedural Globe asset containing Saturn's Norse Group + moons: Phoebe, Skathi, S2007S2, Skoll, S2004S13, Greip, Hyrrokkin, Jarnsaxa, + Mundilfari, S2006S1, S2004S17, Bergelmir, Narvi, Suttungr, Hati, S2004S12, + Farbauti, Thrymr, Aegir, S2007S3, Bestla, S2004S7, S2006S3, Fenrir, Kari, Ymir, + Loge, Fornjot. Blank globes and SPICE trails are generated for each moon.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/minor/other_group.asset b/data/assets/scene/solarsystem/planets/saturn/minor/other_group.asset index 765ae86ad5..7a74aebf7a 100644 --- a/data/assets/scene/solarsystem/planets/saturn/minor/other_group.asset +++ b/data/assets/scene/solarsystem/planets/saturn/minor/other_group.asset @@ -223,9 +223,21 @@ local otherGroup = { } } - - assetHelper.registerSceneGraphNodesAndExport( asset, proceduralGlobes.createGlobes(otherGroup) ) + + +asset.meta = { + Name = "Saturn Other Group Moons", + Version = "1.0", + Description = [[ Procedural Globe asset containing Saturn's Other Group + moons: Phoebe, Skathi, S2007S2, Skoll, S2004S13, Greip, Hyrrokkin, Jarnsaxa, + Mundilfari, S2006S1, S2004S17, Bergelmir, Narvi, Suttungr, Hati, S2004S12, + Farbauti, Thrymr, Aegir, S2007S3, Bestla, S2004S7, S2006S3, Fenrir, Kari, Ymir, + Loge, Fornjot. Blank globes and SPICE trails are generated for each moon.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/minor_moons.asset b/data/assets/scene/solarsystem/planets/saturn/minor_moons.asset index ba7da9ccbc..15cce78ea9 100644 --- a/data/assets/scene/solarsystem/planets/saturn/minor_moons.asset +++ b/data/assets/scene/solarsystem/planets/saturn/minor_moons.asset @@ -2,3 +2,14 @@ asset.require('./minor/gallic_group') asset.require('./minor/inuit_group') asset.require('./minor/norse_group') asset.require('./minor/other_group') + + +asset.meta = { + Name = "Saturn Minor Moons", + Version = "1.0", + Description = [[ Meta asset containing four moon groups: Gallic, Inuit, Norse and + Other]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/rhea/default_layers.asset b/data/assets/scene/solarsystem/planets/saturn/rhea/default_layers.asset index 58e4daaa91..41d72450ae 100644 --- a/data/assets/scene/solarsystem/planets/saturn/rhea/default_layers.asset +++ b/data/assets/scene/solarsystem/planets/saturn/rhea/default_layers.asset @@ -5,5 +5,16 @@ local colorLayer = asset.require(colorLayersPath .. "/rhea_texture") -- Set enabled layers (temporary solution) -- @TODO: do this using a boolean that's passed to the 'asset.require' instead asset.onInitialize(function () - openspace.setPropertyValueSingle("Scene.Rhea.Renderable.Layers.ColorLayers." .. colorLayer.layer.Identifier .. ".Enabled", true) + openspace.setPropertyValueSingle("Scene.Rhea.Renderable.Layers.ColorLayers." .. + colorLayer.layer.Identifier .. ".Enabled", true) end) + + +asset.meta = { + Name = "Default Rhea Layers", + Version = "1.0", + Description = [[ Default Rhea layers are: Rhea Texture]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/rhea/layers/colorlayers/rhea_texture.asset b/data/assets/scene/solarsystem/planets/saturn/rhea/layers/colorlayers/rhea_texture.asset index 061aa17e62..36decdf745 100644 --- a/data/assets/scene/solarsystem/planets/saturn/rhea/layers/colorlayers/rhea_texture.asset +++ b/data/assets/scene/solarsystem/planets/saturn/rhea/layers/colorlayers/rhea_texture.asset @@ -11,3 +11,13 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Rhea Texutre", + Version = "1.0", + Description = [[ Default jpg texture for Rhea]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/rhea/rhea.asset b/data/assets/scene/solarsystem/planets/saturn/rhea/rhea.asset index faed079a9d..fbbe12a40d 100644 --- a/data/assets/scene/solarsystem/planets/saturn/rhea/rhea.asset +++ b/data/assets/scene/solarsystem/planets/saturn/rhea/rhea.asset @@ -16,7 +16,7 @@ local Rhea = { }, Rotation = { Type = "SpiceRotation", - SourceFrame = "IAU_ENCELADUS", + SourceFrame = "IAU_RHEA", DestinationFrame = "GALACTIC" } }, @@ -44,10 +44,20 @@ local Rhea = { }, Tag = { "moon_solarSystem", "moon_giants", "moon_saturn" }, GUI = { - Path = "/Solar System/Planets/Saturn/Moons" + Name = "Rhea", + Path = "/Solar System/Planets/Saturn/Moons", + Description = [[Second largest moon of Saturn.]] } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { Rhea }) + + +asset.meta = { + Name = "Rhea", + Version = "1.0", + Description = [[ Rhea globe with labels.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/rhea/trail.asset b/data/assets/scene/solarsystem/planets/saturn/rhea/trail.asset index 70b116dcd2..7e8a76469b 100644 --- a/data/assets/scene/solarsystem/planets/saturn/rhea/trail.asset +++ b/data/assets/scene/solarsystem/planets/saturn/rhea/trail.asset @@ -22,10 +22,19 @@ local RheaTrail = { Tag = { "moonTrail_solarSystem", "moonTrail_giants", "moonTrail_saturn" }, GUI = { Name = "Rhea Trail", - Path = "/Solar System/Planets/Saturn/Moons" + Path = "/Solar System/Planets/Saturn/Moons", + Description = [[ Trail of Saturn's moon Rhea as observed by Saturn.]], } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { RheaTrail }) + + +asset.meta = { + Name = "Rhea Trail", + Version = "1.0", + Description = [[ Main trail for Rhea. Data from NASA Spice (see base spice asset)]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/saturn.asset b/data/assets/scene/solarsystem/planets/saturn/saturn.asset index 16dd8c7700..eadd772084 100644 --- a/data/assets/scene/solarsystem/planets/saturn/saturn.asset +++ b/data/assets/scene/solarsystem/planets/saturn/saturn.asset @@ -37,7 +37,9 @@ local Saturn = { }, Tag = { "planet_solarSystem", "planet_giants" }, GUI = { - Path = "/Solar System/Planets/Saturn" + Name = "Saturn", + Path = "/Solar System/Planets/Saturn", + Description = [[Saturn globe.]] } } @@ -58,8 +60,19 @@ local SaturnLabel = { Tag = { "solarsystem_labels" }, GUI = { Name = "Saturn Label", - Path = "/Solar System/Planets/Saturn" + Path = "/Solar System/Planets/Saturn", + Description = [[ Main planet label for Saturn.]], } } assetHelper.registerSceneGraphNodesAndExport(asset, { Saturn, SaturnLabel }) + + +asset.meta = { + Name = "Saturn", + Version = "1.0", + Description = [[ Saturn globe, and main planet label.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/tethys/default_layers.asset b/data/assets/scene/solarsystem/planets/saturn/tethys/default_layers.asset index 197eeb9a67..cdb813d935 100644 --- a/data/assets/scene/solarsystem/planets/saturn/tethys/default_layers.asset +++ b/data/assets/scene/solarsystem/planets/saturn/tethys/default_layers.asset @@ -7,3 +7,13 @@ local colorLayer = asset.require(colorLayersPath .. "/tethys_texture") asset.onInitialize(function () openspace.setPropertyValueSingle("Scene.Tethys.Renderable.Layers.ColorLayers." .. colorLayer.layer.Identifier .. ".Enabled", true) end) + + +asset.meta = { + Name = "Default Tethys Layers", + Version = "1.0", + Description = [[ Default Tethys layers are: Tethys Texture]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/tethys/layers/colorlayers/tethys_texture.asset b/data/assets/scene/solarsystem/planets/saturn/tethys/layers/colorlayers/tethys_texture.asset index ab55a8b84e..f8b9293d98 100644 --- a/data/assets/scene/solarsystem/planets/saturn/tethys/layers/colorlayers/tethys_texture.asset +++ b/data/assets/scene/solarsystem/planets/saturn/tethys/layers/colorlayers/tethys_texture.asset @@ -11,3 +11,13 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Tethys Texutre", + Version = "1.0", + Description = [[ Default jpg texture for Tethys]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/tethys/tethys.asset b/data/assets/scene/solarsystem/planets/saturn/tethys/tethys.asset index 59dc831c2b..e4440665df 100644 --- a/data/assets/scene/solarsystem/planets/saturn/tethys/tethys.asset +++ b/data/assets/scene/solarsystem/planets/saturn/tethys/tethys.asset @@ -16,7 +16,7 @@ local Tethys = { }, Rotation = { Type = "SpiceRotation", - SourceFrame = "IAU_ENCELADUS", + SourceFrame = "IAU_TETHYS", DestinationFrame = "GALACTIC" } }, @@ -48,6 +48,14 @@ local Tethys = { } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { Tethys }) + + +asset.meta = { + Name = "Tethys", + Version = "1.0", + Description = [[ Tethys globe with labels.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/tethys/trail.asset b/data/assets/scene/solarsystem/planets/saturn/tethys/trail.asset index 6bf002a440..d7ce108cc4 100644 --- a/data/assets/scene/solarsystem/planets/saturn/tethys/trail.asset +++ b/data/assets/scene/solarsystem/planets/saturn/tethys/trail.asset @@ -22,10 +22,19 @@ local TethysTrail = { Tag = { "moonTrail_solarSystem", "moonTrail_giants", "moonTrail_saturn" }, GUI = { Name = "Tethys Trail", - Path = "/Solar System/Planets/Saturn/Moons" + Path = "/Solar System/Planets/Saturn/Moons", + Description = [[ Trail of Saturn's moon Tethys as observed by Saturn.]], } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { TethysTrail }) + + +asset.meta = { + Name = "Tethys Trail", + Version = "1.0", + Description = [[ Main trail for Tethys. Data from NASA Spice (see base spice asset)]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/titan/default_layers.asset b/data/assets/scene/solarsystem/planets/saturn/titan/default_layers.asset index aacadba44c..972c2d6787 100644 --- a/data/assets/scene/solarsystem/planets/saturn/titan/default_layers.asset +++ b/data/assets/scene/solarsystem/planets/saturn/titan/default_layers.asset @@ -6,5 +6,17 @@ local colorLayer = asset.require(colorLayersPath .. "/cassini_iss_global_mosaic_ -- Set enabled layers (temporary solution) -- @TODO: do this using a boolean that's passed to the 'asset.require' instead asset.onInitialize(function () - openspace.setPropertyValueSingle("Scene.Titan.Renderable.Layers.ColorLayers." .. colorLayer.layer.Identifier .. ".Enabled", true) + openspace.setPropertyValueSingle("Scene.Titan.Renderable.Layers.ColorLayers." .. + colorLayer.layer.Identifier .. ".Enabled", true) end) + + +asset.meta = { + Name = "Default Titan Layers", + Version = "1.0", + Description = [[ Default Titan layers are: Titan Texture and Cassini ISS Global + Mosaic]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/titan/layers/colorlayers/cassini_iss_global_mosaic_4km_liu.asset b/data/assets/scene/solarsystem/planets/saturn/titan/layers/colorlayers/cassini_iss_global_mosaic_4km_liu.asset index 816639f7c6..93aed7e860 100644 --- a/data/assets/scene/solarsystem/planets/saturn/titan/layers/colorlayers/cassini_iss_global_mosaic_4km_liu.asset +++ b/data/assets/scene/solarsystem/planets/saturn/titan/layers/colorlayers/cassini_iss_global_mosaic_4km_liu.asset @@ -5,6 +5,14 @@ local layer = { Identifier = "Cassini_ISS_Global_Mosaic_4km_LiU", Name = "Cassini ISS Global Mosaic [Sweden]", FilePath = mapServiceConfigs .. "/LiU/ISS_P19658_Mosaic_Global_4km.wms", + Description = [[ This global digital map of Saturn's moon Titan was created using + images taken by the Cassini spacecraft's Imaging Science Subsystem (ISS). The map + was produced in June 2015 using data collected through Cassini's flyby on April 7, + 2014, known as "T100". The mean radius of Titan used for projection of this map is + 1,600 miles (2,575 kilometers). Pixel resolution is 4005 meters per pixel (m). + Titan is assumed to be spherical until a control network -- a model of the moon's + shape based on multiple images tied together at defined points on the surface -- + is created at some point in the future. (Description from URL)]], } asset.onInitialize(function () @@ -12,3 +20,16 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Cassini ISS Global Mosaic", + Version = "1.0", + Description = [[ Cassini global image layer for Titan. This layer is hosted on the + OpenSpace server in Sweden]], + Author = "USGS", + URL = "https://astrogeology.usgs.gov/search/map/Titan/Cassini/Global-Mosaic/" .. + "Titan_ISS_P19658_Mosaic_Global_4km", + License = "NASA/PDS", + Identifiers = "Cassini_ISS_Global_Mosaic_4km_LiU" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/titan/layers/colorlayers/titan_texture.asset b/data/assets/scene/solarsystem/planets/saturn/titan/layers/colorlayers/titan_texture.asset index 205ce2b72d..62a397db97 100644 --- a/data/assets/scene/solarsystem/planets/saturn/titan/layers/colorlayers/titan_texture.asset +++ b/data/assets/scene/solarsystem/planets/saturn/titan/layers/colorlayers/titan_texture.asset @@ -11,3 +11,13 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Titan Texutre", + Version = "1.0", + Description = [[ Default jpg texture for Titan]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/titan/titan.asset b/data/assets/scene/solarsystem/planets/saturn/titan/titan.asset index 40d3bfae51..e60c2042eb 100644 --- a/data/assets/scene/solarsystem/planets/saturn/titan/titan.asset +++ b/data/assets/scene/solarsystem/planets/saturn/titan/titan.asset @@ -44,10 +44,21 @@ local Titan = { }, Tag = { "moon_solarSystem", "moon_giants", "moon_saturn" }, GUI = { - Path = "/Solar System/Planets/Saturn/Moons" + Name = "Titan", + Path = "/Solar System/Planets/Saturn/Moons", + Description = [[Largest moon of Saturn.]] } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { Titan }) + + +asset.meta = { + Name = "Titan", + Version = "1.0", + Description = [[ Titan globe with labels.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "Titan" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/titan/trail.asset b/data/assets/scene/solarsystem/planets/saturn/titan/trail.asset index ff45283ff3..64176c0c3e 100644 --- a/data/assets/scene/solarsystem/planets/saturn/titan/trail.asset +++ b/data/assets/scene/solarsystem/planets/saturn/titan/trail.asset @@ -22,10 +22,20 @@ local TitanTrail = { Tag = { "moonTrail_solarSystem", "moonTrail_giants", "moonTrail_saturn" }, GUI = { Name = "Titan Trail", - Path = "/Solar System/Planets/Saturn/Moons" + Path = "/Solar System/Planets/Saturn/Moons", + Description = [[ Trail of Saturn's moon Titan as observed by Saturn.]], } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { TitanTrail }) + + +asset.meta = { + Name = "Titan Trail", + Version = "1.0", + Description = [[ Main trail for Titan. Data from NASA Spice (see base spice asset)]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "TitanTrail" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/trail.asset b/data/assets/scene/solarsystem/planets/saturn/trail.asset index 590d9d3bda..05d35198cd 100644 --- a/data/assets/scene/solarsystem/planets/saturn/trail.asset +++ b/data/assets/scene/solarsystem/planets/saturn/trail.asset @@ -20,10 +20,20 @@ local SaturnTrail = { Tag = { "planetTrail_solarSystem", "planetTrail_giants" }, GUI = { Name = "Saturn Trail", - Path = "/Solar System/Planets/Saturn" + Path = "/Solar System/Planets/Saturn", + Description = [[ Trail of Saturn as observed by the Sun.]], } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { SaturnTrail }) + + +asset.meta = { + Name = "Saturn Trail", + Version = "1.0", + Description = [[ Main trail of Saturn. Data from NASA Spice (see base spice asset)]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "SaturnTrail" +} diff --git a/data/assets/scene/solarsystem/planets/saturn/trail_earth.asset b/data/assets/scene/solarsystem/planets/saturn/trail_earth.asset new file mode 100644 index 0000000000..cae480d1b4 --- /dev/null +++ b/data/assets/scene/solarsystem/planets/saturn/trail_earth.asset @@ -0,0 +1,44 @@ +local assetHelper = asset.require('util/asset_helper') +local transforms = asset.require('scene/solarsystem/sun/transforms') +local earthTransforms = asset.require('scene/solarsystem/planets/earth/transforms') +asset.require("spice/base") + + + +local SaturnTrailEarth = { + Identifier = "SaturnTrailEarth", + Parent = earthTransforms.EarthBarycenter.Identifier, + Renderable = { + Type = "RenderableTrailOrbit", + Translation = { + Type = "SpiceTranslation", + Target = "SATURN BARYCENTER", + Observer = "EARTH" + }, + Color = { 1.0, 0.5, 0.2 }, + Period = 224.695, + Resolution = 1000, + Enabled = false + }, + Tag = { "planetTrail_solarSystem_alt", "planetTrail_terrestrial_alt" }, + GUI = { + Name = "Saturn trail from Earth", + Path = "/Solar System/Planets/Saturn", + Hidden = false, + Description = [[ Trail of Saturn as observed by the Earth.]], + } +} + +asset.meta = { + Name = "Saturn Trail from Earth", + Version = "1.0", + Description = [[ Alternate trail of Saturn, as observed by the Earth rather then the + Sun. Data from NASA SPICE (see base spice asset)]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "VenusTrailEarth" +} + + +assetHelper.registerSceneGraphNodesAndExport(asset, { UranusTrailEarth }) diff --git a/data/assets/scene/solarsystem/planets/saturn/transforms.asset b/data/assets/scene/solarsystem/planets/saturn/transforms.asset index 21b84d5c54..0edc4e247c 100644 --- a/data/assets/scene/solarsystem/planets/saturn/transforms.asset +++ b/data/assets/scene/solarsystem/planets/saturn/transforms.asset @@ -15,8 +15,20 @@ local SaturnBarycenter = { GUI = { Name = "Saturn Barycenter", Path = "/Solar System/Planets/Saturn", - Hidden = true + Hidden = true, + Description = [[ Saturn Barycenter position]] } } assetHelper.registerSceneGraphNodesAndExport(asset, { SaturnBarycenter }) + + +asset.meta = { + Name = "Saturn Transforms", + Version = "1.0", + Description = [[ Saturn Barycenter transform]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "SaturnBarycenter" +} diff --git a/data/assets/scene/solarsystem/planets/uranus/default_layers.asset b/data/assets/scene/solarsystem/planets/uranus/default_layers.asset index 996a08aad0..a724445e80 100644 --- a/data/assets/scene/solarsystem/planets/uranus/default_layers.asset +++ b/data/assets/scene/solarsystem/planets/uranus/default_layers.asset @@ -7,3 +7,13 @@ local colorLayer = asset.require(colorLayersPath .. "/uranus_texture") asset.onInitialize(function () openspace.setPropertyValueSingle("Scene.Uranus.Renderable.Layers.ColorLayers." .. colorLayer.layer.Identifier .. ".Enabled", true) end) + + +asset.meta = { + Name = "Default Uranus Layers", + Version = "1.0", + Description = [[ Default Uranus layers are: Uranus texture]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/uranus/inner_moons.asset b/data/assets/scene/solarsystem/planets/uranus/inner_moons.asset index b14c7e01e8..20da8fec8e 100644 --- a/data/assets/scene/solarsystem/planets/uranus/inner_moons.asset +++ b/data/assets/scene/solarsystem/planets/uranus/inner_moons.asset @@ -221,9 +221,20 @@ local innerMoons = { } } - - assetHelper.registerSceneGraphNodesAndExport( asset, proceduralGlobes.createGlobes(innerMoons) ) + + +asset.meta = { + Name = "Uranus Irregular Retrograde Moons", + Version = "1.0", + Description = [[ Procedural Globe asset containing Uranus' irregular retrograde + moons: Cordelia, Ophelia, Bianca, Cressida, Desdemona, Juliet, Portia, Rosalind, + Cupid, Belinda, Perdita, Puck and Mab. Blank globes and SPICE trails are + generated for each moon.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/uranus/irregular_prograde_moons.asset b/data/assets/scene/solarsystem/planets/uranus/irregular_prograde_moons.asset index f72ebd7094..1cbfd292c0 100644 --- a/data/assets/scene/solarsystem/planets/uranus/irregular_prograde_moons.asset +++ b/data/assets/scene/solarsystem/planets/uranus/irregular_prograde_moons.asset @@ -29,9 +29,18 @@ local irregularMoons = { } } - - assetHelper.registerSceneGraphNodesAndExport( asset, proceduralGlobes.createGlobes(irregularMoons) ) + + +asset.meta = { + Name = "Uranus Irregular Prograde Moons", + Version = "1.0", + Description = [[ Procedural Globe asset containing Uranus' irregular prograde + moon: Margaret. A blank globe and SPICE trail are generated for the moon.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/uranus/irregular_retrograde_moons.asset b/data/assets/scene/solarsystem/planets/uranus/irregular_retrograde_moons.asset index 40df42f66a..a3a9b4d22b 100644 --- a/data/assets/scene/solarsystem/planets/uranus/irregular_retrograde_moons.asset +++ b/data/assets/scene/solarsystem/planets/uranus/irregular_retrograde_moons.asset @@ -141,9 +141,19 @@ local irregularMoons = { } } - - assetHelper.registerSceneGraphNodesAndExport( asset, proceduralGlobes.createGlobes(irregularMoons) ) + + +asset.meta = { + Name = "Uranus Irregular Retrograde Moons", + Version = "1.0", + Description = [[ Procedural Globe asset containing Uranus' irregular retrograde + moons: Francisco, Caliban, Stephano, Trinculo, Sycorax, Prospero, Setebos and + Ferdinand. Blank globes and SPICE trails are generated for each moon.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/uranus/kernels.asset b/data/assets/scene/solarsystem/planets/uranus/kernels.asset index dafed7ee35..efcf3617b2 100644 --- a/data/assets/scene/solarsystem/planets/uranus/kernels.asset +++ b/data/assets/scene/solarsystem/planets/uranus/kernels.asset @@ -8,3 +8,13 @@ local Kernels = asset.syncedResource({ asset.export("ura091", Kernels .. "/ura091-rocks-merge.bsp") asset.export("ura111", Kernels .. "/ura111.bsp") asset.export("ura112", Kernels .. "/ura112.bsp") + + +asset.meta = { + Name = "Uranus Spice Kernels", + Version = "1.0", + Description = [[ Generic SPICE kernels for Uranus.]], + Author = "OpenSpace Team", + URL = "https://naif.jpl.nasa.gov/pub/naif/pds/wgc/kernels/spk/", + License = "NASA" +} diff --git a/data/assets/scene/solarsystem/planets/uranus/layers/colorlayers/uranus_texture.asset b/data/assets/scene/solarsystem/planets/uranus/layers/colorlayers/uranus_texture.asset index 9d90211d93..62f8b14981 100644 --- a/data/assets/scene/solarsystem/planets/uranus/layers/colorlayers/uranus_texture.asset +++ b/data/assets/scene/solarsystem/planets/uranus/layers/colorlayers/uranus_texture.asset @@ -11,3 +11,13 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Uranus texture", + Version = "1.0", + Description = [[ Uranus image texture ]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/uranus/major_moons.asset b/data/assets/scene/solarsystem/planets/uranus/major_moons.asset index 628b850ad9..8f903fe638 100644 --- a/data/assets/scene/solarsystem/planets/uranus/major_moons.asset +++ b/data/assets/scene/solarsystem/planets/uranus/major_moons.asset @@ -93,8 +93,19 @@ local majorMoons = { } } - assetHelper.registerSceneGraphNodesAndExport( asset, proceduralGlobes.createGlobes(majorMoons) ) + + +asset.meta = { + Name = "Uranus Marjor Moons", + Version = "1.0", + Description = [[ Procedural Globe asset containing Uranus' major moons: Miranda, + Ariel, Umbriel, Titania, and Oberon. Blank globes and SPICE trails are generated + for each moon.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/uranus/minor_moons.asset b/data/assets/scene/solarsystem/planets/uranus/minor_moons.asset index 83a3d6391f..48ee0e01c7 100644 --- a/data/assets/scene/solarsystem/planets/uranus/minor_moons.asset +++ b/data/assets/scene/solarsystem/planets/uranus/minor_moons.asset @@ -1,3 +1,14 @@ asset.require('./inner_moons') asset.require('./irregular_prograde_moons') asset.require('./irregular_retrograde_moons') + + +asset.meta = { + Name = "Uranus Minor Moons", + Version = "1.0", + Description = [[ Meta asset containing three moon groups: Inner Moons, Irregular + Prograde Moons and Irregular Retrograde Moons]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/uranus/trail.asset b/data/assets/scene/solarsystem/planets/uranus/trail.asset index 7acf031ffe..d1101204bf 100644 --- a/data/assets/scene/solarsystem/planets/uranus/trail.asset +++ b/data/assets/scene/solarsystem/planets/uranus/trail.asset @@ -20,10 +20,20 @@ local UranusTrail = { Tag = { "planetTrail_solarSystem", "planetTrail_giants" }, GUI = { Name = "Uranus Trail", - Path = "/Solar System/Planets/Uranus" + Path = "/Solar System/Planets/Uranus", + Description = [[ Trail of Uranus as observed by the Sun.]], } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { UranusTrail }) + + +asset.meta = { + Name = "Uranus Trail", + Version = "1.0", + Description = [[ Main trail of Uranus. Data from NASA Spice (see base spice asset)]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "UranusTrail" +} diff --git a/data/assets/scene/solarsystem/planets/uranus/trail_earth.asset b/data/assets/scene/solarsystem/planets/uranus/trail_earth.asset new file mode 100644 index 0000000000..2390b5cb48 --- /dev/null +++ b/data/assets/scene/solarsystem/planets/uranus/trail_earth.asset @@ -0,0 +1,44 @@ +local assetHelper = asset.require('util/asset_helper') +local transforms = asset.require('scene/solarsystem/sun/transforms') +local earthTransforms = asset.require('scene/solarsystem/planets/earth/transforms') +asset.require("spice/base") + + + +local UranusTrailEarth = { + Identifier = "UranusTrailEarth", + Parent = earthTransforms.EarthBarycenter.Identifier, + Renderable = { + Type = "RenderableTrailOrbit", + Translation = { + Type = "SpiceTranslation", + Target = "URANUS BARYCENTER", + Observer = "EARTH" + }, + Color = { 1.0, 0.5, 0.2 }, + Period = 224.695, + Resolution = 1000, + Enabled = false + }, + Tag = { "planetTrail_solarSystem_alt", "planetTrail_terrestrial_alt" }, + GUI = { + Name = "Uranus trail from Earth", + Path = "/Solar System/Planets/Uranus", + Hidden = false, + Description = [[ Trail of Uranus as observed by the Earth.]], + } +} + +assetHelper.registerSceneGraphNodesAndExport(asset, { UranusTrailEarth }) + + +asset.meta = { + Name = "Uranus Trail from Earth", + Version = "1.0", + Description = [[ Alternate trail of Uranus, as observed by the Earth rather then the + Sun. Data from NASA SPICE (see base spice asset)]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "VenusTrailEarth" +} diff --git a/data/assets/scene/solarsystem/planets/uranus/transforms.asset b/data/assets/scene/solarsystem/planets/uranus/transforms.asset index aec617b326..93b67831fa 100644 --- a/data/assets/scene/solarsystem/planets/uranus/transforms.asset +++ b/data/assets/scene/solarsystem/planets/uranus/transforms.asset @@ -17,8 +17,19 @@ local UranusBarycenter = { GUI = { Name = "Uranus Barycenter", Path = "/Solar System/Planets/Uranus", - Hidden = true + Hidden = true, + Description = [[ Uranus Barycenter position]], } } assetHelper.registerSceneGraphNodesAndExport(asset, { UranusBarycenter }) + + +asset.meta = { + Name = "Uranus Transforms", + Version = "1.0", + Description = [[ Uranus Barycenter transform]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/uranus/uranus.asset b/data/assets/scene/solarsystem/planets/uranus/uranus.asset index 89421662c2..fd8a081fa6 100644 --- a/data/assets/scene/solarsystem/planets/uranus/uranus.asset +++ b/data/assets/scene/solarsystem/planets/uranus/uranus.asset @@ -21,7 +21,9 @@ local Uranus = { }, Tag = { "planet_solarSystem", "planet_giants" }, GUI = { - Path = "/Solar System/Planets/Uranus" + Name = "Uranus", + Path = "/Solar System/Planets/Uranus", + Description = [[Globe for Uranus.]] } } @@ -42,8 +44,20 @@ local UranusLabel = { Tag = { "solarsystem_labels" }, GUI = { Name = "Uranus Label", - Path = "/Solar System/Planets/Uranus" + Path = "/Solar System/Planets/Uranus", + Description = [[ Main planet label for Uranus.]], } } assetHelper.registerSceneGraphNodesAndExport(asset, { Uranus, UranusLabel }) + + +asset.meta = { + Name = "Uranus", + Version = "1.0", + Description = [[ Uranus globe, and main planet label.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "Uranus,UranusLabel" +} diff --git a/data/assets/scene/solarsystem/planets/venus/atmosphere.asset b/data/assets/scene/solarsystem/planets/venus/atmosphere.asset index a89828ffbc..ca97a2cbd7 100644 --- a/data/assets/scene/solarsystem/planets/venus/atmosphere.asset +++ b/data/assets/scene/solarsystem/planets/venus/atmosphere.asset @@ -57,10 +57,19 @@ local Atmosphere = { }, GUI = { Name = "Venus Atmosphere", - Path = "/Solar System/Planets/Venus" + Path = "/Solar System/Planets/Venus", + Description = "Simulation of Venus' Atmosphere" } } - - - assetHelper.registerSceneGraphNodesAndExport(asset, { Atmosphere }) + + +asset.meta = { + Name = "Venus Atmosphere", + Version = "1.0", + Description = [[ Atmosphere of Venus.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "VenusAtmosphere" +} diff --git a/data/assets/scene/solarsystem/planets/venus/default_layers.asset b/data/assets/scene/solarsystem/planets/venus/default_layers.asset index 4f3bace335..18fb90fcd3 100644 --- a/data/assets/scene/solarsystem/planets/venus/default_layers.asset +++ b/data/assets/scene/solarsystem/planets/venus/default_layers.asset @@ -14,3 +14,14 @@ asset.onInitialize(function () openspace.setPropertyValueSingle("Scene.Venus.Renderable.Layers.ColorLayers." .. colorLayer.layer.Identifier .. ".Enabled", true) openspace.setPropertyValueSingle("Scene.Venus.Renderable.Layers.HeightLayers." .. heightLayer.layer.Identifier .. ".Enabled", true) end) + + +asset.meta = { + Name = "Default Venus Layers", + Version = "1.0", + Description = [[ Default Venus layers are: Venus Magellan Mosaic and Venus Magellan + DEM]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/planets/venus/layers/colorlayers/magellan_mosaic_utah.asset b/data/assets/scene/solarsystem/planets/venus/layers/colorlayers/magellan_mosaic_utah.asset index c4987ddc21..c54eca68d3 100644 --- a/data/assets/scene/solarsystem/planets/venus/layers/colorlayers/magellan_mosaic_utah.asset +++ b/data/assets/scene/solarsystem/planets/venus/layers/colorlayers/magellan_mosaic_utah.asset @@ -4,6 +4,22 @@ local globeIdentifier = asset.require("./../../venus").Venus.Identifier local layer = { Identifier = "Magellan_Mosaic_Utah", Name = "Magellan Mosaic [Utah]", + Description = [[ Color layer for Venus. This mosaic was created from the Magellan + F-BIDRs, (Full resolution Basic Image Data Records), the highest resolution + radar images of the Venus surface (~75 m/pixel). Because Venus is shrouded by a + dense, opaque atmosphere, conventional optical cameras cannot be used to image + its surface. Instead, Magellan's imaging radar uses bursts of microwave energy + somewhat like a camera flash to illuminate the planet's surface. The radar pulses + are not sent directly downward but rather at a slight angle to the side of the + spacecraft--the radar is thus called "side-looking radar." In addition, special + processing techniques are used on the radar data to result in higher resolution + as if the radar had a larger antenna, or "aperture"; the technique is thus often + called "synthetic aperture radar," or SAR. The Magellan SAR is a side-looking + radar system. Radar pulses are not sent directly downward but rather at a slight + angle to the side of the spacecraft. In the case of Left-Look Magellan SAR data, + the radar system was sending signals to the left of the spacecraft. The SAR + operated in this left-looking mode during cycles 1 and 3 of the mission. + (Description from USGS)]], FilePath = mapServiceConfigs .. "/Utah/MagellanMosaic.vrt", BlendMode = "Color", Settings = { @@ -16,3 +32,16 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Venus Magellan Mosaic", + Version = "1.0", + Description = [[Map layer for Venus containting Venus Magellan Mosaic from the USGS. + Hosted on the OpenSpace servers in Utah.]], + Author = "USGS", + URL = "https://astrogeology.usgs.gov/search/map/Venus/Magellan/" .. + "Venus_Magellan_LeftLook_mosaic_global_75m", + License = "NASA/PDS", + Identifiers = "Magellan_Mosaic_Utah" +} diff --git a/data/assets/scene/solarsystem/planets/venus/layers/heightlayers/magellan.asset b/data/assets/scene/solarsystem/planets/venus/layers/heightlayers/magellan.asset index 7696d2428b..8ffd0677b1 100644 --- a/data/assets/scene/solarsystem/planets/venus/layers/heightlayers/magellan.asset +++ b/data/assets/scene/solarsystem/planets/venus/layers/heightlayers/magellan.asset @@ -4,6 +4,16 @@ local globeIdentifier = asset.require("./../../venus").Venus.Identifier local layer = { Identifier = "Magellan", Name = "Magellan Elevation [Utah]", + Description = [[ Elevation layer for Venus. The represents the version 2 + (1997 release) of the Global Topographic Data Record (GTDR-SINUS.3;2). + The range to surface is derived by fitting altimeter echoes from the fan-beam + altimetry antenna as a function of time to Hagfors' radar backscatter model + templates. The ranges are subtracted from the spacecraft radial + coordinate (derived from Doppler tracking), yielding measurements of + planetary radius. The data are filtered to remove low-frequency errors in + the in-plane elements of each spacecraft orbit, and then originally re-sampled + into sinusoidal, Mercator, and north and south polar stereographic projections + at a resolution of 5 kilometers per pixel (4641 meters per pixel [m]).]], FilePath = mapServiceConfigs .. "/Utah/MagellanDEM.wms", TilePixelSize = 64, Settings = { @@ -17,3 +27,16 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Venus Magellan DEM", + Version = "1.0", + Description = [[Map layer for Venus containting Venus Magellan DEM from the USGS. + Hosted on the OpenSpace servers in Utah.]], + Author = "USGS", + URL = "https://astrogeology.usgs.gov/search/map/Venus/Magellan/RadarProperties" .. + "/Venus_Magellan_Topography_Global_4641m_v02", + License = "NASA/PDS", + Identifiers = "Magellan" +} diff --git a/data/assets/scene/solarsystem/planets/venus/trail.asset b/data/assets/scene/solarsystem/planets/venus/trail.asset index b9c3d86743..e683a11ee7 100644 --- a/data/assets/scene/solarsystem/planets/venus/trail.asset +++ b/data/assets/scene/solarsystem/planets/venus/trail.asset @@ -22,10 +22,21 @@ local VenusTrail = { GUI = { Name = "Venus Trail", Path = "/Solar System/Planets/Venus", - Hidden = true + Description = "Main trail for Venus", + Hidden = false } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { VenusTrail }) + + +asset.meta = { + Name = "Venus Trail", + Version = "1.0", + Description = [[ Trail of Venus as observed by the Sun. Data from NASA Spice (see + base spice asset)]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "VenusTrail" +} diff --git a/data/assets/scene/solarsystem/planets/venus/trail_earth.asset b/data/assets/scene/solarsystem/planets/venus/trail_earth.asset new file mode 100644 index 0000000000..a9cc3633d9 --- /dev/null +++ b/data/assets/scene/solarsystem/planets/venus/trail_earth.asset @@ -0,0 +1,43 @@ +local assetHelper = asset.require('util/asset_helper') +local transforms = asset.require('scene/solarsystem/sun/transforms') +local earthTransforms = asset.require('scene/solarsystem/planets/earth/transforms') +asset.require("spice/base") + + +local VenusTrailEarth = { + Identifier = "VenusTrailEarth", + Parent = earthTransforms.EarthBarycenter.Identifier, + Renderable = { + Type = "RenderableTrailOrbit", + Translation = { + Type = "SpiceTranslation", + Target = "VENUS BARYCENTER", + Observer = "EARTH" + }, + Color = { 1.0, 0.5, 0.2 }, + Period = 224.695, + Resolution = 1000, + Enabled = false + }, + Tag = { "planetTrail_solarSystem_alt", "planetTrail_terrestrial_alt" }, + GUI = { + Name = "Venus trail from Earth", + Path = "/Solar System/Planets/Venus", + Description = "Alternate trail for Venus, showing Venus as observed from Earth.", + Hidden = false + } +} + +assetHelper.registerSceneGraphNodesAndExport(asset, { VenusTrailEarth }) + + +asset.meta = { + Name = "Venus Trail from Earth", + Version = "1.0", + Description = [[ Trail of Venus as observed by the Earth. Data from NASA + SPICE (see base spice asset)]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "VenusTrailEarth" +} diff --git a/data/assets/scene/solarsystem/planets/venus/transforms.asset b/data/assets/scene/solarsystem/planets/venus/transforms.asset index c3071d5fa5..1f84882347 100644 --- a/data/assets/scene/solarsystem/planets/venus/transforms.asset +++ b/data/assets/scene/solarsystem/planets/venus/transforms.asset @@ -14,8 +14,21 @@ local VenusBarycenter = { }, GUI = { Name = "Venus Barycenter", - Path = "/Solar System/Planets/Venus" + Path = "/Solar System/Planets/Venus", + Hidden = true, + Description = "Position for Venus Barycenter" } } assetHelper.registerSceneGraphNodesAndExport(asset, { VenusBarycenter }) + + +asset.meta = { + Name = "Venus Transforms", + Version = "1.0", + Description = [[ Spice translation for Venus Barycenter]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "VenusBarycenter" +} diff --git a/data/assets/scene/solarsystem/planets/venus/venus.asset b/data/assets/scene/solarsystem/planets/venus/venus.asset index d591a30cc1..0b2871f033 100644 --- a/data/assets/scene/solarsystem/planets/venus/venus.asset +++ b/data/assets/scene/solarsystem/planets/venus/venus.asset @@ -44,7 +44,9 @@ local Venus = { }, Tag = { "planet_solarSystem", "planet_terrestrial" }, GUI = { - Path = "/Solar System/Planets/Venus" + Name = "Venus", + Path = "/Solar System/Planets/Venus", + Description = "Venus globe with labels and map layers." } } @@ -65,9 +67,20 @@ local VenusLabel = { Tag = { "solarsystem_labels" }, GUI = { Name = "Venus Label", - Path = "/Solar System/Planets/Venus" + Path = "/Solar System/Planets/Venus", + Description = "Label for Venus, viewable within the solar system." } } - assetHelper.registerSceneGraphNodesAndExport(asset, { Venus, VenusLabel }) + + +asset.meta = { + Name = "Venus", + Version = "1.0", + Description = [[ Venus globe with labels, and main planet label.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "Venus,VenusLabel" +} diff --git a/data/assets/scene/solarsystem/sssb/amor_asteroid.asset b/data/assets/scene/solarsystem/sssb/amor_asteroid.asset index 99658a50f5..bf980397b7 100644 --- a/data/assets/scene/solarsystem/sssb/amor_asteroid.asset +++ b/data/assets/scene/solarsystem/sssb/amor_asteroid.asset @@ -1,20 +1,29 @@ local assetHelper = asset.require('util/asset_helper') local sharedSssb = asset.require('./sssb_shared') -local filepath = sharedSssb.downloadSssbDatabaseFile(asset, 'amor_asteroid', 'sssb_data_amor_asteroid') -local object = sharedSssb.createSssbGroupObject('sssb_data_amor_asteroid.csv', "Amor Asteroids", filepath, { 1.0, 1.0, 1.0 }) +local filepath = sharedSssb.downloadSssbDatabaseFile(asset, 'amor_asteroid', + 'sssb_data_amor_asteroid') +local object = sharedSssb.createSssbGroupObject('sssb_data_amor_asteroid.csv', + "Amor Asteroids", filepath, { 1.0, 1.0, 1.0 }) object.Renderable.Enabled = false object.Renderable.SegmentQuality = 4 object.Renderable.TrailFade = 11 +object.GUI.Description = [[ Earth-approaching Near-Earth-Asteroids with orbits exterior to + Earth's but interior to Mars'. ]] + assetHelper.registerSceneGraphNodesAndExport(asset, { object }) asset.meta = { Name = "Amor Asteroids", Version = "1.0", - Description = [[ Earth-approaching Near-Earth-Asteroids with orbits exterior to Earth's but interior to Mars'. ]], + Description = [[ RenderableSmallBody asset with data from from JPL Horizons + contiaining the Amor group.]], Author = "JPL Small-Body Database hosted by California Institute of Technology", URL = "https://ssd.jpl.nasa.gov/sbdb_query.cgi", - License = "JPL-authored documents are sponsored by NASA under Contract NAS7-030010. All documents available from this server may be protected under the U.S. and Foreign Copyright Laws." -} \ No newline at end of file + License = [[JPL-authored documents are sponsored by NASA under Contract NAS7-030010. + All documents available from this server may be protected under the U.S. and + Foreign Copyright Laws."]], + Identifiers = "sssb_sssb_data_amor_asteroid" +} diff --git a/data/assets/scene/solarsystem/sssb/apollo_asteroid.asset b/data/assets/scene/solarsystem/sssb/apollo_asteroid.asset index 258ff6c01f..ba7fe9c9e6 100644 --- a/data/assets/scene/solarsystem/sssb/apollo_asteroid.asset +++ b/data/assets/scene/solarsystem/sssb/apollo_asteroid.asset @@ -1,20 +1,29 @@ local assetHelper = asset.require('util/asset_helper') local sharedSssb = asset.require('./sssb_shared') -local filepath = sharedSssb.downloadSssbDatabaseFile(asset, 'apollo_asteroid', 'sssb_data_apollo_asteroid') -local object = sharedSssb.createSssbGroupObject('sssb_data_apollo_asteroid.csv', "Apollo Asteroids", filepath, { 0.7, 0.7, 1.0 }) +local filepath = sharedSssb.downloadSssbDatabaseFile(asset, 'apollo_asteroid', + 'sssb_data_apollo_asteroid') +local object = sharedSssb.createSssbGroupObject('sssb_data_apollo_asteroid.csv', + "Apollo Asteroids", filepath, { 0.7, 0.7, 1.0 }) object.Renderable.Enabled = false object.Renderable.SegmentQuality = 6 object.Renderable.TrailFade = 10 +object.GUI.Description = [[ Earth-crossing Near-Earth-Asteroids with semi-major axes + larger than Earth's. ]] + assetHelper.registerSceneGraphNodesAndExport(asset, { object }) asset.meta = { Name = "Apollo Asteroids", Version = "1.0", - Description = [[ Earth-crossing Near-Earth-Asteroids with semi-major axes larger than Earth's. ]], + Description = [[ RenderableSmallBody asset with data from from JPL Horizons + contiaining the Apollo group.]], Author = "JPL Small-Body Database hosted by California Institute of Technology", URL = "https://ssd.jpl.nasa.gov/sbdb_query.cgi", - License = "JPL-authored documents are sponsored by NASA under Contract NAS7-030010. All documents available from this server may be protected under the U.S. and Foreign Copyright Laws." -} \ No newline at end of file + License = [[JPL-authored documents are sponsored by NASA under Contract NAS7-030010. + All documents available from this server may be protected under the U.S. and + Foreign Copyright Laws.]], + Identifiers = "sssb_sssb_data_apollo_asteroid" +} diff --git a/data/assets/scene/solarsystem/sssb/astraea.asset b/data/assets/scene/solarsystem/sssb/astraea.asset new file mode 100644 index 0000000000..17ce92dcef --- /dev/null +++ b/data/assets/scene/solarsystem/sssb/astraea.asset @@ -0,0 +1,61 @@ +local assetHelper = asset.require('util/asset_helper') +local sunTransforms = asset.require('scene/solarsystem/sun/transforms') + +local trajectory = asset.syncedResource({ + Name = "5 Astraea Trajectory", + Type = "HttpSynchronization", + Identifier = "astraea_horizons", + Version = 1 + }) + +local AstraeaTrail = { + Identifier = "AstraeaTrail", + Parent = sunTransforms.SolarSystemBarycenter.Identifier, + Renderable = { + Type = "RenderableTrailTrajectory", + Translation = { + Type = "HorizonsTranslation", + HorizonsTextFile = trajectory .. "/horizons_astraea.dat" + }, + Color = { 0.9, 0.9, 0.0 }, + StartTime = "2014 JAN 01 00:00:00", + EndTime = "2023 JAN 01 00:00:00", + SampleInterval = 7000, + TimeStampSubsampleFactor = 1 + }, + GUI = { + Name = "5 Astraea Trail", + Path = "/Solar System/Interstellar" + } +} + +local AstraeaPosition = { + Identifier = "AstraeaPosition", + Parent = sunTransforms.SolarSystemBarycenter.Identifier, + Transform = { + Translation = { + Type = "HorizonsTranslation", + HorizonsTextFile = trajectory .. "/horizons_astraea.dat" + }, + }, + GUI = { + Name = "5 Astraea", + Path = "/Solar System/Interstellar" + } +} + +assetHelper.registerSceneGraphNodesAndExport(asset, { AstraeaPosition, AstraeaTrail }) + + +asset.meta = { + Name = "5 Astraea", + Version = "1.0", + Description = [[ This asset contains the trail + and position of 5 Astraea from 2014 JAN 01 00:00:00 + to 2023 JAN 01 00:00:00. Data from JPL Horizons']], + Author = "Zach Shaffer", + URL = "https://ssd.jpl.nasa.gov/horizons.cgi", + License = [[ JPL-authored documents are sponsored by NASA under Contract + NAS7-030010. All documents available from this server may be protected + under the U.S. and Foreign Copyright Laws."]] +} diff --git a/data/assets/scene/solarsystem/sssb/aten_asteroid.asset b/data/assets/scene/solarsystem/sssb/aten_asteroid.asset index c768ccac07..cba5c40e93 100644 --- a/data/assets/scene/solarsystem/sssb/aten_asteroid.asset +++ b/data/assets/scene/solarsystem/sssb/aten_asteroid.asset @@ -1,20 +1,30 @@ local assetHelper = asset.require('util/asset_helper') local sharedSssb = asset.require('./sssb_shared') -local filepath = sharedSssb.downloadSssbDatabaseFile(asset, 'aten_asteroid', 'sssb_data_aten_asteroid') -local object = sharedSssb.createSssbGroupObject('sssb_data_aten_asteroid.csv', "Aten Asteroids", filepath, { 0.15, 0.15, 1.0 }) +local filepath = sharedSssb.downloadSssbDatabaseFile(asset, 'aten_asteroid', + 'sssb_data_aten_asteroid') +local object = sharedSssb.createSssbGroupObject('sssb_data_aten_asteroid.csv', + "Aten Asteroids", filepath, { 0.15, 0.15, 1.0 }) object.Renderable.Enabled = false object.Renderable.SegmentQuality = 2 object.Renderable.TrailFade = 18 +object.GUI.Description = [[ Earth-crossing Near-Earth-Asteroids with semi-major axes + smaller than Earth's. ]] + + assetHelper.registerSceneGraphNodesAndExport(asset, { object }) asset.meta = { Name = "Aten Asteroids", Version = "1.0", - Description = [[ Earth-crossing Near-Earth-Asteroids with semi-major axes smaller than Earth's. ]], + Description = [[ RenderableSmallBody asset with data from from JPL Horizons + contiaining the Aten group.]], Author = "JPL Small-Body Database hosted by California Institute of Technology", URL = "https://ssd.jpl.nasa.gov/sbdb_query.cgi", - License = "JPL-authored documents are sponsored by NASA under Contract NAS7-030010. All documents available from this server may be protected under the U.S. and Foreign Copyright Laws." -} \ No newline at end of file + License = [[JPL-authored documents are sponsored by NASA under Contract NAS7-030010. + All documents available from this server may be protected under the U.S. and + Foreign Copyright Laws.]], + Identifiers = "sssb_sssb_data_aten_asteroid" +} diff --git a/data/assets/scene/solarsystem/sssb/atira_asteroid.asset b/data/assets/scene/solarsystem/sssb/atira_asteroid.asset index 9a7ec7ddaf..bc7cd92e66 100644 --- a/data/assets/scene/solarsystem/sssb/atira_asteroid.asset +++ b/data/assets/scene/solarsystem/sssb/atira_asteroid.asset @@ -1,20 +1,30 @@ local assetHelper = asset.require('util/asset_helper') local sharedSssb = asset.require('./sssb_shared') -local filepath = sharedSssb.downloadSssbDatabaseFile(asset, 'atira_asteroid', 'sssb_data_atira_asteroid') -local object = sharedSssb.createSssbGroupObject('sssb_data_atira_asteroid.csv', "Atira Asteroids", filepath, { 0.5, 0.8, 1.0 }) +local filepath = sharedSssb.downloadSssbDatabaseFile(asset, 'atira_asteroid', + 'sssb_data_atira_asteroid') +local object = sharedSssb.createSssbGroupObject('sssb_data_atira_asteroid.csv', + "Atira Asteroids", filepath, { 0.5, 0.8, 1.0 }) object.Renderable.Enabled = false object.Renderable.SegmentQuality = 2 object.Renderable.TrailFade = 25 +object.GUI.Description = [[ Near-Earth-Asteroids whose orbits are contained entirely + within the orbit of the Earth. ]] + + assetHelper.registerSceneGraphNodesAndExport(asset, { object }) asset.meta = { Name = "Atira Asteroids", Version = "1.0", - Description = [[ Near-Earth-Asteroids whose orbits are contained entirely within the orbit of the Earth. ]], + Description = [[ RenderableSmallBody asset with data from from JPL Horizons + contiaining the Atira group.]], Author = "JPL Small-Body Database hosted by California Institute of Technology", URL = "https://ssd.jpl.nasa.gov/sbdb_query.cgi", - License = "JPL-authored documents are sponsored by NASA under Contract NAS7-030010. All documents available from this server may be protected under the U.S. and Foreign Copyright Laws." -} \ No newline at end of file + License = [[JPL-authored documents are sponsored by NASA under Contract NAS7-030010. + All documents available from this server may be protected under the U.S. and + Foreign Copyright Laws."]], + Identifiers = "sssb_sssb_data_atira_asteroid" +} diff --git a/data/assets/scene/solarsystem/sssb/c2019y4atlas.asset b/data/assets/scene/solarsystem/sssb/c2019y4atlas.asset index 27acaa4adf..2ad536f7fb 100644 --- a/data/assets/scene/solarsystem/sssb/c2019y4atlas.asset +++ b/data/assets/scene/solarsystem/sssb/c2019y4atlas.asset @@ -40,9 +40,24 @@ local C2019Y4AtlasPosition = { }, }, GUI = { - Name = "C 2019 Y4 Atlas", - Path = "/Solar System/Comets" + Name = "C/2019 Y4 Atlas", + Path = "/Solar System/Comets", + Description = 'This is the position for C/2019 Y4 Atlas' } } -assetHelper.registerSceneGraphNodesAndExport(asset, {C2019Y4AtlasPosition, C2019Y4AtlasTrail }) +assetHelper.registerSceneGraphNodesAndExport(asset, { + C2019Y4AtlasPosition, C2019Y4AtlasTrail +}) + + +asset.meta = { + Name = "C/2019 Y4 Atlas", + Version = "1.0", + Description = [[ This asset contains the trail and position of C/2019 Y4 Atlas from + 1950 JAN 01 00:00:00 to 2100 JAN 01 00:00:00. Data from JPL Horizons']], + Author = "OpenSpace Team", + URL = "https://ssd.jpl.nasa.gov/horizons.cgi", + License = "NASA", + Identifiers = "C2019Y4AtlasPosition,C2019Y4AtlasTrail" +} diff --git a/data/assets/scene/solarsystem/sssb/centaur_asteroid.asset b/data/assets/scene/solarsystem/sssb/centaur_asteroid.asset index 1584ab3c91..ab7d80067d 100644 --- a/data/assets/scene/solarsystem/sssb/centaur_asteroid.asset +++ b/data/assets/scene/solarsystem/sssb/centaur_asteroid.asset @@ -1,20 +1,30 @@ local assetHelper = asset.require('util/asset_helper') local sharedSssb = asset.require('./sssb_shared') -local filepath = sharedSssb.downloadSssbDatabaseFile(asset, 'centaur_asteroid', 'sssb_data_centaur_asteroid') -local object = sharedSssb.createSssbGroupObject('sssb_data_centaur_asteroid.csv', "Centaur Asteroids", filepath, { 0.94, 0.96, 0.94 }) +local filepath = sharedSssb.downloadSssbDatabaseFile(asset, 'centaur_asteroid', + 'sssb_data_centaur_asteroid') +local object = sharedSssb.createSssbGroupObject('sssb_data_centaur_asteroid.csv', + "Centaur Asteroids", filepath, { 0.94, 0.96, 0.94 }) object.Renderable.Enabled = false object.Renderable.SegmentQuality = 6 object.Renderable.TrailFade = 18 +object.GUI.Description = [[ Asteroids with either a perihelion or a semi-major axis + between those of the four outer planets. ]] + + assetHelper.registerSceneGraphNodesAndExport(asset, { object }) asset.meta = { Name = "Centaur Asteroids", Version = "1.0", - Description = [[ Asteroids with either a perihelion or a semi-major axis between those of the four outer planets. ]], + Description = [[ RenderableSmallBody asset with data from from JPL Horizons + contiaining the Centaur group.]], Author = "JPL Small-Body Database hosted by California Institute of Technology", URL = "https://ssd.jpl.nasa.gov/sbdb_query.cgi", - License = "JPL-authored documents are sponsored by NASA under Contract NAS7-030010. All documents available from this server may be protected under the U.S. and Foreign Copyright Laws." -} \ No newline at end of file + License = [[JPL-authored documents are sponsored by NASA under Contract NAS7-030010. + All documents available from this server may be protected under the U.S. and + Foreign Copyright Laws.]], + Identifiers = "sssb_sssb_data_centaur_asteroid" +} diff --git a/data/assets/scene/solarsystem/sssb/chiron-type_comet.asset b/data/assets/scene/solarsystem/sssb/chiron-type_comet.asset index faad6f4c8e..dd1aa61d3a 100644 --- a/data/assets/scene/solarsystem/sssb/chiron-type_comet.asset +++ b/data/assets/scene/solarsystem/sssb/chiron-type_comet.asset @@ -1,20 +1,30 @@ local assetHelper = asset.require('util/asset_helper') local sharedSssb = asset.require('./sssb_shared') -local filepath = sharedSssb.downloadSssbDatabaseFile(asset, 'chiron-type_comet', 'sssb_data_chiron-type_comet') -local object = sharedSssb.createSssbGroupObject('sssb_data_chiron-type_comet.csv', "Chiron-type Comets", filepath, { 0.15 ,0.1 ,1.0 }) +local filepath = sharedSssb.downloadSssbDatabaseFile(asset, 'chiron-type_comet', + 'sssb_data_chiron-type_comet') +local object = sharedSssb.createSssbGroupObject('sssb_data_chiron-type_comet.csv', + "Chiron-type Comets", filepath, { 0.15 ,0.1 ,1.0 }) object.Renderable.Enabled = false object.Renderable.SegmentQuality = 10 object.Renderable.TrailFade = 25 +object.GUI.Description = [[ Comets with a Tisserand's parameter with respect to Jupiter of + greater than 3 and a semi-major axis greater than that of Jupiter. ]] + + assetHelper.registerSceneGraphNodesAndExport(asset, { object }) asset.meta = { Name = "Chiron-Type Comets", Version = "1.0", - Description = [[ Comets with a Tisserand's parameter with respect to Jupiter of greater than 3 and a semi-major axis greater than that of Jupiter. ]], + Description = [[ RenderableSmallBody asset with data from from JPL Horizons + contiaining the Chiron-Type group.]], Author = "JPL Small-Body Database hosted by California Institute of Technology", URL = "https://ssd.jpl.nasa.gov/sbdb_query.cgi", - License = "JPL-authored documents are sponsored by NASA under Contract NAS7-030010. All documents available from this server may be protected under the U.S. and Foreign Copyright Laws." -} \ No newline at end of file + License = [[JPL-authored documents are sponsored by NASA under Contract NAS7-030010. + All documents available from this server may be protected under the U.S. and + Foreign Copyright Laws.]], + Identifiers = "sssb_sssb_data_chiron-type_comet" +} diff --git a/data/assets/scene/solarsystem/sssb/encke-type_comet.asset b/data/assets/scene/solarsystem/sssb/encke-type_comet.asset index 8a51d5c041..b3516e4e91 100644 --- a/data/assets/scene/solarsystem/sssb/encke-type_comet.asset +++ b/data/assets/scene/solarsystem/sssb/encke-type_comet.asset @@ -1,20 +1,30 @@ local assetHelper = asset.require('util/asset_helper') local sharedSssb = asset.require('./sssb_shared') -local filepath = sharedSssb.downloadSssbDatabaseFile(asset, 'encke-type_comet', 'sssb_data_encke-type_comet') -local object = sharedSssb.createSssbGroupObject('sssb_data_encke-type_comet.csv', "Encke-type Comets", filepath, { 0.8, 0.34, 1.0 }) +local filepath = sharedSssb.downloadSssbDatabaseFile(asset, 'encke-type_comet', + 'sssb_data_encke-type_comet') +local object = sharedSssb.createSssbGroupObject('sssb_data_encke-type_comet.csv', + "Encke-type Comets", filepath, { 0.8, 0.34, 1.0 }) object.Renderable.Enabled = false object.Renderable.SegmentQuality = 2 object.Renderable.TrailFade = 23 +object.GUI.Description = [[ Comets with a Tisserand's parameter with respect to Jupiter of + greater than 3 and a semi-major axis less than that of Jupiter. ]] + + assetHelper.registerSceneGraphNodesAndExport(asset, { object }) asset.meta = { Name = "Encke-Type Comets", Version = "1.0", - Description = [[ Comets with a Tisserand's parameter with respect to Jupiter of greater than 3 and a semi-major axis less than that of Jupiter. ]], + Description = [[ RenderableSmallBody asset with data from from JPL Horizons + contiaining the Encke-Type group.]], Author = "JPL Small-Body Database hosted by California Institute of Technology", URL = "https://ssd.jpl.nasa.gov/sbdb_query.cgi", - License = "JPL-authored documents are sponsored by NASA under Contract NAS7-030010. All documents available from this server may be protected under the U.S. and Foreign Copyright Laws." -} \ No newline at end of file + License = [[JPL-authored documents are sponsored by NASA under Contract NAS7-030010. + All documents available from this server may be protected under the U.S. and + Foreign Copyright Laws.]], + Identifiers = "sssb_sssb_data_encke-type_comet" +} diff --git a/data/assets/scene/solarsystem/sssb/halley-type_comet.asset b/data/assets/scene/solarsystem/sssb/halley-type_comet.asset index 004ff8ce03..cfbe090cbe 100644 --- a/data/assets/scene/solarsystem/sssb/halley-type_comet.asset +++ b/data/assets/scene/solarsystem/sssb/halley-type_comet.asset @@ -1,20 +1,29 @@ local assetHelper = asset.require('util/asset_helper') local sharedSssb = asset.require('./sssb_shared') -local filepath = sharedSssb.downloadSssbDatabaseFile(asset, 'halley-type_comet', 'sssb_data_halley-type_comet') -local object = sharedSssb.createSssbGroupObject('sssb_data_halley-type_comet.csv', "Halley-type Comets", filepath, { 0.66, 0.66, 0.66 }) +local filepath = sharedSssb.downloadSssbDatabaseFile(asset, 'halley-type_comet', + 'sssb_data_halley-type_comet') +local object = sharedSssb.createSssbGroupObject('sssb_data_halley-type_comet.csv', + "Halley-type Comets", filepath, { 0.66, 0.66, 0.66 }) object.Renderable.Enabled = false object.Renderable.SegmentQuality = 9 object.Renderable.TrailFade = 18 +object.GUI.Description = [[ Periodic comets with an orbital period between 20 and 200 + years. ]] + assetHelper.registerSceneGraphNodesAndExport(asset, { object }) asset.meta = { Name = "Halley-Type Comets", Version = "1.0", - Description = [[ Periodic comets with an orbital period between 20 and 200 years. ]], + Description = [[ RenderableSmallBody asset with data from from JPL Horizons + contiaining the Halley-Type group.]], Author = "JPL Small-Body Database hosted by California Institute of Technology", URL = "https://ssd.jpl.nasa.gov/sbdb_query.cgi", - License = "JPL-authored documents are sponsored by NASA under Contract NAS7-030010. All documents available from this server may be protected under the U.S. and Foreign Copyright Laws." -} \ No newline at end of file + License = [[JPL-authored documents are sponsored by NASA under Contract NAS7-030010. + All documents available from this server may be protected under the U.S. and + Foreign Copyright Laws.]], + Identifiers = "sssb_sssb_data_halley-type_comet" +} diff --git a/data/assets/scene/solarsystem/sssb/inner_main_belt_asteroid.asset b/data/assets/scene/solarsystem/sssb/inner_main_belt_asteroid.asset index aef5fba263..c28f479795 100644 --- a/data/assets/scene/solarsystem/sssb/inner_main_belt_asteroid.asset +++ b/data/assets/scene/solarsystem/sssb/inner_main_belt_asteroid.asset @@ -1,20 +1,30 @@ local assetHelper = asset.require('util/asset_helper') local sharedSssb = asset.require('./sssb_shared') -local filepath = sharedSssb.downloadSssbDatabaseFile(asset, 'inner_main_belt_asteroid', 'sssb_data_inner_main_belt_asteroid') -local object = sharedSssb.createSssbGroupObject('sssb_data_inner_main_belt_asteroid.csv', "Inner Main Asteroid Belt", filepath, { 1.0, 1.0, 0.0 }) +local filepath = sharedSssb.downloadSssbDatabaseFile(asset, 'inner_main_belt_asteroid', + 'sssb_data_inner_main_belt_asteroid') +local object = sharedSssb.createSssbGroupObject('sssb_data_inner_main_belt_asteroid.csv', + "Inner Main Asteroid Belt", filepath, { 1.0, 1.0, 0.0 }) object.Renderable.Enabled = false object.Renderable.SegmentQuality = 1 object.Renderable.TrailFade = 0.5 +object.GUI.Description = [[ Asteroids with a semi-major axis less than 2.0 au and a + perihelion distance greater than 1.666 au. ]] + + assetHelper.registerSceneGraphNodesAndExport(asset, { object }) asset.meta = { Name = "Inner Main Asteroid Belt", Version = "1.0", - Description = [[ Asteroids with a semi-major axis less than 2.0 au and a perihelion distance greater than 1.666 au. ]], + Description = [[ RenderableSmallBody asset with data from from JPL Horizons + contiaining the Inner Main Asteroid Belt group.]], Author = "JPL Small-Body Database hosted by California Institute of Technology", URL = "https://ssd.jpl.nasa.gov/sbdb_query.cgi", - License = "JPL-authored documents are sponsored by NASA under Contract NAS7-030010. All documents available from this server may be protected under the U.S. and Foreign Copyright Laws." -} \ No newline at end of file + License = [[JPL-authored documents are sponsored by NASA under Contract NAS7-030010. + All documents available from this server may be protected under the U.S. and + Foreign Copyright Laws.]], + Identifiers = "sssb_sssb_data_inner_main_belt_asteroid" +} diff --git a/data/assets/scene/solarsystem/sssb/jupiter-family_comet.asset b/data/assets/scene/solarsystem/sssb/jupiter-family_comet.asset index 2046630045..a2bbe595ff 100644 --- a/data/assets/scene/solarsystem/sssb/jupiter-family_comet.asset +++ b/data/assets/scene/solarsystem/sssb/jupiter-family_comet.asset @@ -1,20 +1,30 @@ local assetHelper = asset.require('util/asset_helper') local sharedSssb = asset.require('./sssb_shared') -local filepath = sharedSssb.downloadSssbDatabaseFile(asset, 'jupiter-family_comet', 'sssb_data_jupiter-family_comet') -local object = sharedSssb.createSssbGroupObject('sssb_data_jupiter-family_comet.csv', "Jupiter-family Comets", filepath, { 0.2, 0.8, 0.2 }) +local filepath = sharedSssb.downloadSssbDatabaseFile(asset, 'jupiter-family_comet', + 'sssb_data_jupiter-family_comet') +local object = sharedSssb.createSssbGroupObject('sssb_data_jupiter-family_comet.csv', + "Jupiter-family Comets", filepath, { 0.2, 0.8, 0.2 }) object.Renderable.Enabled = false object.Renderable.SegmentQuality = 10 object.Renderable.TrailFade = 28 +object.GUI.Description = [[ Comets with a Tisserand's parameter with respect to Jupiter of + between 2 and 3. ]] + + assetHelper.registerSceneGraphNodesAndExport(asset, { object }) asset.meta = { Name = "Jupiter Family Comets", Version = "1.0", - Description = [[ Comets with a Tisserand's parameter with respect to Jupiter of between 2 and 3. ]], + Description = [[ RenderableSmallBody asset with data from from JPL Horizons + contiaining Jupiter-family group.]], Author = "JPL Small-Body Database hosted by California Institute of Technology", URL = "https://ssd.jpl.nasa.gov/sbdb_query.cgi", - License = "JPL-authored documents are sponsored by NASA under Contract NAS7-030010. All documents available from this server may be protected under the U.S. and Foreign Copyright Laws." -} \ No newline at end of file + License = [[JPL-authored documents are sponsored by NASA under Contract NAS7-030010. + All documents available from this server may be protected under the U.S. and + Foreign Copyright Laws.]], + Identifiers = "sssb_sssb_data_jupiter-family_comet" +} diff --git a/data/assets/scene/solarsystem/sssb/jupiter_trojan_asteroid.asset b/data/assets/scene/solarsystem/sssb/jupiter_trojan_asteroid.asset index e12ef74aae..f272d92e68 100644 --- a/data/assets/scene/solarsystem/sssb/jupiter_trojan_asteroid.asset +++ b/data/assets/scene/solarsystem/sssb/jupiter_trojan_asteroid.asset @@ -1,20 +1,30 @@ local assetHelper = asset.require('util/asset_helper') local sharedSssb = asset.require('./sssb_shared') -local filepath = sharedSssb.downloadSssbDatabaseFile(asset, 'jupiter_trojan_asteroid', 'sssb_data_jupiter_trojan_asteroid') -local object = sharedSssb.createSssbGroupObject('sssb_data_jupiter_trojan_asteroid.csv', "Jupiter Trojan Asteroids", filepath, { 0.5, 0.8, 0.5 }) +local filepath = sharedSssb.downloadSssbDatabaseFile(asset, 'jupiter_trojan_asteroid', + 'sssb_data_jupiter_trojan_asteroid') +local object = sharedSssb.createSssbGroupObject('sssb_data_jupiter_trojan_asteroid.csv', + "Jupiter Trojan Asteroids", filepath, { 0.5, 0.8, 0.5 }) object.Renderable.Enabled = false object.Renderable.SegmentQuality = 1 object.Renderable.TrailFade = 5 +object.GUI.Description = [[ Asteroids trapped in Jupiter's L4/L5 Lagrange points + (semimajor axis of between 4.6 and 5.5 au), with an eccentricity of less than 0.3. ]] + + assetHelper.registerSceneGraphNodesAndExport(asset, { object }) asset.meta = { Name = "Jupiter Trojan Asteroids", Version = "1.0", - Description = [[ Asteroids trapped in Jupiter's L4/L5 Lagrange points (semimajor axis of between 4.6 and 5.5 au), with an eccentricity of less than 0.3. ]], + Description = [[ RenderableSmallBody asset with data from from JPL Horizons + contiaining Jupiter Trojan group.]], Author = "JPL Small-Body Database hosted by California Institute of Technology", URL = "https://ssd.jpl.nasa.gov/sbdb_query.cgi", - License = "JPL-authored documents are sponsored by NASA under Contract NAS7-030010. All documents available from this server may be protected under the U.S. and Foreign Copyright Laws." -} \ No newline at end of file + License = [[JPL-authored documents are sponsored by NASA under Contract NAS7-030010. + All documents available from this server may be protected under the U.S. and + Foreign Copyright Laws.]], + Identifiers = "sssb_sssb_data_jupiter_trojan_asteroid" +} diff --git a/data/assets/scene/solarsystem/sssb/main_belt_asteroid.asset b/data/assets/scene/solarsystem/sssb/main_belt_asteroid.asset index 8154d3643f..4535fb686b 100644 --- a/data/assets/scene/solarsystem/sssb/main_belt_asteroid.asset +++ b/data/assets/scene/solarsystem/sssb/main_belt_asteroid.asset @@ -1,21 +1,31 @@ local assetHelper = asset.require('util/asset_helper') local sharedSssb = asset.require('./sssb_shared') -local filepath = sharedSssb.downloadSssbDatabaseFile(asset, 'main_belt_asteroid', 'sssb_data_main_belt_asteroid') -local object = sharedSssb.createSssbGroupObject('sssb_data_main_belt_asteroid.csv', "Main Asteroid Belt", filepath, { 0.0, 0.5, 0.0 }) +local filepath = sharedSssb.downloadSssbDatabaseFile(asset, 'main_belt_asteroid', + 'sssb_data_main_belt_asteroid') +local object = sharedSssb.createSssbGroupObject('sssb_data_main_belt_asteroid.csv', + "Main Asteroid Belt", filepath, { 0.0, 0.5, 0.0 }) object.Renderable.Enabled = false object.Renderable.SegmentQuality = 1 object.Renderable.TrailFade = 0.1 object.Renderable.UpperLimit = 50000 +object.GUI.Description = [[ Asteroids with a semi-major axis of between 2.0 and 3.2 au, + and a perihelion distance greater than 1.666 au. ]] + + assetHelper.registerSceneGraphNodesAndExport(asset, { object }) asset.meta = { Name = "Main Asteroid Belt", Version = "1.0", - Description = [[ Asteroids with a semi-major axis of between 2.0 and 3.2 au, and a perihelion distance greater than 1.666 au. ]], + Description = [[ RenderableSmallBody asset with data from from JPL Horizons + contiaining Main Asteroid Belt group.]], Author = "JPL Small-Body Database hosted by California Institute of Technology", URL = "https://ssd.jpl.nasa.gov/sbdb_query.cgi", - License = "JPL-authored documents are sponsored by NASA under Contract NAS7-030010. All documents available from this server may be protected under the U.S. and Foreign Copyright Laws." -} \ No newline at end of file + License = [[JPL-authored documents are sponsored by NASA under Contract NAS7-030010. + All documents available from this server may be protected under the U.S. and + Foreign Copyright Laws.]], + Identifiers = "sssb_sssb_data_main_belt_asteroid" +} diff --git a/data/assets/scene/solarsystem/sssb/mars-crossing_asteroid.asset b/data/assets/scene/solarsystem/sssb/mars-crossing_asteroid.asset index 8bded6abe9..7da4f37d64 100644 --- a/data/assets/scene/solarsystem/sssb/mars-crossing_asteroid.asset +++ b/data/assets/scene/solarsystem/sssb/mars-crossing_asteroid.asset @@ -1,20 +1,30 @@ local assetHelper = asset.require('util/asset_helper') local sharedSssb = asset.require('./sssb_shared') -local filepath = sharedSssb.downloadSssbDatabaseFile(asset, 'mars-crossing_asteroid', 'sssb_data_mars-crossing_asteroid') -local object = sharedSssb.createSssbGroupObject('sssb_data_mars-crossing_asteroid.csv', "Mars-crossing Asteroids", filepath, { 0.814, 0.305, 0.220 }) +local filepath = sharedSssb.downloadSssbDatabaseFile(asset, 'mars-crossing_asteroid', + 'sssb_data_mars-crossing_asteroid') +local object = sharedSssb.createSssbGroupObject('sssb_data_mars-crossing_asteroid.csv', + "Mars-crossing Asteroids", filepath, { 0.814, 0.305, 0.220 }) object.Renderable.Enabled = false object.Renderable.SegmentQuality = 1 object.Renderable.TrailFade = 13 +object.GUI.Description = [[ Asteroids that cross the orbit of Mars, with a semi-major axis + of less than 3.2 au, and a perihelion distance of between 1.3 and 1.666 au. ]] + + assetHelper.registerSceneGraphNodesAndExport(asset, { object }) asset.meta = { Name = "Mars-Crossing Asteroids", Version = "1.0", - Description = [[ Asteroids that cross the orbit of Mars, with a semi-major axis of less than 3.2 au, and a perihelion distance of between 1.3 and 1.666 au. ]], + Description = [[ RenderableSmallBody asset with data from from JPL Horizons + contiaining Mars-Crossing group.]], Author = "JPL Small-Body Database hosted by California Institute of Technology", URL = "https://ssd.jpl.nasa.gov/sbdb_query.cgi", - License = "JPL-authored documents are sponsored by NASA under Contract NAS7-030010. All documents available from this server may be protected under the U.S. and Foreign Copyright Laws." -} \ No newline at end of file + License = [[JPL-authored documents are sponsored by NASA under Contract NAS7-030010. + All documents available from this server may be protected under the U.S. and + Foreign Copyright Laws.]], + Identifiers = "sssb_sssb_data_mars-crossing_asteroid" +} diff --git a/data/assets/scene/solarsystem/sssb/outer_main_belt_asteroid.asset b/data/assets/scene/solarsystem/sssb/outer_main_belt_asteroid.asset index a1b5dc806f..f98a8db61b 100644 --- a/data/assets/scene/solarsystem/sssb/outer_main_belt_asteroid.asset +++ b/data/assets/scene/solarsystem/sssb/outer_main_belt_asteroid.asset @@ -1,20 +1,35 @@ local assetHelper = asset.require('util/asset_helper') local sharedSssb = asset.require('./sssb_shared') -local filepath = sharedSssb.downloadSssbDatabaseFile(asset, 'outer_main_belt_asteroid', 'sssb_data_outer_main_belt_asteroid') -local object = sharedSssb.createSssbGroupObject('sssb_data_outer_main_belt_asteroid.csv', "Outer Main Asteroid Belt", filepath, { 0.4, 0.4, 1.0 }) +local filepath = sharedSssb.downloadSssbDatabaseFile( + asset, + 'outer_main_belt_asteroid', + 'sssb_data_outer_main_belt_asteroid' +) +local object = sharedSssb.createSssbGroupObject( + 'sssb_data_outer_main_belt_asteroid.csv', + "Outer Main Asteroid Belt", + filepath, + { 0.4, 0.4, 1.0 } +) object.Renderable.Enabled = false object.Renderable.SegmentQuality = 1 object.Renderable.TrailFade = 2 +object.GUI.Description = [[ Asteroids with a semi-major axis of between 3.2 and 4.6 au. ]] + assetHelper.registerSceneGraphNodesAndExport(asset, { object }) asset.meta = { Name = "Outer Main Asteroid Belt", Version = "1.0", - Description = [[ Asteroids with a semi-major axis of between 3.2 and 4.6 au. ]], + Description = [[ RenderableSmallBody asset with data from from JPL Horizons + contiaining Outer Main Asteroid Belt group.]], Author = "JPL Small-Body Database hosted by California Institute of Technology", URL = "https://ssd.jpl.nasa.gov/sbdb_query.cgi", - License = "JPL-authored documents are sponsored by NASA under Contract NAS7-030010. All documents available from this server may be protected under the U.S. and Foreign Copyright Laws." -} \ No newline at end of file + License = [[JPL-authored documents are sponsored by NASA under Contract NAS7-030010. + All documents available from this server may be protected under the U.S. + and Foreign Copyright Laws.]], + Identifiers = "sssb_sssb_data_outer_main_belt_asteroid" +} diff --git a/data/assets/scene/solarsystem/sssb/pha.asset b/data/assets/scene/solarsystem/sssb/pha.asset index 41639b39a0..fec3d582b9 100644 --- a/data/assets/scene/solarsystem/sssb/pha.asset +++ b/data/assets/scene/solarsystem/sssb/pha.asset @@ -2,19 +2,34 @@ local assetHelper = asset.require('util/asset_helper') local sharedSssb = asset.require('./sssb_shared') local filepath = sharedSssb.downloadSssbDatabaseFile(asset, 'pha', 'sssb_data_pha') -local object = sharedSssb.createSssbGroupObject('sssb_data_pha.csv', "Potentially Hazardous Asteroids", filepath, { 0.98, 0.09, 0.06}) +local object = sharedSssb.createSssbGroupObject('sssb_data_pha.csv', + "Potentially Hazardous Asteroids", + filepath, + { 0.98, 0.09, 0.06} +) object.Renderable.Enabled = false object.Renderable.SegmentQuality = 3 object.Renderable.TrailFade = 17 +object.GUI.Description = [[ Asteroids that are deemed potentially hazardous to Earth + based on their close approaches. All asteroids with an Earth Minimum Orbit + Intersection Distance (MOID) of 0.05 au or less, and with an absolute magnitude (H) + of 22.0 or less. ]] + + assetHelper.registerSceneGraphNodesAndExport(asset, { object }) asset.meta = { Name = "Potentially-Hazardous Asteroids", Version = "1.0", - Description = [[ Asteroids that are deemed potentially hazardous to Earth based on their close approaches. All asteroids with an Earth Minimum Orbit Intersection Distance (MOID) of 0.05 au or less, and with an absolute magnitude (H) of 22.0 or less. ]], - Author = "JPL Small-Body Database hosted by California Institute of Technology", + Description = [[ RenderableSmallBody asset with data from from JPL Horizons + contiaining Potentially Hazardous group. ]], + Author = [[JPL Small-Body Database hosted by California Institute of + Technology]], URL = "https://ssd.jpl.nasa.gov/sbdb_query.cgi", - License = "JPL-authored documents are sponsored by NASA under Contract NAS7-030010. All documents available from this server may be protected under the U.S. and Foreign Copyright Laws." -} \ No newline at end of file + License = [[JPL-authored documents are sponsored by NASA under Contract + NAS7-030010. All documents available from this server may be protected + under the U.S. and Foreign Copyright Laws.]], + Identifiers = "sssb_sssb_data_pha" +} diff --git a/data/assets/scene/solarsystem/sssb/swifttuttle.asset b/data/assets/scene/solarsystem/sssb/swifttuttle.asset index 225c9f5e97..142f26b84e 100644 --- a/data/assets/scene/solarsystem/sssb/swifttuttle.asset +++ b/data/assets/scene/solarsystem/sssb/swifttuttle.asset @@ -19,7 +19,7 @@ local SwiftTuttleTrail = { }, Color = { 0.9, 0.9, 0.0 }, StartTime = "1879 JUN 27 00:00:00", - EndTime = "2019 JUN 27 00:00:00", + EndTime = "1879 JUN 27 00:00:00", SampleInterval = 60 }, GUI = { @@ -43,4 +43,20 @@ local SwiftTuttlePosition = { } } -assetHelper.registerSceneGraphNodesAndExport(asset, { SwiftTuttlePosition, SwiftTuttleTrail }) +assetHelper.registerSceneGraphNodesAndExport(asset, { + SwiftTuttlePosition, SwiftTuttleTrail +}) + + +asset.meta = { + Name = "Swift Tuttle", + Version = "1.0", + Description = [[ Position and Trail of Swift Tuttle from 1879 JUN 27 + to 1879 JUN 27. Data from JPL Horizons]], + Author = "OpenSpace Team", + URL = "https://ssd.jpl.nasa.gov/horizons.cgi", + License = [[ JPL-authored documents are sponsored by NASA under Contract + NAS7-030010. All documents available from this server may be protected + under the U.S. and Foreign Copyright Laws."]], + Identifiers = "SwiftTuttlePosition,SwiftTuttleTrail" +} diff --git a/data/assets/scene/solarsystem/sssb/tesla_roadster.asset b/data/assets/scene/solarsystem/sssb/tesla_roadster.asset index ca2a577dff..caa5f90f2c 100644 --- a/data/assets/scene/solarsystem/sssb/tesla_roadster.asset +++ b/data/assets/scene/solarsystem/sssb/tesla_roadster.asset @@ -40,8 +40,24 @@ local TeslaPosition = { }, GUI = { Name = "Tesla Roadster", - Path = "/Solar System/SSSB" + Path = "/Solar System/SSSB", + Description = [[Position and Trail of Tesla Roadster from 2018 FEB 8 + to 2022 FEB 7 00:00:00. Data from JPL Horizons.]] } } assetHelper.registerSceneGraphNodesAndExport(asset, { TeslaPosition, TeslaRoadsterTrail }) + + +asset.meta = { + Name = "Tesla Roadster", + Version = "1.0", + Description = [[ Position and Trail of Tesla Roadster from 2018 FEB 8 + to 2022 FEB 7 00:00:00. Data from JPL Horizons.]], + Author = "OpenSpace Team", + URL = "https://ssd.jpl.nasa.gov/horizons.cgi", + License = [[ JPL-authored documents are sponsored by NASA under Contract + NAS7-030010. All documents available from this server may be protected + under the U.S. and Foreign Copyright Laws.]], + Identifiers = "TeslaPosition,TeslaRoadsterTrail" +} diff --git a/data/assets/scene/solarsystem/sssb/transneptunian_object_asteroid.asset b/data/assets/scene/solarsystem/sssb/transneptunian_object_asteroid.asset index 7a8104fadd..d458ca2591 100644 --- a/data/assets/scene/solarsystem/sssb/transneptunian_object_asteroid.asset +++ b/data/assets/scene/solarsystem/sssb/transneptunian_object_asteroid.asset @@ -1,20 +1,38 @@ local assetHelper = asset.require('util/asset_helper') local sharedSssb = asset.require('./sssb_shared') -local filepath = sharedSssb.downloadSssbDatabaseFile(asset, 'transneptunian_object_asteroid', 'sssb_data_transneptunian_object_asteroid') -local object = sharedSssb.createSssbGroupObject('sssb_data_transneptunian_object_asteroid.csv', "Transneptunian Object Asteroids", filepath, {0.56, 0.64, 0.95 }) +local filepath = sharedSssb.downloadSssbDatabaseFile(asset, + 'transneptunian_object_asteroid', + 'sssb_data_transneptunian_object_asteroid' +) +local object = sharedSssb.createSssbGroupObject( + 'sssb_data_transneptunian_object_asteroid.csv', + "Transneptunian Object Asteroids", + filepath, + {0.56, 0.64, 0.95 } +) object.Renderable.Enabled = false object.Renderable.SegmentQuality = 8 object.Renderable.TrailFade = 10 +object.GUI.Description = [[ Any minor or dwarf planets in the solar system that orbit + the Sun at a greater average distance than Neptune (semi-major axis + of 30.1 AU). ]] + + assetHelper.registerSceneGraphNodesAndExport(asset, { object }) asset.meta = { Name = "Trans-Neptunian Asteroids", Version = "1.0", - Description = [[ Any minor or dwarf planets in the solar system that orbit the Sun at a greater average distance than Neptune (semi-major axis of 30.1 AU). ]], - Author = "JPL Small-Body Database hosted by California Institute of Technology", + Description = [[ RenderableSmallBody asset with data from from JPL Horizons + contiaining Trans-Neptunian group. ]], + Author = [[JPL Small-Body Database hosted by California Institute of + Technology]], URL = "https://ssd.jpl.nasa.gov/sbdb_query.cgi", - License = "JPL-authored documents are sponsored by NASA under Contract NAS7-030010. All documents available from this server may be protected under the U.S. and Foreign Copyright Laws." -} \ No newline at end of file + License = [[ JPL-authored documents are sponsored by NASA under Contract + NAS7-030010. All documents available from this server may be protected + under the U.S. and Foreign Copyright Laws."]], + Identifiers = "sssb_sssb_data_transneptunian_object_asteroid" +} diff --git a/data/assets/scene/solarsystem/sun/default_layers.asset b/data/assets/scene/solarsystem/sun/default_layers.asset index fba1e4662d..c28573d81c 100644 --- a/data/assets/scene/solarsystem/sun/default_layers.asset +++ b/data/assets/scene/solarsystem/sun/default_layers.asset @@ -7,3 +7,13 @@ local colorLayer = asset.require(colorLayersPath .. "/sun_texture") asset.onInitialize(function () openspace.setPropertyValueSingle("Scene.Sun.Renderable.Layers.ColorLayers." .. colorLayer.layer.Identifier .. ".Enabled", true) end) + + +asset.meta = { + Name = "Default Sun layers", + Version = "1.0", + Description = [[ Default Sun layers renderable globe.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/sun/glare.asset b/data/assets/scene/solarsystem/sun/glare.asset index 57d3a6eed3..4f2aa4e267 100644 --- a/data/assets/scene/solarsystem/sun/glare.asset +++ b/data/assets/scene/solarsystem/sun/glare.asset @@ -27,10 +27,20 @@ local SunGlare = { }, GUI = { Name = "Sun Glare", - Path = "/Solar System/Sun" + Path = "/Solar System/Sun", + Description = [[ Sun glare effect. Enabled by default instead of sun orb.]] } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { SunGlare }) + + +asset.meta = { + Name = "Sun Glare", + Version = "1.0", + Description = [[ Image plane with sun glare effect.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "SunGlare" +} diff --git a/data/assets/scene/solarsystem/sun/layers/colorlayers/sun_texture.asset b/data/assets/scene/solarsystem/sun/layers/colorlayers/sun_texture.asset index 88b59357fe..a9e550212b 100644 --- a/data/assets/scene/solarsystem/sun/layers/colorlayers/sun_texture.asset +++ b/data/assets/scene/solarsystem/sun/layers/colorlayers/sun_texture.asset @@ -11,3 +11,13 @@ asset.onInitialize(function () end) asset.export("layer", layer) + + +asset.meta = { + Name = "Sun Texture", + Version = "1.0", + Description = [[ Default Sun texture for renderable globe.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/sun/marker.asset b/data/assets/scene/solarsystem/sun/marker.asset index 7bfdaf911e..191ee0073c 100644 --- a/data/assets/scene/solarsystem/sun/marker.asset +++ b/data/assets/scene/solarsystem/sun/marker.asset @@ -19,10 +19,20 @@ local SunMarker = { }, GUI = { Name = "Sun Marker", - Path = "/Solar System/Sun" + Path = "/Solar System/Sun", + Description = [[ Sun marker with name, sized for Solar System view]] } } - - assetHelper.registerSceneGraphNodesAndExport(asset, { SunMarker }) + + +asset.meta = { + Name = "Sun marker", + Version = "1.0", + Description = [[ Marker for the sun, with a stick and label.]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "SunMarker" +} diff --git a/data/assets/scene/solarsystem/sun/sun.asset b/data/assets/scene/solarsystem/sun/sun.asset index 5fabf2aa61..be58afe588 100644 --- a/data/assets/scene/solarsystem/sun/sun.asset +++ b/data/assets/scene/solarsystem/sun/sun.asset @@ -14,7 +14,9 @@ local Sun = { PerformShading = false }, GUI = { - Path = "/Solar System/Sun" + Name = "Sun", + Path = "/Solar System/Sun", + Description = "Globe for the sun in our solar system." } } @@ -42,8 +44,20 @@ local SunLabel = { Tag = { "solarsystem_labels" }, GUI = { Name = "Sun Label", - Path = "/Solar System/Sun" + Path = "/Solar System/Sun", + Description = "Label for the sun in our solar system." } } assetHelper.registerSceneGraphNodesAndExport(asset, { Sun, SunLabel }) + + +asset.meta = { + Name = "Sun", + Version = "1.0", + Description = [[ The Sun and label]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "Sun,SunLabel" +} diff --git a/data/assets/scene/solarsystem/sun/sun_textures.asset b/data/assets/scene/solarsystem/sun/sun_textures.asset index e63bbfdbad..b38fdab4b0 100644 --- a/data/assets/scene/solarsystem/sun/sun_textures.asset +++ b/data/assets/scene/solarsystem/sun/sun_textures.asset @@ -6,3 +6,13 @@ local TexturesPath = asset.syncedResource({ }) asset.export("TexturesPath", TexturesPath) + + +asset.meta = { + Name = "Sun Textures", + Version = "4.0", + Description = [[ Default Sun textures]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license" +} diff --git a/data/assets/scene/solarsystem/sun/transforms.asset b/data/assets/scene/solarsystem/sun/transforms.asset index ea76c08add..e05b46acf4 100644 --- a/data/assets/scene/solarsystem/sun/transforms.asset +++ b/data/assets/scene/solarsystem/sun/transforms.asset @@ -15,6 +15,7 @@ local SolarSystemBarycenter = { GUI = { Name = "Solar System Barycenter", Path = "/Solar System", + Description = [[Barycenter of the solar system, expressed in the Galactic frame]], Hidden = true } } @@ -38,6 +39,7 @@ local SunIAU = { GUI = { Name = "SUN IAU", Path = "/Solar System/Sun", + Description = [[Spice frame for the Sun]], Hidden = true } } @@ -60,8 +62,21 @@ local SunECLIPJ2000 = { GUI = { Name = "SUN J2000", Path = "/Solar System/Sun", + Description = [[Spice rotation for Mean ecliptic and equinox of J2000]], Hidden = true } } assetHelper.registerSceneGraphNodesAndExport(asset, { SolarSystemBarycenter, SunIAU, SunECLIPJ2000 }) + + +asset.meta = { + Name = "Sun Transforms", + Version = "1.0", + Description = [[ Sun transforms: Solar System Barycenter, SUN IAU and + SUN J2000]], + Author = "OpenSpace Team", + URL = "http://openspaceproject.com", + License = "MIT license", + Identifiers = "SolarSystemBarycenter,SunIAU,SunECLIPJ2000" +} diff --git a/data/assets/spice/base.asset b/data/assets/spice/base.asset index f4ebaef051..2f4199a0d7 100644 --- a/data/assets/spice/base.asset +++ b/data/assets/spice/base.asset @@ -16,6 +16,15 @@ local kernels = { syncedDirectory .. "/de430_1850-2150.bsp" } - - assetHelper.registerSpiceKernels(asset, kernels) + + +asset.meta = { + Name = "SPICE Base", + Version = "1.0", + Description = [[ This asset contains the spice base kernels. With positions + for Solar System bodies from 1850 to 2150]], + Author = "OpenSpace Team", + URL = "https://naif.jpl.nasa.gov/naif/data_generic.html", + License = "NASA" +} diff --git a/data/assets/util/asset_helper.asset b/data/assets/util/asset_helper.asset index 24009580c4..c8463192f7 100644 --- a/data/assets/util/asset_helper.asset +++ b/data/assets/util/asset_helper.asset @@ -165,11 +165,11 @@ local createModelPart = function (parent, sunLightSourceNode, models, geometry, Parent = parent, Renderable = { Type = "RenderableModel", - Geometry = { + Geometry = {{ Type = "MultiModelGeometry", GeometryFile = models .. "/" .. geometry .. ".obj", ColorTexture = models .. "/" .. texture - }, + }}, LightSources = lightSources, PerformShading = performShading, DisableFaceCulling = true @@ -180,8 +180,6 @@ local createModelPart = function (parent, sunLightSourceNode, models, geometry, } end - - asset.export("registerSceneGraphNodes", registerSceneGraphNodes) asset.export("registerSceneGraphNodesAndExport", registerSceneGraphNodesAndExport) asset.export("registerScreenSpaceRenderables", registerScreenSpaceRenderables) diff --git a/data/assets/util/default_keybindings.asset b/data/assets/util/default_keybindings.asset index b6e08b0100..57d90ddaa2 100644 --- a/data/assets/util/default_keybindings.asset +++ b/data/assets/util/default_keybindings.asset @@ -141,33 +141,15 @@ openspace.setPropertyValueSingle("RenderEngine.ShowCamera", not isEnabled)]], Documentation = "Immediately set the simulation speed to the previous delta time step, if one exists.", GuiPath = "/Simulation Speed", Local = true - }, + } } -local DeltaTimeKeys - asset.onInitialize(function() sceneHelper.bindKeys(Keybindings) - - DeltaTimeKeys = sceneHelper.setDeltaTimeKeys({ - -- 1 2 3 4 5 6 7 8 9 0 - -------------------------------------------------------------------------------------------------------------------------- - -- 1s 2s 5s 10s 30s 1m 2m 5m 10m 30m - 1, 2, 5, 10, 30, 60, 120, 300, 600, 1800, - - -- 1h 2h 3h 6h 12h 1d 2d 4d 1w 2w - 3600, 7200, 10800, 21600, 43200, 86400, 172800, 345600, 604800, 1209600, - - -- 1mo 2mo 3mo 6mo 1yr 2y 5y 10y 20y 50y - 2592000, 5184000, 7776000, 15552000, 31536000, 63072000, 157680000, 315360000, 630720000, 1576800000 - }) - -- OBS: One month (1mo) is approximated by 30 days. end) asset.onDeinitialize(function () sceneHelper.unbindKeys(Keybindings) - sceneHelper.unbindKeys(DeltaTimeKeys) end) asset.export("DefaultKeybindings", Keybindings) -asset.export("DefaultDeltaTimeKeys", DeltaTimeKeys) diff --git a/data/assets/util/generate_bookmarks.asset b/data/assets/util/generate_bookmarks.asset index 2e3da2a9e3..b500522d92 100644 --- a/data/assets/util/generate_bookmarks.asset +++ b/data/assets/util/generate_bookmarks.asset @@ -82,4 +82,3 @@ local getBookmarks = function (guiPath, bookmarkfile) end asset.export('getBookmarks', getBookmarks) - diff --git a/data/assets/util/procedural_globe.asset b/data/assets/util/procedural_globe.asset index 6a7650fe94..3ab698e673 100644 --- a/data/assets/util/procedural_globe.asset +++ b/data/assets/util/procedural_globe.asset @@ -1,6 +1,7 @@ asset.require('spice/base') -local createGlobeWithoutName = function(identifier, parent, parentSpiceName, spiceName, radii, tags, guiPath, trailColor, orbitPeriod, kernels) +local createGlobeWithoutName = function(identifier, parent, parentSpiceName, spiceName, + radii, tags, guiPath, trailColor, orbitPeriod, kernels) return { Identifier = identifier, Parent = parent, @@ -43,9 +44,10 @@ local createGlobeWithoutName = function(identifier, parent, parentSpiceName, spi } end -local createGlobeWithName = function(identifier, name, parent, parentSpiceName, spiceName, radii, tags, guiPath, trailColor, orbitPeriod, kernels) - g, t = createGlobeWithoutName(identifier, parent, parentSpiceName, spiceName, radii, tags, guiPath, trailColor, orbitPeriod, kernels) - +local createGlobeWithName = function(identifier, name, parent, parentSpiceName, spiceName, + radii, tags, guiPath, trailColor, orbitPeriod, kernels, layers) + g, t = createGlobeWithoutName(identifier, parent, parentSpiceName, spiceName, radii, + tags, guiPath, trailColor, orbitPeriod, kernels, layers) g.GUI.Name = name t.GUI.Name = name .. " Trail" @@ -58,7 +60,8 @@ asset.export("createGlobeWithName", createGlobeWithName) local createGlobes = function(t) for _,v in pairs(t) do if type(v) ~= "table" then - openspace.printWarning("The table passed to 'createGlobes' was not a table of tables") + local warning = "The table passed to 'createGlobes' was not a table of tables" + openspace.printWarning(warning) -- We return an empty table of tables to silence a potential future warning return {{}} end @@ -69,6 +72,9 @@ local createGlobes = function(t) for i, v in ipairs(t) do local globe = nil local trail = nil + if not v.Layers then + v.Layers = {} + end if v.Name then globe, trail = createGlobeWithName( v.Identifier, @@ -81,7 +87,8 @@ local createGlobes = function(t) v.GUI.Path, v.TrailColor, v.OrbitPeriod, - v.Kernels + v.Kernels, + v.Layers ) else globe, trail = createGlobeWithoutName( @@ -94,7 +101,8 @@ local createGlobes = function(t) v.GUI.Path, v.TrailColor, v.OrbitPeriod, - v.Kernels + v.Kernels, + v.Layers ) end diff --git a/data/assets/util/renderable_helper.asset b/data/assets/util/renderable_helper.asset index 2cac5f3931..31ef99a3df 100644 --- a/data/assets/util/renderable_helper.asset +++ b/data/assets/util/renderable_helper.asset @@ -12,4 +12,4 @@ end asset.export('toggle', toggle) -asset.export('setEnabled', setEnabled) \ No newline at end of file +asset.export('setEnabled', setEnabled) diff --git a/data/assets/util/scene_helper.asset b/data/assets/util/scene_helper.asset index 9e7a87cc3c..47540c3779 100644 --- a/data/assets/util/scene_helper.asset +++ b/data/assets/util/scene_helper.asset @@ -31,42 +31,6 @@ local unbindKeys = function(keys) end asset.export("unbindKeys", unbindKeys) -local deltaTimeKeys = {} - -local setDeltaTimeKeys = function(t) - local Keys = { - '1', '2', '3', '4', '5', '6', '7', '8', '9', '0', - 'Shift+1', 'Shift+2', 'Shift+3', 'Shift+4', 'Shift+5', 'Shift+6', 'Shift+7', 'Shift+8', 'Shift+9', 'Shift+0', - 'Ctrl+1', 'Ctrl+2', 'Ctrl+3', 'Ctrl+4', 'Ctrl+5', 'Ctrl+6', 'Ctrl+7', 'Ctrl+8', 'Ctrl+9', 'Ctrl+0', - 'Alt+1', 'Alt+2', 'Alt+3', 'Alt+4', 'Alt+5', 'Alt+6', 'Alt+7', 'Alt+8', 'Alt+9', 'Alt+0' - } - - if #t > #Keys then - openspace.printError("Error settings delta time keys: Too many delta times (" .. #t .. ")") - return - end - - unbindKeys(deltaTimeKeys) - - result = {} - for i, v in ipairs(t) do - openspace.bindKeyLocal( - Keys[i], - 'openspace.time.interpolateDeltaTime(' .. v .. ")", - 'Setting the simulation speed to ' .. v .. ' seconds per realtime second', - 'Set sim speed ' .. v, - '/Simulation Speed' - ) - table.insert(result, Keys[i]) - end - - deltaTimeKeys = result - - return result -end -asset.export("setDeltaTimeKeys", setDeltaTimeKeys) - - --shortcut function local function has_value (tab, val) for index, value in ipairs(tab) do diff --git a/data/assets/util/screenshots_endpoint.asset b/data/assets/util/screenshots_endpoint.asset index 712b0a5a8b..40a58e0277 100644 --- a/data/assets/util/screenshots_endpoint.asset +++ b/data/assets/util/screenshots_endpoint.asset @@ -18,4 +18,4 @@ end) asset.onDeinitialize(function () -- TODO: Remove endpoints. As of 2019-10-29, OpenSpace sometimes -- crashes when endpoints are removed while the application is closing. -end) \ No newline at end of file +end) diff --git a/data/assets/util/state_machine_helper.asset b/data/assets/util/state_machine_helper.asset index 1444f3e20c..945041fdc3 100644 --- a/data/assets/util/state_machine_helper.asset +++ b/data/assets/util/state_machine_helper.asset @@ -55,5 +55,4 @@ local createStateMachine = function (states) return machine end - asset.export('createStateMachine', createStateMachine) diff --git a/data/assets/util/static_server.asset b/data/assets/util/static_server.asset index 94759f5936..3e98da9fdd 100644 --- a/data/assets/util/static_server.asset +++ b/data/assets/util/static_server.asset @@ -18,4 +18,4 @@ asset.onInitialize(function () openspace.setPropertyValueSingle( "Modules.WebGui.ServerProcessEntryPoint", backend .. "/backend/backend.js" ) -end) \ No newline at end of file +end) diff --git a/data/assets/util/webgui.asset b/data/assets/util/webgui.asset index ecdb0faae0..63d785dcbc 100644 --- a/data/assets/util/webgui.asset +++ b/data/assets/util/webgui.asset @@ -3,7 +3,7 @@ asset.require('./static_server') local guiCustomization = asset.require('customization/gui') -- Select which commit hashes to use for the frontend and backend -local frontendHash = "e520f14d3fffc915b7b900f4fc6d888070f458c4" +local frontendHash = "d85b4022813caafb0fdde18bea2c2f51768816fa" local dataProvider = "data.openspaceproject.com/files/webgui" local frontend = asset.syncedResource({ diff --git a/data/profiles/apollo8.profile b/data/profiles/apollo8.profile index e4cf732215..cd3eb7f4b2 100644 --- a/data/profiles/apollo8.profile +++ b/data/profiles/apollo8.profile @@ -34,3 +34,35 @@ Earth Moon Apollo8 Apollo8Launch + +#DeltaTimes +1 +2 +5 +10 +30 +60 +120 +300 +600 +1800 +3600 +7200 +10800 +21600 +43200 +86400 +172800 +345600 +604800 +1209600 +2592000 +5184000 +7776000 +15552000 +31536000 +63072000 +157680000 +315360000 +630720000 +1576800000 diff --git a/data/profiles/apollo_sites.profile b/data/profiles/apollo_sites.profile index 20cad5733f..a1fbe5ca47 100644 --- a/data/profiles/apollo_sites.profile +++ b/data/profiles/apollo_sites.profile @@ -33,3 +33,35 @@ Apollo11LemModel Apollo17LemModel Apollo11 Apollo11LunarLander + +#DeltaTimes +1 +2 +5 +10 +30 +60 +120 +300 +600 +1800 +3600 +7200 +10800 +21600 +43200 +86400 +172800 +345600 +604800 +1209600 +2592000 +5184000 +7776000 +15552000 +31536000 +63072000 +157680000 +315360000 +630720000 +1576800000 diff --git a/data/profiles/asteroids.profile b/data/profiles/asteroids.profile index 8159804b4f..752498675d 100644 --- a/data/profiles/asteroids.profile +++ b/data/profiles/asteroids.profile @@ -32,3 +32,35 @@ Earth Mars Moon Sun + +#DeltaTimes +1 +2 +5 +10 +30 +60 +120 +300 +600 +1800 +3600 +7200 +10800 +21600 +43200 +86400 +172800 +345600 +604800 +1209600 +2592000 +5184000 +7776000 +15552000 +31536000 +63072000 +157680000 +315360000 +630720000 +1576800000 diff --git a/data/profiles/dawn.profile b/data/profiles/dawn.profile index d61491cc3f..e073810117 100644 --- a/data/profiles/dawn.profile +++ b/data/profiles/dawn.profile @@ -17,3 +17,35 @@ setNavigationState DawnAsset.Dawn.Identifier 526781518487.171326, 257168309890 Dawn Ceres Vesta + +#DeltaTimes +1 +2 +5 +10 +30 +60 +120 +300 +600 +1800 +3600 +7200 +10800 +21600 +43200 +86400 +172800 +345600 +604800 +1209600 +2592000 +5184000 +7776000 +15552000 +31536000 +63072000 +157680000 +315360000 +630720000 +1576800000 diff --git a/data/profiles/default.profile b/data/profiles/default.profile index cedf4ad6d7..e434f3fffe 100644 --- a/data/profiles/default.profile +++ b/data/profiles/default.profile @@ -1,22 +1,62 @@ -#Version -1.0 - -#Asset -base -scene/solarsystem/planets/earth/earth earthAsset -scene/solarsystem/planets/earth/satellites/satellites - -#Property -setPropertyValue {earth_satellites}.Renderable.Enabled false - -#Time -relative -1d - -#Camera -goToGeo earthAsset.Earth.Identifier 58.5877 16.1924 20000000 - -#MarkNodes -Earth -Mars -Moon -Sun +{ + "version": { + "major": 1, + "minor": 0 + }, + "assets": [ + "base", + "scene/solarsystem/planets/earth/earth", + "scene/solarsystem/planets/earth/satellites/satellites" + ], + "properties": [ + { + "type": "setPropertyValue", + "name": "{earth_satellites}.Renderable.Enabled", + "value": "false" + } + ], + "time": { + "type": "relative", + "value": "-1d" + }, + "camera": { + "type": "goToGeo", + "anchor": "Earth", + "latitude": 58.5877, + "longitude": 16.1924, + "altitude": 20000000 + }, + "mark_nodes": [ "Earth", "Mars", "Moon", "Sun" ], + "delta_times": [ + 1, + 2, + 5, + 10, + 30, + 60, + 120, + 300, + 600, + 1800, + 3600, + 7200, + 10800, + 21600, + 43200, + 86400, + 172800, + 345600, + 604800, + 1209600, + 2592000, + 5184000, + 7776000, + 15552000, + 31536000, + 63072000, + 157680000, + 315360000, + 630720000, + 1576800000 + ] +} diff --git a/data/profiles/default_full.profile b/data/profiles/default_full.profile index 6e0644ddde..0f5ccc7701 100644 --- a/data/profiles/default_full.profile +++ b/data/profiles/default_full.profile @@ -26,3 +26,35 @@ Earth Mars Moon Sun + +#DeltaTimes +1 +2 +5 +10 +30 +60 +120 +300 +600 +1800 +3600 +7200 +10800 +21600 +43200 +86400 +172800 +345600 +604800 +1209600 +2592000 +5184000 +7776000 +15552000 +31536000 +63072000 +157680000 +315360000 +630720000 +1576800000 diff --git a/data/profiles/gaia.profile b/data/profiles/gaia.profile index 9b123c9933..738c1a3715 100644 --- a/data/profiles/gaia.profile +++ b/data/profiles/gaia.profile @@ -22,3 +22,35 @@ setNavigationState "Earth" 1000000000000.0, 1000000000000.0, 1000000000000.0 #MarkNodes Gaia + +#DeltaTimes +1 +2 +5 +10 +30 +60 +120 +300 +600 +1800 +3600 +7200 +10800 +21600 +43200 +86400 +172800 +345600 +604800 +1209600 +2592000 +5184000 +7776000 +15552000 +31536000 +63072000 +157680000 +315360000 +630720000 +1576800000 diff --git a/data/profiles/insight.profile b/data/profiles/insight.profile index 8367730f5e..f0ad77fd12 100644 --- a/data/profiles/insight.profile +++ b/data/profiles/insight.profile @@ -28,3 +28,35 @@ setNavigationState insightAsset.Insight.Identifier "Root" 8.430115E0, -1.791710 #MarkNodes Insight + +#DeltaTimes +1 +2 +5 +10 +30 +60 +120 +300 +600 +1800 +3600 +7200 +10800 +21600 +43200 +86400 +172800 +345600 +604800 +1209600 +2592000 +5184000 +7776000 +15552000 +31536000 +63072000 +157680000 +315360000 +630720000 +1576800000 diff --git a/data/profiles/juno.profile b/data/profiles/juno.profile index e1d1a021d5..29887168cd 100644 --- a/data/profiles/juno.profile +++ b/data/profiles/juno.profile @@ -5,28 +5,6 @@ base scene/solarsystem/missions/juno/juno junoAsset -#Keybinding -1 Setting the simulation speed to 1 seconds per realtime second Set sim speed 1 /Simulation Speed false "openspace.time.interpolateDeltaTime(1)" -2 Setting the simulation speed to 5 seconds per realtime second Set sim speed 5 /Simulation Speed false "openspace.time.interpolateDeltaTime(5)" -3 Setting the simulation speed to 10 seconds per realtime second Set sim speed 10 /Simulation Speed false "openspace.time.interpolateDeltaTime(10)" -4 Setting the simulation speed to 20 seconds per realtime second Set sim speed 20 /Simulation Speed false "openspace.time.interpolateDeltaTime(20)" -5 Setting the simulation speed to 40 seconds per realtime second Set sim speed 40 /Simulation Speed false "openspace.time.interpolateDeltaTime(40)" -6 Setting the simulation speed to 90 seconds per realtime second Set sim speed 90 /Simulation Speed false "openspace.time.interpolateDeltaTime(90)" -7 Setting the simulation speed to 360 seconds per realtime second Set sim speed 360 /Simulation Speed false "openspace.time.interpolateDeltaTime(360)" -8 Setting the simulation speed to 720 seconds per realtime second Set sim speed 720 /Simulation Speed false "openspace.time.interpolateDeltaTime(720)" -9 Setting the simulation speed to 2880 seconds per realtime second Set sim speed 2880 /Simulation Speed false "openspace.time.interpolateDeltaTime(2880)" -0 Setting the simulation speed to 14400 seconds per realtime second Set sim speed 14400 /Simulation Speed false "openspace.time.interpolateDeltaTime(14400)" -Shift+1 Setting the simulation speed to 28800 seconds per realtime second Set sim speed 28800 /Simulation Speed false "openspace.time.interpolateDeltaTime(28800)" -Shift+2 Setting the simulation speed to 57600 seconds per realtime second Set sim speed 57600 /Simulation Speed false "openspace.time.interpolateDeltaTime(57600)" -Shift+3 Setting the simulation speed to 115200 seconds per realtime second Set sim speed 115200 /Simulation Speed false "openspace.time.interpolateDeltaTime(115200)" -Shift+4 Setting the simulation speed to 230400 seconds per realtime second Set sim speed 230400 /Simulation Speed false "openspace.time.interpolateDeltaTime(230400)" -Shift+5 Setting the simulation speed to 460800 seconds per realtime second Set sim speed 460800 /Simulation Speed false "openspace.time.interpolateDeltaTime(460800)" -Shift+6 Setting the simulation speed to 921600 seconds per realtime second Set sim speed 921600 /Simulation Speed false "openspace.time.interpolateDeltaTime(921600)" -Shift+7 Setting the simulation speed to 1843200 seconds per realtime second Set sim speed 1843200 /Simulation Speed false "openspace.time.interpolateDeltaTime(1843200)" -Shift+8 Setting the simulation speed to 3686400 seconds per realtime second Set sim speed 3686400 /Simulation Speed false "openspace.time.interpolateDeltaTime(3686400)" -Shift+9 Setting the simulation speed to 7372800 seconds per realtime second Set sim speed 7372800 /Simulation Speed false "openspace.time.interpolateDeltaTime(7372800)" -Shift+0 Setting the simulation speed to 14745600 seconds per realtime second Set sim speed 14745600 /Simulation Speed false "openspace.time.interpolateDeltaTime(14745600)" - #Time absolute 2016-07-01T10:05:00.00 @@ -36,3 +14,25 @@ setNavigationState junoAsset.Juno.Identifier "Root" 1.243398E8, 7.176068E7, -1. #MarkNodes Jupiter Juno + +#DeltaTimes +1 +5 +10 +20 +40 +90 +360 +720 +2880 +14400 +28800 +57600 +115200 +230400 +460800 +921600 +1843200 +3686400 +7372800 +14745600 diff --git a/data/profiles/mars.profile b/data/profiles/mars.profile index bcd26230b8..2a004a968a 100644 --- a/data/profiles/mars.profile +++ b/data/profiles/mars.profile @@ -17,6 +17,38 @@ Mars Insight Perseverance +#DeltaTimes +1 +2 +5 +10 +30 +60 +120 +300 +600 +1800 +3600 +7200 +10800 +21600 +43200 +86400 +172800 +345600 +604800 +1209600 +2592000 +5184000 +7776000 +15552000 +31536000 +63072000 +157680000 +315360000 +630720000 +1576800000 + #AdditionalScripts local insightEDLShortcuts = sceneHelper.extractShortcuts({"Insight Height Offset", "Enable HiRISE", "Insight EDL Time", "Insight EDL NavigationState"}, insightShortcuts.Shortcuts) local insightDisableShortcuts = sceneHelper.extractShortcuts({"Default Height Offset", "Disable HiRISE"}, insightShortcuts.Shortcuts) diff --git a/data/profiles/messenger.profile b/data/profiles/messenger.profile index bdbb7d2722..d70a5ccaae 100644 --- a/data/profiles/messenger.profile +++ b/data/profiles/messenger.profile @@ -9,28 +9,6 @@ base scene/solarsystem/missions/messenger/dashboard scene/solarsystem/missions/messenger/messengerSC -#Keybinding -1 Setting the simulation speed to 1 seconds per realtime second Set sim speed 1 /Simulation Speed false "openspace.time.interpolateDeltaTime(1)" -2 Setting the simulation speed to 5 seconds per realtime second Set sim speed 5 /Simulation Speed false "openspace.time.interpolateDeltaTime(5)" -3 Setting the simulation speed to 10 seconds per realtime second Set sim speed 10 /Simulation Speed false "openspace.time.interpolateDeltaTime(10)" -4 Setting the simulation speed to 20 seconds per realtime second Set sim speed 20 /Simulation Speed false "openspace.time.interpolateDeltaTime(20)" -5 Setting the simulation speed to 40 seconds per realtime second Set sim speed 40 /Simulation Speed false "openspace.time.interpolateDeltaTime(40)" -6 Setting the simulation speed to 90 seconds per realtime second Set sim speed 90 /Simulation Speed false "openspace.time.interpolateDeltaTime(90)" -7 Setting the simulation speed to 360 seconds per realtime second Set sim speed 360 /Simulation Speed false "openspace.time.interpolateDeltaTime(360)" -8 Setting the simulation speed to 720 seconds per realtime second Set sim speed 720 /Simulation Speed false "openspace.time.interpolateDeltaTime(720)" -9 Setting the simulation speed to 2880 seconds per realtime second Set sim speed 2880 /Simulation Speed false "openspace.time.interpolateDeltaTime(2880)" -0 Setting the simulation speed to 14400 seconds per realtime second Set sim speed 14400 /Simulation Speed false "openspace.time.interpolateDeltaTime(14400)" -Shift+1 Setting the simulation speed to 28800 seconds per realtime second Set sim speed 28800 /Simulation Speed false "openspace.time.interpolateDeltaTime(28800)" -Shift+2 Setting the simulation speed to 57600 seconds per realtime second Set sim speed 57600 /Simulation Speed false "openspace.time.interpolateDeltaTime(57600)" -Shift+3 Setting the simulation speed to 115200 seconds per realtime second Set sim speed 115200 /Simulation Speed false "openspace.time.interpolateDeltaTime(115200)" -Shift+4 Setting the simulation speed to 230400 seconds per realtime second Set sim speed 230400 /Simulation Speed false "openspace.time.interpolateDeltaTime(230400)" -Shift+5 Setting the simulation speed to 460800 seconds per realtime second Set sim speed 460800 /Simulation Speed false "openspace.time.interpolateDeltaTime(460800)" -Shift+6 Setting the simulation speed to 921600 seconds per realtime second Set sim speed 921600 /Simulation Speed false "openspace.time.interpolateDeltaTime(921600)" -Shift+7 Setting the simulation speed to 1843200 seconds per realtime second Set sim speed 1843200 /Simulation Speed false "openspace.time.interpolateDeltaTime(1843200)" -Shift+8 Setting the simulation speed to 3686400 seconds per realtime second Set sim speed 3686400 /Simulation Speed false "openspace.time.interpolateDeltaTime(3686400)" -Shift+9 Setting the simulation speed to 7372800 seconds per realtime second Set sim speed 7372800 /Simulation Speed false "openspace.time.interpolateDeltaTime(7372800)" -Shift+0 Setting the simulation speed to 14745600 seconds per realtime second Set sim speed 14745600 /Simulation Speed false "openspace.time.interpolateDeltaTime(14745600)" - #Time absolute 2011 MAY 13 00:05:18 @@ -41,3 +19,25 @@ setNavigationState "Mercury" "Root" 2.423690E11, 1.979038E11, -2.241483E10 -0.4 Mercury Messenger Sun + +#DeltaTimes +1 +5 +10 +20 +40 +90 +360 +720 +2880 +14400 +28800 +57600 +115200 +230400 +460800 +921600 +1843200 +3686400 +7372800 +14745600 diff --git a/data/profiles/newhorizons.profile b/data/profiles/newhorizons.profile index f7be9639a7..227617eb55 100644 --- a/data/profiles/newhorizons.profile +++ b/data/profiles/newhorizons.profile @@ -38,19 +38,6 @@ m Draws the instrument field of views in a solid color or as lines. Toggle instr Shift+t Toggles the visibility of the shadow visualization of Pluto and Charon. Toggle Shadows /New Horizons false renderableHelper.toggle('Scene.PlutoShadow') .. renderableHelper.toggle('Scene.CharonShadow') t Toggles the trail of New Horizons. Toggle NH Trail /New Horizons false renderableHelper.toggle('Scene.NewHorizonsTrailPluto') h Disables visibility of the trails Hide Trails /Rendering false "local list = openspace.getProperty('*Trail.Renderable.Enabled'); for _,v in pairs(list) do openspace.setPropertyValueSingle(v, not openspace.getPropertyValue(v)) end" -1 Setting the simulation speed to 1 seconds per realtime second Set sim speed 1 /Simulation Speed false "openspace.time.interpolateDeltaTime(1)" -2 Setting the simulation speed to 5 seconds per realtime second Set sim speed 5 /Simulation Speed false "openspace.time.interpolateDeltaTime(5)" -3 Setting the simulation speed to 10 seconds per realtime second Set sim speed 10 /Simulation Speed false "openspace.time.interpolateDeltaTime(10)" -4 Setting the simulation speed to 20 seconds per realtime second Set sim speed 20 /Simulation Speed false "openspace.time.interpolateDeltaTime(20)" -5 Setting the simulation speed to 40 seconds per realtime second Set sim speed 40 /Simulation Speed false "openspace.time.interpolateDeltaTime(40)" -6 Setting the simulation speed to 60 seconds per realtime second Set sim speed 60 /Simulation Speed false "openspace.time.interpolateDeltaTime(60)" -7 Setting the simulation speed to 120 seconds per realtime second Set sim speed 120 /Simulation Speed false "openspace.time.interpolateDeltaTime(120)" -8 Setting the simulation speed to 360 seconds per realtime second Set sim speed 360 /Simulation Speed false "openspace.time.interpolateDeltaTime(360)" -9 Setting the simulation speed to 540 seconds per realtime second Set sim speed 540 /Simulation Speed false "openspace.time.interpolateDeltaTime(540)" -0 Setting the simulation speed to 1080 seconds per realtime second Set sim speed 1080 /Simulation Speed false "openspace.time.interpolateDeltaTime(1080)" -Shift+1 Setting the simulation speed to 2160 seconds per realtime second Set sim speed 2160 /Simulation Speed false "openspace.time.interpolateDeltaTime(2160)" -Shift+2 Setting the simulation speed to 4320 seconds per realtime second Set sim speed 4320 /Simulation Speed false "openspace.time.interpolateDeltaTime(4320)" -Shift+3 Setting the simulation speed to 8640 seconds per realtime second Set sim speed 8640 /Simulation Speed false "openspace.time.interpolateDeltaTime(8640)" #Time absolute 2015-07-14T08:00:00.00 @@ -62,3 +49,17 @@ setNavigationState "NewHorizons" "Root" -6.572656E1, -7.239404E1, -2.111890E1 0 Pluto NewHorizons Charon + +#DeltaTimes +1 +5 +10 +20 +40 +120 +360 +540 +1080 +2160 +4320 +8640 diff --git a/data/profiles/osirisrex.profile b/data/profiles/osirisrex.profile index c7b783877e..044e83b2bc 100644 --- a/data/profiles/osirisrex.profile +++ b/data/profiles/osirisrex.profile @@ -22,19 +22,6 @@ F9 Sets the time to the preliminary survey of Bennu Set Bennu survey time /Missi F10 Sets the time to the orbital B event Set orbital B event time /Missions/Osiris Rex false "openspace.printInfo('Set time: Orbital B'); openspace.time.setTime('2019-APR-08 10:35:27.186')" F11 Sets the time to the recon event Set recon event time /Missions/Osiris Rex false "openspace.printInfo('Set time: Recon'); openspace.time.setTime('2019-MAY-25 03:50:31.195')" q Toggles the visibility of the text marking the location of the Sun Toggle Sun marker /Missions/Osiris Rex false propertyHelper.invert('Scene.SunMarker.Renderable.Enabled') -1 Setting the simulation speed to 1 seconds per realtime second Set sim speed 1 /Simulation Speed false "openspace.time.interpolateDeltaTime(1)" -2 Setting the simulation speed to 5 seconds per realtime second Set sim speed 5 /Simulation Speed false "openspace.time.interpolateDeltaTime(5)" -3 Setting the simulation speed to 10 seconds per realtime second Set sim speed 10 /Simulation Speed false "openspace.time.interpolateDeltaTime(10)" -4 Setting the simulation speed to 20 seconds per realtime second Set sim speed 20 /Simulation Speed false "openspace.time.interpolateDeltaTime(20)" -5 Setting the simulation speed to 40 seconds per realtime second Set sim speed 40 /Simulation Speed false "openspace.time.interpolateDeltaTime(40)" -6 Setting the simulation speed to 60 seconds per realtime second Set sim speed 60 /Simulation Speed false "openspace.time.interpolateDeltaTime(60)" -7 Setting the simulation speed to 120 seconds per realtime second Set sim speed 120 /Simulation Speed false "openspace.time.interpolateDeltaTime(120)" -8 Setting the simulation speed to 360 seconds per realtime second Set sim speed 360 /Simulation Speed false "openspace.time.interpolateDeltaTime(360)" -9 Setting the simulation speed to 540 seconds per realtime second Set sim speed 540 /Simulation Speed false "openspace.time.interpolateDeltaTime(540)" -0 Setting the simulation speed to 1080 seconds per realtime second Set sim speed 1080 /Simulation Speed false "openspace.time.interpolateDeltaTime(1080)" -Shift+1 Setting the simulation speed to 2160 seconds per realtime second Set sim speed 2160 /Simulation Speed false "openspace.time.interpolateDeltaTime(2160)" -Shift+2 Setting the simulation speed to 4320 seconds per realtime second Set sim speed 4320 /Simulation Speed false "openspace.time.interpolateDeltaTime(4320)" -Shift+3 Setting the simulation speed to 8640 seconds per realtime second Set sim speed 8640 /Simulation Speed false "openspace.time.interpolateDeltaTime(8640)" #Time absolute 2018 10 30 23:00:00.500 @@ -46,3 +33,17 @@ setNavigationState OsirisRexAsset.OsirisRex.Identifier 26974590199.661884, 763 OsirisRex BennuBarycenter Earth + +#DeltaTimes +1 +5 +10 +20 +40 +120 +360 +540 +1080 +2160 +4320 +8640 diff --git a/data/profiles/rosetta.profile b/data/profiles/rosetta.profile index dd27b61191..da3dba1455 100644 --- a/data/profiles/rosetta.profile +++ b/data/profiles/rosetta.profile @@ -37,3 +37,35 @@ setNavigationState Comet67PAsset.Comet67P.Identifier "Root" -7.294781E5 , -6.65 67P Rosetta Philae + +#DeltaTimes +1 +2 +5 +10 +30 +60 +120 +300 +600 +1800 +3600 +7200 +10800 +21600 +43200 +86400 +172800 +345600 +604800 +1209600 +2592000 +5184000 +7776000 +15552000 +31536000 +63072000 +157680000 +315360000 +630720000 +1576800000 diff --git a/data/profiles/touch.profile b/data/profiles/touch.profile index 8fe818c78b..d725a02f2a 100644 --- a/data/profiles/touch.profile +++ b/data/profiles/touch.profile @@ -24,3 +24,35 @@ setNavigationState earthAsset.Earth.Identifier 58.5877,16.1924,20000000 Earth Mars Moon + +#DeltaTimes +1 +2 +5 +10 +30 +60 +120 +300 +600 +1800 +3600 +7200 +10800 +21600 +43200 +86400 +172800 +345600 +604800 +1209600 +2592000 +5184000 +7776000 +15552000 +31536000 +63072000 +157680000 +315360000 +630720000 +1576800000 diff --git a/data/profiles/voyager.profile b/data/profiles/voyager.profile index a95f48581e..de9bde296a 100644 --- a/data/profiles/voyager.profile +++ b/data/profiles/voyager.profile @@ -13,28 +13,6 @@ scene/solarsystem/missions/voyager/voyager1 VoyagerAsset scene/solarsystem/missions/voyager/voyager2 scene/solarsystem/missions/voyager/dashboard -#Keybinding -1 Setting the simulation speed to 1 seconds per realtime second Set sim speed 1 /Simulation Speed false "openspace.time.interpolateDeltaTime(1)" -2 Setting the simulation speed to 5 seconds per realtime second Set sim speed 5 /Simulation Speed false "openspace.time.interpolateDeltaTime(5)" -3 Setting the simulation speed to 10 seconds per realtime second Set sim speed 10 /Simulation Speed false "openspace.time.interpolateDeltaTime(10)" -4 Setting the simulation speed to 20 seconds per realtime second Set sim speed 20 /Simulation Speed false "openspace.time.interpolateDeltaTime(20)" -5 Setting the simulation speed to 40 seconds per realtime second Set sim speed 40 /Simulation Speed false "openspace.time.interpolateDeltaTime(40)" -6 Setting the simulation speed to 90 seconds per realtime second Set sim speed 90 /Simulation Speed false "openspace.time.interpolateDeltaTime(90)" -7 Setting the simulation speed to 360 seconds per realtime second Set sim speed 360 /Simulation Speed false "openspace.time.interpolateDeltaTime(360)" -8 Setting the simulation speed to 720 seconds per realtime second Set sim speed 720 /Simulation Speed false "openspace.time.interpolateDeltaTime(720)" -9 Setting the simulation speed to 2880 seconds per realtime second Set sim speed 2880 /Simulation Speed false "openspace.time.interpolateDeltaTime(2880)" -0 Setting the simulation speed to 14400 seconds per realtime second Set sim speed 14400 /Simulation Speed false "openspace.time.interpolateDeltaTime(14400)" -Shift+1 Setting the simulation speed to 28800 seconds per realtime second Set sim speed 28800 /Simulation Speed false "openspace.time.interpolateDeltaTime(28800)" -Shift+2 Setting the simulation speed to 57600 seconds per realtime second Set sim speed 57600 /Simulation Speed false "openspace.time.interpolateDeltaTime(57600)" -Shift+3 Setting the simulation speed to 115200 seconds per realtime second Set sim speed 115200 /Simulation Speed false "openspace.time.interpolateDeltaTime(115200)" -Shift+4 Setting the simulation speed to 230400 seconds per realtime second Set sim speed 230400 /Simulation Speed false "openspace.time.interpolateDeltaTime(230400)" -Shift+5 Setting the simulation speed to 460800 seconds per realtime second Set sim speed 460800 /Simulation Speed false "openspace.time.interpolateDeltaTime(460800)" -Shift+6 Setting the simulation speed to 921600 seconds per realtime second Set sim speed 921600 /Simulation Speed false "openspace.time.interpolateDeltaTime(921600)" -Shift+7 Setting the simulation speed to 1843200 seconds per realtime second Set sim speed 1843200 /Simulation Speed false "openspace.time.interpolateDeltaTime(1843200)" -Shift+8 Setting the simulation speed to 3686400 seconds per realtime second Set sim speed 3686400 /Simulation Speed false "openspace.time.interpolateDeltaTime(3686400)" -Shift+9 Setting the simulation speed to 7372800 seconds per realtime second Set sim speed 7372800 /Simulation Speed false "openspace.time.interpolateDeltaTime(7372800)" -Shift+0 Setting the simulation speed to 14745600 seconds per realtime second Set sim speed 14745600 /Simulation Speed false "openspace.time.interpolateDeltaTime(14745600)" - #Property setPropertyValueSingle Scene.Pluto.Renderable.Enabled false setPropertyValueSingle Scene.Charon.Renderable.Enabled false @@ -54,3 +32,25 @@ Jupiter Saturn Uranus Neptune + +#DeltaTimes +1 +5 +10 +20 +40 +90 +360 +720 +2880 +14400 +28800 +57600 +115200 +230400 +460800 +921600 +1843200 +3686400 +7372800 +14745600 diff --git a/data/tasks/exoplanets/csvtobin.task b/data/tasks/exoplanets/datapreparation.task similarity index 62% rename from data/tasks/exoplanets/csvtobin.task rename to data/tasks/exoplanets/datapreparation.task index 1ae7a44c6b..2d975423bf 100644 --- a/data/tasks/exoplanets/csvtobin.task +++ b/data/tasks/exoplanets/datapreparation.task @@ -1,9 +1,9 @@ -local dataFolder = "${BASE}/modules/exoplanets" +local dataFolder = "D:/dev/exoplanets data config" return { { - Type = "ExoplanetsCsvToBinTask", - - InputCSV = dataFolder .. "/exoplanets.csv", + Type = "ExoplanetsDataPreparationTask", + + InputDataFile = dataFolder .. "/exoplanets_data_composite.csv", InputSPECK = "${SYNC}/http/digitaluniverse_exoplanets_speck/1/expl.speck", TeffToBvFile = "${SYNC}/http/exoplanets_data/1/teff_bv.txt", OutputBIN = dataFolder .. "/exoplanets_data.bin", diff --git a/data/tasks/sessionRecordConvertExample1.task b/data/tasks/sessionRecordConvertExample1.task new file mode 100644 index 0000000000..2237c462e8 --- /dev/null +++ b/data/tasks/sessionRecordConvertExample1.task @@ -0,0 +1,7 @@ +return { + { + Type = "ConvertRecFormatTask", + InputFilePath = "../../recordings/input", + OutputFilePath = "../../recordings/output" + } +} diff --git a/data/web/documentation/scenelicense.hbs b/data/web/documentation/scenelicense.hbs index b4b0828d8d..7fd118c072 100644 --- a/data/web/documentation/scenelicense.hbs +++ b/data/web/documentation/scenelicense.hbs @@ -3,11 +3,14 @@

-

Asset - {{name}}

+

+ Asset - {{name}} +

{{{description}}}

Version - {{version}}

-

Author - {{author}}

+

Author - {{{author}}}

Associated URL - {{url}}

+

License - {{{license}}}

Filepath - {{path}}

diff --git a/data/web/documentation/script.js b/data/web/documentation/script.js index ba8e45eb4b..280ea2cd8f 100644 --- a/data/web/documentation/script.js +++ b/data/web/documentation/script.js @@ -133,6 +133,10 @@ window.onload = function () { /\\n/g, "" ); documentation[i].data[j].description = escaped; + var escapedLicense = documentation[i].data[j].license.replace( + /\\n/g, "" + ); + documentation[i].data[j].license = escapedLicense; } } diff --git a/ext/ghoul b/ext/ghoul index f568acc5fe..a1e2f46953 160000 --- a/ext/ghoul +++ b/ext/ghoul @@ -1 +1 @@ -Subproject commit f568acc5fee29a5b0c654f183baddcb7a061e7a6 +Subproject commit a1e2f46953a8fb77320c959453a25a8d898dc846 diff --git a/include/openspace/interaction/keybindingmanager.h b/include/openspace/interaction/keybindingmanager.h index aca56d84e6..054f490b6a 100644 --- a/include/openspace/interaction/keybindingmanager.h +++ b/include/openspace/interaction/keybindingmanager.h @@ -62,10 +62,14 @@ public: std::string documentation = "", std::string name = "", std::string guiPath = ""); void removeKeyBinding(const std::string& key); + void removeKeyBinding(const KeyWithModifier& key); std::vector> keyBinding( const std::string& key) const; + std::vector> keyBinding( + const KeyWithModifier& key) const; + static scripting::LuaLibrary luaLibrary(); void keyboardCallback(Key key, KeyModifier modifier, KeyAction action); diff --git a/include/openspace/interaction/keyframenavigator.h b/include/openspace/interaction/keyframenavigator.h index c78db27cd7..5d98fe412e 100644 --- a/include/openspace/interaction/keyframenavigator.h +++ b/include/openspace/interaction/keyframenavigator.h @@ -50,10 +50,13 @@ public: struct CameraPose { glm::dvec3 position = glm::dvec3(0.0); - glm::quat rotation = glm::quat(1.f, 0.f, 0.f, 0.f); + glm::quat rotation = glm::quat(0.f, 0.f, 0.f, 0.f); std::string focusNode; - float scale; - bool followFocusNodeRotation; + float scale = 1.f; + bool followFocusNodeRotation = false; + + CameraPose() = default; + CameraPose(datamessagestructures::CameraKeyframe&& kf); }; /** diff --git a/include/openspace/interaction/sessionrecording.h b/include/openspace/interaction/sessionrecording.h index 98ceb9b5ff..21b518568f 100644 --- a/include/openspace/interaction/sessionrecording.h +++ b/include/openspace/interaction/sessionrecording.h @@ -33,11 +33,24 @@ namespace openspace::interaction { + class SessionRecording : public properties::PropertyOwner { public: - enum class RecordedDataMode { + inline static const std::string FileHeaderTitle = "OpenSpace_record/playback"; + inline static const std::string HeaderCameraAscii = "camera"; + inline static const std::string HeaderTimeAscii = "time"; + inline static const std::string HeaderScriptAscii = "script"; + inline static const std::string HeaderCommentAscii = "#"; + inline static const char HeaderCameraBinary = 'c'; + inline static const char HeaderTimeBinary = 't'; + inline static const char HeaderScriptBinary = 's'; + inline static const std::string FileExtensionBinary = ".osrec"; + inline static const std::string FileExtensionAscii = ".osrectxt"; + + enum class DataMode { Ascii = 0, - Binary + Binary, + Unknown }; enum class SessionState { @@ -46,6 +59,24 @@ public: Playback }; + struct Timestamps { + double timeOs; + double timeRec; + double timeSim; + }; + + static const size_t FileHeaderVersionLength = 5; + static constexpr char FileHeaderVersion[FileHeaderVersionLength] = { + '0', '0', '.', '8', '5' + }; + static const char DataFormatAsciiTag = 'A'; + static const char DataFormatBinaryTag = 'B'; + static const size_t keyframeHeaderSize_bytes = 33; + static const size_t saveBufferCameraSize_min = 82; + static const size_t saveBufferStringSize_max = 500; + static const size_t _saveBufferMaxSize_bytes = keyframeHeaderSize_bytes + + + saveBufferCameraSize_min + saveBufferStringSize_max; + using CallbackHandle = int; using StateChangeCallback = std::function; @@ -101,7 +132,7 @@ public: * * \return \c true if recording to file starts without errors */ - void setRecordDataFormat(RecordedDataMode dataMode); + void setRecordDataFormat(DataMode dataMode); /** * Used to stop a recording in progress. If open, the recording file will be closed, @@ -215,6 +246,195 @@ public: */ std::vector playbackList() const; + /** + * Reads a camera keyframe from a binary format playback file, and populates input + * references with the parameters of the keyframe. + * + * \param times reference to a timestamps structure which contains recorded times + * \param kf reference to a camera keyframe which contains camera details + * \param file an ifstream reference to the playback file being read + * \param lineN keyframe number in playback file where this keyframe resides + */ + static void readCameraKeyframeBinary(Timestamps& times, + datamessagestructures::CameraKeyframe& kf, std::ifstream& file, int lineN); + + /** + * Reads a camera keyframe from an ascii format playback file, and populates input + * references with the parameters of the keyframe. + * + * \param times reference to a timestamps structure which contains recorded times + * \param kf reference to a camera keyframe which contains camera details + * \param currentParsingLine string containing the most current line that was read + * \param lineN line number in playback file where this keyframe resides + */ + static void readCameraKeyframeAscii(Timestamps& times, + datamessagestructures::CameraKeyframe& kf, std::string currentParsingLine, + int lineN); + + /** + * Reads a time keyframe from a binary format playback file, and populates input + * references with the parameters of the keyframe. + * + * \param times reference to a timestamps structure which contains recorded times + * \param kf reference to a time keyframe which contains time details + * \param file an ifstream reference to the playback file being read + * \param lineN keyframe number in playback file where this keyframe resides + */ + static void readTimeKeyframeBinary(Timestamps& times, + datamessagestructures::TimeKeyframe& kf, std::ifstream& file, int lineN); + + /** + * Reads a time keyframe from an ascii format playback file, and populates input + * references with the parameters of the keyframe. + * + * \param times reference to a timestamps structure which contains recorded times + * \param kf reference to a time keyframe which contains time details + * \param currentParsingLine string containing the most current line that was read + * \param lineN line number in playback file where this keyframe resides + */ + static void readTimeKeyframeAscii(Timestamps& times, + datamessagestructures::TimeKeyframe& kf, std::string currentParsingLine, + int lineN); + + /** + * Reads a script keyframe from a binary format playback file, and populates input + * references with the parameters of the keyframe. + * + * \param times reference to a timestamps structure which contains recorded times + * \param kf reference to a script keyframe which contains the size of the script + * (in chars) and the text itself + * \param file an ifstream reference to the playback file being read + * \param lineN keyframe number in playback file where this keyframe resides + */ + static void readScriptKeyframeBinary(Timestamps& times, + datamessagestructures::ScriptMessage& kf, std::ifstream& file, int lineN); + + /** + * Reads a script keyframe from an ascii format playback file, and populates input + * references with the parameters of the keyframe. + * + * \param times reference to a timestamps structure which contains recorded times + * \param kf reference to a script keyframe which contains the size of the script + * (in chars) and the text itself + * \param currentParsingLine string containing the most current line that was read + * \param lineN line number in playback file where this keyframe resides + */ + static void readScriptKeyframeAscii(Timestamps& times, + datamessagestructures::ScriptMessage& kf, std::string currentParsingLine, + int lineN); + + /** + * Writes a camera keyframe to a binary format recording file using a CameraKeyframe + * + * \param times reference to a timestamps structure which contains recorded times + * \param kf reference to a camera keyframe which contains the camera details + * \param kfBuffer a buffer temporarily used for preparing data to be written + * \param file an ofstream reference to the recording file being written-to + */ + static void saveCameraKeyframeBinary(Timestamps times, + datamessagestructures::CameraKeyframe& kf, unsigned char* kfBuffer, + std::ofstream& file); + + /** + * Writes a camera keyframe to an ascii format recording file using a CameraKeyframe + * + * \param times reference to a timestamps structure which contains recorded times + * \param kf reference to a camera keyframe which contains the camera details + * \param file an ofstream reference to the recording file being written-to + */ + static void saveCameraKeyframeAscii(Timestamps times, + datamessagestructures::CameraKeyframe& kf, std::ofstream& file); + + /** + * Writes a time keyframe to a binary format recording file using a TimeKeyframe + * + * \param times reference to a timestamps structure which contains recorded times + * \param kf reference to a time keyframe which contains the time details + * \param kfBuffer a buffer temporarily used for preparing data to be written + * \param file an ofstream reference to the recording file being written-to + */ + static void saveTimeKeyframeBinary(Timestamps times, + datamessagestructures::TimeKeyframe& kf, unsigned char* kfBuffer, + std::ofstream& file); + + /** + * Writes a time keyframe to an ascii format recording file using a TimeKeyframe + * + * \param times reference to a timestamps structure which contains recorded times + * \param kf reference to a time keyframe which contains the time details + * \param file an ofstream reference to the recording file being written-to + */ + static void saveTimeKeyframeAscii(Timestamps times, + datamessagestructures::TimeKeyframe& kf, std::ofstream& file); + + /** + * Writes a script keyframe to a binary format recording file using a ScriptMessage + * + * \param times reference to a timestamps structure which contains recorded times + * \param sm reference to a ScriptMessage object which contains the script details + * \param smBuffer a buffer temporarily used for preparing data to be written + * \param file an ofstream reference to the recording file being written-to + */ + static void saveScriptKeyframeBinary(Timestamps times, + datamessagestructures::ScriptMessage& sm, unsigned char* smBuffer, + std::ofstream& file); + + /** + * Writes a script keyframe to an ascii format recording file using a ScriptMessage + * + * \param times reference to a timestamps structure which contains recorded times + * \param sm reference to a ScriptMessage which contains the script details + * \param file an ofstream reference to the recording file being written-to + */ + static void saveScriptKeyframeAscii(Timestamps times, + datamessagestructures::ScriptMessage& sm, std::ofstream& file); + + /** + * Reads header information from a session recording file + * + * \param stream reference to ifstream that contains the session recording file data + * \param readLen_chars number of characters to be read, which may be the expected + * length of the header line, or an arbitrary number of characters within it + */ + static std::string readHeaderElement(std::ifstream& stream, size_t readLen_chars); + + /** + * Writes a header to a binary recording file buffer + * + * \param times reference to a timestamps structure which contains recorded times + * \param type single character signifying the keyframe type + * \param kfBuffer the char buffer holding the recording info to be written + * \param idx index into write buffer (this is updated with the num of chars written) + */ + static void saveHeaderBinary(Timestamps times, char type, unsigned char* kfBuffer, + size_t& idx); + + /** + * Writes a header to an ascii recording file buffer + * + * \param times reference to a timestamps structure which contains recorded times + * \param type string signifying the keyframe type + * \param line the stringstream buffer being written to + */ + static void saveHeaderAscii(Timestamps times, const std::string& type, + std::stringstream& line); + + /** + * Saves a keyframe to an ascii recording file + * + * \param entry the ascii string version of the keyframe (any type) + * \param file ofstream object to write to + */ + static void saveKeyframeToFile(std::string entry, std::ofstream& file); + + /** + * Checks if a specified recording file ends with a particular file extension + * + * \param filename the name of the file to record to + * \param extension the file extension to check for + */ + static bool hasFileExtension(std::string filename, std::string extension); + private: properties::BoolProperty _renderPlaybackInformation; @@ -238,25 +458,25 @@ private: double appropriateTimestamp(double timeOs, double timeRec, double timeSim); double equivalentSimulationTime(double timeOs, double timeRec, double timeSim); double equivalentApplicationTime(double timeOs, double timeRec, double timeSim); - - void playbackCamera(); - void playbackTimeChange(); - void playbackScript(); + bool handleRecordingFile(std::string filenameIn); + bool playbackCamera(); + bool playbackTimeChange(); + bool playbackScript(); bool playbackAddEntriesToTimeline(); void signalPlaybackFinishedForComponent(RecordedType type); - void writeToFileBuffer(double src); - void writeToFileBuffer(std::vector& cvec); - void writeToFileBuffer(unsigned char c); - void writeToFileBuffer(bool b); - void saveStringToFile(const std::string& s); - void saveKeyframeToFileBinary(unsigned char* bufferSource, size_t size); void findFirstCameraKeyframeInTimeline(); - void saveKeyframeToFile(std::string entry); + static void saveStringToFile(const std::string& s, unsigned char* kfBuffer, + size_t& idx, std::ofstream& file); + static void saveKeyframeToFileBinary(unsigned char* bufferSource, size_t size, + std::ofstream& file); - void addKeyframe(double timestamp, - interaction::KeyframeNavigator::CameraPose keyframe); - void addKeyframe(double timestamp, datamessagestructures::TimeKeyframe keyframe); - void addKeyframe(double timestamp, std::string scriptToQueue); + bool addKeyframe(double timestamp, + interaction::KeyframeNavigator::CameraPose keyframe, int lineNum); + bool addKeyframe(double timestamp, datamessagestructures::TimeKeyframe keyframe, + int lineNum); + bool addKeyframe(double timestamp, std::string scriptToQueue, int lineNum); + bool addKeyframeToTimeline(RecordedType type, size_t indexIntoTypeKeyframes, + double timestamp, int lineNum); void moveAheadInTime(); void lookForNonCameraKeyframesThatHaveComeDue(double currTime); void updateCameraWithOrWithoutNewKeyframes(double currTime); @@ -276,7 +496,12 @@ private: double getPrevTimestamp(); void cleanUpPlayback(); - RecordedDataMode _recordingDataMode = RecordedDataMode::Binary; + static void writeToFileBuffer(unsigned char* buf, size_t& idx, double src); + static void writeToFileBuffer(unsigned char* buf, size_t& idx, std::vector& cv); + static void writeToFileBuffer(unsigned char* buf, size_t& idx, unsigned char c); + static void writeToFileBuffer(unsigned char* buf, size_t& idx, bool b); + + DataMode _recordingDataMode = DataMode::Binary; SessionState _state = SessionState::Idle; SessionState _lastState = SessionState::Idle; std::string _playbackFilename; @@ -296,14 +521,7 @@ private: double _saveRenderingDeltaTime = 1.0 / 30.0; double _saveRenderingCurrentRecordedTime; - static const size_t keyframeHeaderSize_bytes = 33; - static const size_t saveBufferCameraSize_min = 82; - static const size_t saveBufferStringSize_max = 500; - static const size_t _saveBufferMaxSize_bytes = keyframeHeaderSize_bytes + - + saveBufferCameraSize_min - + saveBufferStringSize_max; unsigned char _keyframeBuffer[_saveBufferMaxSize_bytes]; - size_t _bufferIndex = 0; bool _cleanupNeeded = false; diff --git a/include/openspace/interaction/sessionrecording.inl b/include/openspace/interaction/sessionrecording.inl index 386357c9c5..1d8ca3bcad 100644 --- a/include/openspace/interaction/sessionrecording.inl +++ b/include/openspace/interaction/sessionrecording.inl @@ -55,4 +55,11 @@ T prevKeyframeObj(unsigned int index, const std::vector& keyframeContainer) { } } +template +T readFromPlayback(std::ifstream& stream) { + T res; + stream.read(reinterpret_cast(&res), sizeof(T)); + return res; +} + } // namespace openspace::interaction diff --git a/include/openspace/interaction/tasks/convertrecformattask.h b/include/openspace/interaction/tasks/convertrecformattask.h new file mode 100644 index 0000000000..ba9f4f5ada --- /dev/null +++ b/include/openspace/interaction/tasks/convertrecformattask.h @@ -0,0 +1,68 @@ +/***************************************************************************************** + * * + * OpenSpace * + * * + * Copyright (c) 2014-2020 * + * * + * Permission is hereby granted, free of charge, to any person obtaining a copy of this * + * software and associated documentation files (the "Software"), to deal in the Software * + * without restriction, including without limitation the rights to use, copy, modify, * + * merge, publish, distribute, sublicense, and/or sell copies of the Software, and to * + * permit persons to whom the Software is furnished to do so, subject to the following * + * conditions: * + * * + * The above copyright notice and this permission notice shall be included in all copies * + * or substantial portions of the Software. * + * * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, * + * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A * + * PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT * + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF * + * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE * + * OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * + ****************************************************************************************/ + +#ifndef __OPENSPACE_CORE___CONVERTRECFORMATTASK___H__ +#define __OPENSPACE_CORE___CONVERTRECFORMATTASK___H__ + +#include +#include + +#include + +#include + + + +namespace openspace::interaction { + +class ConvertRecFormatTask : public Task { +public: + enum class ConversionDirection { + ToAscii = 0, + ToBinary + }; + ConvertRecFormatTask(const ghoul::Dictionary& dictionary); + ~ConvertRecFormatTask(); + std::string description() override; + void perform(const Task::ProgressCallback& progressCallback) override; + static documentation::Documentation documentation(); + void convert(); + +private: + void convertToAscii(); + void convertToBinary(); + void determineFormatType(); + std::string addFileSuffix(const std::string& filePath, const std::string& suffix); + std::string _inFilePath; + std::string _outFilePath; + std::ifstream _iFile; + std::ofstream _oFile; + SessionRecording::DataMode _fileFormatType; + + std::string _valueFunctionLua; +}; + +} // namespace openspace::interaction + +#endif //__OPENSPACE_CORE___CONVERTRECFORMATTASK___H__ diff --git a/include/openspace/network/messagestructures.h b/include/openspace/network/messagestructures.h index e344a95255..ec27c27dd1 100644 --- a/include/openspace/network/messagestructures.h +++ b/include/openspace/network/messagestructures.h @@ -26,10 +26,13 @@ #define __OPENSPACE_CORE___MESSAGESTRUCTURES___H__ #include +#include #include +#include +#include +#include #include #include -#include namespace openspace::datamessagestructures { @@ -167,6 +170,26 @@ struct CameraKeyframe { out.write(reinterpret_cast(&_timestamp), sizeof(_timestamp)); }; + void write(std::stringstream& out) const { + // Add camera position + out << std::fixed << std::setprecision(7) << _position.x << ' ' + << std::fixed << std::setprecision(7) << _position.y << ' ' + << std::fixed << std::setprecision(7) << _position.z << ' '; + // Add camera rotation + out << std::fixed << std::setprecision(7) << _rotation.x << ' ' + << std::fixed << std::setprecision(7) << _rotation.y << ' ' + << std::fixed << std::setprecision(7) << _rotation.z << ' ' + << std::fixed << std::setprecision(7) << _rotation.w << ' '; + out << std::scientific << _scale << ' '; + if (_followNodeRotation) { + out << "F "; + } + else { + out << "- "; + } + out << _focusNode; + }; + void read(std::istream* in) { // Read position in->read(reinterpret_cast(&_position), sizeof(_position)); @@ -194,6 +217,22 @@ struct CameraKeyframe { // Read timestamp in->read(reinterpret_cast(&_timestamp), sizeof(_timestamp)); }; + + void read(std::istringstream& iss) { + std::string rotationFollowing; + + iss >> _position.x + >> _position.y + >> _position.z + >> _rotation.x + >> _rotation.y + >> _rotation.z + >> _rotation.w + >> _scale + >> rotationFollowing + >> _focusNode; + _followNodeRotation = (rotationFollowing == "F"); + }; }; struct TimeKeyframe { @@ -226,9 +265,35 @@ struct TimeKeyframe { out->write(reinterpret_cast(this), sizeof(TimeKeyframe)); }; + void write(std::stringstream& out) const { + out << ' ' << _dt; + if (_paused) { + out << " P"; + } + else { + out << " R"; + } + if (_requiresTimeJump) { + out << " J"; + } + else { + out << " -"; + } + }; + void read(std::istream* in) { in->read(reinterpret_cast(this), sizeof(TimeKeyframe)); }; + + void read(std::istringstream& iss) { + std::string paused, jump; + + iss >> _dt + >> paused + >> jump; + _paused = (paused == "P"); + _requiresTimeJump = (jump == "J"); + }; }; struct TimeTimeline { @@ -308,6 +373,12 @@ struct ScriptMessage { double _timestamp = 0.0; void serialize(std::vector& buffer) const { + size_t strLen = _script.size(); + size_t writeSize_bytes = sizeof(size_t); + + unsigned char const *p = reinterpret_cast(&strLen); + buffer.insert(buffer.end(), p, p + writeSize_bytes); + buffer.insert(buffer.end(), _script.begin(), _script.end()); }; @@ -319,6 +390,29 @@ struct ScriptMessage { out->write(_script.c_str(), _script.size()); }; + void write(unsigned char* buf, size_t& idx, std::ofstream& file) const { + size_t strLen = _script.size(); + size_t writeSize_bytes = sizeof(size_t); + + unsigned char const *p = reinterpret_cast(&strLen); + memcpy((buf + idx), p, writeSize_bytes); + idx += static_cast(writeSize_bytes); + + memcpy((buf + idx), _script.c_str(), _script.size()); + idx += static_cast(strLen); + file.write(reinterpret_cast(buf), idx); + //Write directly to file because some scripts can be very long + file.write(_script.c_str(), _script.size()); + }; + + void write(std::stringstream& ss) const { + unsigned int numLinesInScript = static_cast( + std::count(_script.begin(), _script.end(), '\n') + ); + ss << ' ' << (numLinesInScript + 1) << ' '; + ss << _script; + } + void read(std::istream* in) { size_t strLen; //Read string length from file @@ -331,6 +425,25 @@ struct ScriptMessage { _script.erase(); _script = temp.data(); }; + + void read(std::istringstream& iss) { + int numScriptLines; + iss >> numScriptLines; + if (numScriptLines < 0) { + numScriptLines = 0; + } + std::string tmpReadbackScript; + _script.erase(); + for (int i = 0; i < numScriptLines; ++i) { + std::getline(iss, tmpReadbackScript); + size_t start = tmpReadbackScript.find_first_not_of(" "); + tmpReadbackScript = tmpReadbackScript.substr(start); + _script.append(tmpReadbackScript); + if (i < (numScriptLines - 1)) { + _script.append("\n"); + } + } + }; }; } // namespace openspace::messagestructures diff --git a/include/openspace/scene/asset.h b/include/openspace/scene/asset.h index 83749a11ba..9b08c84e40 100644 --- a/include/openspace/scene/asset.h +++ b/include/openspace/scene/asset.h @@ -56,6 +56,7 @@ public: std::string author; std::string url; std::string license; + std::string identifiers; }; /** diff --git a/include/openspace/scene/profile.h b/include/openspace/scene/profile.h index c70df31be3..eccf6a0dd7 100644 --- a/include/openspace/scene/profile.h +++ b/include/openspace/scene/profile.h @@ -29,6 +29,7 @@ #include #include #include +#include #include #include #include @@ -40,6 +41,14 @@ namespace scripting { struct LuaLibrary; } class Profile { public: + struct ParsingError : public ghoul::RuntimeError { + enum class Severity { Info, Warning, Error }; + + explicit ParsingError(Severity severity, std::string msg); + + Severity severity; + }; + // Version struct Version { int major = 0; @@ -47,20 +56,16 @@ public: }; struct Module { std::string name; - std::string loadedInstruction; - std::string notLoadedInstruction; + std::optional loadedInstruction; + std::optional notLoadedInstruction; }; struct Meta { - std::string name; - std::string version; - std::string description; - std::string author; - std::string url; - std::string license; - }; - struct Asset { - std::string path; - std::string name; + std::optional name; + std::optional version; + std::optional description; + std::optional author; + std::optional url; + std::optional license; }; struct Property { enum class SetType { @@ -87,13 +92,13 @@ public: }; Type type; - std::string time; + std::string value; }; struct CameraNavState { static constexpr const char* Type = "setNavigationState"; std::string anchor; - std::string aim; + std::optional aim; std::string referenceFrame; glm::dvec3 position; std::optional up; @@ -109,9 +114,9 @@ public: std::optional altitude; }; using CameraType = std::variant; - + Profile() = default; - Profile(const std::vector& content); + explicit Profile(const std::string& content); std::string serialize() const; std::string convertToScene() const; @@ -147,7 +152,7 @@ private: Version version = CurrentVersion; std::vector modules; std::optional meta; - std::vector assets; + std::vector assets; std::vector properties; std::vector keybindings; std::optional