Skip to content

Fix component dependencies in assets #69

@gorlak

Description

@gorlak

Component types are C++ classes that are referenced in assets and allocated entirely by their registration with the reflection system.

In statically linked builds the compiler dead-strips those classes since it doesn't know we need them (since we don't call any functions or even a constructor until runtime). We need a script to extract all the relevant types and generate some glue code to ensure the compiler doesn't discard them at link time.

In dynamically linked builds (like the editor) we need a system to ensure we dynamically load modules that are relevant to assets that need them. This goes hand-in-hand with dynamically loading modules that are build for specific projects. We can probably take a load-everything-under-the sun approach for the time being. The editor just needs to know where to look for modules to load into its address space before starting to load assets.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions