unity3d 基础知识点

1、prefab:

  提供类似于c++中类的概念,方便用户建立对象。比如在建立碰撞盒的时候,可以建立prefab,方便同时修改碰撞盒的现实和隐藏。

  当制作好了游戏组件(场景中的任意一个gameobject),我们希望将它制作成一个组件模版,用于批量的套用工作,例如说场景中本质上“重复”的东西,“敌人”,“士兵”,“子弹”。。。。。。这里说本质是因为默认生成的prefab其实和模版是一模一样的,就像是克隆体,但生成的位置和角度以及生成后的一些属性是允许发生变化的。

2、透明贴图

unity3d中自带的shader没有提供一种支持:透明贴图层+漫反射贴图层的shader。因此在使用透明贴图的时候,需要将透明贴图制作为PNG格式。 使用transparent——>bump diffse shader;

3、系统天空盒

Edit --> skybox. solid color:any empty options of screen will display the current camera‘s backgroung color. 托想去除天空盒接缝,照片的wrap mode修改为clamp.

4、untiy数据包的打包输出:

BuildPipeline.BuildAssetBundle:将任意类型的资源打包成AssetsBundle文件。

BuildPipeline.BuildAssetBundleExplocitAssetNames:同上,但是可以为每个对象制定一个自定义的名字,方便查找。

BuildPipeline.BuildStreamedSceneAssetBundle:直接将一个或多个场景打包成AssetsBundle文件。

5、untiy将数据包加载到AssetBundle:

WWW.assetBundle:将网上下载的数据包加载到内存中,创建AssetBundle对象。

AssetBundle.CreateFromFile:用磁盘文件创建一个AssetBundle对象,并加载到内存中。(CreateFromFile是同步的仅支持创建非压缩格式的assetBundle)

AssetBundle.CreateFromMemory:从内存数据流创建AssetBundle内存对象。(异步的,要与协同配合使用。还可以加载压缩的assetBundle)
AssetBundle.CreateFromMemoryImmediate:从内存数据流立刻创建AssetBundle内存对象。U3D4.5.2新加的API函数,可以不用协同函数,而是通过文件流直接创建,但是注意,如果是从W3类里的BYTE里创建,W3本身还是得使用协同函数。CreateFromMemoryImmediate支持压缩的AssetBundle 。

6、从AssetBundle对象中加载资产:

AssetBundle.Load:通过名字从AssetBundle中加载资产,也可以通过参数指定类型。

AssetBundle.LoadAsync:同上,但是是异步加载,不影响主线程执行。

AssetBundle.LoadAll:一次性加载AssetBundle文件中的所有资产。

Application.LoadLevel:通过名字或索引载入AssectBundle文件中对应的场景。当载入新场景时,所有之前的游戏对象都会被销毁。

Application.LoadLevelAsync:同上,但是是异步加载不影响住线程继续执行。

Application.LoadLevelAdditive:添加新场景,之前的游戏对象保留。

Application.LoadLevelAdditiveAsync:同上,但是是异步加载。

7、AssetBundle、资产和游戏对象的卸载:

AssetBundle.Unload(false):卸载AssetBundle自身。

AssetBundle.Unload(true):卸载AssetBundle自身和所有从该AssetBundle中加载的资产。

Resources.UnloadUnusedAssets():卸载整个系统中所有没有使用的资产。

GameObject.Destroy:卸载通过GameObject.Instantiate实例化的游戏对象。

时间: 2025-01-04 15:20:10

unity3d 基础知识点的相关文章

黑马程序员——Java I/O流基础知识点(File类)

