How to dig into j3o files

Could someone please help. I have exported a model from Blender and converted it into a j3o file. The model includes an empty which can be seen in the .scene file snippet below:

:

{scene formatVersion=“1.0.0”}

{nodes}

{node name=“myEmpty”}//an empty locator with the main mesh

{position x=“0.020647” y=“0.024404” z=“0.029551”/}

{quaternion x=“0.000000” y=“0.000000” z="-0.000000" w=“1.000000”/}

{scale x=“1.000000” y=“1.000000” z=“1.000000”/}

{userData}

{property type=“STRING” name=“myEmpty” data=“Fred”/}

{/userData}

{/node}

{node name=“Cube”}

{position …





How do I get hold of the myEmpty and read the data and the empty’s position?

Panda3d has this syntax:



self.scene1=loader.loadModel("./models/hellsKitchen.egg")

self.playerPos=self.scene1.find("**/playerStart01")





for accessing the empty “playerStart01” from the model file. Does jme3 have a similiar solution for reading j3o files?



Does jme3 have anything



Node model = (Node)assetManager.loadModel(“Models/MyModel.j3o”);

Spatial child = model.getChild(“ChildName”);

Thanks for your reply Normen, but jme3 platform tells me that there is no getChild method for the Spatial that contains the j3o. I have been looking through the source for the SceneLoader class and am somewhat confused as the call that parses the .scene xml seems only to be called once yet my .scene file contains 2 instances of the tag, one for the empty, and one for the mesh. It also creates a new Node object for the tagged item once called, so does that mean the j30 file will contain 2 Nodes within it? I have updated the .scene file above to illustrate what I mean about there being 2 objects exported from Blender.

Yeah, I fixed the example. You load a Node in most cases. It has the getChild() method.

About the structure of your model, you should be able to see what gets imported how and with what names in the jMP SceneExplorer.

Excellent.