Qoob: Tiny 3d modeller and Library
Two people have asked me this and if two asked, many more are thinking about this. I'll be honest I didn't start this project with that idea in mind so I've given it some thought - like the cat - and concluded its unlikely to be possible (in the same way that teleporting the earth 3 feet to the left is unlikely to be possible).

Qoob works not by storing meshes but by storing sequences of commands and data for those commands.  Qoob objects are read then an uncompressor loops over the model executing the command by calling a function which corresponds to the command in the qoob library.

OK so its not a matter of mesh compression. I can't save the model as a mesh then use qoob lib to uncompress it. But thats obvious. Can we somehow work with the modeller and commands instead?

Commercial modellers can provide to plugins, and export to file, the list of commands used to create the model. The first problem is the commands in qoob lib are very specific, chosen for and written for size. They do not correspond to the ones in commercial modellers. The commercial modeller has far more commands. So the first issue is restricting the user to only the commands that are the same as qoob commands. Hard. Either we ask the user to remember what can and cant be used or I write a whole plug-in or set of plug-ins that is in effect the whole qoob modeller.

It gets worse. Even when there is a correspondence, in command, the BEHAVIOUR of that command is different. For example smooth. Smooth in qoob is super-light and does not handle smooth on part of the model and only very specific style of holes work and even then not as any commercial modeller would do it. So, again, even if a command looks similar in a commercial tool it is highly unlikely to be the same and models rendered with qoob lib would be different from how they appeared - and they could be VERY different.

Then there is mathematical accuracy. Take Rotate about x axis. You might think it will produce the same in a commercial modeller as qoob but it wont. Qoob is on the fly compressing your rotate input and showing you what it will look like compressed which is different from the commercial modeller. This may not be significant with rotate or translate you may think until you realise the changes accumulate. Scaling really has a big effect.

So with qoob lib as it is, the only way to successfully use it would be to write the whole qoob modeller as a plug-in, not using the commercial modellers functions at all for modelling. It is not a simple matter of writing an exporter therefore. This would save some effort (save dialogues for example) but introduce other (sdk). So it doesnt save me effort but does it help the artist? Perhaps a little as the environment would be more familiar - but lets face it qoob modeller is hardly rocket science and already one modeller has told me that qoob is incredibly easy to learn and use and hes really enjoying it. The user would need to learn qoob modelling anyway.

One option is to start again and attempt to write a library that matches exactly the modelling commands in a commercial modeller. Well I tried to write a library to match exactly photoshop filters and got some of the way but I was working blind to the code and it proved to be much much harder to do it than to write my own simple filters which were good enough. Even if it can be done the code and models WILL be larger than qoob. Smooth alone will probably be 3-4x bigger. So I'm not going to do it but someone might. At 64k this might be acceptable, lets say 10-15k for the lib and models around 500bytes to 1k as a wild guess.

If you are still not convinced - I can send you FULL SOURCES of qoob libs and modeller for you to integrate with your favourite modeller and try. It would be very cool to have a 3ds version of qoob!
12/2/2010 03:16:00 pm

Our quality products, fair prices, appreciated in foreign markets.

12/8/2010 05:03:24 pm

The greatest danger in deceiving others is that one will surely end up deceiving one's self.

12/17/2010 03:03:54 pm

Mmm..it is great, my love.

12/20/2010 03:37:37 pm

Thanks for your sharing.

12/24/2010 08:24:01 am

It seems that Christmas time is here once again, and it is time again to bring in the New Year. We wish the merriest of Christmas to you and your loved ones, and we wish you happiness and prosperity in the year ahead.

12/27/2010 02:22:23 pm

Shared joy is a double joy, shared sorrow is a half sorrow.

12/29/2010 04:48:07 pm

Do not take life too seriously. You will never get out of it alive.

1/4/2011 04:49:00 pm

: Patience, time, and money overcome everything.

1/6/2011 06:39:10 pm

Life has many joys and sorrows(

1/21/2011 03:55:27 pm

Bless you with happy smile every minute every day

4/30/2011 01:56:49 pm

There's something extremely wrong happening within the Web Marketing Network. As you know, web marketing is a rabid battle to turn visitors into opt-ins, and leads into gigantic channels of never ending money, but it's complicated out there.

4/30/2011 01:57:59 pm

There's something extremely wrong happening within the Web Marketing Network. As you know, web marketing is a rabid battle to turn visitors into opt-ins, and leads into gigantic channels of never ending money, but it's complicated out there.

4/30/2011 10:27:39 pm

On Thursday 24th of June 2010, Lapperre organizes the second HEARING AID NIGHT for all VA-NKO members.

6/24/2011 11:55:21 am

It is very good, i love it. There are people who put their dreams in a little box and say, Yes, I've got dreams, of course I've got dreams.

8/5/2011 10:16:44 am

Your article was great, evident by his comments.<a href="http://www.womenssuprashoes.com">Supra Shoes</a><br /><a href="http://www.womenssuprashoes.com">Womens Supra Shoes</a><br /><a href="http://www.womenssuprashoes.com"> Cheap Supra Shoes</a>

5/31/2012 12:06:37 pm

Your Blog is very good, I like it! Thank you for you sharing!Your blog is really helps for my search and i really like it.


Leave a Reply.