Re: Granny .GR2 Reader plugin for Noesis
Posted: Tue Jun 15, 2021 7:27 pm
I have a new update for you, one i am pretty proud of
This has alot of firsts for me, first time using Ghidra and decompiled code from source, debugging Aseembly code and generaly just alot of research.
To the best of my knowlage this is the first script that can now decompress BINK format along with many other new features.
Change List:
1. Added Auto Texturing for all .gr2 files with embeded textures including the following formats : RGBA32, DXT1/3/5 and BINK. so now games like Winter X-Games: Snocross can directly load/export textures from noesis without any 3rd party ripping tools.
Currebtly Turned on by Deafult, can be disabled with the following Option.
GAME_TAG_GRANNY = True
2. new option, allows to transform any loaded file to any coordinate system and UnitsPerMeter of your choosing,
Currently by default all files are converted to native noesis coordinate system where meshes will always be facing forward.
just an example of usefulness, if by some mistake a mesh and animation file where created in a different system the script will automaticly transform both to same system and allow for animation to work correctly with the mesh.
or if your exporting for a specific game in a different system you can easily adjust before exporting.
TRANSFORM_FILE
RightVector = [1,0,0]
UpVector = [0,1,0]
BackVector = [0,0,1]
UnitsPerMeter_new = 1.0
3. Adedd support for 64 bit Noesis- script will automatically recognize which system you are using and search for a compatible .dll file.
for 32 bit - granny2.dll
for 64 bit - granny2_x64.dll
4. Added QTangent Support for Baldur Gate 3.
5. Enabled Tangents in Script.
6. Fixed a bug with Old Animation to New format conversion function - should fix those floaty issues.
7. Added Initial Placement for Animation - while playining animations models will now load in the correct position in relation to world and other models of a scene.
8. Added absolute path to Noesis Main Folder for Granny2.dll and Mesh.txt files - should always look in correct path now.
9. Rewrote some code and memory optimzations on multiple functions.
10. Added some debug options, i dont expect almost anyone to use but why not right...
DISABLE_ALPHA - Disables Alpha blending when loading textures usefull for some games where alpha causes mesh to be transparent
LOAD_POINT_CLOUD - Load only mesh Vertcies.
DEBUG_NORMALS - Load Normals as colors.
This has alot of firsts for me, first time using Ghidra and decompiled code from source, debugging Aseembly code and generaly just alot of research.
To the best of my knowlage this is the first script that can now decompress BINK format along with many other new features.
Change List:
1. Added Auto Texturing for all .gr2 files with embeded textures including the following formats : RGBA32, DXT1/3/5 and BINK. so now games like Winter X-Games: Snocross can directly load/export textures from noesis without any 3rd party ripping tools.
Currebtly Turned on by Deafult, can be disabled with the following Option.
GAME_TAG_GRANNY = True
2. new option, allows to transform any loaded file to any coordinate system and UnitsPerMeter of your choosing,
Currently by default all files are converted to native noesis coordinate system where meshes will always be facing forward.
just an example of usefulness, if by some mistake a mesh and animation file where created in a different system the script will automaticly transform both to same system and allow for animation to work correctly with the mesh.
or if your exporting for a specific game in a different system you can easily adjust before exporting.
TRANSFORM_FILE
RightVector = [1,0,0]
UpVector = [0,1,0]
BackVector = [0,0,1]
UnitsPerMeter_new = 1.0
3. Adedd support for 64 bit Noesis- script will automatically recognize which system you are using and search for a compatible .dll file.
for 32 bit - granny2.dll
for 64 bit - granny2_x64.dll
4. Added QTangent Support for Baldur Gate 3.
5. Enabled Tangents in Script.
6. Fixed a bug with Old Animation to New format conversion function - should fix those floaty issues.
7. Added Initial Placement for Animation - while playining animations models will now load in the correct position in relation to world and other models of a scene.
8. Added absolute path to Noesis Main Folder for Granny2.dll and Mesh.txt files - should always look in correct path now.
9. Rewrote some code and memory optimzations on multiple functions.
10. Added some debug options, i dont expect almost anyone to use but why not right...
DISABLE_ALPHA - Disables Alpha blending when loading textures usefull for some games where alpha causes mesh to be transparent
LOAD_POINT_CLOUD - Load only mesh Vertcies.
DEBUG_NORMALS - Load Normals as colors.