|
|
||
Frederic Barachant's BlogCommunity: JavaDesktop ArchivesInteractive splined animation: first examplePosted by pepe on March 02, 2008 at 09:45 PM | Permalink | Comments (4)
In a previous blog, Tim Bourdreau asked for the difference between splines project and java.awt.GeneralPath. Here i show some of the main reasons why generalPath could not be used:
Demo consists of a gear that can be thrown to the wall when pressing a button. Gear bounces on bottom of the zone then on the wall and bounces back. Wall position can be changed anytime (even when animation is running, which can be funny on some cases when the gear bounces two times on wall :) ) and you will see splines being adapted in realtime.
No javaone info here, rest your mind.Posted by pepe on May 13, 2007 at 03:18 AM | Permalink | Comments (0)Javaone is everywhere, looks like i will have to get there one time, just to know how it feels. Too bad i have to cross the ocean for this ( /me dreams of an european javaone... ). Here is a totally non J1 related post, for your minds to rest from that avalanche of posts, news, information of all kinds. I have been very silent for latest weeks, due to huge lack of free time. Nevertheless, there are things being prepared within the rare bits of free time i can gather and when my day job gives me an occasion to work on domains that crosses my night job ones. I am investigating an XML file type to save timelines. This will permit the creation of an editor within netbeans to edit/save timelines in a codeless mean, all graphically. This XML will be read by a Timeline factory and give you the possibility to load different timelines with same root code. There are still things to solve with the links to swing (how do i define which JComponent of my swing program will be linked to my DisplayableActor? how will i know there are DisplayableActors to feed? What about listeners, ...) I am also thinking about making the XML read and compilation streamable, that is, like flash, some parts of the timeline could play without all media being loaded. For this feature, an asynchrounous feeder will be created, which will add actors and media to the timeline. I would like the timeline to be detached from the feeder concept, so maybe reference to the feeder will be a timeline-level variable. There are issues to resolve, as to i would not be able to limit count of feeders to one for the timeline, which could result in inconsistencies if multiple feeders are present and need to be accessed. But, maybe it would be interesting to have multiple feeders. Analysing the timeline flow and creating tree of feeders could optimize pre-loading to a great level. I am preparing the source code for release. It is not complete, needs documentation and cleaning, but it is now working enough and i am confident enough in it for people to read it. Debugging time related programs is very difficult. I did investigate in stoppable timers within jpda/jvmti, but it seems that there are not much people in that field. Once i have enough time, i will get in that deeper. I am preparing a serie of blogs with practical examples on uses of swash, which cannot easily be solved by other solutions around. This serie will be preceded by an entry where the spirit and inners of swash will be described. An article is being prepared too, but as you can imagine, it will still take some time before it is ready. Oh, and swash can be accessed here. Be sure to check its wiki too. If you have been reading down there, i love you. I mean it. swash: second milestone and new demoPosted by pepe on March 14, 2007 at 02:03 PM | Permalink | Comments (9)Wow, time flies. I started swash over one year ago and now the baby can walk. Not only it walks, but the second version of the webstart showcase makes it almost run. Oh, that was not one year full, i often took big breaks, but it is here. It finally came smoother than i expected, but still worse than it could have been in a perfect world. Before i really started talking about my project, i wanted it to be able to offer a wide enough range of functionalities, and over all, i wanted it to be able to theoratically compete with flash on the animation part, but also with the ability to perfectly integrate within swing. And it really came out in a great shape. Not only i can have an unlimited animations scheduled by a single thread, relatively simple and concise class count, but the layering system is globally extremely cool too. Next steps, besides adding xml timeline format and doing the netbeans editor will be pluggable non-mutable modifiers, svg support, image animation support, 3D support, sound, and more pixel filters and effects. I am pretty happy, i admit. Oh, not because of the step accomplished, but because of the ones to come. Now, it is time to make it display and animate better things than rotating bitmaps. Time to make useful things. Java on the desktop is getting better each day and my days are getting just as well... ... and that is just proportional to the shortness of my nights. | ||
|
|