1.2k 1 分钟

# 前言 看名字就知道了,这是故事编辑器。 现在算来,似乎也是好些日子没写 Blog 了.... 前些日子主要就是完成了这个东西(虽说偷懒也有之,不过花了不少时间倒是真的),于是就是一直拖着、拖着... 到现在。 目前感觉这个编辑器的主要功能上也差不多了,至于实际逻辑,测试了些许小的示例。暂未发现什么严重 Bug (目前最担心的就是 “存档” 问题了),当然这方面不经实际压力测试,我也发现不了什么不对劲儿的地方。 所以,暂时就这样了。先发布上来吧,计划之后做个游戏什么的,真实地用用,若有问题再行修复。 GitHub...
233 1 分钟

刚才给父母又打了一个电话。 其中突然谈到,祖祖过世了。 就是前些天的事。 “男祖祖”—— 我想到过年时候,虽然并没有过多的接触 —— 其实在高中 —— 还是其它什么时候呢?我就变得沉默,在村子里消弭了自己的踪迹,即便回去,也是独自待在外婆家,跟几乎所有人,都没了话语。 不过,也依然记得,他的身体还是比较健康的,还一直在干农活。 早上的时候,他还在煮稀饭,下午就... 送往合川大医院之后,已经不行了,说是 “胃穿孔”。 于是正打着电话,却突然感觉一阵深深的哀凉。 生命的消逝,是无可奈何的吗?
3.6k 3 分钟

# 前言 使用 Unity 实现脚印,这种功能很简单,而且之前我也写过一篇相关 Blog 来描述: 链接 过去很久之后,这个功能终于又被 “旧事重提” 了,不过,新的要求是:根据玩家在地形不同的位置,检测地形相应点的贴图,再根据贴图来判断播放的特效、音效及其它处理。因为策划希望能在地形相应的区域,有着不同的效果,而最省力的实现方式,便莫过于如此了。 这个方式的最大难点大约在于:如何取得玩家当前点的地形贴图?包括几张贴图的混合区域等。 # 分析 为了获取到这个信息,我首先调试了整个地形数据,并分析其中 “可能” 有用的几项,主要位于 TerrainData 中: s// 摘要: // ///...
6.8k 6 分钟

# 前言 BRDF (Bidirectional Reflectance Distribution Function) 光照模型,是一种描述入射光线在物体表面反射的一种函数,用于模拟各向异性反射的表面(至于效果,比如大家可以拿着光盘对着灯光看看,或者观察下不锈钢杯子之类的)。因此作为函数实际上指的不是一种,而是一类 (怎么感觉有一种 “... 指的不是一个人,而是一族人的即视感?”)。 在这篇 Blog 中,我已经没有加上 “简析” 两个字儿了。因为,我目前我并不确定自己究竟明不明白它的原理?并且目前也并无推导出公式的能力,简单来说,就目前而言,也只是 “会用”...
6.8k 6 分钟

# 前言 我很想这样说: “今天花了相当长的时间,就为了研究视差贴图 (Parallax),可怎么试效果怎么不对!本来视差贴图也不过是在法线贴图的基础上发展出来的算法,法线贴图完全没问题,加上对视差贴图相关计算,这么久不行了呢?最终查了又查,发现居然是自己代码中关于视线的一个计算问题造成的!白白又浪费多的时间.... 这使我决定就算暂时不继续看书了,挤出点时间、再熬点夜,也得把这玩意好好进行分析下,写出来。” 实际上,那是发生在星期三的事儿了,最终还是拖到了周末。 #...
4.6k 4 分钟

# 前言 在 Unity 中,我喜欢使用 Unlit Shader (Unity 这样叫了,我也这样称呼吧)。 不同于被 Unity 封装了大量东西的 Surface Shader,Unlit Shader 中,写什么就是什么。因此相比前者,它的性能自然会高不少。再继续谈论这个话题之前,我们可以做一个小小的 “测验”,以明白下 Surface Shader 与之相比,究竟被封装了多少东西。 测验非常简单,在项目中随便找个文件夹,同时新建两个 Shader,一个 Surface Shader,一个 Unlit Shader。然后单击 Shader 文件,在一边的 Inspector...
8.1k 7 分钟

# 前言 这周被项目主管拉过去谈了一次话,提到这一年多的的进步之类的问题,说我算是进步很大的了 —— 顿时感觉心情 UPUP 的,相比之前被老板说的没进步之类的话打击后,觉得平复多了。另外还谈到了 Shader 之类的问题,还问我感不感兴趣之类的?这当然回答 “是” 了,毕竟现在至少一般应用的话,自我感觉都是没问题的了,不过,我依然没有自大地说:我已经会了,有什么需要的吗? 毕竟,我目前只是算会用了而已,高级点的,恐怕也依然不足。而且最主要是,不清楚究竟会有什么样的要求?万一刚说自己会,然后叫你实现什么却又不行,那就尴尬了.......
637 1 分钟

曾经有人问我,梦想是什么?我回答的是,回老家种地。 这或者不是玩笑。在一个宁静的地方安安静静地生活,而最适合的,莫过于老家了。 我经常想象着没有噪音、没有空气污染的树林,在春天,或者夏天,漫步在屋子附近的小树林中,观察着阳光照射下的枝叶,投射在清新泥土下阴影的摇曳。或者在雨天,坐在面对竹林的走廊上,静静观察淅淅沥沥的雨,听着它们打在叶子上,继又滑落的声音。可以早晨听着鸟鸣、嗅着带着植物清香的空气从睡梦中起来 —— 而不是听着车轮的轰鸣、引擎的嚎叫,嗅着一股让鼻孔都堵住的莫名味道 ——...
4.1k 4 分钟

终于周末了! 接上一篇,这儿依然是谈论在 Unity 中动态操作 Mesh 的事儿。在一篇中,我们已经创建出了一个圆。如图: 所以有了基础,现在想改变它的话,就不是什么比较麻烦的事儿了。因为构造出来的三角形顺序已经确定,改变 Mesh 的形状的话,只需要单独修改顶点数组就可以了。 而动态改变 Mesh 什么的,实际上就是在上一篇的基础上,给它 “Duang”...
2.6k 2 分钟

Mesh, 即模型。一般情况下是不会在 Unity 里边来创建的,除非有特殊需求,比如说一个纯粹跟随玩家鼠标,表现一种 “东拉西扯” 效果等奇怪的功能。 动态改变 Mesh 暂且不谈,毕竟现在的主题主要是谈创建。那么创建一个什么样的 Mesh 呢? 很久以前,我记得见过一个叫 “白猫计划” 之类的日式网游,就是使用一个在屏幕上,可以动态跟随玩家手指进行移动、改变形状的圆圈,来操控角色进行移动的 —— 也就是说,他们把移动按钮都做了一个特殊效果。 如图: 我觉得那东西估计就是这么来的,所以这儿我就想仿照一下,做这么一个东西来试试。 首先,新建一个场景,确定一下坐标。因为毕竟这个 “圆”...