SUBSIM Radio Room Forums



SUBSIM: The Web's #1 resource for all submarine & naval simulations since 1997

Go Back   SUBSIM Radio Room Forums > Silent Hunter 3 - 4 - 5 > SHIII Mods Workshop
Forget password? Reset here

Reply
 
Thread Tools Display Modes
Old 12-08-24, 02:48 PM   #1
iambecomelife
Silent Hunter
 
Join Date: Apr 2005
Posts: 4,709
Downloads: 300
Uploads: 0


Default

Wow! This stuff goes way over my head - but it is fascinating all the same! Thanks for your continued work for those of us who aren't too familiar with making these changes.

A harbor editor would definitely be nice because even back in the late 2000's SH3 and SH4's harbors were not my favorite .... too similar looking. Now in 2024 they are showing their age even more. In real life of course each harbor has unique breakwaters, orientation of harbor facilities North or South, etc. It would be great to have each harbor look more like it really did historically.


Eagerly looking forward to this!
iambecomelife is offline   Reply With Quote
Old 12-08-24, 04:16 PM   #2
Jeff-Groves
GLOBAL MODDING TERRORIST
 
Jeff-Groves's Avatar
 
Join Date: Sep 2014
Posts: 5,654
Downloads: 137
Uploads: 0


Default

After a lot of thinking on it? I've got most of it worked out in my head.
I'm not good at programing things for 3D viewing but I can manipulate the heck out of the obj format! As 010 does use a type of C coding? I may even make a stand alone program at some point to handle the transformations.


Now I know just enough about Blender (Even less about Wings3D) to be dangerous! So those that use those programs? I'll need some help.

I can tell you that Pack3D does a good job doing the mass export of needed files. BUT. Since many objects have multipule UVs? It stacks them all into the obj file. But that is not a problem as I only need the verts to do all the Math on.
Moving the objects is just a matter of adding the XYZ from a location.dat file to a given object file. Rotation is more complicated Math but I've already coded that!
The stuff I'm coding will do the heavy lifting work. Once you edit things in a 3D program and export the objects? The codeing will reverse that and spit out a PROPER Location.dat! You'll only need to MAYBE change IDs.
I've got a way to do that automagically also in my head and have posted before on how one can do that!

I've started the code to grab ID's and names of all 3D models in the Harbor_Kit.dat
That will rename all the 3D objects I've exported to the ID's.

Then I'll rip the needed stuff from a Location.dat to get things ready to import to a 3D program. It's pretty intense but I'm haveing a BLAST doing a Jethro Bodine on this!


Oh Yeah. I'll also be extracting the needed areas with ref's SH3 Tool and converting that information to an object file! Making it easier to do a Harbor or other location. Already did that kind of tool for SH5.

Last edited by Jeff-Groves; 12-08-24 at 04:25 PM.
Jeff-Groves is offline   Reply With Quote
Old 12-08-24, 05:58 PM   #3
propbeanie
CTD - it's not just a job
 
propbeanie's Avatar
 
Join Date: May 2016
Location: One hour from Music City USA!
Posts: 10,098
Downloads: 451
Uploads: 2


Default

Combination of a "tease" and what you can do with the HarborKit dat file "assets" exported with S3D and brought into Blender:




Lots of "parts" missing, lots of "overlaps", etc., but the Placement nodes in S3D can be built or populated from the Blender Location and Rotation slots. We are currently working on trying to get a 2D rendering of the docks for a reasonably accurate placement in the SH4 game, but the same can be done with the SH3 Locations.cfg file in the Terrain folder. It's just more frustrating to work in SH3 in this regard...

__________________

"...and bollocks to the naysayers" - Jimbuna
propbeanie is offline   Reply With Quote
Old 12-08-24, 06:04 PM   #4
propbeanie
CTD - it's not just a job
 
propbeanie's Avatar
 
Join Date: May 2016
Location: One hour from Music City USA!
Posts: 10,098
Downloads: 451
Uploads: 2


Default

