Monday, March 24, 2008

Other Things

This is just to give a update on what i have been doing. Although it was not on the AoI fluids plugin. But it is not forgotten, and if i ever do abandon it, I will release a full source version. Remember I want this plugin too. Your feed back was read and will be reread, so its not wasted.

So what have i been doing. Well I been to New Zealand and back. I have got a contract in the wings that means I can stay in Austria for another 2 years (maybe I will learn some German?). I have noted my lack of ability to Get Things Done, found a book with that title and I am finding it really helps to, well get things done.

Last but not least I have migrated all my code from subversion to Git. Oh what a joy git is compared to cvs and svn.

Its interesting how I found out about Git. I started using CVS for everything in about 1995-7 (can't remember exactly as I cleaned and reset my repository in 2000). I was not that impressed. I could not do a lot of the things I wanted to like move files. Binarys was not well handled and some things were far slower than I thought they should be. I did try a merge from a branch once.... and only once...

Then I ended up working for some companies that used source safe. Now I hate working on windows at the best of time. Nothing personal, I just find that MS support and documentation is terrible compared to other companies I have worked with. But what the Hell was MS thinking with source safe? Surely they didn't use it in house? To make a bad tool worse, the company I was working with had very stupid polices regarding file locking.

To make a long story short, I fell in love with CVS because she was the prettiest girl at the party. Not because she was pretty.

I kept looking for a better way because there must be a better way. Hence I found subversion. I have now used it for about 3 years. The problem is that its not really a better way, but the same way. Combined with the tools in IDE's (eclipse mainly but netbeans as well) my repository kept getting into limbo states preventing commits. It was difficult to fix without a complicated rolling backup system. Further to that problem, which directly affected the fluid plugin, was that I would end up out of sync with home all the time (I had no internet).

It was the fluid plugin devlopment that got me thinking that my personal devlopment model was in fact distributed. It didn't take long to find git. Unfortunately the admin at work never would give me a time when he would install it at work. So i waited until our machines got upgraded which was last week. Now all my repositories have been transfered to git. I don't use IDE tools for version control anymore since they just don't work that well. But with git is does not matter because the checked out directory is clean.

So why Git? Here is my list.
  • Distributed development.
  • Fast, very very fast.
  • Merges work so branching becomes common. This means there is better history too.
  • Unix tool set.
  • Very good repository integrity checking. This is a big deal IMO.
  • Easy to use (edit) configuration file.
  • Frequent branching makes "frozen" release much easier to manage. Debugging on the frozen branch can be easily merged with the main devlopment trunk.
The is even some tools to import a subversion repository with history. So I still have a history back to 2000. In short, even if you are a solo developer I would still recommend Git first and distributed version control over everything else.

17 comments:

Anonymous said...

Good to see you back in buisness deltor!

Harald

Nik777 said...

Hi Bob,

I am really interested in your story. I gave up on CVS/SVN for similar reasons to you. I found Darcs then (not sure if git existed then) and haven't looked back (except with a smug grin). I read about git with interest about 2 years ago, and figured that it was probably meant for larger projects than AOI plugins.

Sounds like I should look at git in a bit more detail...

Hopefully we'll see some new code coming out of your git repository in the nearish future :o)

Cheers!
Nik

bob said...

Yes, i looked into darcs, but there seem to be not enough repository integrity cheeking. Also quite a few folks have had quite serious bug issues.

Everyone said they are better off than with CVS and its distributed so thats good.

But the level of support and devlopment that git has received has made it a hard tool to beat. Its only weakness is that windows is still really a no go.

I don't use windows for serious stuff so that does not matter.

just my 2c

Anonymous said...

Bob - this reminds me that it could be done with your plugin as well (in the future):

http://www.wire-frame.de/emma/Schokoguss.wmv

It´s redone after that - but with colors:
http://mpan3.homeip.net/blenderfluid

And now that the "day after tommorow is on tv again....
;)
Have a nice sunday evening.
Harald

bob said...

Thats the only way to get good looking fluids. Fine detail simulations. That dude spends days doing the fluid sim alone on the orginal.

Hopefully adaptive partical sizes will make the problem more manageable.

Anonymous said...

Hi Bob,

I just wanted to ask if there is progress with the plugin - hope you don´t mind or feel pushed.

Greetings
Harald

bob said...

Unfortunately not.

I have been rather busy keeping my job. Also I have family staying for the next 2 months and will be taking some holidays.

