yxriyin
因为啥都不精通,所以啥都自成一家
展开
-
海飞丝头发的研究和实现
先展示成果:https://v.qq.com/x/page/z0853wtw21a.html很早就看了milo大佬的爱丽丝的海飞丝,那个时候完全看不懂。最近再去看了一遍,还是看不懂。打算自己研究看看。首先查了gpugems2里面关于海飞丝的简要实现方案:打算就先从这个基本流程入手。首先是准备了一个头的模型,和主要的头发束模型,然后根据头皮的顶点,去生成头发。头发直接用9个顶...原创 2019-03-23 23:57:52 · 1625 阅读 · 0 评论 -
SIGGRAPH中海洋的研究学习
演示demo:https://v.qq.com/x/page/g08391vnr97.html从海岛奇兵的海水一路改进过来,但总感觉还是不够好看。想来想去还是重新写一个新版海水。总体思路不再是优先考虑性能,而是先做效果,只要手机上还能支持,就先试试看。打算先做Gerstner Wave。数学部分知识如下:(来自https://zhuanlan.zhihu.com/p/3167027...原创 2019-02-18 09:36:23 · 1344 阅读 · 0 评论 -
移动端下雪系统的实现
先上最终效果:https://v.qq.com/x/page/k081225eqx7.html 做完下雨做下雪,(下雨文章地址:https://blog.youkuaiyun.com/yxriyin/article/details/84630503)下雪其实和下雨有很多类似的地方。类似的部分我就不再仔细说明,主要还是看不同的部分。个人认为下雪比下雨更加困难。 首先还是从雪粒子开始,雪粒子无...原创 2018-12-20 09:10:40 · 878 阅读 · 2 评论 -
移动端下雨系统的实现
先展示最终效果:https://v.qq.com/x/page/j0808yxmm3w.html可以看到雨水会导致物体潮湿,会在平面形成水波,会在斜面形成纹路。雨会被物体阻挡。阻挡的部分依然保持干燥,干燥和潮湿有过度。水积累到一定程度还会有反射。 很早就想做一个完整的天气系统。不过难度太大了,所以打算拆分成一个个小系统。首先就是做最常见的下雨。 雨水本身实现...原创 2018-12-06 20:51:31 · 1309 阅读 · 2 评论 -
移动端云渲染的实现
先展示最终效果:体积云视频 类似渲染云这种自然现象的时候,必须首先了解噪声这个概念。这个噪声指的是描述自然界规律的一些随机函数。例如大名鼎鼎的柏林噪声。Perlin噪声被大量用于云朵、火焰和地形等自然环境的模拟,而Worley噪声被提出用于模拟一些多孔结构,例如纸张、木纹等。不过其实Wroley噪声也可以用在云上面。 对于噪声这里不想深入讨论,感兴趣的可以去看论文或者...原创 2018-11-22 17:58:44 · 3753 阅读 · 5 评论 -
移动端大规模草渲染的实现
先上最终效果:https://v.qq.com/x/page/e0777z5hbqa.html1.用程序生成草地网格 1.1为什么使用程序生成而不使用美术提供的网格要在移动端进行大规模草的渲染,首先要考虑的就是性能问题。对于草的渲染,目前肯定要采取的手段是批处理。就是一次性提交所有的草体到gpu进行渲染。目前主流的批渲染有三种方式,具体如下:1)动态批处理这也是渲染草的...原创 2018-12-21 19:34:16 · 3759 阅读 · 7 评论 -
手机端影子的实现
最早做了一个平面影子,现在网上的文章也很多,实现基本大同小异。本来我自己打算加入gpu instancing的特性,进一步提高影子的渲染,但我实际测试却发现,负优化。经过别人的指导,发现是如果setpass calls没变化,那么dc其实影响不大,尤其在现在的手机上,dc不是主要的,setpass calls才是重点。仔细找了文章:The main reason to make few...原创 2018-10-27 21:05:13 · 822 阅读 · 3 评论 -
手机端战争迷雾的实现
先展示效果:https://v.qq.com/x/page/k0763jy8qjr.html最早是在war3看到战争迷雾,当时觉得真牛逼。到现在技术基本已经成熟,自己也就抽空做一个。思路还是定在用tile来实现,毕竟从性能优化角度说,tile可以预先烘焙数据,比实时计算要快不少,这样的话手游也可以使用。先画一批格子:有了基本的地图数据,我们就需要开始考虑怎么实现我们的战争迷...原创 2018-10-24 19:03:07 · 3407 阅读 · 0 评论 -
gpu instancing animation代替骨骼动画的做法
最早是在Unity推出gpuinstancing后,马上有人做了一个顶点动画代替骨骼动画的方案,当时自己也测试了一下,红米2一千人可以跑60帧,确实非常不错。后来发现UWA群里也有人在讨论这个东西的做法,当时M神说可以用烘焙骨骼的方式代替烘焙顶点,这样子烘焙出来的贴图大小只和骨骼数相关。而小米超神也说是通过烘焙顶点,不过为了减少烘焙文件的大小,使用了类似RGBM的方式存储数据。 ...原创 2018-10-11 22:05:40 · 5914 阅读 · 4 评论 -
寻找更好的海水的移动解决方案
本来已经实现了海岛奇兵的海水,但总觉得差点意思。今天开始寻找移动平台的次时代海水的方案。本来找到了一篇文章,可惜只是在window平台的。原因是移动平台不支持深度图,其实很多时候,深度图可以自己模拟。于是我打算慢慢开始修改成移动平台的版本。本来的顶点函数:void vert (inout appdata_full v, out Input i) { UNITY_INITIAL...原创 2018-06-28 12:00:46 · 1554 阅读 · 0 评论