ploaj / ssbhlib Goto Github PK
View Code? Open in Web Editor NEWA library for dealing with SSBH rendering format
A library for dealing with SSBH rendering format
2019 works, but 2017 has an outdated MSBuild version among other building issues.
Just as the title says, it just fails to launch now. Happens to TNN too.
I'm using Win10 Pro, version 1809
for TNN, Win10 Home, version 1903
#justwindowsthings
The easiest solution is probably to disable UI updates while the animation is playing
Camera controls to control x, y, z, yaw, pitch, roll, and zoom would be useful, especially for stage models that are generally very far away from the origin.
I actually have found a manual fix for these issues, but it would be better to implement without me needing the manual fix regardless. The main issue is rotation values in an export ANIM use radians instead of degrees, so I multiply all the rotation values by (180 / pi) in Brawlbox. Secondly, for specifically Yoshi, his Snout and Cheek bones are inverted (I either had to multiply one of the rotation axes values by -1 or add 180 degrees. I forgot.)
Expected image (exported with Switch-Toolbox):
Hello !
I’m a Studio SB user and as a graphic design, I love so much your software !
I have discover Cross Mod, seems to be a same software (but better?) and I was surprised than « save screenshot » was unavailable
It would be possible to add him? :)
a mesh with a material assigned that got two sided culling wont render in the application.
(in rasterize state-cullmode set to 2)
Hi, after I have successfully imported both smd and dae models exported from CrossMod into both Blender and Cinema 4D, I have noticed that the UV maps are broken.
Here's an example with Incineroar (gaogaen), where I have only applied the main body texture :
I have tried both SMD and DAE, but both yield the same results. Just in case, I tried the SMD file with Cinema 4D, and had the same problem.
First test I can confirm is on Game & Watch, there are two issues immediately presented:
I assume the amount of processing needed to render the fighter blocks up the thread and doesn't present an opportunity for the Tick event to fire, but can't confirm. I don't know what's wrong with the button color.
It might be ok to just resort the meshes every frame to avoid having to reorder everything in the model container.
When rendering a model, the background seems to be rendered with it. If this is intentional, could an option be added to render without a background? And for textures, I can't seem to save them as png or anything.
Upon loading a folder with the latest commit of CrossMod to view a model, I am getting this exception. Occurs with both vanilla and modded models.
I am using an NVIDIA GeForce GTX 970 GPU. I can provide more information if necessary.
When trying to open a character without a material file, the program will keep throwing errors without closing unless terminated via task manager.
This only occurs when the program is opening a specific character model file whose material file hasn't been previously loaded. If the material file for the character has been loaded previously, but then deleted and then reopened again, it will show the model albeit with visual errors.
The program will throw the usual errors without terminating if it opens a different model file, even if it's for the same character.
Converting a .numatb file to .xml and back with no changes results in different binary data compared to the source file. Converting this new .numatb to .xml and comparing the two .xml files shows they are identical. Unsure of the specific commit where this started occurring, though MatLab compiled from source from Cross Mod's 0.14 release does not have this issue. Example files are provided below.
matl_issue.zip
The material preset CustomVector47 No PRM (Dedede) doesn't apply normal maps in-game, there is a sampler for normal map and it renders it in crossmod but it is not rendered in-game.
For some reason the application does not load models anymore on my new PC (same applies to StudioSB). It gives off errors which are shown below. Tried deleting the shaders folder and reloading, didn't work.
With more details, the error gives this (in a txt file for convenience):
message.txt
My new PC is meant to be a significant upgrade over the old one which could load models perfectly fine.
CrossMod toggle for baked lighting similar to diffuse, specular, emission, and rim lighting.
ex: SsbhLib vs SSBHLib
Currently when you open a model folder, it lists only that folder and its immediate descendants in the filetree. Personally, it'd be much more user friendly if importing a root folder recursively imported sub-directories.
This is something that I was tempted on working on but I wanted to get it in writing first.
My current idea is to introduce a new node type for "projects", which are parent nodes that are renderable that proxy to the first available renderable model. That way, clicking on a folder would allow you to "preview" the model. Other than that it'd be the usual recursive tree.
I've tried exporting two different characters : Inceneroar (gaogaen) and Corrin (kamui).
Exporting a model to dae generates the following unhandled exception :
> CrossMod.exe!CrossMod.IO.IO_DAE.ExportIOModelAsDAE(string FileName, CrossMod.IO.IOModel m) Line 299
System.Collections.Generic.KeyNotFoundException : 'La clé donnée était absente du dictionnaire.'
The french part translates into "The given key didn't exist in the dictionary".
Exporting a model to smd seems to work fine, but I get the following error when importing into blender using Source Tools :
I might be doing something wrong, but I can't export models (with UVs and rigging) because of that.
This should show if the shader label is invalid and what required attributes are missing. Placing a red/yellow checkerboard icon next to the errors could make the errors more intuitive. This also requires knowing what meshes are assigned to the given material and what attributes are missing for each mesh.
I know this would be a very low priority enhancement, but is there a chance the ink color could match more than just the default inkling?
This affects color grading and the 3D LUT.
Some files have different alignment/padding after export.
Example output for SSBHBatchProcess:
Files root\fighter\captain\model\body\c00\dark_model.numatb and root\fighter\captain\model\body\c00\dark_model.numatb_out do not match
Files root\fighter\captain\model\body\c00\light_model.numatb and root\fighter\captain\model\body\c00\light_model.numatb_out do not match
1:1 Export for type Matl
1:1 Export for type Hlpb
1:1 Export for type Matl
Files root\fighter\captain\model\body\c00\model.numdlb and root\fighter\captain\model\body\c00\model.numdlb_out do not match
1:1 Export for type Mesh
1:1 Export for type Skel
'tis all I came here to ask.
It should be possible to access all the textures from the default textures folder. These can be hardcoded rather than loaded from images for simplicity.
Playing with the main render settings doesn't help at all with the problem, but it appears as though the shaded mode is what factors into the issue as the emission mode renders it at a proper brightness. Unsure of the precise commit this issue started occurring in, but more information can be provided if necessary.
https://github.com/Ploaj/SSBHLib/blob/cross-mod-old/CrossMod/Tools/AnimationExport.cs
https://github.com/Ploaj/SSBHLib/blob/cross-mod-old/CrossMod/GUI/ModelViewport.cs#L129
Wasn't sure if I should have created an issue here or the StudioSB repository, but since this is related to recent SSBHLib changes (as noted in the commit message) I thought I should post the issue here. If I need to move this issue to the StudioSB repository this can be closed and I can resubmit it there.
Commit b4f2f07 in StudioSB causes vertex attributes with camel casing (map1, uvSet, colorSet1) to use pascal casing (Map1, UvSet, ColorSet1). The game cannot parse these vertex attributes correctly and causes the meshes to use the yellow checkerboard dummy texture to note missing vertex attributes expected in the material.
Add a MatlTools
class and associated tests. This will replace most of the code for MatLab. Creating a new entry from existing attributes and shader label allows for intelligently assigning material presets.
void SerializeXml(TextWriter writer, Matl matl)
Matl DeserializeXml(TextReader reader)
MatlEntry FromShaderAndAttributes(MatlEntry source, bool preserveTextureNames)
As the title says, for some reason, I can't open Bayo's default costume in Crossmod. Whenever I do, the program just closes itself but every other costume, including Bayo's alt, works just fine. I'm not sure if it's a problem with the program and my computers or just my computers' settings because this happened on two different computers.
This should come after #50 and can probably be done with FileSystemWatcher.
The gesture text can be "Ctrl+R" to be consistent with web browsers and other applications.
I'm grateful that I can even export the nutexb and numdlb files, but going through multiple models becomes very tiring.
I'm more concerned about the numdlb files, rather than the nutexb files, where I already used Switch-Toolbox to convert the majority of textures.
This can be probably fixed by moving rendering to the UI thread or using some kind of synchronization
I'm trying to export the models but it's not letting me.
Back in Crossmod, I would just right-click the nutdlb, save it as an SMD, and then work from there.
I would just go back to Crossmod but for whatever reason, I can't seem to find a .zip on here that includes the .exe file.
This will require checking what mesh object is assigned to the material. If any of the attributes required by the shader, including Position0, Normal0, and Tangent0 are missing from the mesh object, the mesh object should render as the yellow checkerboard. Additional attributes don't trigger the yellow checkerboard.
it seems that scaling is being read wrong on certain animations when imported into the viewer.
note this animation & model pair below -- this is boss/darz/model/body/model.numdlb with the animation boss/darz/motion/body/entry.nuanmb
exporting the animation to any format obviously uses these values and maintains the issue. however, if i disable scaling on export:
then the issue disappears--so something seems to be invalid with the scaling when reading this animation.
When previewing any ink meshes, ones with or without any color set attributes, Cross Mod's yellow checkerboard will override the material of the mesh as if it were missing a vertex attribute. Opening the ink material in the material editor will result in Cross Mod claiming that the ink meshes are missing a vertex attribute named "ink_color_set" when no such vertex attribute exists to my knowledge. The material editor properly lists each vertex attribute tied with the mesh, but the addendum of this seemingly non-existent attribute causes issues.
The program '[4592] CrossMod.exe' has exited with code -1073741819 (0xc0000005) 'Access violation'.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.