主场景中有子场景,并且有一个立方体,上面挂有 TestAuthoring 脚本
using Unity.Entities;
using UnityEngine;
class TestAuthoring : MonoBehaviour
{
public GameObject Prefab;
}
class TestAuthoringBaker : Baker<TestAuthoring>
{
public override void Bake(TestAuthoring authoring)
{
}
}
立方体的 TestAuthoring 脚本挂了一个预制球体,并且 Sphere 上有一个 SphereAuthoring 脚本。
using Unity.Entities;
using UnityEngine;
class SphereAuthoring : MonoBehaviour
{
}
class SphereAuthoringBaker : Baker<SphereAuthoring>
{
public override void Bake(SphereAuthoring authoring)
{
}
}
当我们在 Sphere 上删除 Sphere Authoting 后,它可以正常加载
如果 Sphere 不是预制件而是在场景中,将此 Sphere 挂载到 TestAuthoring 上,SubScene 也可以正常加载
事实上,如果Sphere是一个预制件,似乎挂载所有包含Baker的脚本都会导致SubScene无法正常加载,比如Physics Shape。 只有当SubScene处于Open状态时,才能看到里面的物体。 如何在立方体中安装带有 Baker 脚本的预制件?
我解决了 Entities.Graphics 应与 URP Forward+ 一起使用。更改 URP-HighFidelity-Renderer 上的渲染路径以获得最佳兼容性。