Updated examples
I updated the examples with code for version 2 of Flint. I added a few more examples at the same time. I really believe version 2 is now better and just as stable as version 1 for 2D development. 3D is also very stable - I just need to finalise a few features before going to beta.Posted on 25 September 2008
More 3D Zones
I’ve added four new 3D zones to Flint.
- FrustrumZone - lets you use the camera frustrum as a zone. Particularly useful for removing particles when they leave the view.
- ParallelogramZone - creates a 2D zone in 3D space. the zone has four sides. If the sides are at right angles, the zone is rectangular.
- BitmapDataZone - creates a zone from a BitmapData object. Any points in the image with an alpha greater than 0 are points in the zone. the image may be stretched and skewed when creating the zone.
- GreyscaleZone - creates a zone from a BitmapData object. Black points in the image are excluded from the zone. Other points are in the zone with a weighting proportional to their luminosity.
I also optimized the Collide actions, approximately doubling their speed.
Posted on 22 September 2008
2.0 Alpha 2 released
I just uploaded version 2.0 alpha 2 to google code. The main change from alpha 1 is the renderers for Away3D and Papervision3D, plus some minor changes and fixes. You can get it form the downloads section or via SVN.Posted on 17 September 2008
Papervision pixel renderer
I added a pixel renderer for papaervision this afternoon. It uses Papervision’s effects layer with a Pixels object.
In doing so, I found a bug in Papervision. The code doesn’t work without the bug fix, in as much as removing one particle removes all particles unless you fix the bug in your copy of Papervision. The bug report and fix are here.
Posted on 16 September 2008
Improved Papervision3D rendering
I added some improvements to the papervision3D rendering to the SVN repository this morning. Rotation now works on DisplayObject3D particles, the materials are managed in a similar way to the Away3D material management, and various other changes too.
I’ll update the docs and get an Alpha 2 out soon.
Posted on 15 September 2008
More Away3D and Papervision3D renderer development
Today I added to the Away3D renderer implementation. It will now render particles using an Away3D Object3D or a Flash DisplayObject. In the later case, an Away3D Billboard is used, in the form of a MovieClipSprite. I also started work on Papervision3D renderers, with two basic renderers. One uses Papervision’s DisplayObject3D type for the particles, and the other uses Papervision’s Particle type.Posted on 8 September 2008
Away3D renderers started
I was planning to spend a significant amount of time on Away3D and Papervision3D renderers this week, but unfortunately work got in the way of that. I have, however, just uploaded a simple Away3D renderer and a very basic example to test it. I only had an hour to work on this so it’s very crude at the moment. I’ll hopefully get some more time next week to work on it and other renderers.
Posted on 5 September 2008
More physics
Today, I added some key features for improving the physics in Flint. Primary among these is the addition of mass and radius properties to the particle class.
The mass property represents the mass of the particle. By default, particles have a mass of 1, meaning all behaviours remain unchanged unless you modify the particle’s mass. The mass is used in the collide, friction, drag, bounding box and gravity actions.
The radius property represents the size of the particle when calculating collisions. In collisions, all particles are treated as circles (in 2D) or spheres (in 3D). The radius is used in the collide and bounding box actions.
In addition, the mass and radius are used to calculate the moment of inertia of the particle, which affects rotational friction and rotational drag.
To integrate the scaling into this, the Scale action and ScaleInit behaviours have been split into ScaleImage and ScaleAll actions and ScaleImageInit and ScaleAllInit initializers. The ScaleImage actions and initializers just alter the scale property of the particle (and hence the image size), while the ScaleAll actions and initializers alter the radius and mass as well.
I also added initializers and actions for modifying the mass and collision radius of the particle.
Finally, I updated the examples to work with these changes, and added an example that simulates brownian motion in both 2D and 3D.
Posted on 2 September 2008
Developer diary
I’ve decided to make this blog more like a developer diary than an announcements page - the blog had become a double to the announcements category in the forum. Also, by making this a developer diary I can keep you all updated on progress with new features and what has been checked into the code repository. Expect the first diary entry very soon.
Posted on 2 September 2008
Version 2.0 alpha released
In brief gaps between work I’m making steady progress on 2.0. It’s pretty stable and working well. 2D is probably nearly as stable as 1.0.4, and has some new features that improve on the 1.0.4 version. 3D is working well with Flint’s own renderers. I hope to get initial versions of the Papervision3d and Away3d renderers out soon. The source includes a number of examples to show how it works, along with the usual Asdoc documentation.
I’ve added the source code, documentation and examples to the downloads.
If you’re wondering whether to use this version in a project, much of it is already very stable, and I’m aiming for a final release in a month’s time.
SVN changes
This morning I moved the 2.0 code from the branch into trunk. Version 1.0.4 has been tagged, so is still available via SVN from the tags directory. I don’t expect to release any new 1.0.x versions.
How you can help
If you have time, please try this version out. I need feedback on any bugs you find so I can fix them now rather than later. Also, I need more examples showing what this version can do, so if you make an interesting example and want to share it, please let me know so I can include it in the distribution (with credit to you of course).
Posted on 1 September 2008
