`ShaderGroup.ShaderGroupBlocksSize` (aka `Unknown_30h`) contains the byte size divided by 16 of the ShaderGroup block and its children blocks, when they are packed contiguously in the resource file.
`DrawableBase.DrawableModelsBlocksSize` (aka `Unknown_9Ah`) is similar but with the size of the `DrawableModelsBlock`.
Incorrect values can cause crashes when the model is unloaded.
Discussed here https://discord.com/channels/329138547833700352/329142468102586368/1139264754767122533
* - Add ability to edit/add ytyp files to project.
- Add ability to edit/add ytyp archetype files to ytyp.
- Add ability to add/remove entities from mlo archetype defs.
- Add ability to save ytyp files.
- Add dialog popup before optimizing grass batches.
- Fix grass batches not being selected when chaning selection in project explorer.
- Merged with upstream/master.
- Squashed last 4 commits for PR cleanliness.
* Fixed windows forms reference error.
* - Added error checking to deleting mlo entities.
- Fixed various bugs with deleting mlo entities.
- Fixed edit archetype panel Asset Type box.
- Removed redundant/unnecessary.
- Removed backwards references between MCEntityDef and YmapEntityDef. All ymap entity to mcentity references are grabbed using indecies in the MloInstanceData class.
- Fixed "YmapMenu" not showing when selecting entities/mlo entities in project form.
Current bugs:
- Loading a ytyp file -- mlo entities are not editiable, and are created in the world.
- entitysets are not editable (properly).
- Removing an mloinstancedef from a ymap does not delete the mlo instance's gizmo from the world, and it's still selectable. (Although all references are lost, and I believe collected by the GC?)
* - Moved archetype initialization methods YmapFile.InitYmapEntityArchetypes(GameFileCache gfc) and MloInstanceData.InitYmapEntityArchetypes(GameFileCache gfc)
- Added ability to load mlo instance defs through ymap files.
- Fixed add method for mlo archetypes.
* - Removed SetOrientationInv.
- Removed unreachable code + updated comment.
- Renamed CreateEntity to CreateYmapEntity, and renamed params for consistency.
* Split calls to CreateYmapEntity() and MloArchetype.AddEntity().
* Fixed redundant rotation inversions.
* - Added ability to select rooms.
- Changed tree view grouping for mlo entities.
- Fixed projectexplorer selection bugs.
- Added ability to toggle mlo entity sets.
- Fixed some change events when editing archetypes.
- Made some changes to the way I check for deleting instances.
- Added a new bounding box check for painting grass.
- Made GetNewGrassBounds return a bounding box instead of our parameters
- Added new Expand method to bounding box util
- Added instance radius check and instance brush check to project form for possible future instance types (Props)
- Added grass brush gizmo
- Updated gui for grass instance batch panel
- Fixed bug with GoToPosition (with bounds)