Kineme3D, v1.5

cybero's picture

I noted with interest that the new Kineme3D v1.5 release was said to be able to do the following reliably

Quote:

Added ability to load models containing duplicate object names (such as .dae models exported from Google SketchUp).

As it happens , I found that v1.5 is also very capable of loading and rendering other .DAE models from MeshLab too, the significant thing about this being that these are .DAE models that do not load in Preview, nor do they load correctly using the Mesh Renderer in QC 4.5.

Now they are available again in QC 4.5.

Thank you and well done Kineme crew :-)

gtoledo3's picture
Re: Kineme3D, v1.5

As you know, Lion doesn't load .DAE models that it did successfully load in SL.

QuartzComposer loads a framework that does all of the main work in dealing with the collada file, and QC sets it up.

I actually had a spokesperson from OpenCOLLADA tell me that the reason that Apple's implementation is ramshackle is because they use COLLADA DOM instead of OpenCOLLADA. His reasoning for this was that COLLADA DOM was controlled mainly by SONY, and it was either that A: they don't care too much about maintaining it well, or B: SONY especially doesn't care about things working right on a MAC.

It was funny, because the tone was that I could possibly have some influence and get Apple to use OpenCOLLADA! I thought, yeah right, I wish I had that pull there!

Now that's just some dude, but when Lion came out, and everything was broken I thought, hmm, maybe he had a point. When you load unloadable models, does QC still throw exception windows? I haven't wanted to look.

It would be great if kineme3D could update to feed textures to the individual objects, when there are multiple objects within one model file. I feel like it would be more appropriate to have a structure port that one feeds images, than the solution Apple took, but to each their own.

jersmi's picture
polygons vs. triangles

Thanks to Kineme for K3D 1.5, excellent service! And interesting story about OpenCOLLADA, considering QC's mesh tools.

Question for you guys, based on franz's suggestion to stick with triangle meshes and stay away from polygons. Let's say I want some freedom to experiment, at least at first, with some crappy public domain meshes, as well as playing with mesh building tools in not-so-conventional ways. Then let's say I want to stabilize a mesh made of unconventional parts. Anything I can look out for before importing to QC? In my limited experience the Apple mesh tools have been pretty volatile/crashy. And Kineme tools have thus far been hit and miss for what it will/won't load. Any advice/specifics on what or what not to use? Any experiences where things just break and you know what caused it?

cybero's picture
Re: Kineme3D, v1.5

Quote:

When you load unloadable models, does QC still throw exception windows?

Yes, such exception messages are produced [like it's really going to tell me something •~, over and over again] when trying to load a .dae that is non conformant with the Collada DOM.

As it happens it's Collada DOM conformant models that do not load correctly in Kineme 3D 1.5 as coherent models - who'd have thought it, eh?

Well , having said that , one can output a Collada DOM .dae and run through the index of the Output Objects - which also results in a shed load of exceptions.

However a simple non conformant model output to a 3d Object Renderer does render, but throws huge numbers of exceptions too.

Terribly consistent.

smokris's picture
Re: Kineme3D, v1.5

cybero wrote:
it's Collada DOM conformant models that do not load correctly in Kineme 3D 1.5 as coherent models

Could you provide some examples of Collada models that aren't loading correctly in Kineme3D 1.5?

cybero's picture
Re: Kineme3D, v1.5

Funnily enough, smokris, I was just in the process of beginning a suitable collation of Collada DOM, OpenCollada and MeshLab models and the resulting 'failure' of these as shown by both their evident failure to render & / or the Console messages that ensue.

I shall mail these to you off list, expect to receive these by Wednesday this week :-).

gtoledo3's picture
Re: Kineme3D, v1.5

Dude, I'm not smokris :-), but thanks for taking the time to do that. It will help us all.

That whole "apple's DAE importer throwing exception windows on DAE's it imported fine in SL" is just amazing. It's not like we were using a private API or something :-) I believe I filed bug on that before release too.

cybero's picture
Re: Kineme3D, v1.5

Well, I've taken the time, working upon a purely reduced 3rd party Plug-Ins and Patches installation base [like only Kineme 3D v1.5 installed and nothing else] and I can't reproduce every one of the difficulties I encountered and reported earlier this week with the exception [no pun intended] of the astroBoy_walk_Max.DAE & astroBoy_walk_Maya.DAE models I downloaded from http://code.google.com/p/gear/source/browse/#svn%2Fbranch%2Fmedia%2Fmesh....

