本篇不是我写的,感觉不错所以拷贝来了,呵呵呵,原创的链接:http://bbs.9ria.com/thread-97976-1-1.html
解释:Prefabs(预设)是一种资源类型,可被重复使用的游戏对象。它可以被置入多个场景中,又或者能够在一个场景中被多次置入。当你在一个场景中增加一个Prefabs,你就实例化了一个Prefabs。所有Prefabs实例都是Prefab的克隆,只要Prefabs原型发生改变,所有的Prefabs实例都会产生变化。
Prefabs的用法:如果大家要创建一些想要重复使用的东西,那么就该用到它了。
接下来我们写个小例子,看看如何使用它
1 搭建如下场景:一个地板,一个下落的立方体,调整摄像机的角度和位置,加个平行光,位置参考下图的Scene窗口,效果如Game窗口展示的那样。同时给立方体加上刚体属性(Component
-> Physics -> Rigidbody)
然后调整一下立方体的角度,运行一下,让它滚一下。
2创建Prefabs
在Preject窗口,点Create-> Prefab。然后我们从Hierarchy窗口中将立方体拖到Project窗口新创建的Prefab上。当Hierarchy中的立方体变成了蓝色,Prefabs就完成了填充。
然后你从Preject窗口中将创建的Prefabs拖入Scene窗口中,运行一下。就完成了一次克隆。它们就像双胞胎一样。
3接着我们配合Instantiate,来用代码创建多个Prefabs的实例。
Instantiate:克隆原始物体。设置位置,角度。如果一个对象,组件,脚本实例被传入。将克隆整个对相爱难过的层次,以及所有子对象。
各位同学,让我们在Project窗口点Create ->Javascript创建一个脚本
我发现可以用as3的写法来写这里面的js,各位同学请看
-
public var Pre:GameObject;//在编辑器中用来绑定的Prefabs
-
-
privatefunctionUpdate
():void
-
{
-
var instance:GameObject=Instantiate(Pre,transform.position,transform.rotation);
-
//Instantiate用法,注意参数
-
//Pre用来克隆的Prefabs
-
//transform.position脚本绑定对象的位置 就像this.transform….
-
//transform.rotation脚本绑定对象的角度 就像this.transform….
-
}
复制代码
是不是有很亲切的感觉?
4 写完脚本,我们要把它绑定到一个对象上。这时候,我们可以删除Hierarchy窗口中的立方体,然后创建一个空的游戏对象(GameObject->Create Empty),放置到原来立方体的位置上。将脚本拖放到Hierarchy窗口中的新键的空对象上,让它来执行代码。
5 在Hierarchy窗口中单击空对象,在它的Inspector窗口中就能看到绑定的脚本。然后我们把早前创建的Prefabs拖到脚本Pre右边的框上,完成了脚本中变量的绑定。
6 按小三角运行一下,搞的像粒子效果一样,是不是很嗨?
分享到:
相关推荐
在Unity3D游戏开发中,Prefabs(预设)和Instantiate(实例化)是两个非常重要的概念,它们是构建游戏对象和动态管理游戏世界的基石。本文将深入探讨这两个概念,帮助初学者理解并掌握它们在实际项目中的应用。 ...
Unity3D Prefabs 与 Instantiate 教程 Unity 3D 中的 Prefabs 是一种资源类型,可以被重复使用的游戏对象。它可以被置入多个场景中,又或者能够在一个场景中被多次置入。当你在一个场景中增加一个 Prefabs,你就...
"Rain & Snow Prefabs"特效包就是专门为Unity3D设计的一套预设粒子效果,专用于创建逼真的雨天和雪天场景。 这个特效包包含了一系列预配置好的粒子系统组件,预设(Prefab)是Unity3D中的一个核心概念,它允许...
Unity3D支持Windows、Mac、Linux、Android、iOS等多个操作系统,同时也能发布到WebGL等网络平台。 2. **项目创建与设置** 在Unity3D中,首先需要创建一个新的项目,设置项目的分辨率、目标平台等参数。描述中的...
unity3d 工具箱拖动预制体(Prefabs)、粒子特效(Particle)到场景
《Unity3D游戏开发:Prefab模块与MOD应用详解》 Unity3D作为一款强大的跨平台游戏引擎,广泛应用于游戏开发领域。"Arne-van-der-Lei-prefabs-0.0.1_mods_unity3d_MOD_"是一个针对《Risk of Rain》小型游戏的MOD,它...
2. **Unity Asset**:可能包含预设(Prefabs)、材质(Materials)、纹理(Textures)等资源,这些都是热力图在Unity编辑器中显示所需的基本元素。预设可能包含了热力图的UI组件,而材质和纹理则可能用于定义热力图...
在Unity3D中,实例化通常涉及到使用Instantiate()方法,这个方法可以复制游戏对象,包括其所有组件和子对象。 八、Coroutines和Yield Coroutines(协程)是Unity3D支持的一种特殊的编程结构,它允许在单个函数中...
总之,"Drench Game"完整项目为Unity3D初学者和进阶者提供了一个实践与学习的绝佳平台,通过深入分析其源码,我们可以掌握游戏开发的方方面面,包括逻辑控制、动画设计、UI构建等关键技能,为今后的项目开发奠定坚实...
Unity 3D是一款强大的跨平台游戏开发引擎,广泛应用于创建2D、3D游戏以及交互式体验。在“unity 3D期末大作业-坦克射击游戏”中,我们可以看到一个典型的基于Unity的学习项目,旨在帮助新手熟悉引擎的基本操作和游戏...
开始游戏开发前,需要下载并安装Unity3D编辑器,设置合适的开发环境,包括安装必要的SDK(软件开发工具包),如Android SDK、iOS SDK等,以及配置Unity3D支持的开发平台。 3. Unity3D项目结构和资源管理: Unity3D...
《微信飞机大战Unity3D项目解析》 微信飞机大战是一款深受玩家喜爱的休闲游戏,它以其简单的操作方式、丰富的游戏体验以及与社交平台的紧密结合,成为了一款极具代表性的移动游戏。本项目采用Unity3D引擎开发,为...
这通常包括了预设(Prefabs)、脚本(Scripts)和示例(Examples)等子文件夹。 导入后,我们需要设置一个基础的角色模型,并为其创建一个动画控制器。在Unity3D中,创建一个新的人类骨骼(Humanoid)角色,然后分配合适的...
Unity3D是一款广泛使用的跨平台游戏引擎,它支持多种操作系统和平台,包括iOS、Android、Windows、Mac、Linux以及Web等。Unity3D提供了强大的游戏开发工具和集成开发环境(IDE),可以用来创建2D和3D游戏。Unity3D的...
它可以包含纹理、模型、音频文件、脚本、预设体(Prefabs)、场景等各类素材。要使用这些素材包,只需将它们导入到Unity编辑器中,然后根据需要在项目中应用或修改。 学习使用Unity3D官方素材包时,建议首先了解Unity...
Unity3D是一款强大的跨平台3D游戏开发引擎,被广泛应用于游戏制作、虚拟现实和增强现实项目。在“unity3d 游戏场景模型 地形地貌素材包 Landscapes Part2.zip”这个压缩包中,包含了一系列用于构建游戏场景中的地形...
Unity3D是一款跨平台的游戏开发工具,支持多种操作系统如Windows、Mac、Linux等,并且能够发布到多个平台上,如PC端、移动端(iOS、Android)、游戏主机(Xbox、PlayStation)等。Unity3D不仅广泛应用于游戏开发,还...
- Unity3D支持的平台:Windows、Mac、iOS、Android、WebGL等 - Unity3D的优点:跨平台、可视化编辑、丰富的资源库 2. **Unity工作界面** - 浏览器:项目资源的管理与浏览 - 场景视图:3D场景的编辑和预览 - ...
- **Prefabs** 是Unity的预制体系统,它允许开发者预设一组对象及其关联属性,然后在游戏运行时重复使用。在射击游戏中,Prefab可能包含角色、敌人、武器、道具、环境物体等,便于管理游戏对象的实例化和更新。 -...
#### Unity3D基本操作与创建简单漫游 Unity3D是一款功能强大的跨平台游戏开发引擎,被广泛应用于游戏开发、虚拟现实(VR)、增强现实(AR)等领域。对于初学者而言,掌握Unity3D的基本操作是至关重要的第一步。 **...