Algodoo v1.6.0

Games. September 9, 2009 by CONFiG.
Algodoo v1.6.0
Algodoo v1.6.0 (by Algoryx Simulation) | 20.39 MB

Long awaited, following the immense popularity of Emil Ernerfeldt's Phun 2D Physics Sandbox, we proudly present Algodoo!
Algodoo is a 2D-simulation environment for creating interactive scenes in a playful, cartoony manner, making use of the physics that we use to explain our real world. Algodoo is designed to encourage young people’s own creativity, ability and motivation to construct knowledge. The synergy of science and art makes Algodoo as educational as it is entertaining. Algodoo applies a constructionistic learning paradigm - learning by designing, constructing and exploring physical systems.
Algodoo is optimized for the Intel-powered convertible classmate PC. It utilizes the webcam to create physical models from live photos, the touch screen and digital pen input for drawing objects, and the accelerometer for virtual experiments and very direct interaction with the physical simulation. Young kids can use Algodoo for drawing and the physics make their drawings come to life. From this they can learn fundamental things about physics such as motion, forces, mass and density. Older kids can construct virtual experiments that illustrate the fundamental laws of physics such as conservation of energy and momentum. They can also build advanced and innovative machines or create an animation to tell a story.

Simulations are created using simple drawing tools and the user can interact with the simulation by click, drag, tilt and shake. Color traces, force and velocity vectors can be used to enhance visualization. Algodoo comes with models for rigid bodies, fluids, chains, gears, gravity, contacts, friction, restitution, springs, hinges, lock, motors, laser rays and optics, and utilizes novel simulation technologies and high performance numerical methods developed in the professional simulation products of Algoryx Simulation and based on academic research at Umeå university.

Algodoo is derived from Algoryx' precursor product Phun, which was made freely available for non-commercial use during the beta testing period. Phun has been a tremendous success and has generated 1.3 million downloads, over 13.000 user provided scenes, and thousands of entertaining video clips on YouTube. Among its users are kids, students, animators, teachers and science centers. The concept is off-spring from research at Umeå University, where Emil Ernerfeldt developed the first version in his MSc project at the Department of Computing Science, supervised by Kenneth Bodin at the High Performance Computing Center North.

“I wanted to create an application that brings out the creativity in people, and where anyone can implement their ideas quickly and easily,” says Emil Ernerfeldt, now lead programmer of Phun and Algodoo at Algoryx.

“A dream come true is a tool that builds upon children’s own creativity, ability and motivation to learn. What we perhaps didn’t expect was that Algodoo also would bring out the child in all the rest of us! The Intel-powered classmate PC is a very exciting platform for us to work on, both for its ruggedness and its performance and features, but even more for its business model. We believe the Intel-powered classmate PC can facilitate development of new applications in education, just like the impact the game consoles has for the entertainment sphere. This creates a new exciting market, and in the end this is very beneficial for education,” says Kenneth Bodin, CEO and co-founder of Algoryx.

“We are excited to see Algoryx utilizing hardware features of the Intel-powered convertible classmate PC design, such as the camera, touch screen and accelerometer, to make learning physics fun. Intel works with Algoryx through the Intel® Learning Series, an initiative that supports developers in designing education specific applications for the Intel-powered classmate PC. Algodoo is a great example of how members of the Intel Learning Series alliance can develop engaging and rewarding education experience for students using the Intel-powered classmate PC," says Eugene Hsu, Director of Ecosystem Enabling, Emerging Market Product Group at Intel.

Algodoo originates from "Phun 2D Physics Sandbox", which was created by Emil Ernerfeldt in his computing science MSc project at Umeå university.

• Functionality: create and edit scenes using simple drawing tools, save and load scenes, start and stop simulation, interact with simulation by click, drag, tilt and shake. Add color traces, force and velocity vectors for enhanced visualization.
• Physics: rigid bodies, fluids, chains, gears, gravity, contacts, friction, restitution, springs, hinges, lock, motors, light rays, optics.
• User community: Algodoo has a large and active community where you can exchange your created scenes and simulation videos. Among the users are youths, animators, teachers and science centers.
• Portal: The portal is a wiki and thus enables educators to efficiently exchange ideas, lectures and scenes.
• Methods: Algodoo is based on the latest technologies for interactive multiphysics simulation, including variational mechanical integrators and high performance numerical methods.

Full change log from Phun to Algodoo:

