:Release Notes: - Agents files for opencode and claude - Skills for opencode and claude - 3d models with medical organs - Some textures :Detailed Notes: - :Testing Performed: - :QA Notes: - Looks like shit :) :Issues Addressed: TG-1
53 lines
2.6 KiB
Markdown
53 lines
2.6 KiB
Markdown
# iMSTK — Notes for This Project
|
||
|
||
## What it is
|
||
|
||
[iMSTK](https://www.kitware.com/imstk-unity-2-0-released/) (Interactive Medical Simulation ToolKit) is a Kitware open-source C++ simulation toolkit with a Unity plugin (`iMSTK-Unity`). License: Apache 2.0.
|
||
|
||
It provides:
|
||
- Deformable body simulation (FEM, mass-spring, PBD)
|
||
- Rigid body dynamics
|
||
- Collision detection and response (tissue-tool, tissue-tissue)
|
||
- Geometric filters and mesh importers
|
||
- A Unity MonoBehaviour wrapper layer around the native C++ core
|
||
|
||
The latest version is iMSTK Unity 2.0 (based on iMSTK v7.0), available on the Unity Asset Store.
|
||
|
||
## Relevance to This Project
|
||
|
||
iMSTK is the main option for **physically-based tissue deformation** in Unity, which would directly enable:
|
||
|
||
- `workflow.md §5.2` — deformable tissue surface
|
||
- `workflow.md §6.2` — deformation parameter sweeps (`deformation_amplitude`, `deformation_frequency`)
|
||
- `workflow.md §17` — deformation failure mode category
|
||
|
||
The existing `SurgeryBenchmark/Shared/AnatomySlot` anchor is the natural insertion point for an iMSTK-driven deformable mesh.
|
||
|
||
## Hard Constraint: DISCONTINUED May 2, 2025
|
||
|
||
> "Support and development of iMSTK has been discontinued as of May 2, 2025."
|
||
|
||
The Unity Asset Store package still exists and the last release still works, but there will be no bug fixes, no Unity 6 compatibility updates, and no support. This is a project risk to document.
|
||
|
||
## Practical Trade-offs
|
||
|
||
| Aspect | Assessment |
|
||
|---|---|
|
||
| Deformation realism | High — FEM/PBD is physically grounded |
|
||
| Integration effort | Medium — native C++ plugin, adds a heavy dependency |
|
||
| Compatibility | Unity 2022 LTS supported by iMSTK-Unity 2.0; Unity 6 unknown |
|
||
| Off-limits script risk | `iMSTKSimulation` components would be **new** scripts, not touching off-limits ones |
|
||
| Discontinuation risk | No future fixes; pin the version and freeze |
|
||
| Alternative | Blend shapes + `BlendShaderController` (already in project) gives visual deformation without physics |
|
||
|
||
## Recommendation
|
||
|
||
Use iMSTK only if **physical contact accuracy** is required (e.g., tool-deforms-tissue ground-truth). For the Phase 2–4 benchmark scope (specular/smoke/occlusion sweeps), blend-shape deformation is sufficient and already present. If a deformation-specific sweep is added in Phase 7, revisit iMSTK with a frozen version pinned in `Packages/manifest.json`.
|
||
|
||
## Links
|
||
|
||
- [Unity Asset Store listing](https://assetstore.unity.com/packages/tools/physics/imstk-unity-233423)
|
||
- [iMSTK Unity 2.0 docs](https://imstk-unity.readthedocs.io/en/latest/)
|
||
- [Kitware announcement](https://www.kitware.com/imstk-unity-2-0-released/)
|
||
- [GitHub mirror](https://github.com/Kitware/iMSTK)
|