The SPRING surgical simulation platform provides may options. The tutorials and examples on this page will help you get started using SPRING.
First, try this set of instructions to get started.
More examples and tutorials to come here...
SPRING's physical simulation provides a framework for objects, connections to 3-D inputs and haptic devices, the phyics for deformable objects, and collision detection and resolution mechanisms. So what else would you need?
Defining a set of objects, tools, and the environment for a student to manipulate and explore is a bit like the computer game MYST, in which the user is in a world to explore, but without explicit goals, steps in solving problems, signposts, or evaluation of how the user is doing.
However, most educational simulations define a series of tasks, problems, or challenges for the student to solve in a particular order, as well as instructions for each step. They often offer hints along the way, as well as evaluation and statistics of a learner's performance.
From the developer's point of view, this means that a set of states are defined, and the simulation keeps track of the current state, and continually evaluates the simulation's objects in order to detect conditions that change from one state to another. Since the simulation loop in SPRING is continually running a set of tasks, such as reading the position of the input sensors, checking for collisions, and applying the behavior of tools to objects, it's natural to define specific points in SPRING's processing loop where the programmer can most easily add the appropriate interactions with the universe of objects.
To make it easier for a developer more structure in SPRING, we have defined a basic class called gameBase, which allows a user to easily add interactions with SPRING's objects.