fix sps/xps parser crash: apparently those 4 bytes were for a third part of metadata for those files. HTML client now shows this information if available.
example icon: id2_example_001 (12 vertices, 4 triangles)
I've saved and included this icon in the .PSU and .SPS formats. .PSV is a bit more complicated for a valid export.
Example icon shows vertex colours with no animation nor includes a texture (texture type 3).
was considering adding new formats, but its not one of the big five (translation: not MAX/PWS or CBS), and I can barely find any examples to test with. Oh well. adding them to gitignore already. If the demand comes up, I've made the related hexpat's for them anyway.
.xpo and .spo (assuming they're like .xpo files) files are out of scope for this project, if anyone asks. Reason being is that they usually exclude icon data, and even icon.sys. This makes it rather useless to me.
It's a bit nasty, however. Don't really know what else to do-
with this code other than attempt to support animations.
aeiou, I'm not really sure... again.
Minor updates to versioning, and added raw icon file support to both node clients.
And that's it from me. Other than using GLB instead of .glTF triplets, I don't know what to do with the exporter. Would update the HTML client, yet I'm not sure on the implementation details yet.
comment: "was going to update icon.js to use more for of loops, but didn't actually see a good use for them, oh well."
all intentional console.logs are now console.info or console.debug depending on use.
enabled back-face culling on HTML client, as a few models depended on it for certain effects (VJ2, Okami 2).
---
Likely my last commit for a while, again.
pretty much makes it faster, and buffer is now clumped together with all vertex data, since the other bytes from the normals, uv and colour information adds up, and since they don't change, this makes sense, at least to me.
Now that I've used the reference client to generate some glTF files, I've learned what I was doing wrong.
to be honest, rotating on X wasn't my first thought either.
Turns out the whole colour thing was because of colour spaces. I feel like I'm going to have a distaste for those in the future.
Has a few bugs, however:
* Doesn't support textures.
* Exports upside down, and attempting to fix it inverts geometry.
This is probably my last commit to this project from amaryllis.
At least for a while.
Also add helpers to exports (uncompress and bgr2rgb functions)
Still stuck on the whole oversaturation thing.
Considering writing something to convert icon objects to a more usable model format.
caveat: some icons aren't meant to do this and will be over-saturated. Some icons are meant to over-saturate, but I don't mind that as much as the one's that aren't. The criteria that allows this is unknown to me.
Long version:
Putting an SPS|XPS into the PSU input would read as if the file was very long, so added a 127-file limit (I think this is reasonable) to prevent prolonged stalling.
Added SPS|XPS support to the library, which is the third most common contained format besides PSU and PSV.
Updated demos.
Technical changes:
removed unused u16le definition from readEntryBlock(), since permissions are better read as a u32 instead
added PSV and SPS|XPS reader functions to c6 exports, since I forgot in 0.3.4
moved some stuff around in HTML demo, especially the old raw icon.sys and icon input boxes, since I'm finding parsing a collection of files more useful then the actual standalone files themselves.
HTML-demo: added an "show advanced options" checkbox that unhides features deemed too niche for conventional use