-
Notifications
You must be signed in to change notification settings - Fork 1
Python Developer Setup
Connor Jakubik edited this page Jan 30, 2024
·
18 revisions
| Simulation Development Workflow → Python Developer Setup |
|---|
Written by Connor Jakubik
Prerequisites:
NOTE: You really cannot skip any steps when going through this, besides the steps marked things like "ONLY IN PLATFORM VERSIONS _" when your version / OS does not apply. You need to read all of the bullet points as you are going through or you will encounter issues that make the process take longer.
The header lettering / numbering is not in a logical sequence in this page in particular; this is because we want to keep the same headers for the python setup, C++ setup, and SimDynamX internal developer setup docs.
-
2023/09/14Initial copy from internal developer documentation.
- For Windows:
- Enable long path lengths (Run terminal as admin) (https://learn.microsoft.com/en-us/windows/win32/fileio/maximum-file-path-limitation?tabs=powershell#enable-long-paths-in-windows-10-version-1607-and-later)
- (Optional) File Explorer
-
OneDrive / Backup & Sync with Google Drive
- Be very wary of whether these affect the directories you place Platform files in! Many developer projects are VERY MUCH NOT friendly with these file syncing programs, as they have lots of tiny files that get regenerated often, and many huge files that result in a slow sync. It's not useful to have a backup of Platform files or any other GitHub repo, because once you commit and push changes, they're already backed up in GitHub. It's often very difficult or tedious to remove these files from the sync'd data once they've been sync'd.
- You might want to disable these services in their entirety.
-
Text editor / IDE of your choice
- (For lightweight editing of config files, etc)
- I recommend Visual Studio Code https://code.visualstudio.com/
General process for adding or modifying Python behavior in a Space Teams simulation:
- Editing Python scripts that use the
SC_Compute_Servermodule to interface with either SimConfig / EntityConfig objects or Entities in a running simulation. - Modifying a Sim Config to:
- Declare a System Instance of
Pythontype that uses a particular python script as itsSourcepath. - Assign that System Instance's
Nametagto theSystemson any Entities it should "see"/affect.
- Declare a System Instance of
- Run that simulation through one of a number of methods.