Releases: SimDynamX/SpaceTeamsPRO
Platform Release v0.51.3
This new Space Teams PRO version has been released and is available for download from Launchpad or as a .zip from 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.51.0:
- New Demo: Solar System Tour
- Fix possible issue with user release Python API not working due to DLL load issue
- Fix saving of FieldEffects in sims
Key Known Issues
Also look at https://github.com/SimDynamX/SpaceTeamsPRO/issues to see all publicly reported issues and their current status.
- Launchpad
Updatefunction may not work properly. Can instead install new version and delete old version.- Please let us know about other issues with using Launchpad!
- Python API docs missing named sub-modules #103
- Planet shadows disappear for single frames when leaving planet surface #179
- User Release C++ compile might not work due to missing Raytracing.h header file in release
Automated Git Changelog:
What's Changed
- various small vr fixes / re-enabling grabbing and releasing VR interactables by @tnweidner1216 in SimDynamX/SC_Platform#3271
- IfHas_GetParamArray, Eridani Atmosphere Rendering, FieldEffect Saving in Sims, MODT Surface Traverse Updates by @AlexSein98 in SimDynamX/SC_Platform#3274
- SST final changes by @connorjak in SimDynamX/SC_Platform#3277
Full Changelog: SimDynamX/SC_Platform@v0.51.0...v0.51.3
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.51.0
This new Space Teams PRO version has been released and is available for download from Launchpad or as a .zip from 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.50.0:
General
- Added Self-Service GMRAD
DataPreprocessing/run_Preprocess.exe- Documentation to follow in wiki.
- Rework UIP2D_Surface and UIPVR_Surface pawn movement functionality
- New
SimGlobals::GetInstallRoot()gets installation root directory. Use this withpath_utils::AssetPathToReal(type, asset_path, root_dir)function. - Fix crash on
AddEntity()during sim - Fix several GMRAD raytracing edge cases (computational, not graphics)
- Fix some Python API issues, especially with
st.framesfunctions - Some performance improvements for sims with many (50+) entities
Visualizers
- Fix placement of Curve entities
- Generated sequence of points in line should now reach final point for unclosed sets of points, instead of skipping last index.
PhysEffects, FieldEffects, and Dynamics
- Continued progress on
Unreal_ChaosPropagator- Applies mass from entity parameters to entity
- Gravity FieldEffect not yet applied
- No _Override PhysEffects applied yet
- May have unintended behavior during sim loading
setResidentFrame_ZeroState()function for setting Resident Frame (Parent Frame) while also zeroing-out state, instead ofsetResidentFrame()which preserves the placement of the entity by also transforming location, velocity, etc.
Key Known Issues
Also look at https://github.com/SimDynamX/SpaceTeamsPRO/issues to see all publicly reported issues and their current status.
- Launchpad
Updatefunction may not work properly. Can instead install new version and delete old version.- Please let us know about other issues with using Launchpad!
- Python API docs missing named sub-modules #103
- Planet shadows disappear for single frames when leaving planet surface #179
- User Release C++ compile might not work due to missing Raytracing.h header file in release
Automated Git Changelog:
What's Changed
- WIP Move Task Editor, initial Chaos Propagator, v0.50 changes by @connorjak in SimDynamX/SC_Platform#3249
- Task sequencer classes and overrides by @connorjak in SimDynamX/SC_Platform#3251
- fixed stupid mistakes by @MCS9000 in SimDynamX/SC_Platform#3252
- Latest MODT decision analysis plotting tool changes by @Henrynaut in SimDynamX/SC_Platform#3246
- UnrealChaos Physics Updates, Relativistic Polyhedral NESC Check-Cases by @AlexSein98 in SimDynamX/SC_Platform#3250
- Vr pocket inventory + Solar system tour by @tnweidner1216 in SimDynamX/SC_Platform#3255
- Fix DrawCurve rotation, more tasks UI by @connorjak in SimDynamX/SC_Platform#3257
- Task sequencer task runner structs by @connorjak in SimDynamX/SC_Platform#3260
- Horizon Matching packaging continued, fixing issues as we go for Task UI by @connorjak in SimDynamX/SC_Platform#3256
- Fix Visualizer Bounding Boxes by @jc-luna in SimDynamX/SC_Platform#3186
- Fix AddEntity crash, WIP Task Runner wrap up by @connorjak in SimDynamX/SC_Platform#3262
- Eridani Updates, PyBind and Raytracing Fixes, Hoverpad 3D Model, and Lighting Analysis System by @AlexSein98 in SimDynamX/SC_Platform#3263
- HLS manual control, fix dev debug print on param maps by @connorjak in SimDynamX/SC_Platform#3264
- MODT Thermal Traverse progress, fix Tasks bug by @connorjak in SimDynamX/SC_Platform#3267
- Vr sse fixes june2026 by @tnweidner1216 in SimDynamX/SC_Platform#3266
- Eridani fixes, SST waypoints by @connorjak in SimDynamX/SC_Platform#3269
- Python API improvements, Solar System Tour progress by @connorjak in SimDynamX/SC_Platform#3270
Full Changelog: SimDynamX/SC_Platform@v0.50.0...v0.51.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.50.0
This new Space Teams PRO version has been released and is available for download from Launchpad 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.49.0:
General
- Systems now do NOT
load()orinit()whenActive: false - Added Measure Gadget
- Click two points on the same planet to measure distance
- UI improvements
- Better Camera Control, Move and Rotate, and Entity Properties
- Text coloring for Double Vector param edit UI
- Default-not-expanded Parameters tree
- Many more minor changes
- New Sim Wizard allows clicking to select location on planet
- Subscribe/Response delegate functions now properly catch and report exceptions
- Corrected C++ debugging .natvis for a few types, especially timestamps
- Performance improvements
PhysEffects, FieldEffects, and Dynamics
- Fix PhysEffects crashes
- Completely replaced internal implementation
- FieldEffects now do NOT
load()whenActive: false - Mid-sim propagator change now somewhat stable feature
ST_Rigid_Bodypropagator now resamples ODE with correct time offset for RK4 integrator substeps- Partially implemented
Unreal_Chaospropagator- Gravity FieldEffect not yet applied
- No
_OverridePhysEffects applied yet - May have unintended behavior during sim loading
Planet Data
- Fixed minor projection inconsistency on some Earth datasets
- Still not yet using WGS84 Ellipsoid; approximated with spherical Earth. This is in active work though.
- Added
ProcPlanet::DataStorewritable/non-writable state to optimize parallel sampling of data. Use with.SetWritable(false).
Python API
- Fixed most of the issues with spaceteams python library stubs
- Fixed almost 100% of missing types in function signature
- IDE code completions and linting should be much better
- Correct formatting of docstrings
- Fixed
st.math.rad()andst.math.deg()not actually returning anything - Added some Planet Data python bindings
st.ProcPlanet.DataStoreobjectAddGeoBinLayer_uint8,AddGeoBinLayer_int16,AddGeoBinLayer_floatalong with existingAddGeoBinAltimetryLayer
- Completed bindings for Publish/Subscribe and Request/Response
Demos
- ISSLIVE now using attitude from telemetry as opposed to constant LVLH
Key Known Issues
Also look at https://github.com/SimDynamX/SpaceTeamsPRO/issues to see all publicly reported issues and their current status.
- Launchpad
Updatefunction may not work properly. Can instead install new version and delete old version.- Please let us know about other issues with using Launchpad!
- Python API docs missing named sub-modules #103
- Planet shadows disappear for single frames when leaving planet surface #179
- User Release C++ compile might not work due to missing Raytracing.h header file in release
Automated Git Changelog:
What's Changed
- Guidance physically realizable updates. by @WaylonLee in SimDynamX/SC_Platform#3197
- Extensive Python stubs fixes for better IDE usage by @connorjak in SimDynamX/SC_Platform#3206
- Fix PhysEffects Crashes, reprocess all Earth planet data, performance improvements, etc by @connorjak in SimDynamX/SC_Platform#3226
- Re-fix PhysEffects from Python, some widget standardization, etc by @connorjak in SimDynamX/SC_Platform#3229
- Various IMU and guidance and lander updates by @WaylonLee in SimDynamX/SC_Platform#3227
- ExpandableArea ParamMapTree by @connorjak in SimDynamX/SC_Platform#3230
- Various Eridani work by @connorjak in SimDynamX/SC_Platform#3201
- More UI improvements by @connorjak in SimDynamX/SC_Platform#3231
- Fix PhysEffect-from-params parsing on UE side, more UI refinements by @connorjak in SimDynamX/SC_Platform#3233
- MODT Task Sequencer Implement SurfaceMove State Machine by @MCS9000 in SimDynamX/SC_Platform#3241
- Lander updates with working landing nav. by @WaylonLee in SimDynamX/SC_Platform#3236
- Fix Alchemist and Test SimRunner Functionality by @Henrynaut in SimDynamX/SC_Platform#3235
- BP Planet tracing from GMRAD bisection, applied to New Sim Wizard by @connorjak in SimDynamX/SC_Platform#3242
- Active: False Systems / FieldEffects don't Load or Init, subscribe/respond delegates catch exceptions by @connorjak in SimDynamX/SC_Platform#3243
- Measure Tool, planet linetracing, writable/not mode on planet data by @connorjak in SimDynamX/SC_Platform#3245
- GoTo task editor by @connorjak in SimDynamX/SC_Platform#3247
- Horizon matching packaging progress by @connorjak in SimDynamX/SC_Platform#3248
- WIP Move Task Editor, initial Chaos Propagator, v0.50 changes by @connorjak in SimDynamX/SC_Platform#3249
Full Changelog: SimDynamX/SC_Platform@v0.49.0...v0.50.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.49.0
This new Space Teams PRO version has been released and is available for download from Launchpad or as a .zip from 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.48.0:
- "Normal" Python output now is also routed to Python System log files
- This has the following implications:
- Can now see python errors that aren't caught by the exception handler we have set up in stp code
- These "uncaught" python errors don't show up in the ICrashed message that gets sent out and informs things like the Unreal error popup, but at least they are no longer silent! The error popup will instead tell you where to look for the log that probably has the error.
- Use normal python printing instead of logger, if you so choose
- Won't be synchronized with st logger so the text may interleave
- Use libraries that rely on typical output printing for output or error handling
- Fix several issues with user release C++ CMake and compile
- "Waiting for remotes to connect/load/sync/init" warning messages now paired with messages when that phase is completed.
- Fix recently introduced bug that broke Python API
BeforeSync/BeforeInit
Key Known Issues
Also look at https://github.com/SimDynamX/SpaceTeamsPRO/issues to see all publicly reported issues and their current status.
- Launchpad
Updatefunction may not work properly. Can instead install new version and delete old version.- Please let us know about other issues with using Launchpad!
- Python API docs missing named sub-modules #103
- Planet shadows disappear for single frames when leaving planet surface #179
Automated Git Changelog:
What's Changed
- Python stdout and stderr always output to log file alongside logger messages, fix crash detect, etc by @connorjak in SimDynamX/SC_Platform#3203
Full Changelog: SimDynamX/SC_Platform@v0.48.0...v0.49.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.48.0
This new Space Teams PRO version has been released and is available for download from Launchpad or as a .zip from 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.47.1:
- Fix "Teleportation" glitch in entity propagation /issues/110
- As it turns out, this was caused by a missing synchronization step where getting param value and param last-modified time simultaneously was important. Fixed now, and should solve a whole class of very intermittent bugs.
- Fix ST_Rigid_Body propagator handling of timescale changes
- Now, if an update delta time is negative (as would happen if timescale was externally decreased), the propagator does nothing for that time step and lets extrapolation handle the state in between.
- Added Billboarded Visualizations for Text and Images
- Documentation WIP
- Fix error in FirstTimeSetup.bat with space in Windows username
- Docstring improvements for pybinded functions
Key Known Issues
Also look at https://github.com/SimDynamX/SpaceTeamsPRO/issues to see all publicly reported issues and their current status.
- Launchpad
Updatefunction may not work properly. Can instead install new version and delete old version.- Please let us know about other issues with using Launchpad!
- Python API docs missing named sub-modules #103
- Planet shadows disappear for single frames when leaving planet surface #179
Automated Git Changelog:
What's Changed
- Platform Release v0.46.1 by @connorjak in SimDynamX/SC_Platform#3144
- Pybind split module compile into multiple files by @connorjak in SimDynamX/SC_Platform#3184
- Pybind compile segmented for speed, Document several pybind functions, MODT MVP1 UI continued by @connorjak in SimDynamX/SC_Platform#3187
- Support space in username in FirstTimeSetup by @connorjak in SimDynamX/SC_Platform#3190
- Fix eigen pybind, Modt more UI by @connorjak in SimDynamX/SC_Platform#3193
- Fix Eigen Pybind, Fix Propagation Jumps by @connorjak in SimDynamX/SC_Platform#3188
- Simple Billboard Visualizations by @jc-luna in SimDynamX/SC_Platform#3134
- Continued Horizon Matching packaging by @connorjak in SimDynamX/SC_Platform#3194
- Fix teleport for real this time, continued param sync changes by @connorjak in SimDynamX/SC_Platform#3195
Full Changelog: SimDynamX/SC_Platform@v0.47.1...v0.48.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.47.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.46.2:
General
- Fixed Adding/Setting ParamArray of EntityRef
- Probable fix for /issues/167
- VR Tracking Recenter added to VR universal menu (press in both thumbsticks)
GMRAD
- Flat-screen UI now has toggles for Geodetic vs Geographic and Decimal vs Degrees-Minutes-Seconds
- Geographic: assuming the planet is a sphere, use basic trigonometry to compute latitude, longitude, altitude
- Geodetic: Use an ellipsoid with a separate equatorial and polar radius as the basis for latitude, longitude, and altitude
- NOTE: GMRAD Earth has this distinction programmed into the UI, but the actual shape of the planet has not yet been
- Fix several Earth data details
- Fix global altimetry dataset 26m vertical offset
- Fix Color and Emissive georeferencing (horizontal alignment)
Core C++ Code
- Completely rework Compute_Server source directory organization
- source files now split into
/spaceteamsand/serverfolders/spaceteamsholds most of the "Core API" functionality, whereas/serverholds files that are specific to how C++ Systems are defined and used.
- Within
/spaceteams, many C++ files are now sorted into folders for their respective namespaces, which mirror the Python namespaces- One notable exception is the
Paramsfolder for Parameter code
- One notable exception is the
- source files now split into
Python API
- Fix
Eigen::Quaterniond-using functions such asmath.DCM_to_QuatandPhysEffect.setQuaternionto use 4d vectors instead- Use numpy arrays in
x,y,z,worder to pass in a quaternion - Will eventually have better support for a specific Quaternion type such as
numpy-quaternion
- Use numpy arrays in
- FieldEffects now possible to sample from Python Systems
- Added
SampleScalarFieldandSampleVectorFieldFieldEffect functions
- Added
st.timestampobject conversions.as_datetime()and.from_datetime()fixed- See details in /issues/185
- Fixed stubgen /issues/186
- Added
st.math.optimalandst.math.optimal.conelibraries- Optimization and Optimal Control utility functions and solvers
- LQR, SQP, SDR, SOCP
Backend changes
- Full Linux compatibility besides Unreal graphics, in a developer test condition.
- Reach out to us if you would like to try out the Linux version.
- vcpkg dependencies updated
- Enable AVX2 instruction set in C++ compile
Key Known Issues
Also look at https://github.com/SimDynamX/SpaceTeamsPRO/issues to see all publicly reported issues and their current status.
- Launchpad
Updatefunction may not work properly. Can instead install new version and delete old version. - Python API docs missing named sub-modules #103
- Planet shadows disappear for single frames when leaving planet surface #179
SimGlobals::DoesResponderExist()is unreliable.
Automated Git Changelog:
What's Changed
- Compute Server Linux Compatibility by @jc-luna in SimDynamX/SC_Platform#3110
- Ellipsoidal GMRAD precursor changes, SLS mobile launcher, Eridani updates by @connorjak in SimDynamX/SC_Platform#3154
- Fix ParamArray of EntityRef, fix other ParamArray problems, time sync test code by @connorjak in SimDynamX/SC_Platform#3157
- Pybind Vector4d instead of Quaterniond by @connorjak in SimDynamX/SC_Platform#3158
- Small fixes into Core_Dev by @connorjak in SimDynamX/SC_Platform#3159
- Lander updates and packaging by @WaylonLee in SimDynamX/SC_Platform#3151
- vcpkg to March 18th Release by @jc-luna in SimDynamX/SC_Platform#3152
- Better SIMD mode enabled on Compute_Server by @connorjak in SimDynamX/SC_Platform#3150
- Split core source files into /spaceteams and /server by @connorjak in SimDynamX/SC_Platform#3160
- Completely rework Compute_Server source directory organization by @connorjak in SimDynamX/SC_Platform#3161
- Pybind optimal & cone, eridani changes by @connorjak in SimDynamX/SC_Platform#3162
- Delegate More Python API Setup to Python Script by @jc-luna in SimDynamX/SC_Platform#3165
- Fix st_python naming, disable old OptimalControl systems, minor Eridani update by @AlexSein98 in SimDynamX/SC_Platform#3167
- vr orientation reset by @tnweidner1216 in SimDynamX/SC_Platform#3168
- Packaging horizon match by @connorjak in SimDynamX/SC_Platform#3164
- Stubgen working again on Windows by @connorjak in SimDynamX/SC_Platform#3173
- Fix Various Versioning Things Before 0.47.0 by @jc-luna in SimDynamX/SC_Platform#3174
- EridaniOffline renderer (from camera parameters), optimal control pybind docs, pybind FieldEffect sampling, and no auto-exit for setup_st_python by @AlexSein98 in SimDynamX/SC_Platform#3180
- Fix release build 0.47 by @connorjak in SimDynamX/SC_Platform#3181
- Continue planet fixes by @connorjak in SimDynamX/SC_Platform#3182
Full Changelog: SimDynamX/SC_Platform@v0.46.2...v0.47.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.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