Dynamic Geometry is any geometry object that is set to static=false or {blank}. Dynamic objects can move or be moved, they will respond to forcefields (including gravity), they will react when Goo Balls or other geometry hits them. In short they behave as if they were real solid objects in your level.
Important Note: All Dynamic objects require a mass
If you set static=false you must enter a value for the mass of the object.
Despite what you might remember less than half the original World of Goo levels contained Dynamic Geometry.
If you're looking for information on how to create any of the following...
- spinning cogs
- wheels that will pop a Beauty Ball
- windmills that kills Goo Balls
- the wobbly head in "Chain"
- the lifting wheels from "Third Wheel"
then you should probably read this instead - Making things Spin!
There are a number of categories of Dynamic Geometry.
Free Standing
These are objects which are not fixed to anything, and are free to move or fall as the physics engine dictates.
Examples of Free Standing Objects
- The head block in "Burning Man"
- The Bomb Carriage in "Upper Shaft"
- All those explodable blocks in "Deliverance"
Free standing objects are the simplest to set up. Once you have set the object to static=false and given it mass.. you're done. Although you'll probably want to apply an image to it, so that the player can see it. see [Applying Images to Geometry]
Hinged
These objects can move, but they are constrained to rotating about a point, a hinge. The hinge can be a fixed point or can be attached to another dynamic object.
Examples of simple objects using fixed position hinges
- The platform in "Server Farm" - View Image
- The liftable bars/gates in "Flying Machine" - View Image
To create an object like this, set it to be static=false and give it a mass, then add a hinge object to the level. Move the hinge into the correct position and set its body1 attribute to the id of the geometry object.
[Full details on hinge and its attributes]
Examples of more complex hinged objects
- The Red Carpet Extend-o-matic machine in "Red Carpet" - View Image
- The machine/robot/thing at the bottom of "Deliverence" - View Image
Notes on Hinged objects
- When two dynamic objects are hinged together, they will not collide with each other.
However they will still collide with other geometry objects and Goo Balls.
And if A is hinged with B, and B is also hinged with C.. A and C can still collide. In the case of the Deliverance "robot".. the fingers could collide with the head, because they are not directly connected by a hinge. - Hinges cannot be attached to compositegeom child objects.
If you attempt to attach a hinge to a compositegeom child, the connection will be ignored, and the hinge will be in a fixed position. To hinge a compositegeom object you must attach the hinge to the parent object. - Hinges cannot be attached to Static Geometry
Again, if you try the connection will be ignored and the hinge will be a fixed position. This will not affect the dynamic object directly, since it was being hinged to a fixed body anyway. However, since the 2 objects are not connected by a hinge, they will collide as normal. - Bug in the game: Timebugs vs 2 body hinges
If you have a hinge which connects 2 dynamic bodies, then its position is not correctly reset when a timebug is popped, this can cause some very undesirable effects. Fixed position hinges are fine, but hinges that move get badly messed up.
- Printer-friendly version
- Login to post comments