File工具 File类就是用俩将文件或者文件夹封装对象,弥补流对象的不足--流只能操作数据,不能操作文件夹的 封装的是路径!!! 构造方法演示 1.可以将已有的未出现的文件或者文件夹封装成对象. File f1=new File("c:\\abc\\a.txt"): File f2=new File("d:\\abc","ab.txt"打印,会打印路径.:目录分隔符,为了更好地跨平台File. File类常见功能 1,创建 createNewF

HTML5基础知识点

今天了解html,下面是我分享的有关html的基础知识点: ①什么是html? html是一种超文本标记语言(超文本标记标签) ②html标签是html中的最基本单位 也是最重要的部分,html标签分为单标签和双标签. 单标签</>   双标签<></> html中的一些常见标签 1,<br/>换行标签    2,<hr/>水平分割线标签   3,<p></p>段落标签     4,<pre></pre&

C# .Net基础知识点解答

C# .Net基础知识点解答 1. 什么是.NET?什么是CLI?什么是CLR?IL是什么?JIT是什么,它是如何工作的?GC是什么,简述一下GC的工作方式? 通俗的讲,.Net是微软开发应用程序的一个平台: CLI是Common Language Infrastructure,是公共语言架构: CLR是Common Language Runtime,即公共语言运行时: IL是.Net编译器产生的中间代码,称为通用中间语言CIL(Common Intermediate Language),CIL

js基础知识点收集

js基础知识点收集 js常用基本类型 function show(x) { console.log(typeof(x)); // undefined console.log(typeof(10)); // number console.log(typeof('abc')); // string console.log(typeof(true)); // boolean console.log(typeof([])); // object console.log(typeof(function (

js基础知识点总结

js基础知识点总结 如何在一个网站或者一个页面,去书写你的js代码:1.js的分层(功能):jquery(tool) 组件(ui) 应用(app),mvc(backboneJs)2.js的规划():避免全局变量和方法(命名空间,闭包,面向对象),模块化(seaJs,requireJs) 常用内部类:Data Array Math String HTML属性,CSS属性HTML:属性.HTML属性="值":CSS:对象.style.CSS属性="值"; class和f

Unity3D基础教程】(四):通过制作Flappy Bird了解Native 2D...

[狗刨学习网] 引子 在第一篇文章[Unity3D基础教程]给初学者看的Unity教程(一):GameObject,Compoent,Time,Input,Physics我已经讲过了一些关于刚体和碰撞的关系,这次我们就通过Flappy Bird这个事例来讲解一下刚体和碰撞体在游戏中的具体应用.相关代码可以参考Flappy Bird的源码. 认识RigidBody 当RigidBody2D的质量属性被设置为0时,刚体的质量变为无限大,此时刚体相当于静态刚体,永远一动不动.但是在Unity中你是无法

JavaScript语言基础知识点图示

原文:JavaScript语言基础知识点图示 一位牛人归纳的JavaScript 语言基础知识点图示. 1.JavaScript 数据类型 2.JavaScript 变量 3.Javascript 运算符 4.JavaScript 数组 5.JavaScript 流程控制 6.JavaScript 函数基础 7.DOM 基本操作 8.Window 对象 9.JavaScript 字符串函数 10.正则表达式 JavaScript语言基础知识点图示,布布扣,bubuko.com

Spring4.x 基础知识点

# Spring4.x 基础知识点## 第二章 快速入门- 一般情况下,需要在业务模块包下进一步按分层模块划分子包,如user\dao.user\service.viewspace\dao.viewspace\service等.对于由若干独立子系统组成的大型应用,在业务分层包前还需要加上子系统的前缀.包的规划对于大型应用非常重要,它直接关系到应用部署和分发的便利性.- 在配置文件的定义上,一般也是按模块进行划分,一定程度上降低争用.- 在拼接SQL语句的句前和句后都加一个空格,这样避免分行SQL

fastclick 源码注解及一些基础知识点

在移动端,网页上的点击穿透问题导致了非常糟糕的用户体验.那么该如何解决这个问题呢? 问题产生的原因 移动端浏览器的点击事件存在300ms的延迟执行,这个延迟是由于移动端需要通过在这个时间段用户是否两次触摸屏幕而触发放大屏幕的功能.那么由于click事件将延迟300ms的存在,开发者在页面上做一些交互的时候往往会导致点击穿透问题(可以能是层之间的,也可以是页面之间的). 解决问题 之前遇到这个问题的时候,有在网上看了一些关于解决移动端点击穿透的问题,也跟着网上提出的方式进行了各项测试,最终还是觉得