When fed straight through to a Kineme 3D Object renderer and not iterated through .DAE's structure members, the following exception message occurs.

[C3D ERROR] _C3DModelPathResolveNode unknown path (3)(3)

When fed as objects into a Kineme 3D Object renderer, no such exception message is provoked.

gtoledo3's picture
Re: Kineme3D, v1.5

What do you mean by "dae's structure members"? Trying to feed something from the QCMesh engine to K3D?

What you're showing is a Core3D error, which is Apple. The apple OpenCL mesh system and K3D are incompatible.

cybero's picture
Re: Kineme3D, v1.5

What I meant by feeding a .dae's structure members through a Structure Index is the following as shown in the first screen grab attached -outputobject-members.png, the problem I spoke of is as per the second screen grab attached - outputobject-member0.png.

PreviewAttachmentSize
outputobjects-members.png
outputobjects-members.png825.03 KB
outputobject-member0.png
outputobject-member0.png1.02 MB

gtoledo3's picture
Re: Kineme3D, v1.5

Hmm, it's going over my head! :-) (for real!)

What I'm seeing though, is that you're also feeding something to some Apple DAE importers, because I see the importers and the mesh output. C3D is part of that system.

Maybe it's a K3D bug, idk.

cybero's picture
Re: Kineme3D, v1.5

Ah well , the pictures do show a setup that allows for the switching on and off of an Apple Mesh Renderer, a Kineme 3D Object - Output as Object Loader and a Kineme 3D Object - Output as Objects Loader.

As it happens I'm showing a setup in picture one that is only running the Output Kineme 3D Objects in and in picture two the setup is running only Output Kineme 3D Object, both pictures are showing the render resulting from one .dae file.

I don't really think its a Kineme 3D bug as such.

The .dae file is composed of several members. [0,1,2 & 3] - The only 'bug' as such is that the multi member .dae only gets its first member read when output as a single object to the Kineme3D renderer.

However , given that it renders pretty beautifully and fully when presented as a stream of output objects, I'd argue that it is no real problem at all.

It does however, result in an error only when running this Collada DOM multi-member file in Apple's Mesh Renderer.

Kineme 3D - Ouput as Objects - wins :-). Apple loses. [this one]

If you wonder at the seemingly topsy turvey situation, then consider this that I have been running these tests from this point of reply http://kineme.net/forum/Production/Kineme3Dv15#comment-22543 with only one 3rd Party extension installed, which made a lot of difference and helped to reduce other puzzling results reported at this earlier point of reply http://kineme.net/forum/Production/Kineme3Dv15#comment-22541 in this thread.

It has produced others though :-)

jstrecker's picture
Re: Kineme3D, v1.5

@cybero, thanks for all your testing. You are awesome.

Does the attached composition throw an exception, or do you have to do something more complicated? For me it works fine (SL and Lion).

PreviewAttachmentSize
astroBoy.qtz5.23 KB

cybero's picture
Re: Kineme3D, v1.5

The attached composition produces the following result when run in Lion and run as Output Object. Same result as I got , sans my choice of texture file, in the file setup I had running. Run as Output Objects - renders the whole model. See attached snapshots. Does that match up with your results? Neither output produces an exception window at all.

Only Apple's Mesh Renderer does that with this file, bless it •~

PreviewAttachmentSize
astroBoy-outputobject.png
astroBoy-outputobject.png23.51 KB
astroBoy-outputobjects.png
astroBoy-outputobjects.png55.99 KB

gtoledo3's picture
Re: Kineme3D, v1.5

That sounds expected. I multi obj file will just render the first obj. That's why there's the multi obj renderer, afaik.

gtoledo3's picture
Re: Kineme3D, v1.5

...and I'm going to GUESS that Apple is going to keep losing that one. I remember talking with you about that ages ago, when we were both finding our MeshLab stuff was causing exception windows in pre-release ...and they haven't even had the decency to fix that yet ;-)!

Did you dupe the bug report?

Also, I'm really loving that K3D is handling this now, but it's a weak replacement for that particular function, since k3D doesn't expose texturing each object in a multi object file, or importing them in, in any kind of user friendly way (though this would be simple, imo).

jstrecker's picture
Re: Kineme3D, v1.5

Yep, that's what I got. Glad it's working with Kineme3D.