Imported .obj meshes appearing in the editor but not visible - is there a way to fix this?

DominicDominic Posts: 5Member
in 3D

I'm a developer on Roblox, and am just now trying out new game engines to work on such as Godot. While my time in Roblox has provided me with fun and valuable experiences, I decided to move onto more challenging but faster languages (such as C++), and to a less limited game editor. Godot seems like a lightweight, reliable alternative in general, and meets everything I wanted in the engine; however, upon trying to import some of my Roblox models into the editor, I found that each time the mesh would have no bounding box, no way of selecting it outside of the node tree (I can't click on it or use a selection box), and no visibility.
When selected it appears as normal in the Inspector viewing window, so the engine clearly knows what to do with it, and the translation tools appear around it like normal (though the bounding box can't be seen).

Does anyone know a way of debugging or fixing this? Any help would be greatly appreciated - I'm hoping to move onto programming my first objects soon and doing some testing with the engine...

Thanks in advance, Dominic


Tags :

Best Answer

  • MegalomaniakMegalomaniak Posts: 2,645
    edited June 4 Accepted Answer

    Well, there's your problem.

    I'm going to guess that roblox batches objects together to cut down on draw calls and when you export one of them it just gets separated out of that clustered object. But the object origin remains what it was for the whole cluster.

    You'll want to take your objects through a DCC such as blender and fix this before you bring them to godot.

    Unless you will set up the static parts of your scene in blender and export them as one merged object to save on draw calls. Similar to what I'm guessing(can't emphasize enough) Roblox is doing.

Answers

  • MegalomaniakMegalomaniak Posts: 2,645Admin
    edited June 3

    Making a fairly blind guess here but the objects you import might be either scaled too large or too small perhaps.

    We might be able to help more if you can provide a sample .obj file that is replicating the issue.

    Also trying to import the object into blender might be a way to debug it too. If there are issues even importing into blender then there's very likely something wrong with the file itself.

  • DominicDominic Posts: 5Member

    @Megalomaniak Thanks for the suggestion - I've attached the file with a whole model (a CRT monitor, untextured) and one part from that model (textured). Neither of those work, nor any others so far.
    Unfortunately I'm working on a laptop with not much memory - that's why I need something lightweight - so I don't think Blender will work properly, but I'll try installing it if you can't see any immediate issues.
    Is there any way of seeing the 'absolute size' of a mesh in Godot?

  • MegalomaniakMegalomaniak Posts: 2,645Admin

    In terms of memory use blender should be reasonably lightweight. And if still too memory hungry there's always older blender versions that can be tried, pre 2.8 or even pre 2.5

    Will try to check out the file tomorrow if no-one else gets to it first.

  • DominicDominic Posts: 5Member

    Alright - I've tried blender now, and it doesn't show up there either; the program's not giving any indication of why this might be either. However, I've heard that for a while now Roblox's editor has been improperly exporting unions/complex parts and textures, although it used to in older versions... I can try undoing all my unions, changing to the old system and then reunioning them, but I'd appreciate if you (or someone else) could take a quick look to see if there's an obvious solution. Reunioning everything will take a long time and really slow down my project.

  • MegalomaniakMegalomaniak Posts: 2,645Admin
    edited June 4 Accepted Answer

    Well, there's your problem.

    I'm going to guess that roblox batches objects together to cut down on draw calls and when you export one of them it just gets separated out of that clustered object. But the object origin remains what it was for the whole cluster.

    You'll want to take your objects through a DCC such as blender and fix this before you bring them to godot.

    Unless you will set up the static parts of your scene in blender and export them as one merged object to save on draw calls. Similar to what I'm guessing(can't emphasize enough) Roblox is doing.

  • DominicDominic Posts: 5Member

    Thank you very much! You've saved me from having to spend weeks redoing all my models...
    Yeah, this makes sense now I think about it. I'll try fixing the origin in blender as you suggest and see what happens.

  • DominicDominic Posts: 5Member

    By the way - I probably didn't notice this because my render distance is quite short. Probably for the best though, since my laptop can't really handle that much.

Leave a Comment

BoldItalicStrikethroughOrdered listUnordered list
Emoji
Image
Align leftAlign centerAlign rightToggle HTML viewToggle full pageToggle lights
Drop image/file