Salad Dais
1a308e9671
Mesh serialization clarifications
2022-09-12 14:17:33 +00:00
Salad Dais
7b21e5634c
Slightly faster weights (de)serialization
2022-09-10 00:04:49 +00:00
Salad Dais
e4548a285d
Serialize LLMesh internals with NumPy
...
Easy 2x speedup! Still need to do the vertex weights, but those
have irregular alignment.
2022-09-08 23:44:53 +00:00
Salad Dais
72e926f04c
Better bind shape application
2022-09-08 18:58:28 +00:00
Salad Dais
d9fa14b17c
Faster vec3 normalization
2022-09-08 18:27:01 +00:00
Salad Dais
33c5abaaf4
Clarify glTF comments
2022-09-08 17:17:54 +00:00
Salad Dais
2dfd61fcc5
Only calculate inverse transpose bind shape matrix once
2022-09-08 05:48:52 +00:00
Salad Dais
eb58e747ce
Fix glTF skinning implementation
...
Still a little funky, but things display correctly now.
2022-09-08 00:32:10 +00:00
Salad Dais
1d221a2289
glTF: Apply bone scale and rotation to inverse bind matrices instead
...
Blender can't do anything intelligent with them. Fixes major display
issues for collision volume scaling. Figure out how to round-trip
correctly on export later.
2022-09-02 06:47:09 +00:00
Salad Dais
2ffd0458d0
More glTF cleanup
2022-09-01 20:20:02 +00:00
Salad Dais
25f533a31b
glTF fixups, parse skeleton definition from avatar_skeleton.xml
2022-09-01 16:57:36 +00:00
Salad Dais
570dbce181
Add WIP glTF conversion code
...
Related to #24
2022-08-29 14:10:56 +00:00
Salad Dais
ccb63e971b
Reorganize collada code a bit
2022-08-29 13:49:55 +00:00
Salad Dais
e945706d2b
Don't hardcode VisualParams path
2022-08-21 04:52:30 +00:00
Salad Dais
6c748a6ab2
More collada notes
2022-08-21 04:52:05 +00:00
Salad Dais
6abc7ca7d2
Fix colladatools log call
2022-08-19 16:57:31 +00:00
Salad Dais
e46b4adad2
Update collada notes
2022-08-18 15:44:23 +00:00
Salad Dais
da05a6cf1f
Begin reshuffling inventory management code
2022-08-18 14:30:42 +00:00
Salad Dais
f06c31e225
Greatly improve matrix handling logic in collada code
2022-08-18 14:29:28 +00:00
Salad Dais
b4e5596ca2
Add more utils for converting between quat and euler
2022-08-08 00:38:09 +00:00
Salad Dais
118ef2813a
Fix new flake8 lint errors
2022-08-01 01:41:15 +00:00
Salad Dais
4a84453ca4
Add start of proxy inventory manager
2022-07-31 16:54:57 +00:00
Salad Dais
34316cb166
Fix LLSD notation serialization with embedded newline
2022-07-30 14:39:48 +00:00
Salad Dais
2ee8a6f008
Clean up typing to appease the linter
2022-07-28 18:26:05 +00:00
Salad Dais
e951a5b5c3
Make datetime objects (de)serialize in binary LLSD more accurately
...
Fixes some precision issues with LLBase's LLSD serialization stuff
where the microseconds component was dropped. May still get some
off-by-one serialization differences due to rounding.
2022-07-27 22:42:58 +00:00
Salad Dais
68bf3ba4a2
More comments in mesh module
2022-07-27 22:21:42 +00:00
Salad Dais
5b4f8f03dc
Use same compression ratio for LLSD as indra
2022-07-27 22:16:31 +00:00
Salad Dais
ba296377de
Save mesh deformers as files rather than uploading directly
2022-07-26 02:12:54 +00:00
Salad Dais
dbae2acf27
Add basic AssetUploader class
...
Should make it less anoying to upload procedurally generated mesh
outside of local mesh mode
2022-07-25 22:08:28 +00:00
Salad Dais
c0a26ffb57
Send proxy-created Messages reliably where appropriate
2022-07-21 21:44:06 +00:00
Salad Dais
7dfb10cb51
Make TextureEntry deserialization lazy in the ObjectUpdate case too
2022-07-21 08:05:25 +00:00
Salad Dais
de33906db5
Add a couple more enum defs
2022-07-21 08:05:17 +00:00
Salad Dais
605337b280
Remove erroneous comment
2022-07-20 21:30:03 +00:00
Salad Dais
235cd4929f
Update message template to add new messages / blocks
2022-07-20 21:23:28 +00:00
Salad Dais
b5e8b36173
Add more enum and flag defs to templates.py
2022-07-20 06:35:04 +00:00
Salad Dais
08a39f4df7
Make object update handling more robust
2022-07-20 06:35:04 +00:00
Salad Dais
61ec51beec
Add demo autoattacher addon example
2022-07-19 23:48:40 +00:00
Salad Dais
9adbdcdcc8
Add a couple more flag definitions to templates.py
2022-07-19 09:49:43 +00:00
Salad Dais
e7b05f72ca
Dequantize TimeDilation message var
2022-07-19 05:57:19 +00:00
Salad Dais
75f2f363a4
Handle TE glow field quantization
2022-07-18 22:29:37 +00:00
Salad Dais
cc1bb9ac1d
Give MediaFlags and BasicMaterials sensible default values
2022-07-18 22:08:06 +00:00
Salad Dais
8c0635bb2a
Add classmethod for rebuilding TEs into a TECollection
2022-07-18 06:37:20 +00:00
Salad Dais
309dbeeb52
Add TextureEntry.st_to_uv() to convert between coords
2022-07-18 00:34:56 +00:00
Salad Dais
4cc87bf81e
Add a default value for TextureEntryCollection.realize() num_faces
2022-07-17 01:09:22 +00:00
Salad Dais
f34bb42dcb
TextureEntry -> TextureEntryCollection, improve .realize()
...
The "TextureEntry" name from the message template is kind of a
misnomer, the field actually includes multiple TextureEntries.
2022-07-17 00:45:20 +00:00
Salad Dais
59ec99809a
Correct TE rotation quantization
...
Literally everything has its own special float quantization. Argh.
2022-07-16 23:17:34 +00:00
Salad Dais
4b963f96d2
Add TextureEntry.realize() to ease indexing into specific faces
2022-07-14 03:10:11 +00:00
Salad Dais
58db8f66de
Correct type signatures for TextureEntriy
2022-07-10 17:58:13 +00:00
Salad Dais
95623eba58
More InventoryModel fixes
2022-07-10 01:55:34 +00:00
Salad Dais
289073be8e
Add InventoryModel diffing
2022-07-09 02:48:23 +00:00