随笔分类 -  Unity3D

摘要:Unity中访问Renderer的material属性会给你额外创建一个材质实例,这样会增加一次渲染影响性能,但是有时又需要单独修改一个材质的参数,这种情况就可以使用Renderer的SetPropertyBlock。 阅读全文
posted @ 2018-05-05 10:47 Litmin 阅读(3396) 评论(0) 推荐(0)
摘要:在现在的游戏开发中,很多逻辑需要并发或者并行的实现,而且现代CPU大多都是多核的,如果能充分利用多核CPU的优势,降低主线程的压力,游戏的性能将会大大提高。下面介绍三种在Unity中实现异步编程的方法。 一,协程 协程不是多线程,它还是在主线程上执行的,但协程可以将一个函数分成多个部分来顺序执行,从 阅读全文
posted @ 2018-04-13 16:47 Litmin 阅读(2001) 评论(0) 推荐(0)
摘要:高斯模糊(英语:Gaussian Blur),也叫高斯平滑,通常用它来减少图像噪声以及降低细节层次。这种模糊技术生成的图像,其视觉效果就像是经过一个半透明屏幕在观察图像,这与镜头焦外成像效果散景以及普通照明阴影中的效果都明显不同。高斯平滑也用于计算机视觉算法中的预先处理阶段,以增强图像在不同比例大小 阅读全文
posted @ 2018-04-02 14:01 Litmin 阅读(4411) 评论(0) 推荐(0)
摘要:第一种实现可以利用模板缓冲。 第二种实现可以使用边缘检测。边缘检测的原理就是利用一些边缘检测算子对图像进行卷积操作。 卷积指的就是用一个卷积核kernel对一张图像中的每个像素进行一系列操作。卷积核通常是一个四方形网格结构,该区域内每个方格都有一个权重值,当对图像中的某个像素进行卷积时,我们会把卷积 阅读全文
posted @ 2018-04-02 12:52 Litmin 阅读(3595) 评论(0) 推荐(0)
摘要:单例模式是对象的创建模式之一,保证一个类仅有一个实例,并提供一个访问它的全局访问点。 在什么情况下使用单例: 1,一些管理器类。比如声音管理器、场景管理器、用户管理器等, 2,一些辅助函数。 Unity中单例实现分为两种,一种是继承自monobehavior的单例,另一种是普通的单例,这里不考虑多线 阅读全文
posted @ 2018-03-23 12:34 Litmin 阅读(381) 评论(0) 推荐(0)
摘要:GameObject go = Instantiate(aaa) ; go.GetComponent<NewBehaviourScript>().Init(); Instantiate一个gameobject后,马上执行一个自定义的方法Init,经过测试发现顺序为Awake Init Start U 阅读全文
posted @ 2017-12-02 23:26 Litmin 阅读(1484) 评论(0) 推荐(0)
摘要:使用泛型和委托简化代码,扩展性强。 使用示例: Bullet类: ObjectPoolManager: 阅读全文
posted @ 2017-08-23 16:58 Litmin 阅读(851) 评论(0) 推荐(0)
摘要:Unity用int32的每一位表示32个层,int32用二进制有32位,Layers通常被摄像机用来渲染部分场景,和灯光照射部分场景使用。但是它们也可以用来做射线检测时忽略一些collder或Collision使用。 LayerMask mask = 1 << 你需要开启的Layers层。 Laye 阅读全文
posted @ 2017-08-01 12:11 Litmin 阅读(1015) 评论(0) 推荐(0)
摘要:using System.Collections; using System.Collections.Generic; using UnityEngine; [System.Serializable] public class ObjectPoolItem { public GameObject objectToPool; public int amountToPool; ... 阅读全文
posted @ 2017-07-20 16:37 Litmin 阅读(323) 评论(0) 推荐(0)
摘要:1,Time.deltatime放在Update和fixedupdate中得到的值是不一样的。还以为是通过两个值来获取。 2,VR中绘制射线可以使用LineRender。 3,Unity中判断一个东西的类型通常判断该Object上有没有要判断类型特有的组件。 阅读全文
posted @ 2017-07-14 15:13 Litmin 阅读(123) 评论(0) 推荐(0)