Porting stats
Porting progress: ~85%
Hours with Godot: ~481h
Scripts transferred: 89
3D-assets transferred: 64
Audio files transferred: 228
Godot project size: 5.61GB
Extra mention: Godot project size went -50% smaller from last port update after pre-compressing and removing unnecessary debug / import files.
What are these Godot Port Updates?
Porting a game to another engine is a big and rather unique thing, so these post are my way of documenting this porting experience and giving some honest updates on how the porting process is going.
These posts are a weekly thing until all the core features have been ported and along with these posts there are also Patreon test builds each week. These test builds are directed to small audience and the main purpose is to get performance data and early feedback on the ported features.
What has been ported this week?
- Attachment system
- Attachment data architecture
- Attachments shader caching
- Persistent weapon data
- Inspect system + Weapon UI
- Inspect animations
- Optic lens shader + glass reflections
- Optic scope shader + FOV effects
- FSR 2.2 with "temporal stabilization"
- Standard and performance rendering modes
- Added ACOG (optic)
- Added PU Scope (optic)
- Added Micro RDS (optic)
- Added multiple suppressors
Attachment system
This last week I ported the entire attachment system and multiple data structures around that system. The word the data structure sounds a bit fancy, but basically these attachments require different types of item data, categorization and passing dedicated attachment data between different systems like weapons, inventories, inspection menus and so.
In the previous port update, I mentioned that AI system was the last "scary" porting topic and I was correct with this phrase, since stuff like attachment systems didn't require any demanding features from Godot.
This current attachment system is based on existing slot elements that I made few weeks back with the inventory and the whole implementation process was really smooth.
Here's few screenshots with different attachments and inspection / weapon UI's which also received some improvements related to previous Unity version.


In general, I'm really happy how this system turned out after the porting. When it comes to extending this system in the future, there's so many possibilities with this new approach since these attachment slots are basically just simple floating UI elements and they work in symbiosis with the existing inventory.
Godot's strengths
The more I learn about Godot's animation and UI tools, the more I like them. I think animation and UI handling are definitely one of the Godot's strengths, they are quite comparable to Unity and the engine documentation for these is also extensive and easy to understand.
This attachment system week gave me pretty in-depth knowledge about these tools and it has been really enjoyable for working with UI-based systems and handling animations through animation trees and simple call-method animation tracks.
I also really like the minimal visuals of these separate tool windows. Here's one animation tree window example which is related to weapon inspections.

Like shown in the screenshot, these are visually easy to understand (in my opinion), the transition icons are clear and I hope that Godot keeps this minimal look for most of these tool windows.
Porting progress = 85%
This porting adventure is slowly but surely coming to an end. The rest of the porting topics are pretty straightforward and currently I don't see any issues that could cause major unexpected delays.
With this current porting momentum, there's a high change that I will reach that magical 100% porting progress within 2-4 weeks and that fits perfectly for this calculated porting timeline.
- Antti (Developer)
Anthony Bucci
2023-11-30 14:24:27 +0000 UTCKevin Blum
2023-11-29 21:00:55 +0000 UTCJarr0ds
2023-11-29 11:14:10 +0000 UTCIluvatar
2023-11-29 08:41:11 +0000 UTC