Quote:
Originally Posted by Jeff-Groves View Post
... Moving the objects is just a matter of adding the XYZ from a location.dat file to a given object file. Rotation is more complicated Math but I've already coded that!
The stuff I'm coding will do the heavy lifting work. Once you edit things in a 3D program and export the objects? The codeing will reverse that and spit out a PROPER Location.dat! You'll only need to MAYBE change IDs.
I've got a way to do that automagically also in my head and have posted before on how one can do that!

I've started the code to grab ID's and names of all 3D models in the Harbor_Kit.dat
That will rename all the 3D objects I've exported to the ID's.
...
Cool beans Maynard! especially that ID and names of the 3D models... for the above, I had to search the name, verify I had the intended "asset", and then copy the node's ID to use for the Placement. Nothing difficult per se, but definitely something a script can do much more efficiently that this old brain fahrt can...
__________________

"...and bollocks to the naysayers" - Jimbuna
propbeanie is offline   Reply With Quote
Old 12-08-24, 07:47 PM   #5
Jeff-Groves
GLOBAL MODDING TERRORIST
 
Jeff-Groves's Avatar
 
Join Date: Sep 2014
Posts: 5,654
Downloads: 137
Uploads: 0


Default

Having Blender open and S3D to get all the information is a Super PITA!
And hours/Days/Weeks to do!

I plan to have a Brand New Location.dat done is a day or 2.


How are you getting the XYZ and Rotation information from Blender?
Jeff-Groves is offline   Reply With Quote
Old 12-08-24, 08:17 PM   #6
propbeanie
CTD - it's not just a job
 
propbeanie's Avatar
 
Join Date: May 2016
Location: One hour from Music City USA!
Posts: 10,098
Downloads: 451
Uploads: 2


Default

With your Blender project open, you select one of the 3D items, such as that "150m12.5_dig" showing in the "Collection" in the right-hand pane. You then select (if it doesn't default to it) the "Object Properties", which is that little orange solid box inside the brackets there between the 3D window, and the lower right-hand pane. That will have the X, Y and Z Location, as well as the X, Y and Z Rotation. Those numbers can be used directly in the Placement node. The problem comes in with the differences between the S3D (maybe Pack3D also) obj "orientation". S3D like to export the 3D obj "vertically", like an airplane or ship on its tail, whereas Blender likes things horizontally, on its wheels. It's been too long since I worked with something exported with Pack3D, so I do not remember its orientation. Anyway, suffice to say, you might have to reverse the Y and Z Locations and/or Rotations, and possibly have to convert from a negative number to a positive for one of the Location settings. Besides all that "looking things up manually", experimenting with the Placement build in the game is almost always necessary. So view it in-game before going much beyond a few of the obj Object Properties, or you might find you end up with a jumbled mess, like I had for a good while. Sometimes also, a person has a tendency to over-think things though, and combined with covid brain, it can get ugly...
__________________

"...and bollocks to the naysayers" - Jimbuna
propbeanie is offline   Reply With Quote
Old 12-08-24, 10:33 PM   #7
Jeff-Groves
GLOBAL MODDING TERRORIST
 
Jeff-Groves's Avatar
 
Join Date: Sep 2014
Posts: 5,654
Downloads: 137
Uploads: 0


Default

Well my Good Friend propbeanie,

I find that information Great! But you know Me. I can write code around things like that. Any help you and others give is welcome!
Jeff-Groves is offline   Reply With Quote
Old 12-09-24, 01:51 AM   #8
Mister_M
Grey Wolf
 
Join Date: Feb 2021
Posts: 925
Downloads: 27
Uploads: 0


Default

Hum. Maybe it would be far easier to build a harbour directly into the Harbour_kit.dat, and create the harbour file (in locations) with only ONE placement node which points to this harbour... So, the Harbour_kit.dat works like a harbour editor.
Mister_M is offline   Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -5. The time now is 11:32 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright © 1995- 2025 Subsim®
"Subsim" is a registered trademark, all rights reserved.