Releases: SimDynamX/SpaceTeamsPRO
Platform Release v0.46.2
This new Space Teams PRO version has been released and is available for download on spaceteamspro.com.
Space Teams PRO releases that start with 0. are all Beta releases, meaning we have relaxed standards for stability, performance, and backwards compatibility as we quickly introduce new features. Please contact us directly (support@SimDynamX.com) if you are interested in using Space Teams in an environment where software stability is critical.
Most notable changes since 0.46.1:
Launchpad Installer
The Launchpad installer program is now ready to be used by all to download and update Space Teams PRO versions. It is available from the https://spaceteamspro.com/ download page.
Extra Guidance:
- Name the Profile you make for a version you install something like
Maininstead of a copy of the version namev1.2.3as it comes up by default. - Pausing an install and closing the application will not allow for a proper install restart.
- If you get the Launchpad installer application into a state where you cannot do anything, please contact support at support@simdynamx.com to get up-to-date troubleshooting instructions. We will eventually have good documentation for Launchpad on our wiki, but we have held off on that while we were still making significant changes.
General
- Model Import fixes and improvements, now on v4 of the imported-model entity config schema. Backwards compatible with old model import configs.
- Eridani renderer program now included in release in developer test form
- Optimal control utilities added in developer test form
Key Known Issues
Also look at https://github.com/SimDynamX/SpaceTeamsPRO/issues to see all publicly reported issues and their current status.
- Python API docs missing named sub-modules #103
- Planet shadows disappear for single frames when leaving planet surface #179
SimGlobals::DoesResponderExist()is unreliable.PhysEffect.setQuaternionnot working in Python
Automated Git Changelog:
What's Changed
- Optimization algorithms, 3D model import fixes, super heavy booster UE model, and Eridani renderer by @AlexSein98 in SimDynamX/SC_Platform#3146
- More optimal control progress by @connorjak in SimDynamX/SC_Platform#3148
Do not download the "Assets" files below; they are just a copy of this repository and are not used for Space Teams PRO. Space Teams PRO can be downloaded after making an account at spaceteamspro.com.
Full Changelog: SimDynamX/SC_Platform@v0.46.1...v0.46.2
Platform Release v0.46.1
This new Space Teams PRO version has been released and is available for download on spaceteamspro.com.
Space Teams PRO releases that start with 0. are all Beta releases, meaning we have relaxed standards for stability, performance, and backwards compatibility as we quickly introduce new features. Please contact us directly (support@SimDynamX.com) if you are interested in using Space Teams in an environment where software stability is critical.
Most notable changes since v0.45.2:
Logging
- Compute_Server log files now go into the AppData folder
- Typically
C:\Users\yourself\AppData\Local\SimDynamX\STPro\Logs
- Typically
- Instead of being labeled by the sim name, logs folders are named with this pattern:
- YYMMDD_HHMMSS_SimName__<first 3 hex values of sim-run UUID>
- Latest 20 log folders are kept
More robust connect-to-sim
- Should fix some intermittent failure-to-connect issues, especially for Python Systems
- May also fix some issues with sims crashing while ending
Visualization tools
visualizationnamespace changed tovis- Added point-list generator helper functions
General
- New demo "Mars Rover Driving"
- PhysEffect better netcode implementation
- Unreal popup errors now more reliably limited to one pop-up per sim
- Better error handling for Unreal GMRAD crashes
- Less cases where UI tools can cause an Unreal crash
Key Known Issues
Also look at https://github.com/SimDynamX/SpaceTeamsPRO/issues to see all publicly reported issues and their current status.
- Python API docs missing named sub-modules #103
- Planet shadows disappear for single frames when leaving planet surface #179
SimGlobals::DoesResponderExist()is unreliable.PhysEffect.setQuaternionnot working in Python
Automated Git Changelog:
What's Changed
- Fix saving, validate BP entity/frame input to avoid crashes (instead returns invalid objects) by @connorjak in SimDynamX/SC_Platform#3126
spaceteams::visualization->spaceteams::visand Expose Simple Point Generation Algorithms by @jc-luna in SimDynamX/SC_Platform#3122- Logs now go to AppData by @connorjak in SimDynamX/SC_Platform#3129
- MODT Decision Analysis UI continued by @connorjak in SimDynamX/SC_Platform#3132
- PhysEffect better netcode, fix null simRunUUID by @connorjak in SimDynamX/SC_Platform#3133
- GMRAD data crashes reliably cause 1 modal, ModalThenQuit refactor, MODT UI rework progress by @connorjak in SimDynamX/SC_Platform#3136
- blueprint for a single display panel mount with configurable panel size and rotation by @johnhayes98 in SimDynamX/SC_Platform#3137
- More robust sim connection code by @connorjak in SimDynamX/SC_Platform#3138
- MODT UI rework, merge Robust Sim Connect by @connorjak in SimDynamX/SC_Platform#3140
- Merge MODT Mission Sequence 7 Demo into Core Dev by @Henrynaut in SimDynamX/SC_Platform#3139
- Fix missing assumps check in Unreal client by @connorjak in SimDynamX/SC_Platform#3141
- Sim connect more robust by @connorjak in SimDynamX/SC_Platform#3142
Full Changelog: SimDynamX/SC_Platform@v0.45.2...v0.46.1
Do not download the "Assets" files below; they are just a copy of this repository and are not used for Space Teams PRO. Space Teams PRO can be downloaded after making an account at spaceteamspro.com.
Platform Release v0.45.2
This new Space Teams PRO version has been released and is available for download on spaceteamspro.com.
Space Teams PRO releases that start with 0. are all Beta releases, meaning we have relaxed standards for stability, performance, and backwards compatibility as we quickly introduce new features. Please contact us directly (support@SimDynamX.com) if you are interested in using Space Teams in an environment where software stability is critical.
Most notable changes since v0.44.2:
General
- Parameters now have a key string limit of 31 characters long
param_key_tnow uses astatic_stringobject for better performance and to fix some obscure DLL issues.
- New
VisualizerEntity Type for holographic rendering of curves and 3D shapes.- Documentation coming soon! For now, you can access these in the
Add Entitymenu in the sim UI.
- Documentation coming soon! For now, you can access these in the
- Additional helper functions available for generating sets of points for curve rendering
- Documentation coming soon
Entity_Cameraremoved CaptureOnMovement behavior, which means we save on performance.- Python API added bindings for UUID class
st.UUID- Equivalent of C++
spaceteams::uuid::UUID_t
- Equivalent of C++
- Python API fixed many docstrings and default-value-views
- Work-in-progress planet altimetry raytracing utilities
Dynamics
- Fixed an issue which caused the SPICE propagator to not set acceleration of moving bodies.
- Without this fix, the ST_Rigid_Body propagator was appearing to double the gravitational acceleration of bodies by the sun (and other bodies) because it didn't "know" that the resident frame of the entity, such as Earth-Centered Inertial frame, was already accelerating with respect to the sun.
- New
setQuaternion()function forPhysEffectfor use forRotationOverrideeffect type.- Not yet working in python code! Use
.setVector( )and.magnitude =instead for now
- Not yet working in python code! Use
Publish/Subscribe
- The SimGlobals
DispatchEventandAddEventListenerfunctions have been renamed toPublishandSubscribe, with similar functionality.- The names of the concepts involved have changed too. A
Publishsends a "Message" with a "payload" on a particulartopicandentityId. ASubscribesubscribes on the sametopicandentityId. WhenSubscribeis called, a Subscriber Delegate function is passed which runs when the Message is received with the payload as the input. - Python code using the st.DispatchEvent, etc naming does not need to be updated immediately to match the new name, but these old named functions are deprecated and should eventually be updated.
AddTransientEventListeneris nowSubscribeOnce
- The names of the concepts involved have changed too. A
- Publish/Subscribe New Functionality
- An optional
entityIdargument is available to make your Publish/Subscribe more specific. If unspecified, the entityId is the SimEntity's entityId. This should be used to make messages on a topic specific to a certain entity in cases where multiple entities in the simulation are doing a similar thing and may otherwise receive each others messages when subscribing. - Before this update, the Events (now Messages) executed delegate functions in one of two ways:
- Immediately, in the same thread as the DispatchEvent call
- During the Order Executor thread loop, which processes all incoming data to the program, blocking while the delegate function is running
- After this update, to avoid most issues with deadlocking, all Publishes only enqueue a Message, and all Subscriber delegates are only ran asynchronously in one of two modes:
- If argument
independentThreadis true, the delegate is ran in its own thread. This is a suitable default. - Else, the delegate is ran in either its own thread or some program-dependent threadpool that has lower overhead. This is a better option if your delegate is expected to be called many times per second, should take less than 10 milliseconds to run, and does NOT wait for other conditions to be met before returning. Without
independentThread, there is more risk of a deadlock situation due to the structure of your simulation code.
- If argument
- An optional
Request/Response
- New SimGlobals functions
RequestandRespondare a new programming feature in Space Teams.- Use Request / Respond in situations where you want to get data or request an action that you do not have access to in the current System or thread you are programming in. The behavior can be treated somewhat similarly to HTTP requests.
- Only one Response is expected for a single Request. Any more responses than one are treated as an error. So, don't set up
Respond()on the same topic/entity twice, or include code that takes in more data to decide whether to respond.
- A
Respondcall sets up a delegate function that takes a Request's payload as input and returns a "Response" payload as output. ARequestcall sends a payload along with a unique request ID to the entire STP sim and waits for the first Response that it receives on the same request ID. When the response is received, theRequestreturns the response payload. Respondis a blocking call, and has atimeoutargumenttimeoutdefaults to 10 (real-world) seconds- The timeout happens if a response isn't received in time, no matter if a responder exists somewhere in the sim.
- This timeout will end the blocking call and return an invalid object
- In C++, this is an invalid
std::optionalvalue - In Python, this is a
Noneobject
- In C++, this is an invalid
- Always check the output of the
Request- C++:
auto response = SimGlobals::Request(...); if(!response) { //Do something to handle failure, log an error, or fatal-log and stop the sim. }
- Python:
response = st.SimGlobals.Request(...) if response is None: #Do something to handle failure, log an error, or fatal-log and stop the sim.
- C++:
RequestAsyncis an alternative function available in C++ where thestd::futureobject is returned for the user to implement their own waiting scheme.RequestAsyncWithDelegateis suitable for situations when you want to wrap some Request/Response code with a delegate function that will be ran with the received response payload to transform it into a more structured form. A good example of this is forCaptureImageAsync, where we have a recv-delegate that rearranges the parameter response into aCapturedImageobject which fulfills the future theCaptureImageAsyncreturns.
RespondandRequestAsyncWithDelegatealso have optionalindependentThread, with the same behavior as described above.- Request/Respond also allow setting a more specific
entityIdto filter which Responders will respond.
CaptureImage
- Making use of Request/Response, we have the
CaptureImageAsyncandCaptureImageBlockingfunctions available as an alternative toCaptureImage/OnImageReceived. CaptureImageBlockingallows the user to make much more simple usage of the Camera entity type Unreal rendering. Instead of registering anOnImageReceiveddelegate function, the C++ or Python code will blocking-wait until the image is captured and received before continuing.- A
timeoutargument is required, and should probably be set to at least 1 second if not 10 to handle lag spikes.
- A
Key Known Issues
- Python API docs missing named sub-modules #103
- Planet shadows disappear for single frames when leaving planet surface #179
- Unreliable download of SpaceTeamsPRO .zip file #171
SimGlobals::DoesResponderExist()is unreliable.PhysEffect.setQuaternionnot working in Python
NOTE: We have moved the bulk of the Known Issues into the Issues section of the SpaceTeamsPRO repo. Now, we only report issues in this section if they are:
- A major issue that will be encountered by most users
- A known regression that is new in this release
- A known issue with new functionality
Also look at https://github.com/SimDynamX/SpaceTeamsPRO/issues to see all publicly reported issues and their current status.
Automated Git Changelog:
What's Changed
- Publish/Subscribe instead of Event naming, Request / Response new functionality by @connorjak in SimDynamX/SC_Platform#3113
- More lander sim progress by @connorjak in SimDynamX/SC_Platform#3112
- SPICE Acceleration fix, PhysEffect quaternion rotation helper by @connorjak in SimDynamX/SC_Platform#3115
- Avoid deadlocks from subscriber/blocking-request interaction by @connorjak in SimDynamX/SC_Platform#3117
- Fix Blocking Request from Python Async Thread by @connorjak in SimDynamX/SC_Platform#3114
- Gnc 6 dof convex by @WaylonLee in SimDynamX/SC_Platform#3116
- Visualizer Entity Type and Sim Creation Integration by @jc-luna in SimDynamX/SC_Platform#3106
- Param key error tweak by @connorjak in SimDynamX/SC_Platform#3119
- v0.45.2 final changes by @connorjak in SimDynamX/SC_Platform#3120
Full Changelog: SimDynamX/SC_Platform@v0.44.2...v0.45.2
Do not download the "Assets" files below; they are just a copy of this repository and are not used for Space Teams PRO. Space Teams PRO can be downloaded after making an account at spaceteamspro.com.
Platform Release v0.44.2
This is copy pasted from the SimDynamX internal repository, so most or all of the links here direct to non-public sites.
This new Space Teams PRO version has been released and is available for download on spaceteamspro.com.
Space Teams PRO releases that start with 0. are all Beta releases, meaning we have relaxed standards for stability, performance, and backwards compatibility as we quickly introduce new features. Please contact us directly (support@SimDynamX.com) if you are interested in using Space Teams in an environment where software stability is critical.
Most notable changes since v0.44.1:
- Fully fixed 3D Model Import tool
- Skip role-selection screen for a few simulation-based tools
- Sun disk now scales in size and brightness correctly based on distance
- Fixed Moon no-collisions bug
Key Known Issues
Also look at https://github.com/SimDynamX/SpaceTeamsPRO/issues to see all publicly reported issues and their current status.
- (Greatly reduced impact) Various small GMRAD issues involving cube-side edges SimDynamX/SC_Platform#783
- SimDynamX/SC_Platform#1739 Some jitter in specific situations, probably involving a time synchronization issue
- (Change in progress) Don't yet have a way to set up Systems on Entities in the SpaceCRAFT sim editing utilities; still requires text-editing the sim config for now.
- Planet small-scale surface detail normal map (detail lighting) 90 degrees out of alignment when at the poles
ST_Rigid_BodyPropagator has issues when ResidentFrame is not SSB. Also applies toPropagatorsystem when PropagationFrame mismatches with ResidentFrame #2872- 3D Model import crashes without a valid error message when attempting to import certain encodings of .glb file such as Draco-compressed models.
- The fix is known but will take a while.
Automated Git Changelog:
What's Changed
- Skip role select, correct sun disk rendering by @connorjak in SimDynamX/SC_Platform#3105
- BP Wrappers for Curve Drawing and Primitives by @jc-luna in SimDynamX/SC_Platform#3076
Full Changelog: SimDynamX/SC_Platform@v0.44.1...v0.44.2
Do not download the "Assets" files below; they are just a copy of this repository and are not used for Space Teams PRO. Space Teams PRO can be downloaded after making an account at spaceteamspro.com.
Platform Release v0.44.1
This is copy pasted from the SimDynamX internal repository, so most or all of the links here direct to non-public sites.
This new Space Teams PRO version has been released and is available for download on spaceteamspro.com.
Space Teams PRO releases that start with 0. are all Beta releases, meaning we have relaxed standards for stability, performance, and backwards compatibility as we quickly introduce new features. Please contact us directly (support@SimDynamX.com) if you are interested in using Space Teams in an environment where software stability is critical.
Most notable changes since v0.44.0:
- New Sim Wizard now enterable again
- Some small UI tweaks
- Import 3D Model is now enterable but opening a mesh file is still broken. Fixed for v0.44.2.
Key Known Issues
Also look at https://github.com/SimDynamX/SpaceTeamsPRO/issues to see all publicly reported issues and their current status.
- (Greatly reduced impact) Various small GMRAD issues involving cube-side edges SimDynamX/SC_Platform#783
- SimDynamX/SC_Platform#1739 Some jitter in specific situations, probably involving a time synchronization issue
- (Change in progress) Don't yet have a way to set up Systems on Entities in the SpaceCRAFT sim editing utilities; still requires text-editing the sim config for now.
- Planet small-scale surface detail normal map (detail lighting) 90 degrees out of alignment when at the poles
ST_Rigid_BodyPropagator has issues when ResidentFrame is not SSB. Also applies toPropagatorsystem when PropagationFrame mismatches with ResidentFrame #2872- Surface collisions not working on the Moon in particular
- 3D Model import crashes without a valid error message when attempting to import certain encodings of .glb file such as Draco-compressed models.
- The fix is known but will take a while.
- Import 3D Model is now enterable but opening a mesh file is still broken.
Automated Git Changelog:
What's Changed
- Merge GMRAD depth raytracer into GNC 6DOF branch by @AlexSein98 in SimDynamX/SC_Platform#3098
- GNC PnP continued bugfixing and GMRAD altimetry raytracing by @connorjak in SimDynamX/SC_Platform#3102
Full Changelog: SimDynamX/SC_Platform@v0.44.0...v0.44.1
Do not download the "Assets" files below; they are just a copy of this repository and are not used for Space Teams PRO. Space Teams PRO can be downloaded after making an account at spaceteamspro.com.
Platform Release v0.44.0
This is copy pasted from the SimDynamX internal repository, so most or all of the links here direct to non-public sites.
This new Space Teams PRO version has been released and is available for download on spaceteamspro.com.
Space Teams PRO releases that start with 0. are all Beta releases, meaning we have relaxed standards for stability, performance, and backwards compatibility as we quickly introduce new features. Please contact us directly (support@SimDynamX.com) if you are interested in using Space Teams in an environment where software stability is critical.
We have noticed a small issue that has disabled the New Sim Wizard and Import 3D Model tools. Fixing for v0.44.1, which is uploading soon.
Most notable changes since v0.43.1:
- The sim now tells the user which remotes (programs outside the current one) are being waited on for Load/Sync/Init
- New Sim Wizard issues resolved
- Tweaks to 3D Model Import UI
- Block editing of core materials (once assigned by name)
- Maximum fractional digits reduced on color scale/offset
- Enforce only Core or Local dirs for imported assets
- VR THC/RHC logic removed from Orion2 blueprint and moved to THC/RHC blueprint
- Valid params include "Target" for setting the entity that the THC/RHC should apply to and "InvertX" "InvertY" "InvertZ" for THC/ "InvertRoll" "InvertPitch" "invertYaw" for RHC
Key Known Issues
Also look at https://github.com/SimDynamX/SpaceTeamsPRO/issues to see all publicly reported issues and their current status.
- (Greatly reduced impact) Various small GMRAD issues involving cube-side edges SimDynamX/SC_Platform#783
- SimDynamX/SC_Platform#1739 Some jitter in specific situations, probably involving a time synchronization issue
- (Change in progress) Don't yet have a way to set up Systems on Entities in the SpaceCRAFT sim editing utilities; still requires text-editing the sim config for now.
- Planet small-scale surface detail normal map (detail lighting) 90 degrees out of alignment when at the poles
ST_Rigid_BodyPropagator has issues when ResidentFrame is not SSB. Also applies toPropagatorsystem when PropagationFrame mismatches with ResidentFrame #2872- Surface collisions not working on the Moon in particular
- 3D Model import crashes without a valid error message when attempting to import certain encodings of .glb file such as Draco-compressed models.
- The fix is known but will take a while.
Automated Git Changelog:
What's Changed
- Update EM_OCP_IPM with latest model import UI features by @AlexSein98 in SimDynamX/SC_Platform#3096
- Log which remote(s) are not load/sync/inited by @connorjak in SimDynamX/SC_Platform#3097
- Some optimal control methods, GMRAD depth raytracer, main menu UI updates, and file origin safeguards for 3D model import by @AlexSein98 in SimDynamX/SC_Platform#3099
- interior separation/thc-rhc rewrite by @tnweidner1216 in SimDynamX/SC_Platform#3095
- Various Visualization Header-Related Stuff by @jc-luna in SimDynamX/SC_Platform#3094
Full Changelog: SimDynamX/SC_Platform@v0.43.1...v0.44.0
Do not download the "Assets" files below; they are just a copy of this repository and are not used for Space Teams PRO. Space Teams PRO can be downloaded after making an account at spaceteamspro.com.
Platform Release v0.43.1
This is copy pasted from the SimDynamX internal repository, so most or all of the links here direct to non-public sites.
This new Space Teams PRO version has been released and is available for download on spaceteamspro.com.
NOTE: This release has been publicly available on our download site for a few days now.
Space Teams PRO releases that start with 0. are all Beta releases, meaning we have relaxed standards for stability, performance, and backwards compatibility as we quickly introduce new features. Please contact us directly (support@SimDynamX.com) if you are interested in using Space Teams in an environment where software stability is critical.
Most notable changes since v0.42.0:
Sim Editing
Import 3D Modeltool added- Under
Designtab - Follow instructions on
.glbexport settings, then use this tool to test-import and create a.enconfentity config for a properly materialedObject_Loadedentity.
- Under
- New Sim Wizard updates (broken by small bug in v0.43.1, fixed in later releases)
- Better layout of planets and moons
- Icons of major planets and moons
- During
Syncsimstate, which is where the Sim Editor mode pauses, Systems in a sim are spawned as System Config Entities- WIP functionality for System editing on a sim
- Added more editable parameter types to Param Map editing widget
- Fix bug with file dialogs that could cause crash due to change in working directory
- Also, file dialogs now have working file-type matching
- Saving sim wipes pawn possession properly
Demos
- Solar System base sim additions
- Now includes 6 more moons of Saturn, with proper surface data for Titan and Enceladus
- Added a few more lunar south pole landing site datasets
- Added Eris
- Fixed: Orion Docking demo ends immediately with "too far from station"
- Orion Docking interior has better visuals
Compute_Server/packages/ROS/MarsBuggy_VR_FreeDrive.simconfmuch better stability of view- VR sims now default to
Highscalability instead ofEpic/Scientific
Dynamics
- Minor corrections in harmonic gravity models
- NESC check case validation for gravity models and integrators
- Entity state extrapolation for state functions, frame transformations, etc now higher-order
- Translation uses 2nd-order extrapolation, incorporating both velocity and acceleration
- Rotation uses full quaternion propagation formula, resulting in valid transforms for higher time-steps
- Slight change to order of ops of Propagators to ensure state values are valid during Init simstate
Rendering
- Fixed issue with low-resolution planet data tiles not being resampled correctly
- This was causing flat sphere surfaces below a certain LOD
- Heavy impact on Ceres and Vesta, now fixed
- Added offline renderer System for stars and planets
- Curve and Primitive rendering functions added to Python API
General
- Reimplemented singularity handling in
DCM_to_Euler321andDCM_to_Euler313 - Sim state now shows in the UI besides in Runtime state
- Compute_Server threads are now properly labeled, which should help with debugging.
- Optional
AddSaturnMoons.simconfinclude-sim which adds ~45 additional named minor moons of Saturn to the sim.- Corresponding Saturn satellites data has been added to SPICE kernels
- Fixed: Outliner / Hierarchy
Go Tofunctionality is broken - Fixed: Python Systems fail silently if crashing before
connect_to_simfinishes - Fixed: Role Picker causes error in Python Systems if press start too early
- Other wide-ranging improvements to error handling
- (Blueprint development) error on GetParam not-found is now optional
Key Known Issues
Also look at https://github.com/SimDynamX/SpaceTeamsPRO/issues to see all publicly reported issues and their current status.
- New Sim Wizard currently broken due to bug with saving sim
- (Greatly reduced impact) Various small GMRAD issues involving cube-side edges SimDynamX/SC_Platform#783
- SimDynamX/SC_Platform#1739 Some jitter in specific situations, probably involving a time synchronization issue
- (Change in progress) Don't yet have a way to set up Systems on Entities in the SpaceCRAFT sim editing utilities; still requires text-editing the sim config for now.
- Planet small-scale surface detail normal map (detail lighting) 90 degrees out of alignment when at the poles
ST_Rigid_BodyPropagator has issues when ResidentFrame is not SSB. Also applies toPropagatorsystem when PropagationFrame mismatches with ResidentFrame #2872- Surface collisions not working on the Moon in particular
Automated Git Changelog:
What's Changed
- Systems spawn as entities in Sim Config Editor by @connorjak in SimDynamX/SC_Platform#3061
- Gnc 6 dof convex by @WaylonLee in SimDynamX/SC_Platform#3070
- Planet and star renderer updates, harmonic gravity float64 compliance, direct integral (GMRAD) gravity model, 3D model import UI WIP by @AlexSein98 in SimDynamX/SC_Platform#3071
- Add many Param Value Edit widgets by @L3nilX23 in SimDynamX/SC_Platform#3050
- Model Import UI, Non-CWD File Dialogs by @AlexSein98 in SimDynamX/SC_Platform#3074
- Pybind Curves and Primitives by @jc-luna in SimDynamX/SC_Platform#3073
- BP param funcs optional error, fix euler angle singularities, fix propagator not updating past first tick by @connorjak in SimDynamX/SC_Platform#3078
- Fix Planet Subsampling by @connorjak in SimDynamX/SC_Platform#3080
- Non-nullptr parent window in file dialogs by @AlexSein98 in SimDynamX/SC_Platform#3079
- Rearrange lunar datasets, add all named Saturn moons, regen all planet data by @connorjak in SimDynamX/SC_Platform#3081
- Vr orion docking interior remodel by @tnweidner1216 in SimDynamX/SC_Platform#3083
- Remove/Replace EasyFileDialog by @connorjak in SimDynamX/SC_Platform#3084
- Fix file filters by @connorjak in SimDynamX/SC_Platform#3085
- New Sim Wizard UI Updates by @AlexSein98 in SimDynamX/SC_Platform#3082
- Various sim editing changes by @connorjak in SimDynamX/SC_Platform#3087
- Replace file dialog library compilation by @connorjak in SimDynamX/SC_Platform#3088
- Vr mars buggy jitter fix by @tnweidner1216 in SimDynamX/SC_Platform#3090
- Main Menu Updates, Working "Go To Entity" Function, and Minor SSE Updates by @AlexSein98 in SimDynamX/SC_Platform#3089
Full Changelog: SimDynamX/SC_Platform@v0.42.0...v0.43.1
Do not download the "Assets" files below; they are just a copy of this repository and are not used for Space Teams PRO. Space Teams PRO can be downloaded after making an account at spaceteamspro.com.
Platform Release v0.42.0
This is copy pasted from the SimDynamX internal repository, so most or all of the links here direct to non-public sites.
This new Space Teams PRO version has been released and is available for download on spaceteamspro.com.
Space Teams PRO releases that start with 0. are all Beta releases, meaning we have relaxed standards for stability, performance, and backwards compatibility as we quickly introduce new features. Please contact us directly (support@SimDynamX.com) if you are interested in using Space Teams in an environment where software stability is critical.
Most notable changes since v0.41.1:
Python Before-Runtime user code execution
After adding the structured initialization process in the last update, we have added a way for Python Systems to run code before the Runtime simstate as well. See Compute_Server/packages/Template_Python/Template_Python.py for the most up-to-date copy of the following example code:
# It is preferred that you do not run code (besides declaring functions) in this section above the st.connect_to_sim(),
# but we now have added the functionality to detect and report crashes of Python Systems
# that do run code here and have it fail.
def before_init():
pass # Replace this to run code during the Sync state that needs to finish before Init starts anywhere in the sim.
# Sync state is where Sim Editing is done, so code in here shouldn't change parameters that would
# make saving and reloading the sim problematic.
def before_runtime():
pass # Replace this to run code during the Init state that needs to finish before Runtime starts anywhere in the sim.
#################################################################
# DON'T CHANGE ANY OF THE BELOW; NECESSARY FOR JOINING SIMULATION
import os, sys, time, datetime, traceback
import spaceteams as st
def custom_exception_handler(exctype, value, tb):
error_message = "".join(traceback.format_exception(exctype, value, tb))
st.logger_fatal(error_message)
exit(1)
sys.excepthook = custom_exception_handler
st.BeforeInit(before_init)
st.BeforeRuntime(before_runtime)
st.connect_to_sim(sys.argv)
import numpy as np
# DON'T CHANGE ANY OF THE ABOVE; NECESSARY FOR JOINING SIMULATION
#################################################################
# Now, when below the boilerplate section, you can import more things
# import matplotlib.pyplot as plt
# Do whatever, now."Launchpad" Installer/Updater program
This program is being tested in its UI-less form, and should be available soon as a reliable and fast install-and-update method in replacement of the zip download from the website.
3D Drawing
- Line/Curve/Primitive Drawing functions now in their own namespace instead of
SimGlobals - Primitive param structs for specific primitive types, which makes it much more obvious what params are relevant to the primitive you're making (via language server autocompletion).
- Similarly, param structs for the curve drawing
- PrimitiveType::RectangularPrism -> PrimitiveType::Box
- "Line drawing" name adjustment to "curve drawing"
- Curves refresh while sim is frozen
General
- Installation Check for FirstTimeSetup is now more reliable. Clicking
Fixtakes you to the folder to run the script. - Added functionality to detect and report crashes of Python Systems before they connect to the sim
- Unreal client now shows SimState
- Fix bug with RolePicker being available too soon in startup process
Key Known Issues
Also look at https://github.com/SimDynamX/SpaceTeamsPRO/issues to see all publicly reported issues and their current status.
- New Sim Wizard currently broken due to bug with saving sim
- (Greatly reduced impact) Various small GMRAD issues involving cube-side edges SimDynamX/SC_Platform#783
- SimDynamX/SC_Platform#1739 Some jitter in specific situations, probably involving a time synchronization issue
- (Change in progress) Don't yet have a way to set up Systems on Entities in the SpaceCRAFT sim editing utilities; still requires text-editing the sim config for now.
- Planet small-scale surface detail normal map (detail lighting) 90 degrees out of alignment when at the poles
- Euler angle singularities
DCM_to_Euler321returns a wrong rotation when a +- 90 degree pitch (y-rotation) DCM is passed in
- Outliner / Hierarchy
Go Tofunctionality is broken ST_Rigid_BodyPropagator has issues when ResidentFrame is not SSB. Also applies toPropagatorsystem when PropagationFrame mismatches with ResidentFrame #2872- Surface collisions not working on the Moon in particular
- Orion Docking demo ends immediately with "too far from station"
Automated Git Changelog:
What's Changed
- Line Drawing in the Visualization Namespace by @JadonLee8 in SimDynamX/SC_Platform#3036
- Python Before-Runtime user code execution by @connorjak in SimDynamX/SC_Platform#3057
- Primitives and Curve Drawing Interface Changes by @jc-luna in SimDynamX/SC_Platform#3033
- Lander Updates by @WaylonLee in SimDynamX/SC_Platform#3059
- GNC 6DOF by @WaylonLee in SimDynamX/SC_Platform#3066
- Systems spawn as entities in Sim Config Editor by @connorjak in SimDynamX/SC_Platform#3061
New Contributors
- @JadonLee8 made their first contribution in SimDynamX/SC_Platform#3036
Full Changelog: SimDynamX/SC_Platform@v0.41.1...v0.42.0
Do not download the "Assets" files below; they are just a copy of this repository and are not used for Space Teams PRO. Space Teams PRO can be downloaded after making an account at spaceteamspro.com.
Platform Release v0.41.1
This is copy pasted from the SimDynamX internal repository, so most or all of the links here direct to non-public sites.
This new Space Teams PRO version has been released and is available for download on spaceteamspro.com.
Space Teams PRO releases that start with 0. are all Beta releases, meaning we have relaxed standards for stability, performance, and backwards compatibility as we quickly introduce new features. Please contact us directly (support@SimDynamX.com) if you are interested in using Space Teams in an environment where software stability is critical.
Most notable changes since v0.40.1:
Sim Startup Refactor
- Sims now have a more structured initialization process
- Fixed bug where Systems in a sim do not start but the SpaceCRAFT client program does start.
- Wait for programs to declare themselves done with sync and init before continuing
- Reliable order of operations for user code
- All client programs will be loaded and ready before init and update functions can run
- Init phase waits for all System
init()functions to complete before continuing (change in guarantees)
- Change in SimState definitions
- From
Loading,Lobby,RuntimetoLoading,Lobby,Sync,Init,Runtime Loading- Load the sim config as a starting point, independent of any other programs
- System
load()functions are run
Lobby- Wait for other clients to finish connecting/loading, communicate and organize with other users (if applicable).
Sync- With a final user list known, enter a process where we ensure all clients are joined and warmed up before Init/Running Simstate is made available.
- Some propagators such as SPICE start running in order to initialize the solar system environment
Init- System
init()functions are run
- System
Runtime- Timed updates begin. Physics starts moving.
- Normal UI interaction resumes
- System
update()functions start running - Python Systems continue from
connect_to_sim()call- Planned feature to allow python code to run during earlier sim states when so configured
- From
- Sim Editor mode
- When running a sim, it can be opened in the "Sim Editor" mode for editing
- Role Picking screen click
Open In Sim Editor
- Role Picking screen click
- This stops the startup process in
Syncstate, so no Systems have run any init/update code, and only some specific propagators are running - See
SIM SUSPENDED FOR EDITINGat the top of the screen - Able to save a sim from this mode in a pristine state, unmodified from Systems or propagators running
- Work is still in progress to add more functionality such as editing Systems, FieldEffects, their instance parameters, and system assignment to entities
- When running a sim, it can be opened in the "Sim Editor" mode for editing
New Sim Wizard
- Interactive new-sim-creation UI
- Choose a planetary body to center your new sim on
- Choose starting time and location on the surface or in orbit
- (Coming soon) select scenario to start at chosen location
- Open your sim, either to edit/save it or to run immediately
- Still in active development; more features coming soon.
Demos
- Fixed ISS Live sim
- Data from the public source may still be stale
Dynamics
- Added "Assumed Inertial Frame" capability to
ST_Rigid_Body- By default,
ST_Rigid_Bodypropagator uses Solar System Barycenter / J2000 as the assumed inertial frame. - If the simulation does not have the whole solar system present and contributing to the Gravity FieldEffect, this assumption will cause a mismatch between sim behavior and a reduced-order model that also does not include the whole solar system.
- For example, if your sim only includes Earth and Moon gravity, the gravity from the Sun and Jupiter that is implied by the relative motion of the solar system barycenter entity will cause your sim to mismatch from a sim that uses earth-centered inertial frame as its assumed-inertial frame and also only has Earth and Moon gravity.
- We have added the capability to override the Assumed-Inertial Frame that an entity propagates with
- EntityRef parameter with key
{ "Dynamics", "PropagatorConfig", "AssumedInertialFrame" }on propagated entity
- EntityRef parameter with key
- By default,
- Fixed bug in Velocity Override PhysEffect handling within
ST_Rigid_Bodypropagator - Added polyhedral gravity FieldEffect
- See
packages\EnvironmentalModels\Gravity\src\Gravity_Polyhedral.cpp
- See
3D Drawing Interface
FramedDrawerVaried Fixes and Potential Performance ImprovementsSimGlobals::DrawLine()function- Spawns a line drawer entity and returns its reference.
General
- Remove old camera image export code
- Now only
st.camerafunctions andCamera-type Entity are what is used to take capture images from the sim
- Now only
- Clean up many old assets
- Added offline star and planet rendering system, mostly in support of spaceflight navigation systems research
- Fix unreal client crash on problem during planet entity spawning
- Many minor fixes and adjustments
Key Known Issues
Also look at https://github.com/SimDynamX/SpaceTeamsPRO/issues to see all publicly reported issues and their current status.
- (Maybe resolved) SimDynamX/SC_Platform#1491 SimDynamX/SC_Platform#2235 Realtime Capture SkyLight sometimes has improper lighting
- (Greatly reduced impact) Various small GMRAD issues involving cube-side edges SimDynamX/SC_Platform#783
- SimDynamX/SC_Platform#1739 Some jitter in specific situations, probably involving a time synchronization issue
- Don't yet have a way to set up Systems on Entities in the SpaceCRAFT sim editing utilities; still requires text-editing the sim config for now.
- Planet small-scale surface detail normal map (detail lighting) 90 degrees out of alignment when at the poles
- Euler angle singularities
DCM_to_Euler321returns a wrong rotation when a +- 90 degree pitch (y-rotation) DCM is passed in
- Outliner / Hierarchy
Go Tofunctionality is broken ST_Rigid_BodyPropagator has issues when ResidentFrame is not SSB. Also applies toPropagatorsystem when PropagationFrame mismatches with ResidentFrame #2872- Surface collisions not working on the Moon in particular
Automated Git Changelog:
What's Changed
- Remove old camera C++ and BP classes by @connorjak in SimDynamX/SC_Platform#3030
- Remove more old classes and assets, fix Velocity Override in ST_Rigid_Body by @connorjak in SimDynamX/SC_Platform#3032
- updated the ADI rel velocity calculation to handle spinning target by @johnhayes98 in SimDynamX/SC_Platform#3034
AFramedDrawerVaried Fixes and Potential Performance Improvements by @jc-luna in SimDynamX/SC_Platform#3026- Line Drawer SimGlobals Function by @jc-luna in SimDynamX/SC_Platform#2993
- Polyhedral Gravity, Propagator System Customizability, and Model Import Improvements by @AlexSein98 in SimDynamX/SC_Platform#3037
- Polyhedral Gravity model, some system loading fixes by @AlexSein98 in SimDynamX/SC_Platform#3014
- New Sim Wizard by @ColtonDuncan in SimDynamX/SC_Platform#2999
New Contributors
- @johnhayes98 made their first contribution in SimDynamX/SC_Platform#3034
Full Changelog: SimDynamX/SC_Platform@v0.40.1...v0.41.0
Do not download the "Assets" files below; they are just a copy of this repository and are not used for Space Teams PRO. Space Teams PRO can be downloaded after making an account at spaceteamspro.com.
Platform Release v0.40.1
This is copy pasted from the SimDynamX internal repository, so most or all of the links here direct to non-public sites.
This new Space Teams PRO version has been released and is available for download on spaceteamspro.com.
Space Teams PRO releases that start with 0. are all Beta releases, meaning we have relaxed standards for stability, performance, and backwards compatibility as we quickly introduce new features. Please contact us directly (support@SimDynamX.com) if you are interested in using Space Teams in an environment where software stability is critical.
Note for STU Mars Autonomous Rover Rally Competitors:
This update is optional; you can stay on v0.39.7 or v0.39.8 and complete the competition just fine. If you are having trouble getting the sim running (not WSL/ROS issues), updating to v0.40.1 may help in the debugging process.
Most notable changes since 0.40.0:
- Fix bug with log files not opening properly.
- Add Generic Shapes 3D drawing interface. API is work in progress.
- See v0.40.0 release for other recent changes https://github.com/SimDynamX/SpaceTeamsPRO/releases/tag/v0.40.0
Key Known Issues
Also look at https://github.com/SimDynamX/SpaceTeamsPRO/issues to see all publicly reported issues and their current status.
- Somewhat rare bug where Systems in a sim do not start but the SpaceCRAFT client program does start. Fixed by exiting and restarting sim.
- ISS Live sim may be broken, either due to lack of data, or an issue in its sim code due to recent updates.
- (Maybe resolved) SimDynamX/SC_Platform#1491 SimDynamX/SC_Platform#2235 Realtime Capture SkyLight sometimes has improper lighting
- (Greatly reduced impact) Various small GMRAD issues involving cube-side edges SimDynamX/SC_Platform#783
- SimDynamX/SC_Platform#1739 Some jitter in specific situations, probably involving a time synchronization issue
- Create New Sim UI is only partially implemented
- Don't yet have a way to set up Systems on Entities in the SpaceCRAFT sim editing utilities; still requires text-editing the sim config for now.
- Planet small-scale surface detail normal map (detail lighting) 90 degrees out of alignment when at the poles
- Euler angle singularities
DCM_to_Euler321returns a wrong rotation when a +- 90 degree pitch (y-rotation) DCM is passed in
- Outliner / Hierarchy
Go Tofunctionality is broken ST_Rigid_BodyPropagator has issues when ResidentFrame is not SSB. Also applies toPropagatorsystem when PropagationFrame mismatches with ResidentFrame #2872- Surface collisions not working on the Moon in particular
Automated Git Changelog:
What's Changed
- Fix Old Implementations of Line Drawing and Cleanup by @jc-luna in SimDynamX/SC_Platform#2981
- Core Generic Shapes Spawn Interface and Astrodynamics+Holographics Cleanup by @jc-luna in SimDynamX/SC_Platform#2946
Full Changelog: SimDynamX/SC_Platform@v0.40.0...v0.40.1