Skip to content

Commit

Permalink
wip
Browse files Browse the repository at this point in the history
  • Loading branch information
saturday06 committed Oct 10, 2024
1 parent c5d83d0 commit 3d69fec
Showing 1 changed file with 20 additions and 5 deletions.
25 changes: 20 additions & 5 deletions src/io_scene_vrm/exporter/vrm0_exporter.py
Original file line number Diff line number Diff line change
Expand Up @@ -131,16 +131,26 @@ def export_vrm(self) -> Optional[bytes]:
return gltf.pack_glb(json_dict, buffer0)

def write_glb_structure(
self, _progress: Progress, json_dict: dict[str, Json], buffer0: bytearray
self, progress: Progress, json_dict: dict[str, Json], buffer0: bytearray
) -> None:
json_dict["asset"] = {"generator": self.get_asset_generator(), "version": "2.0"}
self.write_scene(_progress, json_dict, buffer0)
self.write_scene(progress, json_dict, buffer0)
self.write_vrm_extension(progress, json_dict, buffer0)
json_dict["buffers"] = [
{
"byteLength": len(buffer0),
}
]

def write_vrm_extension(
self, _progress: Progress, json_dict: dict[str, Json], _buffer0: bytearray
) -> None:
vrm_dict: dict[str, Json] = {}
json_dict["extensionsUsed"] = ["VRM"]
json_dict["extensions"] = {
"VRM": vrm_dict,
}

def write_scene(
self, progress: Progress, json_dict: dict[str, Json], buffer0: bytearray
) -> None:
Expand All @@ -157,9 +167,14 @@ def write_scene(
progress, json_dict, node_dicts, buffer0, _parent_object_name=None
)
)
scene0_nodes.append(
self.write_secondary_nodes(progress, json_dict, node_dicts, buffer0)
)
if not any(
node_dict.get("name") == "secondary"
for node_dict in node_dicts
if isinstance(node_dict, dict)
):
scene0_nodes.append(
self.write_secondary_nodes(progress, json_dict, node_dicts, buffer0)
)
json_dict["scenes"] = [{"nodes": scene0_nodes}]
json_dict["scene"] = 0

Expand Down

0 comments on commit 3d69fec

Please sign in to comment.