![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
学习笔记
O213
这个作者很懒,什么都没留下…
展开
-
Unity渲染教程的GAD中文翻译版本地址
Unity 渲染教程(一):矩阵 :http://gad.qq.com/program/translateview/7181958Unity 渲染教程(二):着色器基础 :http://gad.qq.com/program/translateview/7173930Unity 渲染教程(三):使用多张纹理贴图:http://gad.qq.com/program/translateview/...转载 2019-11-21 21:35:11 · 335 阅读 · 0 评论 -
Shader笔记——使用粒子序列图实现体积云
最近看到一个效果还不错的体积云,了解了下其实现原理,将其实现思路做一个简单的整理和记录,并重写该Shader其效果图:该效果来自名为CloudPuff的Unity资源包中示例场景截图实现的主要思路为: 使用MatCap对预先存储的光照进行采样 MatCap是使用存储了视空间下不同法线方向的球形光照纹理,在计算光照时直接对纹理进行采样,运算效率高,但也有其局限,只能适用于单...原创 2019-10-31 15:35:29 · 3555 阅读 · 1 评论 -
Unity 框架学习资源&笔记
UI框架类https://www.cnblogs.com/LiuGuozhu/p/6421685.html原创 2018-08-31 11:26:28 · 468 阅读 · 0 评论 -
Shader笔记十九——三种凹凸纹理实现
Normal Map法线纹理是通过一张与漫反射纹理相对应的法线图,存储法线信息,使用的时候对应纹理坐标进行采样,通过法线值影响光影计算的结果,从而产生凹凸效果。Normal Map可能是目前使用最为广泛的一种凹凸贴图技术了。之前的内容也有介绍过, https://zhuanlan.zhihu.com/p/31450857 这里不详述。贴一下Shader代码:Shader "Bump/00...原创 2018-09-13 12:02:04 · 2409 阅读 · 0 评论 -
Shader笔记二十——带噪声的能量盾实现
先上效果: 该效果的实现主要分为两个部分:能量盾与场景相交处的高光处理 能量盾的纹理变化能量盾与场景相交处的高光处理能量盾与场景中其他物体的相交部分的高光,主要是通过比较能量盾自身的深度值与场景内相交的部分物体的深度值,通过两者深度值的差异大小来决定高亮颜色的显示比例插值:float diff =pow((1-saturate(sceneZ-i.scrPos.z))/1.0...原创 2018-09-20 15:02:09 · 987 阅读 · 0 评论 -
初识Unity SRP
Unity SRP 即 Unity Scriptable Rendering Pipeline(可编程渲染管线),是Unity 2018的新功能,使开发者可以通过脚本按需构建自己的渲染过程。在学习和参考:吉祥的游戏编程笔记中关于Unity SRP的相关内容后,这里做一个简单的学习记录,如有错误之处,希望可以多多交流。SRP中的内容可以用一张图说明: SRP的创建过程分为3个部分:Cu...原创 2018-10-23 19:09:47 · 8406 阅读 · 6 评论 -
Cinemachine&Timeline实践
使用前:Cinemachine 为Unity 2017新功能,2018使用时在新建项目时选择导入对应的包,直接在商店里导入资源包可能会报编译错误 Timeline 直接集成在编辑器中,可以在Project中直接创建Timeline,放入场景中相关参考博客: https://blog.csdn.net/beihuanlihe130/article/details/79233320Time...原创 2018-10-24 12:26:12 · 1599 阅读 · 0 评论 -
笔记二十一 RayMarch简单实践01_SimpleRayMarchingScene
写在前面光线追踪简单来说是通过若干条从摄像机发出的光线,通过步进的方式去和场景中的物体求交,根据交点处的信息和光源信息计算交点处的光照。 这种方式区别于与光栅化渲染,也就是将场景中物体的三角面通过空间的变换最终映射到屏幕上,并将三角面覆盖的区域逐像素处理,做插值计算。关于光线追踪的简化处理过程,可以参考下图(网络截图,侵删):入门简单实践根据光线追踪的处理思路,实现步骤可简化如下:获取摄...原创 2018-12-28 10:12:57 · 835 阅读 · 0 评论 -
笔记二十二——RayMarch简单实践02 Simple-SDF-RayMarchingScene
写在前面在上一篇笔记中,通过从摄像机发出射线,并采用步进的方式求解场景中的碰撞点,利用碰撞点信息进行着色,在屏幕上绘制了一个Sphere和Plane,本篇笔记中将丰富上一个场景,并做相对复杂的光照处理。采取和上篇中绘制Sphere,Plane相同的方式绘制更多的三维图形,因此需要引入更多距离计算函数,也就是SDF(Sign Distance Functions),这些函数用来计算空间中点到目标模...原创 2018-12-28 15:18:20 · 894 阅读 · 0 评论 -
Unity UI Mask实现原理
Unity UI Mask实现原理Mask的实现思路: 与Image组件配合工作,根据Image的覆盖区域来定位显示范围,所有该Image的子级UI元素,超出此区域的部分会被隐藏(包括UI的交互事件)Mask的实现原理:Mask会赋予Image一个特殊的材质,这个材质会给Image的每个像素点进行标记,将标记结果存放在一个缓存内(这个缓存叫做 Stencil Buffer) 当子级U...原创 2019-04-16 22:21:08 · 9125 阅读 · 0 评论 -
Unity 读取Excel文件 踩坑记录
Unity 读取 Excel 文件Unity读取Excel文件需要引入 dll 链接库: Excel.dll ICSharpCode.SharpZipLib 同时添加 Unity 安装目录下的以下 dll 库文件: System.Data (D:\Unity2018.2.3\Install\Editor\Data\Mono\lib\mono\2.0)...原创 2019-06-13 19:22:43 · 2310 阅读 · 2 评论 -
【转】Xcode OpenGL 配置
原文地址:https://blog.csdn.net/qq_38130710/article/details/80898543步骤1:安装brew打开终端,复制下面一行命令执行,安装需要一分钟左右,过程中需要输入密码,其他无需操作/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/ins...转载 2019-06-10 22:37:44 · 487 阅读 · 0 评论 -
Unity中嵌入Echarts图表
Unity中做图表类的数据展示一直是个麻烦事,使用原生的Mesh绘制方式出来的图表存在样式单一,缺乏交互的问题,而Echart的数据图表样式丰富,数据呈现上非常美观,包含多样的交互方式,如果将Echart的图表嵌入到Unity中,项目中的数据呈现效果会改观很多。这里需要用到Unity中的网页嵌入插件和Echart的图表样式文件:1.Unity中的网页嵌入插件:Embedded Browser...原创 2019-08-26 15:45:40 · 7369 阅读 · 1 评论 -
噪声学习
关于噪声噪声在图形学中的使用非常普遍,这里的噪声是通过程序生成一系列的随机值,通过特定的噪声算法,在给定一个输入,生成对应输出,输入和输出可以是不同维数的组合。 噪声在图形学中常用来模拟火焰、地形、云朵等包含随机变化的对象。既然是获得随机值,为何不直接使用类似 random 这样的随机函数呢?原因是随机函数所得到的值在既定范围内分布过于均匀,这样的随机值被称为"白噪声",二维白噪声的纹理为:...原创 2018-07-31 18:27:20 · 1822 阅读 · 0 评论 -
Hololens开发遇坑记录
1.数据解析 使用 LitJson 进行数据解析,在联调时没问题,部署时会报错 改用 Unity 自带 JsonUtility 工具进行解析 2.联网 应用程序如果需要进行联网获取数据,在 Build 时,需要在 Player Setting 中勾选: InternetClient InternetClientServerPrivateNetworkC...原创 2018-07-23 17:14:02 · 2057 阅读 · 2 评论 -
C#迭代器——由foreach说开去
C#迭代器——由foreach说开去 IEnumerable和IEnmerator yield retun StartCoroutine原创 2017-03-24 19:13:11 · 7147 阅读 · 2 评论 -
StartCoroutine的学习记录
StartCoroutine的使用:IEnumerator Wait(float waitTimeValue){//things before waityield return new WaitForSeconds(waitTimeValue);//thigs after wait;}SatrtCoroutine(Wait(5.0f));刚接触StartCorouti原创 2017-02-19 16:20:23 · 7086 阅读 · 1 评论 -
学习Space shooter 小项目 总结
1.提前设置发布环境(Switch platform),并在发布环境中的PlayerSettings.Resolution设置默认屏幕宽度;2.场景中游戏对象的位开始全部在(0,0,0),Translate属性中Reset,方便场景布置;3.相机视角可以选择Orthographic(正交视角),并通过Size调整相机的焦距,镜头远近,应用于二维视角场景中,二维场景的背景可以原创 2015-11-17 16:39:09 · 658 阅读 · 0 评论 -
unity中的碰撞检测
本人学生一枚,初学unity若有理解的不对的地方,希望大家多多指教,不胜感激。 同样是在学习过程中遇到关于碰撞器的小问题,查阅相关的材料后,对于碰撞检测的原理有了一定了解,整理相关笔记,与大家分享。 unity中的两个物体要想发生碰撞,必须依赖于自身的碰撞器组件(Collider),并且至少其中一个物体必须附有刚体组件(Rigidbody),其中附带碰撞检测脚本的物体必原创 2015-11-06 10:24:32 · 5572 阅读 · 1 评论 -
unity中世界坐标与局部坐标
本人学生一枚,刚接触unity3D,若有理解得不对的地方,还望各路大神不吝赐教~ unity中的坐标系统包括世界坐标(World Space),屏幕坐标(Screen Space),视口坐标(View Space)以及GUI坐标系统。 世界坐标(World Space) 场景中添加的对象,它们是以世界坐标显示在场景中,可以通过代码transform.原创 2015-10-31 12:10:17 · 15999 阅读 · 0 评论 -
在Unity中配置像The Lab中的瞬移方式
在Unity中配置像The Lab中的瞬移方式使用HTC Vive玩过The Lab虚拟现实游戏的朋友们对于游戏中使用TouchPad触摸板进行位置移动的方法一定不会感到陌生 就是这个样子: 使用瞬移的方式完成移动在小空间大场景中的虚拟现实应用开发中非常受用,同时在玩家移动过程中产生的眩晕感较小。那么如何在Unity中开发出这样的瞬移的移动效果呢?这里需要使用到一个叫做ViveTelep原创 2017-05-02 17:13:22 · 1806 阅读 · 0 评论 -
Unity API 学习 (部分)
Unity常用API笔记(部分),包括Time时间类、GameObject、MonoBehaviour、 Mathf、Input、 Vector2 、 Vector3、Random、 Quaternion、 Rigidbody、Camera、Application、SceneManager原创 2017-07-17 17:00:19 · 461 阅读 · 0 评论 -
数据结构学习笔记
数据结构相关概念数据结构的相关概念:初识算法及相关概念算法解决特定问题的求解步骤及描述,在计算机中为指令的有限序列,每条指令表示一个或多个操作。算法特性有穷性、确定性、可行性、输入、输出算法设计要求正确性、可读性、健壮性、高效率和低存储量需求算法时间复杂度及大O阶推导大O阶推导:1.使用常数1代替运行时间中的所有常数加法2.修改后的运行次数函数中,只保留最高阶项3.如果最高阶项存在且系数不为1,去...原创 2018-06-10 10:36:50 · 1749 阅读 · 0 评论 -
设计模式笔记
UML类图“动物矩形框”代表类,类图分三层:第一层:类名(如果为抽象类,则用希斜体表示)第二层:类的特性,通常为字段和属性第三层:类的操作,通常为方法或行为成员前 + 表示为public; - 表示为 private; # 表示为 protected“飞翔矩形框”代表借接口 ,分为两层:第一层:接口名称 带有 interface第二层:接口方法接口另一种标识方法:棒棒糖表示法 (讲人话接口)类之间...原创 2018-06-10 10:41:33 · 215 阅读 · 0 评论 -
【记】同一个 Github 账号之多台电脑间协同开发
1. 先生成 key,命令是ssh -keygen -t rsa -C "注册 Github 的邮箱" 2. 将产生的公钥复制到 Github 的 SSH keys 中,步骤如下: 打开 Github,找到 Settings, 点击 SSH and GPG keys,点击New SSH key,粘贴 3. 将仓库克隆到本地 (git clone xxx) 4. 可能需要配置账号以及输入密码 ...转载 2018-06-26 21:02:09 · 2681 阅读 · 0 评论 -
渲染学习博客地址合辑
主线博客合辑:《Real-Time Rendering 3rd》 提炼总结 主线补充内容:数学基础:矩阵变换 旋转变换:https://blog.csdn.net/csxiaoshui/article/details/65446125视差纹理(parallax map) https://www.cnblogs.com/jim-game-dev/...原创 2018-06-28 11:06:39 · 200 阅读 · 0 评论 -
C#异步编程总结
C#中的异步编程进程与线程程序在启动时,系统会在内存中创建一个进程。进程是程序运行所需资源的集合,这些资源包括虚地址空间、文件句柄和其他程序运行所需的东西。在进程的内部,系统创建一个称为线程的内核对象,代表真正执行的程序。当线程被建立时,系统在Main方法的第一行语句处开始执行线程。关于线程: 默认情况下,一个进程只包含一个线程,从程序开始执行到结束;线程可以派生其他线程,因此一个进程可能包含原创 2017-05-02 15:26:43 · 17041 阅读 · 5 评论