New: Add interface-filtered object references

Add native hard and soft reference types for scene objects that implement
a scripting interface:

- ScriptingObjectInterfaceReference<T>
- SoftObjectInterfaceReference<T>
This commit is contained in:
Andrei Gagua
2026-05-24 10:12:31 +03:00
parent 00e4b09e7e
commit f8d436ca75
19 changed files with 876 additions and 16 deletions
+18
View File
@@ -156,11 +156,29 @@ public:
{
Write(v.Get());
}
template<typename T>
FORCE_INLINE void Write(const ScriptingObjectInterfaceReference<T>& v)
{
uint32 id[4];
v.CopyID(id);
WriteBytes(id, sizeof(id));
}
template<typename T>
FORCE_INLINE void Write(const SoftObjectReference<T>& v)
{
Write(v.Get());
}
template<typename T>
FORCE_INLINE void Write(const SoftObjectInterfaceReference<T>& v)
{
uint32 id[4];
v.CopyID(id);
WriteBytes(id, sizeof(id));
}
template<typename T>
FORCE_INLINE void Write(const AssetReference<T>& v)
{