Wednesday, January 4, 2012

Eye candy sneak peek...

Sigh... why do I keep taking on extra side projects when I've got more than enough on my plate as it is...

After setting up a local Git repository to work on another Blender-related project (hopefully if it gets officially greenlit, I'll have more news to post about this later this month, otherwise, it'll go back to my pool of "ideas to work on later"), the ease of setting up the setup prompted me to get curious about trying to reboot an old favourite from the dead of unmergable SVN branches.

In short: it was not an easy process. The version seen in the screenshot above in many ways feels flakier than the old version when I stopped work on it nearly 2 years ago. Partly that comes with trying to manually reapply everything (*) onto a trunk-based working copy, and get that working again.

(*) Well, perhaps it was not always that bad in every case. For some files, I just took the old versions and dumped them in the new repository, using Git's meld/stage changes line-by-line tool to pick and choose which parts to keep, and which were just merge conflicts. Others though I ended up having to dig out the code and manually reapply, since the signal-to-noise ratio in those cases was far too high.

Needless to say, dealing with a codebase based on 2 year old code (some of which changed midway through the original coding period but did not get updated then due to SVN's merge troubles, and other parts where there has been heavy traffic in the years passed) is not an easy process. It took the better part of today to get this to the state shown here (perhaps a good 6-8 hours work).

Anyways, I guess what everyone is most interested in is:
1) When can we expect to be able to play with this?
2) What are the plans moving forwards with this?

My current plans are to stabilise this code base up to the levels at the end of the SoC period (one notable problem atm is trying to get it to load files from that era in working order, and/or to not crash when fiddling around with that stuff), but also to check on a few other simple things around the edges related to basic integration stuff.

At that point, my plan is to release/push this branch on to Gitorious, for the community to play with and tinker with. Hopefully this will also be a nice chance for me to fully try out the "remote" part of working with DVCS's, which sometimes feels like a somewhat dangerous and tricky area.

Due to two other official project commitments until the end of the summer with the university, I'm not likely to have time (or energy left) to do much more actual hacking on this after this public release, though I'll try to keep it up to sync with trunk updates.


  1. I don't get what the physics in picture is supposed to be doing - do you have a video or description? I think that once I ( and others? ) understand the goal, I'll better be able to give feedback on your next post. But since I am here, my .02 is that I think the demo videos from Phymec look pretty cool and if we get some of that Bullet goodness in ( as I think he had some custom bullet stuff maybe? Maybe not ) and the nodes work for the particles it will be pretty cool.

  2. I didn't understand what was the topic untill I see what's written in the right panel. Your GSoC was very promising and I really hoped you'd keep working on this one day. I cross my fingers for this great feature.

  3. ALigorith, this would be awesome!
    If this would be bundled with the Phymec-tools ( )
    than this will push blender to another level!

    I coolected all related links to this tools on blenderartist:

    Here is the link to the democode of phymec :


    Ps.: I would be nice if you could make answers to your posts ;)