Hi there! You are currently browsing as a guest. Why not create an account? Then you get less ads, can thank creators, post feedback, keep a list of your favourites, and more!
Field Researcher
Original Poster
#1 Old 5th May 2019 at 10:04 PM Last edited by SmugTomato : 2nd Feb 2020 at 10:59 AM. Reason: 1.00
Default Blender 2.8 GEOM Tools
Latest versions can be found here (click me)

I've been working on a GEOM Importer/Exporter for Blender 2.8 and I feel right now it's far enough along in development to start sharing it.
It should be pretty much fully featured at this point.

You can add/remove vertices, assuming you hit 'Recalculate IDs' before exporting. Before you do that make sure to Split your mesh along it's UV seams though as this will create new vertices that will have to get an ID assigned again, splitting UV seams is important for properly exporting your UV layout.
You can also import rigs and assign verts to bones, make sure you don't exceed 4 assignments per vertex or you'll get an error on export.

To help test this add-on you need to be using the Blender 2.8 Beta. It's quite stable at this time but make sure to save often when working in it, random crashes do happen.

A Panel with the required tools can be found in the Properties panel -> Scene -> Sims 3 GEOM Tools.
To Import/Export you must be in Object mode for now, I'll make it do this automatically in the future.

It's important to note that only edges marked as sharp will be sharp in-game, if you need them to be sharp make sure to do so.

I'd like to thank cmomoney for their work on the old 2.6 add-on, part the code of the rig importer is pretty much just copied straight into this one and saved me a lot of time figuring out how to even get a rig out of the Sims files.

Rigs can now be imported alongside your GEOM import or from the UI panel

Changelog can be found in the post below.
Screenshots
Advertisement
Field Researcher
Original Poster
#2 Old 5th May 2019 at 10:05 PM Last edited by SmugTomato : 26th May 2019 at 2:36 PM.
26/5/2019 - Version 1.00
  • Final release version
Everything should be working great now but let me know if something doesn't work as it should.

19/5/2019 - Version 0.14
  • Seam fixer now works for LOD2 and LOD3 meshes as well
  • Multiple morphs can be imported at once by selecting multiple files on import
  • Vertex colors get imported and exported
  • The import morph button has been moved closer to the rest of the import buttons

16/5/2019 - Version 0.13
  • Reimplemented seam fixer for LOD1 meshes
The seam fixer can be found on the export panel, vertices in the connecting neck/feet/waist area have to be in their default maxis locations for this to work, same goes for morphs.

14/5/2019 - Version 0.12
  • Importing and exporting morphs is now supported
  • A bug causing only duplicates of the first UV channel to be exported as a 2nd UV layer has been fixed
  • Implemented a new and better way of calculating normals
  • Neck seams are back in this version
While this might seem like a small list it took me a long time to get this done.
I've basically had to rewrite the entire exporter to support morphs properly, while working on the morphs I also figured out a way better method of smoothing normals.
With this version Neck/Foot seams will be back, I'll have to rebuild the json file containing the required data and after that I'll have to reimplement the code.

8/5/2019 - Version 0.11
  • Rigs can now be imported alongside a mesh
  • Rigs can now be imported from the tool panel
  • Seams are now fixed on export

6/5/2019 - Version 0.10
  • Tangents now get calculated on export
  • (Theoretical) support for multiple UV channels
