J3o scene and SDK

I asked this question before and I didn’t get any real help. But I’m noticing that the SDK and J30 scene editor is caching the file and editing the cached file and not the actual file inside the SDK (netbeans).
I can’t figure out how to get rid of caching and done some searches and nothing has helped.

file snake.glb → conver to j3o.
I open it and rename a node to “snake”, “body”, “eyes”.
Save it.

Go back into blender, make a change, changed color to black on the snake.
Go back into SDK, it asks if I want to update it. I say yes. then open the scene editor and the snake still brown.
I view it in a object viewer outside of the SDK and it is black.

I delete the j3o file.
Go back into SDK and convert model to j3o again and reopen it. It is till brown. and the nodes are still renamed even though the glb file has obj1 obj2 obj3 for names.

I then delete the j3o again. Then in file manager rename the snake.glb to snake1.glb and go back into SDK and conver snake1.glb to j3o.
Open snak1.j3o in scene editor and now the snake is black, and the nodes are obj1, obj2 and obj3.

Then go to file manager and rename snake1.* (blg, j3o and j3odata) back to snake.*.
Go back into SDK and open snake.j3o in scene editor and the snake is brown again and node name are still renamed, even though in the j3o file they are not.

I have never experienced any caching issues like you explained, but one thing that stands out to me from your post that I never do in my SDK workflow is this:

A long time ago, I noticed that certain things were glitchy and it also messed up other j3o files that were copied from the one I’m updating if I press yes, so I always say no and I instead delete the last .j3o and re-convert it.

I also don’t convert from .glb > j3o, I always convert .gltf > .j3o.

I don’t know if that that would make any difference for your caching problem, but I figured its worth mentioning anything I do differently since I’ve been using the SDK for a while without having the same issue.

If it shows fine outside the SDK, then I’m 99% sure it is because of AssetManager caching. Probably SDK forgets to clear the cache after the j3o file is changed.

You can create issue to the SDK project since it seems like a bug.

1 Like

This is something I’ve suspected many times. Now that I have the SDK source up and running I will take a look at it.

1 Like

Can you please enter a ticket here and provide a minimal reproducible test case? That would help out a lot.
Edit: Actually, your description is already pretty good :slight_smile: I’ll see if I can repro it.

2 Likes

I’ll enter a ticket. no problem.

Just not sure if there was cache that might be causing this or a bug related to cache.

I don’t know much about the difference in the formats, I have a basic model with armatures and several animations. from the quick search gltf support animation.

What is the difference between them, anything meaningful to someone that doesn’t care about format and since JME supports both formats, I really don’t care, unless one is better.

Exporting from Blender 2.8, haven’t upgraded.

Thanks,

Are you able to compile the SDK. I’ve tried everything and I can’t get the SDK to compile. Did you do anything after downloading source from github?

I don’t actually know what’s different between .glb and .gltf in JME. I know they’re very similar, but maybe someone else can share more info who has more knowledge about the j3o conversion process. I previously thought the engine didn’t support glb when I tried a long time ago, but its been a while since I tried so I was wrong on that or am remembering incorrectly.

I just thought it would be worth mentioning the 2 things I do differently from your original post, to potentially narrow down the cause of the caching issue since I’ve never experienced it even though I use the SDK daily. But then again I guess it could also be related to device specs. My apologies if what I’m saying has nothing to do with it.

I did some search and from I see is that the textures in gltf are just a link to an external file while the glb embeds the texture in the file. If I understand it correctly, in my quick searches.

1 Like

I’m not saying it was without problems, but they were mostly due to my own doing.

Edit: Btw, I’ve already entered the ticket and described the cause here: https://github.com/jMonkeyEngine/sdk/issues/314

1 Like

Can you give the exact problems you are having, error messages and such? And perhaps in a fresh thread, not this one.

1 Like

Thanks. I’ve tried compiling the SDK from github and it fails for me no matter what I do. I wanted to make an enhancement to the scene editor for me but I can’t get it to compile.