Commit graph

30 commits

Author SHA1 Message Date
MediaMoots
66d490679f
Fix wrong UV map being used to generate tangents on TOTK (#644)
* Fix wrong UV map being used to generate tangents on TOTK

* use o_texture2_texcoord instead
2023-07-11 18:04:40 -04:00
rollin
26bfe8b3ab
Change GenericObject.GetMaxSkinInfluenceCount() to use boneWeights instead of boneIds as the latter might not be initialized when the function is used. (#631)
Co-authored-by: mctrollin <bla@blub.bla>
2023-06-24 11:30:39 -04:00
KillzXGaming
016dca5d0b
Fix errors 2021-04-19 19:03:50 -04:00
KillzXGaming
ce06922fd7
Add some face checks to check for valid triangles.
Should fix common errors from tangent/bitangents and normals calculation.
2021-04-19 18:59:45 -04:00
KillzXGaming
c922ff1e4f Big BYAML and AAMP update!
- AAMP can now save back to YAML!
- Added text editor for AAMP editor
- AAMP library has been improved signifcantly, now using one library for all versions.
- BYAML now uses YAML by default. You can still right click in the editor and export as XML if needed.
- BYAML saving speed improved signifcantly.
- BYAML now supports reference nodes and works with 3DW byml files.
- BYAML can now load shift JIS encoding for japanese characters.
- YAML syntax for text editor improved with proper folding and highlighting for certain values.
2020-02-06 18:20:42 -05:00
KillzXGaming
8097845a1b Some fixes with gfbmdl faces 2019-12-14 21:37:17 -05:00
KillzXGaming
9cfb49de3a Fix tangent/bitangent calculation on polygon groups 2019-12-14 17:34:25 -05:00
KillzXGaming
6c0bc069d9 GFBMDL : Add the option to auto generate vertex colors as normals. 2019-12-14 14:27:12 -05:00
KillzXGaming
e4722ed1af Alot of additions.
General
- Always allow multiple instances of the tool by default. (UseSingleInstance in config.XML)
- Yaz0 now uses a new library using c code. This improves compression times and is comparable to wzst's yaz0 compressor. Thanks to AboodXD for helping port the code.
- Add flat buffer templates for gfbmdl and gfbanm.
- Redid UV editor. Now using new 2D engine with some improvements. Should work better with mutliple file formats than just bfres.
- Auto compress bfres with .sbfres extension.

BFLYT:
-Add animation reference list to panes if they have any animations.
- Note the animation editor in it is not functional yet.

GFBMDL
- Progress on model importing. Currently crashes on many tests so saving is currently disabled till i figure out why.
- Add new texture map display with UV coordinates shown. Displays how transforms are handled.
- Add option to export materials and models entirely as .json files.

DAE
- improve bone/joint check.
2019-12-07 20:16:13 -05:00
KillzXGaming
e2cd3ff150 Fix typos 2019-11-16 16:41:16 -05:00
KillzXGaming
2f328a2664 DAE : Remove spaces in attribute IDs. 2019-11-16 15:34:25 -05:00
KillzXGaming
25c2abfd9b Set a default vertex skin count to prevent issues with DAE exporting 2019-11-16 14:54:28 -05:00
KillzXGaming
76ff237935 Convert triangle strip primitive types for DAE. 2019-11-16 14:08:27 -05:00
KillzXGaming
c78251aab3 A few additions
Update primative type for meshes. This will allow custom primative types for rendering.
Add strikers and punch out wii model/texture support (older formats of LM2/LM3).
Add LM2 Arcade model support (updated format of MKAGPDX)
Add support for LM2/LM3 pck audio archives.
Add support for LM2 message/localization data.
2019-11-10 08:41:17 -05:00
KillzXGaming
0c126e4155 More improvements.
Rewrote the compression handling from scatch. It's way easier and cleaner to add new formats code wise as it's handled like file formats.
Added wip TVOL support (Touhou Azure Reflections)
Added XCI support. Note I plan to improve NSP, XCI, NCA, etc later for exefs exporting.
The compression rework now compresses via streams, so files get decompressed properly within archives as streams.
Added hyrule warriors bin.gz compression along with archive rebuilding. Note i do not have texture rebuilding done just yet.
2019-09-15 19:13:01 -04:00
KillzXGaming
2da0d605fe Fix loading 3ds bflim 2019-07-27 21:05:12 -04:00
KillzXGaming
6cfb6a214f Adjust the toolbox name to no longer include "Switch" in it. 2019-07-16 17:35:21 -04:00
KillzXGaming
ab80051646 More additions and fixes.
Added GMX rendering (note explodes atm)
Fixed mario tennis aces/ultra compression (now uses external dll from Simon)
Fixed a bug where file sizes for IArchives (TMPK and ME01) would not adjust on save. casuing corrupted file data.
2019-07-05 14:45:16 -04:00
KillzXGaming
c30f758f8d A few fixes
Fix the UV editor not applying saved UV data.
Start to add basic LM2 dict file support.
Start to add GFA support (todo need BPE compression)
2019-07-02 16:12:23 -04:00
KillzXGaming
067244555a Improve gfmdl support. Fix raw astc exporting 2019-06-21 18:18:22 -04:00
KillzXGaming
04c43b8bd5 Add option to smooth normals between multiple meshes 2019-06-05 22:02:35 -04:00
KillzXGaming
60a1e52dfe Fix error dialog label size 2019-06-01 15:16:39 -04:00
KillzXGaming
67d1b6920a Some improvements from yesterday. Start to improve uv editor.
Basic tex 3ds support
BC4 textures will be rendered grayscale in opengl (not using opengl decoder)
Fix a few format issues with 3ds
Mip total method is one function in STGeneric texture
Weight format default to floats again until i find a proper fix for the 888 unform format.
2019-05-13 15:29:40 -04:00
KillzXGaming
4dcc523125 Fix normals from model importing if the model's scale was transformed 2019-04-12 16:21:00 -04:00
KillzXGaming
2197414b5f Fix normals changing when model is scaled from transform tool 2019-04-12 16:00:03 -04:00
KillzXGaming
270d441dcc More fixes
Many fixes to the enum data for switch bfres. Filter data can be edited properly.
UVs in UV editor can be transformed
2019-04-11 18:05:15 -04:00
KillzXGaming
01fda68f93 Fix bone issues and skeleton importing 2019-03-27 14:50:33 -04:00
KillzXGaming
d1f03b161f Add files for the new one.
Rework UI from scratch with proper themes and custom controls. MDI windows are now used for workspaces, comparing docs, and multiple usages. Tabs organise multiple workspaces and you can keep mdi windows maximized if you want to only use tabs. Themes currently include dark and white theme but plan to have XML files with list of color and styles
Alot of things optimized. UI is very fast and snappy now
Dae rigging fixed.
Dae bones can be imported.
Dae with textures can be imported and exported to a folder
Custom sampler editor for sampler data.
Texture refs, shader options, params, render info, and basically all material data can be added/removed and edited
User data editor
Update opengl framework by JuPaHe64 to the newest. Includes an origintation cube, multiple models in a scene, and many improvements
Skeleton can be viewed
GFPAK with some fixes in saving
NUTEXB has proper mip map viewing
PTCL Editor (Wii U and Switch). Can edit colors ( Wii U) and view textures. Also EFFN files in smash ultimate can be previewed
Files can be associated with the program and opened with on clicking them
ASTC textures can be viewed
UVs can be viewed. Includes wrap modes and also translating and scaling for some basic edits
Textures use a new editor. It includes channel viewing and some new editing options
Fixed black textures on some wii u bfres
Fixed saving sarcs in sarcs
Shortcut keys have been added in. CTRL + S can save the active file in the currently used window
Fix more issues with bfres crashing
File - New includes BNTX for creating new bntx files from scatch
Raw shader binaries can be extracted from bnsh and bfsha. Yuzu and Ryujinx can decompile these
Sharc files can have source data previewed and shader programs in XML
Aamp v1 and v2 data can be previewed. v1 can be edited and saved atm, v2 will be at a later update
Byaml uses it's own editor instead of a seperate window for easy saving within sarcs
Archives have a hex viewer
Dae exporting greatly improved and can export rigged meshes
Scene, shader param, srt, color, and texture pattern animations can all be previewed (in a list)
Memory usage is greatly improved
Narc (Nitro Archives) can be viewed and extracted.
Fixed importing TGA images
Support importing ASTC textures for bntx
Added in PBR lighting for bfres from my implimentaion in forge
Added gradient background for viewport. This can be edited in the settings
Added skybox background option for viewport. Can load cubemaps
Added grid with customizable cells for viewport.
DDS decompression no longer requires Direct X tex.
Zlib decompression has been improved for opening files that use it
Rigid bones are properly ordered on importing a mesh. May fix some exploding issues.
Endianness for KCL can be toggled for saving. Will be set to what it was using orignally
Tangents can be filled with a constant value. Will allow them to not cause seams nor flat lighting however normal maps may not work as good
Vertex buffers can be added and removed. Also re encoded
Parameters now use drop down panels with values for easier editing
Reworked the bone editor. Everything for a bone can be fully edited now besides the index, billboard index and parent index  which get set automatically
Fixed animation scaling for skeletal animations finally!
Textures can be loaded in a tab now with thumbnail displaying for easy real time edits while previewing in the viewport

Fixed support for audio files to be big endian in BARS
Textures for switch now use their own folder. You can easily add textures to this and add textures to bfres that have no bntx. If there are no textures then the bfres will automatically not have one on save.
Animations are split into multiple sub sections for switch's material animation for easier access
Bfres for wii u has better binary exporting and is fully compatiable with Wexos Toolbox (to and from)
Every section can be added in as new for both wii u and switch.
Every section can be renamed properly and mostly everything can be edited. (Key frame editing and a more in depth curve editor later)
Added option to copy UV channel
Bone weights can be previewed
Tons of fixes for the switch bfres library with more games working. Splatoon 2 (more work now), BOTW, Kirby Star Allies, and more!
Fixed 3.3 Wii U bfres from not opening
Wii U Sharcfb files can have shader program data previewed (XML)

And possibly alot more things i missed! All this is still experimental but will improve over the next few weeks
2019-03-23 12:55:09 -04:00
KillzXGaming
00875d5aec Thanos the old tool. 2019-03-23 12:52:50 -04:00
KillzXGaming
716d1c4520 More clean up and additions
- Starting to make all texture classes use STGenericTexture. This will make all functions usable between each one and converting through other classes much easier.
- Many bug fixes to the texture importer like duped texture importing, dds opening the window, index out of range issues, etc.
- Start on titlebar information.
- Start on ASTC texture format support.
- Support TGA images.
- Support FTEX importing and saving properly.
- Export models properly along with textures (with generic classes). Todo, support rigs and bones.
2018-12-10 18:48:51 -05:00