All the following stuff is under this completely open license.
These sources consist four different parts:
– EvoTinyEngine
– Evo3d
– EvoTween
– SoG Demo
None of these are documented so I have created this little pdf to clarify the concept of demoengine used in this demo.
These libraries are rather easy to use. Here’s the HelloWorld of EvoTinyEngine:
engine = new TinyEngine(assets);
engine.addModifier(new ModifierPixels(assets, "pixel"), 0, 64);
engine.addModifier(new ModifierMandel(assets, "mandel"), 64, 256);
engine.addModifier(new ModifierBloom(assets, "bloom"), 256, 512);
addChild(engine);
engine.play();
You should have all the examples you need about other libraries in the SoG Demo zip. Here are few example lines about syntax’s.
// Only minus at the moment is that it only supports public variables.
new EvoTween(this, {value:1}, duration, Expo.easeInOut, delay, complete:Function, param:*);
// After the tween is over it is disposed and the Garbage Collector takes care of the rest.
Evo3d is powerful because of following solutions:
– It use linked list.
– It only z-sort meshes not polygons.
– The z-sort is based on Insertion Sorting. Slightly modified from Michael Baczynski‘s code.
– It uses the graphics.drawGraphicsData(graphicsData:Vector.IGraphicsData) method.
var camera:Camera = new Camera3D();
var renderer:RendererBitmapData = new RendererBitmapData(bitmapdata, null, 0×000000);
var engine3d:Engine3D = new Engine3D(renderer, camera);
var light:Light = engine3d.light;
var material:MaterialBitmap = new MaterialBitmap(frontTexture, backTexture);
var shading:ShadingPhong = new ShadingPhong(0xFFFFFF, 0, BlendMode.MULTIPLY)
var sphere:Sphere = new Sphere(material, 50, 16, 16, shading);
engine3d.addMesh(sphere);
engine3d.render();
I hope this will give you some ideas or help you some way. It would be awesome to see demo made with this stuff!
I’m going to develop these more, but won’t start an open svn since I do not want this stuff to become a burden for me. It could feel like a job and I all ready have one. I think I’ll post some more libraries after next demo. Don’t report any bugs if you find them.
I have few new ideas about approaches to get that 3d much faster, but now I need a break.

August 14th, 2009
7:50 am
thanks alot for this… really inspiring and reminds me of oldschool demoscene days :)
August 18th, 2009
6:10 am
[...] EvoFlash Severity Of Grey Sources [...]
December 23rd, 2009
11:17 am
on compile I have:
In evo_sog_src\lib\evo3d.swc(evo3d/object/piece/Face)
Error: Type was not found or was not a compile-time constant: Vector3D
March 2nd, 2010
1:02 pm
[...] Симппа придумал и реализовал библиотеку, которая предназначена для работы с эффектами. Чтобы понять суть её предназначения рассмотрим пример) Допустим, мне нужно запустить 53 эффекта подряд, сразу бросается в глаза многочисленные таймеры, т.к. время проигрывания каждого эффекта совсем разное + между эффектами может быть задержка + эффекты должны реагировать на высокий бит звука. Вот как раз эту проблему на 5+ решает данная библиотека. [...]