- 博客(41)
- 资源 (2)
- 收藏
- 关注
原创 -------------毕业分割线---------------
-------------------------------------------------------------------------------------
2020-08-10 00:13:48
434
1
原创 在UE4中创建新的Shading Model
在 Unreal Engine 4.25.1 中创建一个新的 Shading Model,以普通的梯度漫反射为例
2020-06-25 17:32:02
5830
9
原创 Unity HDRP高清渲染管线 (上)——艺术家工作流
给美术看的文章,重点内容是 Volume Profile、HDRP Shaders、Diffusion Profile
2019-11-24 20:34:59
6487
2
原创 游戏AI怎么写(一)——高级随机技术
写在前面最近在研究游戏AI,感觉要写一个不傻的AI并没有那么容易,于是开始研究AI到底该怎么写,有没有什么技巧和框架。发现Web图书:Game AI Pro刚开始读这一套书,我似乎意识到了把技巧理论化的重要性,我写AI时用瞎搞的逻辑,居然是什么“施密特触发器”“双阈值法滞后”,我决定把这一套书读完。知识点1.施密特触发器和滞后据说双阈值法滞后是保持AI控制系统干脆利落的关键例:物体A...
2019-07-14 09:51:26
1612
5
原创 [Unity]UGUI基于MVC模式的技能装备系统
MVC模式下的技能装备系统实现,提高了可维护性和可复用性,游戏是一个复杂的系统,局部MVC使用是非常好的选择,比如UI、AI、主角状态机,可能有时应用起来会走样,但是无论是MVC还是其他框架,目的都是分离代码逻辑,提高可维护性,目的达到即可。
2019-06-10 12:38:05
2219
原创 光线步进——RayMarching入门
RayMarching 是一种用于实时场景的快速渲染方法,我的理解是,模拟摄像机位置,根据视椎体的扩张角度,以摄像机位置为原点,进步式发射射线,当射线碰撞到物体之后,返回其深度信息,如果到视椎体的最大距离之前都没有返回,那么可以以此判断该像素点没有对于物体,最后根据返回的信息计算光照。
2019-05-04 18:37:36
5648
原创 SimplexNoise、PerlinNoise、ValueNoise、WorleyNoise二维与三维实现整合
我将这四种噪声分别整合为cginc文件,包含二维与三维实现以及常用的几个FBM函数,这里把WorleyNoise单独分出来,其余三个噪声使用方法一致,这里以SimplexNoise为例:float A= SNoise_2V(float2 p);float A= SNoise_3V(float3 p);//Perlin、Value与Simplex在调用上的唯一区别在于(S/P/V)Noise_...
2019-02-22 12:10:08
3096
原创 Unity编辑器拓展
有时候为了加快效率,不得不做一些方便的小工具,尤其是有那种改变体属性,调整UI布局,或者调整字体,有选择性的添加修改组件的时候,如果一个两个手动该没问题,如果对象数量很多,而且只是做一些简单的更改的时候,那还是推荐大家先做一个工具,还能练练手。时候会比如我们需要用铰链把一串transform连起来,或者把一些对象整齐排列,也可以先做一个工具。如果需要一个窗体来输入设置信息的话,官方文档给出了大...
2019-02-04 13:57:13
566
翻译 仿塞尔达传说天空Unity shaderlab
塞尔达传说天空模仿题外话{一个月没有搞Unity,因为考试的原因,之后又因为某些原因搞了一个星期的前端,感觉uniapp真是个好东西,提高开发效率神器,同时也感觉前端有点无聊(接触unity的原因? )}在shadertoy上看到了一个天空https://www.shadertoy.com/view/Msdfz8,感觉和塞尔达传说的很像,于是就抄了过来。之前做的天空,用的Simplex ...
2019-02-02 09:06:41
6753
2
原创 Unity动态天空shader实现
效果如下:我最开始的想法是,先提前做两张分形噪声(每张都叠了8次柏林噪声)纹理,然后通过_Time.x控制采样,根据采样结果混合颜色插值,然后效果一般,我的颜色配置的不好,感性计算也不是很到位,然后在shadertoy上看到了https://www.shadertoy.com/view/4tdSWr第一反应是amazing,然后再看看自己苟的效果真是惨不忍睹。。。关于原理,当然他也用了噪...
2018-12-26 16:29:25
6047
4
原创 Unity 大面积草风吹动效果+受人物影响
这个场景中有9万棵草,再加上Mesh地形和Chan,还有一个简单的屏幕后处理bloom,在1080P的情况下可以达到100+的帧数努力优化没有白费。关于草受人物干扰我刚开始的想法是,以顶点center到人物(x,pos.y+k,z,1)的方向为法线,做广告牌,效果一般,有的时候太夸张了,后来找到https://www.patreon.com/posts/quick-game-art-1...
2018-12-22 14:47:18
15309
8
原创 Unity利用GPUinstancing实现大面积草地
之前用unity自带的terrain画了一片草,Draw Call高的要命,自带的草根本就没有批合==没法用帧数低得吓人,Draw Call现在是9000多,有的时候能上万,这。。。开发者根本就没用心做吧。。。于是决定用GPUinstancing,官方API链接: GPU instancing.可以自动实例化也可以用Graphics.DrawMeshInstanced 函数来实例化,都必须...
2018-12-20 21:49:04
17455
12
原创 鼠标旋转视角,摄像机跟随围绕主角,人物移动
重写了UnityChan的控制代码,因为自带的UnityChanControlScriptWithRgidBody的操作很蹩脚,AD键不是向着左右两边走,而是旋转 ==|| 这。。可能各有所好?我最喜欢的巫师3:狂猎和塞尔达传说:荒野之息都是按W向着屏幕的正前方走,AD向着屏幕左边缘和有边缘方向走,通过旋转鼠标来确定方向,所以我也打算这么做。首先,写了一个相机跟随+转向脚本,思路很简单,根...
2018-12-15 23:02:11
5019
8
原创 草地+风场+UnityChan卡通渲染场景(开篇)
最近总有考试、论文、展示什么的有点忙,没多少时间搞Unity,但时间挤一挤总还是有的,于是决定做一个场景,构想如下:【1.大规模草地,类似塞尔达传说那样(主要是优化,荒野之息中只有近景的草被渲染,会被人物的动作干扰,而且 风的干扰似乎可以根据一张贴图采样来控制,草受风的影响不是统一的,可能用到噪声纹理?)2.动态天气,并非昼夜交替,而是云彩变化(利用shader实现)3.控制Uni...
2018-12-11 00:20:16
5410
2
原创 用Unity实现两滴水融合(初次试验)
当在搜索‘如何实现小鳄鱼洗澡’或者‘水融合实现’时,百分百会搜到metaball,然后去外网读了几篇文档,感觉。。。。。。你懂得==然后决定用贝塞尔曲线+圆球外切线 苟一个先看看效果。。。目前效果如下:这里我先用LineRenderer确保一下算法的正确性,目前并没有绘制网格。果然效果有点垃圾关于外切线https://www.mathopenref.com/consttangentse...
2018-12-02 14:26:40
7396
3
原创 用unity实现动态粒子效果(上)【详细】
最近我在Wallpaper Engine上法线了一款有趣的壁纸,不放音乐的时候当音乐响起的时候然后我就想,这个如何用Unity实现,我们先来观察,便面上每个点的运动毫无规律,实际上它们每个点都有自己的方向,当点到达屏幕边缘时,反弹;当音乐响起时,它只会随着音乐的节奏加速运动和放大,它的运动轨迹并没有变化;当相邻的两个点足够近的时候连接,足够远就断开。好了分析到这里,案子已经结了。我们首...
2018-11-26 18:07:42
7239
5
原创 用Unity做简易的图像处理软件(总结篇)
基础知识:二维向量的使用,旋转矩阵、空间转换矩阵及其逆矩阵的使用,灰度公式、关于OpenGL中UV坐标的基本用法,饱和度公式、笛卡尔坐标。二维向量的使用,旋转矩阵、空间转换矩阵及其逆矩阵的使用,灰度公式、关于OpenGL中UV坐标的基本用法,饱和度公式、笛卡尔坐标。2.程序总体结构:3. transmit类的结构4.Gamectrl类比较简单主要包含缩放、拖拽、与裁剪操作。4...
2018-11-22 13:20:28
911
原创 用Unity做简易的图像处理软件(五)
分享一下制作结果目前只是1.0版。。。https://pan.baidu.com/s/1GGNc_Z26AWohDrgHHOSKSA双击RenderTexture即可运行,渴望大佬指点。。。等作业什么的都写完,会有“用Unity做简易的图像处理软件(总结篇)”和unity工程文件的分享。(做操作系统展示ppt先。。。)...
2018-11-18 21:21:24
717
原创 用Unity做简易的图像处理软件(四)
添加了gamma矫正和裁剪功能,添加当前图片分辨率的显示。关于裁剪选择时的框线,我是用的LineRenderer,然后给它一个material,添加一个由色块组成的纹理方便采样,这样框线会有颜色变化,不至于太单调。用户一共有四种拖拽方式,所以我们还需要根据用户的推拽方式判断裁剪的坐标首先是Line的实现部分if (Input.GetMouseButtonDown(0)) ...
2018-11-18 21:07:10
785
原创 用Unity做简易的图像处理软件(三)
大规模重做,因为之前的版本存在很多问题,比如内存占用,还有性能开销太大,比如以前的思路是,从拿到RenderTexture之后,把RT转换成texture,在转换成image,这样做实在是舍近求远,经过一番性能测试之后,我发现Graphics.Blit只用了2ms,而把rt转换为texture用了400ms,把texture转换成image更是用了1s多(我用的是5000*5000的原画),这个速...
2018-11-15 19:50:20
407
原创 用Unity做简易的图像处理软件(二)
这一次添加了水平翻转、垂直翻转、顺时针旋转、逆时针旋转,关闭图像,保存,退出功能;对RT的创建和销毁做了一些更改。界面如下:关于选择的C#部分public void clockwise() { clockw = true; rotate(); } public void anticlockwise() { ...
2018-11-12 13:07:10
927
原创 用Unity做简易的图像处理软件(开篇)
这是多媒体技术中关于数字图像处理的作业,因为是用自己熟悉的程序设计工具编写,所以我选择UnityO(∩_∩)O哈哈~我知道用MATLAB做这个很容易,但我想用C#&Unity来完成,我的主要思路是用shader渲染到RenderTexture,大部分工作都用shader来完成,到后期比较麻烦的我可能会用到OpenCV类。首先需要一个类,用来检测shader和material的,这里我...
2018-11-08 15:57:48
1100
用unity制作图像处理软件
2018-11-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人