Skip to content

Identify identical meshes #324

Description

@kirides

Identical meshes should be identified, by introducing something like a per-scene (loaded world) size_t mesh_id. Especially for things like NodeAttachments which are runtime-created and destroyed.

By being able to group node attachments by their mesh (for plain shadows, or text+mesh for color pass), we will be able to much improve instancing of skeletal meshes like MOBs or weapons on people's hands/hips, heads...

This accounts for most draw calls in the current main pass in Khorinis.

Currently we can only really batch-draw static mesh VOBs due to them sharing the same zCModel/Visual. Skeletal meshes have "unique-ish" models, but non-unique nodes.

Additionally: if we're able to correctly handle this mesh identification, we should try to reduce per-mesh GPU resources. Instead of having vertex/index buffers per mesh instance, we could have a set of "static-per-mesh" buffers for those, and a set of dynamic morph-mesh/dynamic verticies buffers as required.

Metadata

Metadata

Assignees

No one assigned

    Labels

    backlogThings that are not important or need ASAP fixesenhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions