[英]C# Unity game test
我目前正试图通过C#让游戏在团结中运作。 我认为我在这一点上做得很好。
游戏是堆叠器游戏:
一个盒子将从左向右移动,你按空格来叠加它如果它在最后一个盒子上你放置它进一步。
但现在我的问题是:盒子是Blender制造的物体。
但我希望我正在当前盒子下方创建的盒子,玩家控制的盒子看起来像我在Blender中制作的盒子。
我怎样才能做到这一点? 到目前为止我只是使用:
GameObject cb = GameObject.CreatePrimitive(PrimitiveType.Cube);
cb.transform.position = new Vector3(CurrentX, CurrentY, CurrentZ);
创建一个普通的立方体。
我不认为2行代码可以完成你刚才提到的所有内容。 希望,这只是代码中的一小部分。
但现在我的问题是:盒子是Blender制造的物体。
但我希望我正在当前盒子下方创建的盒子,玩家控制的盒子看起来像我在Blender中制作的盒子。
您必须将框从Blender导出到.fbx
, .blend
或Unity支持的任何其他3D模型格式。 然后,您可以导入导出到Unity的文件。 这是一个教程。
将导入的cube / GameObject放入预制件中,然后使用Instantiate
函数每次创建新的多维数据集,而不是GameObject.CreatePrimitive
。
将当前代码更改为
public GameObject boxPrfab;
GameObject cb = Instantiate(boxPrfab, Vector3.zero, Quaternion.identity) as GameObject;
cb.transform.position = new Vector3(CurrentX, CurrentY, CurrentZ);
确保将该预制件拖入boxPrfab
插槽。
我假设box
GameObject
要产卵已经存在于现场。 然后在“ Project
选项卡中创建一个Prefab
,方法是右键单击选项卡,然后选择“ Create
- >“ Prefab
。 将预制件命名为敏感的东西,例如BoxPrefab
。 现在拖放的box
GameObject
从Hierarchy
标签进入Project
选项卡到新创建的预制条目。
现在,您可以将一个公共成员变量添加到要实例化框生成的脚本中,例如:
public GameObject PrefabBox = null;
然后将您之前创建的预制条目从“ Project
选项卡PrefabBox
到“ Inspector
选项卡中的新属性PrefabBox
上。 在同一个脚本中,您可以通过以下代码实例化预制件的生成:
GameObject boxSpawn = GameObject.Instantiate<GameObject>(
PrefabBox,
new Vector3(CurrentX, CurrentY, CurrentZ),
PrefabBox.transform.rotation);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.