From 46c22488d757bca738231b82390a0780a9b39477 Mon Sep 17 00:00:00 2001 From: Elon Date: Mon, 22 Jul 2019 16:16:21 -0600 Subject: [PATCH] wrapping up thesis project 2019 space debris --- .../satellites/debris/volume/transferfunction.txt | 2 +- .../planets/earth/satellites/misc/spacestations.asset | 1 + .../planets/earth/satellites/satellites_debris.asset | 10 ++++------ .../earth/satellites/satellites_debris_old.asset | 5 ++++- data/assets/spaceDebris.scene | 3 ++- .../volume/debristasks/generate_cartesian_volume.task | 8 ++++---- .../volume/debristasks/generate_spherical_volume.task | 9 ++++----- modules/base/dashboard/dashboarditemframerate.cpp | 9 +++++++++ modules/space/rendering/renderablesatellites.cpp | 6 +++--- modules/space/rendering/renderablesatellites.h | 2 ++ modules/space/shaders/debrisViz_fs.glsl | 8 ++++---- modules/space/shaders/debrisViz_vs.glsl | 4 ++-- openspace.cfg | 4 ++-- src/performance/performancemanager.cpp | 5 +++-- 14 files changed, 45 insertions(+), 31 deletions(-) diff --git a/data/assets/scene/solarsystem/planets/earth/satellites/debris/volume/transferfunction.txt b/data/assets/scene/solarsystem/planets/earth/satellites/debris/volume/transferfunction.txt index 4c5db89477..48c714f102 100644 --- a/data/assets/scene/solarsystem/planets/earth/satellites/debris/volume/transferfunction.txt +++ b/data/assets/scene/solarsystem/planets/earth/satellites/debris/volume/transferfunction.txt @@ -1,6 +1,6 @@ width 1024 lower 0.0 upper 1.0 -mappingkey 0.01 40 160 40 0 +mappingkey 0.02 40 160 40 0 mappingkey 0.14 40 40 240 50 mappingkey 0.3 200 80 0 250 diff --git a/data/assets/scene/solarsystem/planets/earth/satellites/misc/spacestations.asset b/data/assets/scene/solarsystem/planets/earth/satellites/misc/spacestations.asset index b16833dde5..d23380a557 100644 --- a/data/assets/scene/solarsystem/planets/earth/satellites/misc/spacestations.asset +++ b/data/assets/scene/solarsystem/planets/earth/satellites/misc/spacestations.asset @@ -11,6 +11,7 @@ local tle = shared.downloadTLEFile(asset, group.Url, group.Title) local objectNames = {} +--shared.registerSatelliteGroupObjects(asset, group, tle, true) -- if thesis project of 2019 is used asset.onInitialize(function () objectNames = shared.addSatelliteGroupObjects(group, tle, false) 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 ac892f8f4d..0f7e3e30a4 100644 --- a/data/assets/scene/solarsystem/planets/earth/satellites/satellites_debris.asset +++ b/data/assets/scene/solarsystem/planets/earth/satellites/satellites_debris.asset @@ -1,7 +1,5 @@ ---asset.request('./debris/debris_asat') asset.request('./debris/debris_breezem') ---asset.request('./debris/debris_fengyun') ---asset.request('./debris/debris_iridium33') ---asset.request('./debris/debris_kosmos2251') - -asset.request('./satellites_debris_old') \ No newline at end of file +asset.request('./debris/debris_asat') +asset.request('./debris/debris_fengyun') +asset.request('./debris/debris_iridium33') +asset.request('./debris/debris_kosmos2251') diff --git a/data/assets/scene/solarsystem/planets/earth/satellites/satellites_debris_old.asset b/data/assets/scene/solarsystem/planets/earth/satellites/satellites_debris_old.asset index 74ae8bc1a0..c9ae8d014b 100644 --- a/data/assets/scene/solarsystem/planets/earth/satellites/satellites_debris_old.asset +++ b/data/assets/scene/solarsystem/planets/earth/satellites/satellites_debris_old.asset @@ -1,2 +1,5 @@ asset.request('./debris/debris_breezem_old') --- asset.request('./debris/debris_asat_old') +asset.request('./debris/debris_asat_old') +asset.request('./debris/debris_fengyum_old') +asset.request('./debris/debris_iridium33_old') +asset.request('./debris/debris_kosmos2251_old') \ No newline at end of file diff --git a/data/assets/spaceDebris.scene b/data/assets/spaceDebris.scene index af2d048cce..e8107e373b 100644 --- a/data/assets/spaceDebris.scene +++ b/data/assets/spaceDebris.scene @@ -74,7 +74,8 @@ assetHelper.registerInterestingNodes(asset, { }) asset.onInitialize(function () - local now = openspace.time.currentWallTime() + --local now = openspace.time.currentWallTime() + local now = "2019-06-26T00:00:00" -- Jump back one day to show a complete planet openspace.time.setTime(openspace.time.advancedTime(now, "-1d")) diff --git a/data/tasks/volume/debristasks/generate_cartesian_volume.task b/data/tasks/volume/debristasks/generate_cartesian_volume.task index 46185a8289..337b49213a 100644 --- a/data/tasks/volume/debristasks/generate_cartesian_volume.task +++ b/data/tasks/volume/debristasks/generate_cartesian_volume.task @@ -1,12 +1,12 @@ return {{ Type = "GenerateDebrisVolumeTask", - Dimensions = {32, 32, 32}, + Dimensions = {48, 48, 48}, LowerDomainBound = {-0.5, -0.5, -0.5}, UpperDomainBound = {0.5, 0.5, 0.5}, InputPath = "${SYNC}/url/satellite_tle_data_DebrisAll/files/allDebrisInOneTLE.txt", - StartTime = "2018-05-04T00:00:00", - TimeStep = "25", - EndTime = "2018-05-04T00:01:00", + StartTime = "2019-07-27T10:00:00", + TimeStep = "2", + EndTime = "2019-07-27T12:00:00", GridType = "Cartesian", RawVolumeOutput = "${DATA}/assets/scene/solarsystem/planets/earth/satellites/debris/volume/generatedCartesian/singleDebris.rawvolume", DictionaryOutput = "${DATA}/assets/scene/solarsystem/planets/earth/satellites/debris/volume/generatedCartesian/singleDebris.dictionary" diff --git a/data/tasks/volume/debristasks/generate_spherical_volume.task b/data/tasks/volume/debristasks/generate_spherical_volume.task index 222acf7660..f24acbcc4b 100644 --- a/data/tasks/volume/debristasks/generate_spherical_volume.task +++ b/data/tasks/volume/debristasks/generate_spherical_volume.task @@ -1,13 +1,12 @@ return {{ Type = "GenerateDebrisVolumeTask", - Dimensions = {20, 28, 28}, + Dimensions = {45, 30, 40}, LowerDomainBound = {0, 0, 0}, UpperDomainBound = {1, math.pi, 2 * math.pi}, InputPath = "${SYNC}/url/satellite_tle_data_DebrisAll/files/allDebrisInOneTLE.txt", - --InputPath = "${SYNC}/url/satellite_tle_data_BreezeMBreakup(18391204735368316775)/files/2012-044.txt", - StartTime = "2018-05-04T00:00:00", - TimeStep = "3", - EndTime = "2018-05-04T00:00:00", + StartTime = "2019-07-27T10:00:00", + TimeStep = "2", + EndTime = "2019-07-27T12:00:00", GridType = "Spherical", RawVolumeOutput = "${DATA}/assets/scene/solarsystem/planets/earth/satellites/debris/volume/generated/singleDebris.rawvolume", DictionaryOutput = "${DATA}/assets/scene/solarsystem/planets/earth/satellites/debris/volume/generated/singleDebris.dictionary" diff --git a/modules/base/dashboard/dashboarditemframerate.cpp b/modules/base/dashboard/dashboarditemframerate.cpp index 44a5f10527..27d27ee7f1 100644 --- a/modules/base/dashboard/dashboarditemframerate.cpp +++ b/modules/base/dashboard/dashboarditemframerate.cpp @@ -32,10 +32,18 @@ #include #include +// #include +#include +#include +#include + + + namespace { constexpr const char* KeyFontMono = "Mono"; constexpr const float DefaultFontSize = 10.f; + constexpr openspace::properties::Property::PropertyInfo FontNameInfo = { "FontName", "Font Name", @@ -105,6 +113,7 @@ namespace { "Avg. FPS: {:3.2f}", 1.0 / openspace::global::windowDelegate.averageDeltaTime() ); + } std::string format(openspace::DashboardItemFramerate::FrametimeType frametimeType) { diff --git a/modules/space/rendering/renderablesatellites.cpp b/modules/space/rendering/renderablesatellites.cpp index 94ee6839fd..77ac8bf798 100644 --- a/modules/space/rendering/renderablesatellites.cpp +++ b/modules/space/rendering/renderablesatellites.cpp @@ -622,9 +622,9 @@ void RenderableSatellites::updateBuffers() { glm::dvec3 position = _keplerTranslator.debrisPos(timeOffset + orbit.epoch); - double positionX = position.x; // 10 miljon - double positionY = position.y; // 10 miljon - double positionZ = position.z; // 10 miljon + double positionX = position.x; + double positionY = position.y; + double positionZ = position.z; _vertexBufferData[index].x = static_cast(positionX); _vertexBufferData[index].y = static_cast(positionY); diff --git a/modules/space/rendering/renderablesatellites.h b/modules/space/rendering/renderablesatellites.h index aaa7db40e1..2e35f260c4 100644 --- a/modules/space/rendering/renderablesatellites.h +++ b/modules/space/rendering/renderablesatellites.h @@ -103,6 +103,8 @@ namespace openspace { KeplerTranslation _keplerTranslator; std::vector _TLEData; + + /// The backend storage for the vertex buffer object containing all points for this /// trail. std::vector _vertexBufferData; diff --git a/modules/space/shaders/debrisViz_fs.glsl b/modules/space/shaders/debrisViz_fs.glsl index 9f2f82b1d6..ada17beb95 100644 --- a/modules/space/shaders/debrisViz_fs.glsl +++ b/modules/space/shaders/debrisViz_fs.glsl @@ -75,10 +75,10 @@ Fragment getFragment() { // to debug using colors use this if-statment. - float ep = 0.01; - if( fract(vertexID_f) < ep ){ //periodFraction < ep - frag.color = vec4(1, 0, 0, 1); - } + // float ep = 0.01; + // if( fract(vertexID_f) < ep ){ //periodFraction < ep + // frag.color = vec4(1, 0, 0, 1); + // } return frag; } diff --git a/modules/space/shaders/debrisViz_vs.glsl b/modules/space/shaders/debrisViz_vs.glsl index a0355cdde2..0500a242f7 100644 --- a/modules/space/shaders/debrisViz_vs.glsl +++ b/modules/space/shaders/debrisViz_vs.glsl @@ -26,8 +26,8 @@ #include "PowerScaling/powerScalingMath.hglsl" -layout (location = 0) in vec4 vertex_data; // 1: x, 2: y, 3: z -layout (location = 1) in vec2 orbit_data; // 1: timeOffset, 2: epoch, 3: period +layout (location = 0) in vec4 vertex_data; // 1: x, 2: y, 3: z, 4: timeOffset, +layout (location = 1) in vec2 orbit_data; // 1: epoch, 2: period uniform dmat4 modelViewTransform; uniform mat4 projectionTransform; diff --git a/openspace.cfg b/openspace.cfg index 2f8a59042c..f4b6a5ef45 100644 --- a/openspace.cfg +++ b/openspace.cfg @@ -6,13 +6,13 @@ -- occurs in a single window, a fisheye projection, or a dome cluster system -- A regular 1280x720 window -SGCTConfig = sgct.config.single{} +--SGCTConfig = sgct.config.single{} -- A regular 1920x1080 window -- SGCTConfig = sgct.config.single{1920, 1080} -- A windowed 1920x1080 fullscreen --- SGCTConfig = sgct.config.single{1920, 1080, border=false, windowPos={0,0}, shared=true, name="WV_OBS_SPOUT1"} + SGCTConfig = sgct.config.single{1920, 1080, border=false, windowPos={0,0}, shared=true, name="WV_OBS_SPOUT1"} -- A 1k fisheye rendering -- SGCTConfig = sgct.config.fisheye{1024, 1024} diff --git a/src/performance/performancemanager.cpp b/src/performance/performancemanager.cpp index 2bef660288..a828c697e6 100644 --- a/src/performance/performancemanager.cpp +++ b/src/performance/performancemanager.cpp @@ -173,6 +173,7 @@ void PerformanceManager::setEnabled(bool enabled) { else { if (loggingEnabled()) { outputLogs(); + debrisLog(); } if (_performanceMemory) { @@ -260,8 +261,8 @@ void PerformanceManager::debrisLog() { PerformanceLayout* layout = performanceData(); const size_t writeStart = (PerformanceLayout::NumberValues - 1) - _currentTick; - //for (int16_t n = 0; n < layout->nScaleGraphEntries; n++) { - for (int16_t n = 7; n < 12; n++) { + for (int16_t n = 0; n < layout->nScaleGraphEntries; n++) { + //for (int16_t n = 7; n < 12; n++) { //lol fult const PerformanceLayout::SceneGraphPerformanceLayout node = layout->sceneGraphEntries[n];