unity3d - 为什么这些游戏对象不能在 Unity3D 中实例化?
问题描述
在下面的代码片段中,我试图以不同的概率实例化游戏对象,但我不断收到以下错误:
未找到参数列表“(Spawn06[])”的“UnityEngine.Object.Instantiate”的适当版本。
帮助将不胜感激。谢谢。
public var Characters : Spawn06[];
function SpawnCharacters() {
var i = Random.Range(0, 100);
for(var j = 0; j < Characters.Length; j++) {
if(i >= Characters [j].minProbabilityRange && i <= Characters [j].maxProbabilityRange) {
temp = Instantiate(Characters);
pos = temp.transform.position;
temp.transform.position = new Vector3(Random.Range(-3, 4), pos.y, pos.z);
}
}
}
public class Spawn06 {
public var spawnCharacters : GameObject;
public var minProbabilityRange : int = 0;
public var maxProbabilityRange : int = 0;
}
解决方案
您不能将您的类数组传递给实例化。
for(var j = 0; j < Characters.Length; j++) {
if(i >= Characters [j].minProbabilityRange && i <= Characters [j].maxProbabilityRange) {
temp = Instantiate(Characters[j].spawnCharacters); // Pass a GameObject instead of an Array of Spawn06
pos = temp.transform.position;
temp.transform.position = new Vector3(Random.Range(-3, 4), pos.y, pos.z);
}
}
}
推荐阅读
- android - SSLHandshakeException SSL 握手中止
- angular-material - 使用 CDK 拖放时 Angular Mat-List-Option 布局更改
- haskell - 解决“'cycleNext' 的方程有不同数量的参数”
- c - 如何将最大的数字推到数组的后面
- javascript - React - 映射数组未将道具正确传递给子组件
- python - 如何使用 Python3 修复 base62 编码的代码?
- java - 如何计算方差?
- ssl-certificate - 使用 Oplon 的 LBL 的自动 SSL 证书
- javascript - 覆盖 retry-axios 默认配置
- sql - 如何找到当前工作的所有员工并使用循环选择他们