当我调整视图时,统一场景和游戏视图中的对象正在消失

问题描述

所以我正在尝试学习 Unity DOTS 并且我已经构建了一个渲染一堆立方体的程序。但是出于某种原因,在游戏视图和场景视图中,当我四处移动相机时,屏幕边缘的立方体开始消失。我不知道是不是有一些设置导致不可见对象无法渲染或其他原因,或者可能与它们是实体有关?

这是我用来生成瓷砖的代码

private void SpawnTiles()
{
    EntityArchetype tileArchetype = entityManager.CreateArchetype(
        typeof(Translation),typeof(Rotation),typeof(RenderMesh),typeof(RenderBounds),typeof(LocalToWorld),typeof(TileComponent)
    );
    for (float i = 0f; i < gridX; i++)
    {
        for (float j = 0f; j < gridY; j++)
        {
            MakeTile(tileArchetype,new float3(i,0.0f,j));        
        }
    }
}

private void MakeTile(EntityArchetype tileArchetype,float3 translation)
{
    Entity tile = entityManager.CreateEntity(tileArchetype);
    entityManager.AddComponentData(tile,new Translation
    {
        Value = translation
    });

    entityManager.AddComponentData(tile,new TileComponent
    {
        x = (int) translation.x,y = (int) translation.y,z = (int) translation.z,isOccupied = false,isTraversable = false,index = CalculateIndex((int) translation.x,(int) translation.y,(int) translation.z),cameFromTileIndex = -1
    });

    entityManager.AddSharedComponentData(tile,new RenderMesh
    {
        mesh = tileMesh,material = tileMaterial
    });
}

Screenshot showing clipping

解决方法

RenderBounds 值保留为 default(AABB) 时会发生这种情况,因为它的大小/范围为 0,因此使您的网格成为平截头体剔除系统的一个点。