Please by all means, apply pressure. I took the silence to mean that not that many folk are using/want to use it.

Anonymous said...

>>Please by all means, apply pressure.

Hydrodynamic pressure if you want that! :)

I like playing with the simulation tool - though I must admit I had a quad core PC that I gave back after 14 days, and since then I´m back on my old athlon. This is only half the fun. I do hope that it pays to get a core duo or quad - doesn´t matter if AMD or Intel - in terms of fluids - for pure rendering the quadcore is/was fun with AoI.

So I do hope to see a "summer of code" by you - with features like multicore support and maybe those "objects made of water" which is nice - because you don´t need to fill those things up before.
(I loose often more water than I get in - which depends on the time step if I remember the manual right)

Greetings to vienna
Harald

TroY said...

> I took the silence to mean that not that many folk are using/want to use it.

D'oh! This isn't the reason why I, personally, was silent. However, I can understand you. :/ "No bothering" could be taken as "no interest".

Ok, if you'd like some pressure to be applied, I'll do so. :D I really like your plugin so far and I'd really like to see further development. I agree with Harald (as he said many times before) that physics are a huge enhancement for AoI.

I'm afraid that the current plugin is still a bit too complicated for most users - and so they prolly lose interest (and self-confidence ;)) pretty fast.

The reason why I haven't done much fluid images/animations in the past is that it really takes a long time to render a high quality fluid. I don't know how/if this could be improved, but it would be something that'd make your plugin certainly much more attractive - especially to new users!

Also, the "mesh collision detection" feature is what I'm waiting for. Don't know if that's the correct term for it - I mean that you do not need to convert obstructive objects to subdivided TriMeshes anymore. I remember that this was planned some time ago. :) And again, this makes things a lot easier und thus more attractive for new users.

Of course, the "objects made of water" mentioned above, would be very nice, too!

In conclusion: Please don't abandon physics! They're worth it. :)

Greetings,
TroY

bob said...

Well there won't be a summer of code until a version 1 gets there. For the simple reason that I have other things to do and I don't want to release the code till version 1. But after that, then anyone can organize something like that.

I don't expect lots of animations or anything, but if we look at blender you will notice that the fluids are not used as much as people claimed they needed it. Its really a simple fact that physics based fluid flow according to the equations of motion, not according to artistic merit. It makes it less practical than people think.

But any pokes of "I am/want to use this" will help a lot.

Sorry its taken so long. But its not ditched and if i do ditch it I will release all the source code (GLP2 probably--and computable with AoI) so that someone else can "try" to pick it up.

Anonymous said...

Funny - it took me months to notice that the effector "Soft" actually does something!

I don´t get the sphere I played with to do a jump, - but it deforms well (Sphere is "copied" and rebuild out of particles then).

Cool - thanks Deltor.
And I started to do a glass fill animation again. But my pc gets slow at > 20.000 particles, and it looks like I need 50.000 to 100.000 particles to make it look good when rendered.

Greetings
Harald

bob said...

@Harald

It was a mistake. The softbody code should not have been in there.

Also it doesn't really work. I just hacked a quick Euler method.

However the rigid body code worked quite a bit better......

As for 10k+ particles.... Yea I would think that a good sim would need 100k or more. With mulitcore support this should not be a huge problem.

Its also not all that optimized yet.

Anonymous said...

>>However the rigid body code worked quite a bit better......

Now you made me curious, Bob.
What do I need to call from the gui to make a body rigid (and let it drop for example).

And can I let it swim in the fluid or anything advanced like that?

Greetings
Harald

bob said...

Sorry the rigid body was left out properly... So you can't use it right now.

But a boat full of water in a river is quite possible...I hope

Nik777 said...

Hi Bob,

Just giving you another prod.

I know you said you've had visitors. amd the job is expecting you to work, and the perfect still refuses to write code, but I figured that a gentle prod wasn't completely out of place.

Thanks for your response to Harand on the SF forums - it seems you are about the only person in the AOI community with the background to comment on such things.

Anyway, hope you've been having a great holiday, and are now yearning for some late nights coding impossible algorithms with improbable threading models. :o)

Cheers!
Nik

Nik777 said...

oops... in my previous post, "...and the perfect refuses to write code..." was meant to be "... and the perfect wife refuses to write code..."

Cheers!
Nik

bob said...

My mum flew out today. So Hopefully there will be some code done this weekend.