簡體   English   中英

C#Unity游戲測試

[英]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 GameObjectHierarchy標簽進入Project選項卡到新創建的預制條目。

現在,您可以將一個公共成員變量添加到要實例化框生成的腳本中,例如:

public GameObject PrefabBox = null;

然后將您之前創建的預制條目從“ Project選項卡PrefabBox到“ Inspector選項卡中的新屬性PrefabBox上。 在同一個腳本中,您可以通過以下代碼實例化預制件的生成:

GameObject boxSpawn = GameObject.Instantiate<GameObject>(
    PrefabBox,
    new Vector3(CurrentX, CurrentY, CurrentZ),
    PrefabBox.transform.rotation);

在Unity3d文檔中查找有關動態實例化GameObjects的更多信息。

在這里找到GameObject.Instantiate的語法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM