Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/334.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Unity C#:渲染一组精灵?_C#_Unity3d_Rendering_Tile - Fatal编程技术网

Unity C#:渲染一组精灵?

Unity C#:渲染一组精灵?,c#,unity3d,rendering,tile,C#,Unity3d,Rendering,Tile,因此,我创建了一个名为“Tile”的对象,其中包含一些属性,如“isSolid”等。然后,我绘制了基本的精灵“Air”和“Sand”,并在其上绘制了Tile脚本。现在我想做以下几件事;我有一个包含2d数组“Tile[,]map=new Tile[30100];”的脚本,在Start()例程中,我用沙盘填充了每个元素。现在我有了一个问题:如何在屏幕上显示2000个精灵?稍后我将根据玩家的位置绘制一个20x10的区域,但是,如何才能最有效地绘制一组精灵?有没有一种方法可以进行批处理,这样我就可以在新

因此,我创建了一个名为“Tile”的对象,其中包含一些属性,如“isSolid”等。然后,我绘制了基本的精灵“Air”和“Sand”,并在其上绘制了Tile脚本。现在我想做以下几件事;我有一个包含2d数组“Tile[,]map=new Tile[30100];”的脚本,在Start()例程中,我用沙盘填充了每个元素。现在我有了一个问题:如何在屏幕上显示2000个精灵?稍后我将根据玩家的位置绘制一个20x10的区域,但是,如何才能最有效地绘制一组精灵?有没有一种方法可以进行批处理,这样我就可以在新的sprite上实例化包含我想要绘制的每个sprite的每个Update()调用,或者我该如何做


public class WorldGenerator : MonoBehaviour
{
    public int Width = 100;
    public int Height = 20;

    public Tile t1_Air;
    public Tile t2_Sand;

    public string csvMap;
    readonly int offset = 1;

    Tile[,] map = new Tile[20, 100];

    // Start is called before the first frame update
    void Start()
    {
        for(int x = 0; x < Width; x++)
        {
            for(int y = 0; y < Height; y++)
            {
                if (y < 10)
                    map[x, y] = t2_Sand;
                else map[x, y] = t1_Air;                  
            }
        }
    }

    // Update is called once per frame
    void Update()
    {
        //draw the tiles held in the map here
    }
}


公共类WorldGenerator:单一行为
{
公共整数宽度=100;
公共内部高度=20;
公共瓷砖t1_空气;
公共瓷砖t2_沙;
公共字符串csvMap;
只读整数偏移=1;
瓷砖[,]贴图=新瓷砖[20100];
//在第一帧更新之前调用Start
void Start()
{
对于(int x=0;x
稍后,我将读取一个csv文件,在Start()函数中创建一个级别,听起来像是一个a的作业。我将尝试该功能,谢谢