我正在尝试从“.csv 文件”中获取信息并将其一个接一个地发送到 Unity 中的着色器。我想将超过 10,000 个数组信息放入着色器中,但索引的限制是 1024 左右,当它超过该数字时,它会显示“indexOutofRangeException:索引超出数组范围”
每当索引达到最大范围时,我都试图创建一个新索引,但是由于我必须将这个索引发送到着色器,所以这并不容易......
下面是我的代码。
public void addHitPoint(float xp, float yp)
{
mPoints[mHitCount * 3] = xp; // X coor
mPoints[mHitCount * 3 + 1] = yp; // Y coor
mPoints[mHitCount * 3 + 2] = 1; // intensity,
mHitCount++;
// Reset the points remained on shader
//mHitCount %= 300;
// Send the data to shader
mMaterial.SetFloatArray("_Hits", mPoints);
mMaterial.SetInt("_HitCount", mHitCount);
Debug.Log(mPoints + "," + mHitCount);
}
当 mHitCount 超过 330 时,出现如下错误:IndexOutOfRangeException: Index was outside the bounds of the array.
如何在 C# 中取消限制索引范围?请帮忙,谢谢。