=== Algodoo 1.6.0 ===
New features:
* Lasers - they can refract, reflect and even cut
* Plots/graphs - explore everything from energy conservation to harmonic oscillators
* Web camera support - get real world objects into Algodoo easily
* Generation of geometry from semi-transparent textures
* Visualization of forces and velocities
* Grid, with optional snapping and custom number of axes (make squares as well as hexagons)
* Velocity menu - set precise velocities for selected objects
* Incompressible fluids - a far better fluid simulation using a completely novel method (switch to old behavior in the options menu)
* A texture tool to move, rotate and scale textures
* A startup check for updates (can be disabled in options)
* The ability to turn a circle into a protractor
* Support for the accelerometer of the Intel Powered Convertible Classmate PC

Changed behavior:
* Everything in Algodoo is now saved to the user home directory (e.g. My Documents/Algodoo on Windows). Nothing is ever written to the installation folder.
* Constrained Algodoo to one instance at the time. Opening a scene file will open it in the previous instance
* Changed spring behavior slightly to make it conserve energy better. The old behavior is available by setting legacyMode=0 in the script menu. This is done automatically for springs imported from old Phun scenes.
* Spring strength is now entered as standard spring constant (unit N/m)
* When scaling a geometry, any attachments are now kept on the same world coordinate
* The hinge tool can now separate glued geometries. This means that when used together with the brush tool, creating rag dolls etc is very fast.
* cut tool now deletes FixJoints
* Hinge motor is now unchecked if the user selects a key controller for it instead
* Made camera zoom resolution independent.
* Changed drag tool behavior: When failing to drag a static geometry, nothing will now happen
* Added limitation of only calling "onCollide" for one contact per geometry pair per time step
* Disabled water vaporization (re-enable with "SPH.vaporizeTime = 5")
* When moving a stretched hinge, the hinge will now connect at its center instead of at its old stretched coordinates
* Changed the pan button pan direction to correspond to "normal" mouse panning
* Undo:
** Changed undo behavior: when undoing with no previous redo, an extra snapshot will be added to the redo-list, so one can go back to the future.
** Several subsequent drags, moves and slider modifications are now combined into one undo
** Added smart enforcing of "App.maxUndo": low priority actions (like drag) are removed first from the undo list.
** When undoing, the position of the clouds are now also undone

UI changes:
* Better load scene menu:
** Added a full path text field
** Added a file filter
** Added the ability to sort file list by date
** Changed color of directories
* Added the ability to reset the Algodoo configuration (useful for when playing to much with scripting)
* Box text settings are now hidden if there is no box text
* Made simple mode even simpler (less buttons)
* Clicking twice on the "show widget objects" button (the eye) returns you to the old view
* Better alignment of digits in entity information widget.
* Fixed slightly nicer printing of floats
* Text editing: double click now selects a word while triple click selects an entire line in textboxes
* Added welcome text when running Algodoo the first time
* Sliders: if marked objects have different values, the sliders will now show the range of different values instead of "NaN".
* Added the ability to freeze water
* Improved entity information
* Changed some icons
* Added the ability to shift the selected collision group of selected objects
* GUI windows now fade out temporarily when using a tool in their vicinity
* Added translations of the simulation info
* Turned off the custom cursors per default (due to performance issues).
* Moved help and about buttons to the file menu
* Added scale tool labels showing the current scale factors
* Increased clickable area of button selector (hinge and laser control)

Visual changes:
* Added a fade in effect when loading a scene (eye candy)
* Made the default sky color brighter to better distinguish it from the water color
* Added better color cues to make it easier to spot what a hinge or spring is attach to
* Added cute clouds - similar to the 16-bit clouds. Turn off in background menu in advanced mode.
* Better looking borders
* The geometry border width is now limited by a fraction of the geometry area (controlled by App.maxBorderArea)
* Better looking polygons
* Selected objects now always have a white border round them, even if textured.

* Improved spring tool to connect to top two geometries (so you can now connect objects that fully covers each other)
* Added preview to polygon tool, and changed polygon tool to close polygons more often
* Improved spring tool to connect to top two geometries (so you can now connect objects that fully covers each other)
* Bound together color sliders: changing one updates others bound to the same object
* Added the ability to disband a tool by shaking the mouse violently. Set the sensitivity by App.GUI.toolGestureSensitivity. Turn off with App.GUI.toolGestures
* Solved some instances of deeply penetrating objects getting stuck inside each other
* Lowered Sim.targetPenetration to make most constraints more stiff
* Improved the Polygon-Circle collision detection code to get better normals and fewer contact points
* Slightly improved distance maps for small polygons and for long, thin polygons
* The English tool-tip will now be used when a tool-tip translation is missing
* Slightly improved gearification
* Added support for right-to-left languages (e.g. Arabic). See English translation file for details

