I'll give thought to the name. Can we press on?
What are you looking for in the way of technical description? The google code site has some thorough articles I've already written in the wiki, and the source code for what we have so far is freely available. I don't know what more I could say, unless you want me to elaborate on, or at least bullet point, some of Helix's key features. Actually I should do that anyway:
Keyframes hold objects and all of their properties. Thus a keyframe's contents can be different from one moment to the next, and even interpolate values across keyframes given the objects involved are consistent across keyframes. This reverse of the typical hierarchy in 3d animation software allows for much more intuitive and versatile animation. You can have unlimited objects in a single keyframe and every object is still individual with its own properties. The next keyframe can be entirely different.
Similar to symbols in Flash or compositions in After Effects, clips have their own timelines. You can have keyframes and tweens in these timelines just like the root stage. Thus you can create animations of infinite complexity in a clip and nest that entire animation as a single object onto the parent timeline, into a single keyframe. You can instantiate a clip into any amount of keyframes at any point in time. Given the way Helix works with its method of timeline and keyframes, this is more powerful than After Effects or any other software's similar implementations, which seldom exist.
Frames are only a reference. While keyframes align themselves to frames normally, you can place and move them freely, having animation between frames, or stretching/scaling animations. Clips can be set to decimal frame numbers or have slower playback rates with fully interpolated animation. While this is typical of software such as Blender, it isn't for Flash and some others like Anime Studio which are bound to integer frames, despite having interpolation.
Every property can be given expressions in its value input instead of only just plain numbers. After Effects has this power and it is invaluable for animation as far as I'm concerned. Helix will have very simple functions and a sort of object oriented method that can reference the properties in other objects. The whole topic on expressions will get very complicated so I won't bother right now.
Every library asset can be given preconfigured properties, so that they always instantiate with an initial set of properties. For example, for a clip's frame number you could write r(0_1) which will generate a number between 0 and 1. Thus every time the clip is instantiated it will have slightly variated animation offsets. The defaults given to a library asset will apply whenever the object is instantiated, be it manually from library to stage, or if generated from particle emitters or mods. This eliminates a huge amount of typical settings usually demanded by particle systems, especially because clip animation obsoletes "over life" things like color and alpha. The animation potentials are infinitely more complex and accessible.
If an object is a generic container for an asset, a mod is a generic container for an operation. Any mod can be applied to any object. The mod may modify the object's appearance (visual filters, geometry distoartion), the object's transforms (parenting, constraints), or other aspects such as sound effects. There is also the action mod, which allows specific things to be triggered based on simple conditions. For example, an object can be instantiated when a property is tested true, or an object can be removed or replaced upon a collision. Consider when objects are instantiated they use their defaults, which eliminates the need to set initial properties. The action mod can be greatly simplified given the way Helix works. You can reduce all actions to "Set Property", "Create Object", and "Remove Object". For example, playing a sound is nothing more than creating the sound object. Mods are part of object properties so they can belong in its defaults. Thus you could add a physics mod to an object's defaults and it will always spawn with running physics. This alone eliminates the need for the particle system to have physics settings and creates a more generalized connected system.
I've noticed in pretty much all software, sound features are horribly poor or barely exist. Flash is the one exception but even it is pretty lousy. Helix will have 3d sound objects just like a game engine/wysiwyg editor would. The sounds can be completely 2d or utilize its 3d transforms for volume and panning. All of its properties can be animated just like anything else. Sounds can even participate in clip objects, particle emitters, mods, etc.
This is a special tool Helix will have. It will allow rapid and bulk instantiation of objects from the library. You can select a library item, and the tile mapper can draw it into the stage. Can be placed by clicking, dragging, drawing lines or rectangles, etc. and all snapped to a grid or based on their bounding boxes, what have you. All of these objects can exist in a single keyframe but still be individually editable once placed. If we complete the transform mapper mod, this tool will obsolete the need for things such as foliage painting tools and the like.
So, these are the features that make Helix stand out. Helix will also be able to work with skeletal animation, vertex animation, handle materials and texturing, uv maps, lighting and shadows, all that stuff. The renderer will probably be hardware and have in-game graphics kind of quality, or a bit better at least. We are not shooting for advanced things such as raytracing and all it brings. Hopefully we can integrate with a third party renderer for that. The features I've described are all in theory right now of course but I do not see why it cannot work. That is why I'll continue to make videos to illustrate my point and Robert will continue to prototype these features in the program until they can be fully realized.
This post has been edited by Mr Lange: 11 March 2012 - 07:08 PM