携手创作,共同成长!这是我参与「日新计划 8 月更文挑战」的第1天,点击检查活动详情
关于作者
众所周知,人生是一个绵长的流程,不断克服困难,不断反思行进的进程。在这个进程中会产生许多关于人生的质疑和思考,所以我决议将自己的思考,经验和故事悉数分享出来,以此寻找共鸣!!!
专注于Android/Unity和各种游戏开发技巧,以及各种资源分享(网站、工具、资料、源码、游戏等)
欢迎重视公众号【空名先生】获取更多资源和沟通!
条件
这是小空坚持写的Unity新手向系列,欢迎品尝。
小空为了方便更多的人(新手)看理解,运用的汉字,真实项目尽量运用英文规矩昂。
新手(√√√)
大佬(√)
实践进程
今天小空带大家学习Unity创立游戏物体的常用几种办法。一定要紧记。
构造办法
直接运用new的形式来创立一个的空仅带有Transform的GameObject。
参数为创立的游戏物体的名字叫什么。
void Start()
{
GameObject testOne = new GameObject();
GameObject testTwo = new GameObject("修仙");
//能够增加组件
testOne.AddComponent<BoxCollider2D>();
testTwo.AddComponent<MeshRenderer>();
}
从图中能够看出,现将脚本挂载在一个物体上,然后运转就会在当前场景创立两个物体,并且能够随时给物体增加其他组件。停止运转后物体会主动毁掉。
Instance
我相信也是常用的办法,有时分在开发的时分,能够有个类专门都是各式各样的物体指向,然后其他地方直接引证,就像Java里面的静态相同。这样避免了在不同的脚本指向不同的物体因遗忘导致的混乱。
一共有物种创立办法:
public class Test : MonoBehaviour
{
//外面指向的一个物体
public GameObject prefab;
public GameObject prefabFather;
void Start()
{
if (prefab==null||prefabFather==null)
{
throw new NoNullAllowedException("目标不可为空");
}
GameObject testOne = new GameObject();
GameObject testTwo = new GameObject("修仙");
//能够增加组件
testOne.AddComponent<BoxCollider2D>();
testTwo.AddComponent<MeshRenderer>();
GameObject.Instantiate(prefab); //实例化目标
GameObject.Instantiate(prefab, prefabFather.transform); //创立的时分指定父亲
GameObject.Instantiate(prefab, prefabFather.transform, false); //分配父亲的时分是否保持原始的国际位置,false不保存,true保存
GameObject.Instantiate(prefab, prefabFather.transform.position,
Quaternion.identity); //Quaternion.identity -目标与国际轴或父轴完美对齐(无旋转)
GameObject.Instantiate(prefab, prefabFather.transform.position, Quaternion.identity, prefabFather.transform); //创立目标的同时指定父亲
}
}
体系CreatePrimitive
创立体系内置的基础物体,比方Cube(正方体),Plane(平面),Sphere(球体)。
GameObject.CreatePrimitive() 传递的是PrimitiveType里的枚举。
GameObject.CreatePrimitive(PrimitiveType.Cube); //创立个正方体
GameObject.CreatePrimitive(PrimitiveType.Sphere); //创立个球体
GameObject.CreatePrimitive(PrimitiveType.Capsule); //创立个胶囊
GameObject.CreatePrimitive(PrimitiveType.Cylinder); //创立个圆柱体
GameObject.CreatePrimitive(PrimitiveType.Plane); //创立个占用内存大的平面
GameObject.CreatePrimitive(PrimitiveType.Quad); //创立个占用内存小的平面
作者:小空和小芝中的小空
转载阐明-务必注明来源:芝麻粒儿 的个人主页 – 专栏 – ()
这位道友请留步☁️,我观你气度不凡,谈吐间隐约有王者霸气,日后定有一番大作为!!!周围有点赞保藏今天传你,点了吧,未来你成功☀️,我分文不取,若不成功⚡️,也好回来找我。