I have not been able to test the multiple UV channels in game, but it loads up properly in s3pe. If anyone can tell me how to test this in-game (I think it's got something to do with pet meshes) I'd appreciate it.
Bumpmapping is now supported without having to rely on CmarNYCs tool.
˙uʍop ǝpᴉsdn ǝɹ,noʎ 'oN
#3 Old 6th May 2019 at 3:48 PM

"Part of being a mesher is being persistent through your own confusedness" - HystericalParoxysm
| (• ◡•)| (❍ᴥ❍ʋ) [◕ ‿ ◕]
Field Researcher
Original Poster
#4 Old 8th May 2019 at 11:58 AM
Updated to v0.11
  • Rigs can now be imported alongside a mesh
  • Rigs can now be imported from the tool panel
  • Seams are now fixed on export
Field Researcher
Original Poster
#5 Old 13th May 2019 at 11:04 PM
Haven't really been posting updates the past few days as I was having a lot trouble with properly preserving hard edges and getting morphs to work at the same time, I think I've finally managed to work something out.
There should be an update with those included soon. Oh and I also fixed a bug with multiple UV layers not getting exported properly, that will be included as well.
Field Researcher
Original Poster
#6 Old 14th May 2019 at 7:58 PM
14/5/2019 - Version 0.12
Changes can be found in the 2nd post
Field Researcher
Original Poster
#7 Old 16th May 2019 at 10:30 PM
16/5/2019 - Version 0.13
A seam fixer has been reimplemented, this time for the morphs as well.
Below are some pictures of a quick test mesh I made from 2 maxis dresses with a fat morph, only LOD1 meshes are supported for now as building the datasets for these takes quite a bit of effort.
It involves me having to import a top and bottom with all their morphs of every age group and gender, delete all but the seam vertices, running a script from Blender after that and then some.
Once I add support for vertex colors I'll make sure to add a seamfix for LOD2 and LOD3 as well, even though you shouldn't ever be able to see it from such a distance.
Screenshots
Field Researcher
Original Poster
#8 Old 19th May 2019 at 8:12 PM
Multiple morphs can be imported at the same time in v0.14 or later, just shift-select or box select multiple morph files and safe yourself some clicks.
Screenshots
Field Researcher
#9 Old 20th May 2019 at 1:39 PM
I greatly commend your work and cannot wait to try these out!
Field Researcher
Original Poster
#10 Old 26th May 2019 at 2:37 PM
26/5/2019 - Version 1.00
  • Final release version
Everything should be working great now but let me know if something doesn't work as it should.
Test Subject
#11 Old 2nd Jul 2019 at 9:23 PM
I keep getting errors on these.

Traceback (most recent call last):
File "C:\Users\Mine\AppData\Roaming\Blender Foundation\Blender\2.80\scripts\addons\io_simgeom\geomimport.py", line 69, in execute
geomdata = GeomLoader.readGeom(self.filepath)
File "C:\Users\Mine\AppData\Roaming\Blender Foundation\Blender\2.80\scripts\addons\io_simgeom\geomloader.py", line 67, in readGeom
meshdata.faces = GeomLoader.getGroupData(reader)
File "C:\Users\Mine\AppData\Roaming\Blender Foundation\Blender\2.80\scripts\addons\io_simgeom\geomloader.py", line 203, in getGroupData
reader.getInt16(),
File "C:\Users\Mine\AppData\Roaming\Blender Foundation\Blender\2.80\scripts\addons\io_simgeom\util\bytereader.py", line 44, in getInt16
bytes.append(self.getByte())
File "C:\Users\Mine\AppData\Roaming\Blender Foundation\Blender\2.80\scripts\addons\io_simgeom\util\bytereader.py", line 37, in getByte
byte = self.data[self.offset]
IndexError: index out of range

location: <unknown location>:-1
Field Researcher
Original Poster
#12 Old 3rd Jul 2019 at 10:50 AM
Quote: Originally posted by imago3d
I keep getting errors on these.

Traceback (most recent call last):
File "C:\Users\Mine\AppData\Roaming\Blender Foundation\Blender\2.80\scripts\addons\io_simgeom\geomimport.py", line 69, in execute
geomdata = GeomLoader.readGeom(self.filepath)
File "C:\Users\Mine\AppData\Roaming\Blender Foundation\Blender\2.80\scripts\addons\io_simgeom\geomloader.py", line 67, in readGeom
meshdata.faces = GeomLoader.getGroupData(reader)
File "C:\Users\Mine\AppData\Roaming\Blender Foundation\Blender\2.80\scripts\addons\io_simgeom\geomloader.py", line 203, in getGroupData
reader.getInt16(),
File "C:\Users\Mine\AppData\Roaming\Blender Foundation\Blender\2.80\scripts\addons\io_simgeom\util\bytereader.py", line 44, in getInt16
bytes.append(self.getByte())
File "C:\Users\Mine\AppData\Roaming\Blender Foundation\Blender\2.80\scripts\addons\io_simgeom\util\bytereader.py", line 37, in getByte
byte = self.data[self.offset]
IndexError: index out of range

location: <unknown location>:-1


Looks like a corrupted GEOM file or a different type of file altogether from the traceback, either way I can't say much without the file itself. I should probably also redirect this thread to the download page as the latest version here doesn't actually work with the latest blender 2.8 release.
Field Researcher
Original Poster
#13 Old 3rd Jul 2019 at 10:53 AM
Forum Resident
#14 Old 20th Aug 2019 at 4:41 PM
Hey, Smug! I'm just starting to get into meshing and have been using Blender which always leaves a seam around the neck and ankles. Every tutorial revolves around Milkshape, only because someone wrote a program plugin that fixes the seams. From reading your posts, it looks like your program will now fix the seams with Blender 2.8???

I downloaded Blender 2.8 and your latest version of tool from the download page and have been playing with them. I'm not sure where the seam fixer is located? It doesn't come up on export.
Field Researcher
Original Poster
#15 Old 17th Sep 2019 at 6:59 PM
Quote: Originally posted by LadySmoks
Hey, Smug! I'm just starting to get into meshing and have been using Blender which always leaves a seam around the neck and ankles. Every tutorial revolves around Milkshape, only because someone wrote a program plugin that fixes the seams. From reading your posts, it looks like your program will now fix the seams with Blender 2.8???

I downloaded Blender 2.8 and your latest version of tool from the download page and have been playing with them. I'm not sure where the seam fixer is located? It doesn't come up on export.


It is located on the export interface as shown in the attached image, just select your mesh gender/age type and the LOD index and it will fix the seams.
Screenshots
Forum Resident
#16 Old 13th Dec 2019 at 8:25 PM
Quote: Originally posted by SmugTomato
It is located on the export interface as shown in the attached image, just select your mesh gender/age type and the LOD index and it will fix the seams.


Thanks! This tool has been great! I'm getting deeper into meshing and using 2.80. Not sure if its a tool issue, or something I'm doing wrong, but any time I use "solidify" on a mesh part and try to export, I get an error message referring to tangents? I saved as .obj, converted to geom using Meshing Tool Kit, added bones from another mesh and ran it thru tool kit tangent fix. The mesh will import, but even after what I tried, it will not export and I get the tangent error message.

On export, I do run the export tools, and renumber vertices. Oh, and I am using the 1.01 version of the tool. Thanks for any help you can give me!
Screenshots
Field Researcher
Original Poster
#17 Old 13th Dec 2019 at 8:59 PM
Quote: Originally posted by LadySmoks
Thanks! This tool has been great! I'm getting deeper into meshing and using 2.80. Not sure if its a tool issue, or something I'm doing wrong, but any time I use "solidify" on a mesh part and try to export, I get an error message referring to tangents? I saved as .obj, converted to geom using Meshing Tool Kit, added bones from another mesh and ran it thru tool kit tangent fix. The mesh will import, but even after what I tried, it will not export and I get the tangent error message.

On export, I do run the export tools, and renumber vertices. Oh, and I am using the 1.01 version of the tool. Thanks for any help you can give me!


Oh, it looks like I left a chance for a division by 0 to happen in there . For the time being you should be able to get around this by making sure you have no overlapping UV coordinates within a triangle.
Field Researcher
Original Poster
#18 Old 14th Dec 2019 at 11:10 AM
Forum Resident
#19 Old 14th Dec 2019 at 8:27 PM

WOW! You computer key clickers work fast!!!!! I'll give it a try... Thank You!
Test Subject
#20 Old 2nd Feb 2020 at 12:12 AM
Am I supposed to do something to the .simgeom file right after it's exported before replacing in the package? I always get "error reading resource" when I try to use it to replace the file in the .package with S3PE.
Field Researcher
Original Poster
#21 Old 2nd Feb 2020 at 9:58 AM Last edited by SmugTomato : 2nd Feb 2020 at 10:58 AM.
Quote: Originally posted by Gilzinho
Am I supposed to do something to the .simgeom file right after it's exported before replacing in the package? I always get "error reading resource" when I try to use it to replace the file in the .package with S3PE.


That shouldn't be necessary, it problably means the file got corrupted.
Just to make sure, did you download it from this page or from here?
Test Subject
#22 Old 2nd Feb 2020 at 1:03 PM
I have version 1.02 installed. The file didn't seem corrupted because it was fine when I reimported to blender. Now I used Cmar's mesh toolkit to convert it to .wso, then replaced the mesh with TSRW and it worked just fine. I don't know what's up with S3PE. Maybe I am missing something.
Back to top