Windows specific:
* Removed the ugly console window
* Algodoo will now restore to maximized window if it was running as such the last time
* Changed full screen mode to fake full screen mode to fix issues with touch-screens and other alternative input devices
* The installer will now prompt you to close Algodoo if it's running

* Added variable information (where available) when entering name of a variable in the console
* Added the ability to create conveyor belts through the script variable "materialVelocity" (experimental feautre)
* Added command System.regularScreenshots for taking a screenshot every N:th simulation step
* Added new Thyme meta function "eval": Example code: eval("bar:=1; foo:={bar=bar+1;}; foo*eval(\"foo\")");
* Added Thyme type conversion functions: math.toBool, math.toInt, math.toFloat and math.toString.
* Added console command App.forceVertexPolygonDrawing - set to true to get a more accurate, but slower, rendering of polygons. Will also save video memory.
* Removed the writing of Unlogged.txt

Bug fixes:
* Fixed a lot of problems regarding gluing and fixates
** Fixed a problem where objects that had never been explicitly glued would still still stick together if previously attached to it via fixates
** Fixed a bug that would cause problems when trying to loosen a group of geometries containing a plane
** Fixed an issue with incorrectly reconnected FixJoints after scaling, moving or cloning
** Fixed a bug concerning the transformation of FixJoints
** Fixed a problem where geometries glued together would sometimes come appart when moved/rotated/mirrored
** Fixed a problem where moving a geometry would strangely move fixates attached to it
** Fixed a problem where glued objects would not come loose if a geometry connecting them was removed
* Fixed a problem where Ctrl-C could stop working on windows
* Fixed a problem where a scene could fail to save but would not give an error message
* Fixed borders from growing while modifying a polygon with brush tool
* Fixed problems with the chain tool that caused it to attach to the wrong geometries
* Fixed unit of hinge impulse (Nm to Ns)
* Improved CSG, brush and cut tool
* Fixed a bug that would make water particles disappear on undo
* Fixed a problem where importing a Phunlet would affect old objects
* Fixed several bugs regarding the serialization of groups
* Made the background colors of the color sliders more accurate
* Fixed a bug that would sometimes allow transformed (moved/rotated) joints to attach to something new in the transformed group
* Fixed a bug that prevented very small polygons from being loaded or created
* Fixed a bug that would prevent files from being saved in subdirectories (i.e. saving to "foo/bar" will now save the file to "My Documents/Algodoo/scenes/foo/bar.phz")
* Fixed a bug that caused App.maxSPHSpawn to be ignored
* Fixed a bug that would sometimes incorrectly separate geometries upon undo
* Fixed hinges from jerking when modifying a polygon
* Fixed a graphics glitch concerning the borders of scaled polygons
* Fixed an issue with the undo/redo buttons
* Fixed a bug that regarding cloning of things with "onCollide":s
* Fixed a bug that would sometimes cause "onCollide" to be called for geometries that had been removed from the simulation during the same time step
* Collision detection:
** Solved several problems that caused instabilities in box-box contacts
** Fixed a small bug with the circle-circle collision detection (singularity issue with perfectly aligned centers)
* Cables:
** Fixed a problem with cables that caused attached objects to act jumpy
** Fixed a bug concerning cables that could cause hinged objects to rotate when they shouldn't
* Fixed a bug that caused drift in object positions and rotation when moving, rotating undoing or loading
* Fixed a rare problem with attraction between geometries of the same body
* Fixed a small energy glitch (source)
* Fixed a bug that could cause a crash when objects had a non-positive mass
* Fixed a bug that would cause objects of the same body to collide

* Serious optimization of core physics engine (almost twice as fast in some cases!)
* Added polygon contact reduction (will speed up any scene with many flat-sided polygons)
* Optimized broad-phase collision detection by a factor 2 (most noticeable when cloning or moving many objects, e.g. water)
* Optimized broad-phase for any scene containing lots of polygons
* Optimized scene loading
* Optimized Thyme parsing
* Optimized memory usage: undo snapshots now take up about 50% less RAM
* Optimized rendering with shaders by about 8x.
* Optimized moving and rotating objects slightly
* Many small optimizations


Download File

Here you can download files online. Unlimited access to all sources file with one click direct download link!
  • Featured link
  • [9-09-2009]
Download now Algodoo v1.6.0