Two important classes for the Stardust 3D version, Oriented3D and Collide3D, are complete. As you can see, the Oriented3D class aligns the 3D objects directoin to their velocities, and the Collide3D class handles what it name suggests, 3D collision.
The source code for these two examples can be found along with th other examples at the Stardust example SVN repository.
Thursday, July 30, 2009
Wednesday, July 29, 2009
Here are two Stardust Papervision3D extendsion demos. This extension supports both billboard and DisplayObject3D particles.
The basic initializers and actions for 3D particles are complete, including Position3D, Velocity3D, Rotation3D, Omega3D, Move3D, Spin3D. Common initializers and actions also work on 3D particles, such as DeathLife, Alpha, Scale, AlphaCurve, and ScaleCurve. I'll go on finishing the other 3D initializers and actions, and working on the ZedBox extension. I'm also thinking about developing an ND3D extension.
There seems to be some memory leak issues with DisplayObject3D. Only the DisplayObject3D demo continues to eat up memory without releasing it.
Tuesday, July 28, 2009
View full image
It's my third Illustrator class, and this is what I drew in during the class. The teacher taught us how to use the mesh envelope distortion tool and wanted us to draw a flag in the wind. Other people used either Taiwan's or U.S.'s flag; I decided to do something different: I used the Bunny Republic's flag instead.
Not bad for a person who has only finished three classes, huh?
Monday, July 27, 2009
I've made two sneak peek examples for my currently working-in-progress particle engine, Stardust. The first one demonstrates the support for multiple particle sources as in Emitter, and the second one shows the new ScaleCurve class that essentially does what the initScale, finalScale, scaleGrowRange, and scaleDecayRange properties do in Emitter. Stardust completely encompasses all Emitter features, and supports a lot more.
Note that in both examples, there's that "Show XML" button. Click it and it'll show the complete XML representation of the system. Yes, Stardust supports generation of XML representation and parsing of existing XML data for reconstruction of a system. The XML workflow is much easier than in Emitter. I'm very happy about this.
Oh, and here's a good news: the 2D part of Stardust is now complete. Now I'll move on to the Papervision3D and ZedBox extensions.
Monday, July 20, 2009
I've decided to develop a whole new particle engine from scratch. It's called Stardust, and that's also the mascot bunny's name.
I've tried something different for my engine this time: designing a mascot character for it. I hope this will bring the users closer to the engine. Since there's a solid character image, people may visualize the character in mind when thinking of the engine.
So far the engine's 2D functionality is complete. Now I'm working on the XML and 3D parts. After the engine is finished and a full tutorial & docmentation are ready, I'll bring this engine into public.
The class structure of Stardust is inspired by Flint Particle System. Stardust is designed with flexibility in mind: users can easily extend Stardust to create a custom branch. I'll complete the 3D extension that supports ZedBox and Papervision3D before the initial release.
Monday, July 6, 2009
View Flash clip
We interns at Medialand are required to write internship diary everyday.
And we have to create some sort of "enter our blogs to view our diary" thing, so they can post it on their official blog.
Previously, Medialand had never had ActionScript programmer interns. Their links to interns' blogs were just static images. Being their first ActionScript intern, I decided make a difference: a Flash clip.
After some discussion, we decided to use the theme "Medialand intern rangers V.S. The Ray Monster". FYI, Ray is our CEO.
The subtitle below the logo says "You think we're just here for internship?"
The design interns did the character design, and I did the animation, special effects, and interaction programming.
By the way, the white radiation background was created using my particle engine Emitter.
Friday, July 3, 2009
I've got an ActionScript programmer internship at Medialand, which is a company mainly providing RIA solutions for internet promotion. The intern ship will last two month, from July 1st to August 31th. They require us interns to write an internship diary everyday on a blog, so I've created a new blog for that: CJ's Internship at Medialand.
Medialand is an easy workplace. People here are nice, and the environment is pretty comfy. I guess I'll have a nice time having internship here during my summer vacation.