随笔分类 -  图形

摘要:稍后补充。 阅读全文
posted @ 2022-12-04 23:27 yaukey 阅读(70) 评论(0) 推荐(0)
摘要:很久没有更新博客,除了项目太忙,业余时间都用在了自己的软件渲染器项目上了。项目地址:https://github.com/yaukeywang/YwSoftRenderer 整过过程还是比较漫长艰辛,在逐步完成基础部分后,开始一步步完善Demo,然后在这个过程中解决了非常多的bug。 那么近期的最后 阅读全文
posted @ 2020-03-31 23:27 yaukey 阅读(366) 评论(0) 推荐(0)
摘要:近期项目遇到一个奇怪的问题,使用 Unity 2017 版本升级后,团队中某些人的机器光照图总是不正确,而有的人是正确的,一直不知道为什么。 为了查到这个奇怪问题的原因,首先查看了美术的在 Max 中的导出设置,虽然不是特别规范,但也没啥特别的问题,且声称以前也是这样导出,但是没有遇到过这样的问题; 阅读全文
posted @ 2018-07-18 14:02 yaukey 阅读(951) 评论(0) 推荐(0)
摘要:以前写了个简陋的 光照图 UV 查看工具,只能查看单个物体的 UV 在光照图的上的范围,没显示具体的 UV 展开图,前几天看了 扩展Unity模型编辑器 后我觉得应该改进下,于是就有了下面的模样。 自己项目用了还是比较方便,其实到了 Unity 2017 以后已经自带了物体光照图 UV 工具,不过有 阅读全文
posted @ 2018-06-21 00:07 yaukey 阅读(475) 评论(0) 推荐(0)
摘要:美术前上个礼拜找我问光照图总是烘焙过暗的问题,一时兴起我在 Gamma 和 Linear 两个颜色空间切换了下,发现一个 Shader 明暗不同,另一个 毫无变化,于是激发了我去研究下在 Unity 里使用 Linear 的细节。(虽然最后发现美术的问题跟这个不太有关系) 这里不想在过多冗长的去复述 阅读全文
posted @ 2018-06-02 22:29 yaukey 阅读(2713) 评论(3) 推荐(0)
摘要:美术的同学觉得 Unity 光照图烘焙的不够美丽,需要在 ps 里修一修,但是不知道每个物体对应的光照图在哪个区域,UV 是如何分布的,于是要求写一个工具显示,于是有了下面这个: 打开场景自动读取当前烘焙的光照图,在场景中点选物体,会以绿色方框的形式显示出光照图 UV 分布在这张光照图上的位置,如果 阅读全文
posted @ 2016-04-10 11:14 yaukey 阅读(2143) 评论(2) 推荐(0)
摘要:ModelImporter.optimizeGameObjects 能够优化骨骼动画,将无用的骨骼合并,效率测试官方给出的数据差距比较大( Unity CJ 干货分享:全新的Unity移动游戏优化解决方案),差距很大,默认关闭。我实际测试发现,设置此选项后的蒙皮骨骼动画模型,不收动态缩放影响,只能保 阅读全文
posted @ 2016-04-01 17:36 yaukey 阅读(2778) 评论(0) 推荐(0)
摘要:有时候会发现 Unity UI 非常耗时,在 Profiler 中可以轻易的看到 UI 中 的 GraphicRaycaster.Raycast 单帧调用可以成百上千,甚至好几千,帧速率前不忍赌,一关掉 UI 立马满血复活。 这种情况大多出现在一是 Canvas 比较多而且子节点添加 Graphic 阅读全文
posted @ 2016-03-31 20:25 yaukey 阅读(5741) 评论(0) 推荐(0)
摘要:时间缩放状态下,比如 Time.timeScale 缩小为 0 或者 0.000001 等极小值时,若想将特效的播放速度放大相同的倍数,即修改 ParticleSystem.playbackSpeed / Time.timeScale,非循环播放特效仍然无法正常播放(这可能是 Unity5.3.1的 阅读全文
posted @ 2016-03-29 16:54 yaukey 阅读(2589) 评论(0) 推荐(0)
摘要:Unity 在底层默认希望为你做尽可能多的优化,降低使用门槛,比如 BuildSetting 中的 Optimize Mesh Data 选项就是一个典型的例子。 这个选项到底有什么用呢?文档描述为: Optimize Mesh Data Remove any data from meshes th 阅读全文
posted @ 2016-03-08 10:33 yaukey 阅读(3483) 评论(0) 推荐(0)
摘要:前几天同事做了一个效果,希望在原本使用了遮罩组件 Mask 的技能图标(让技能图标变成圆形)上在添加一个置灰的功能,但问题来了:因为是动态根据游戏中玩家的条件才动态置灰,以修改 Mask 下子节点 Image 组件的材质来实现的,但是实际上怎么修改也不起作用,呈现出的效果都只停留在第一次运行时的样子 阅读全文
posted @ 2016-01-29 10:41 yaukey 阅读(6218) 评论(0) 推荐(1)
摘要:一向在技术上比较开放的 MadFinger 继上次给出 shadowgun 的关卡包之后,这次更加大方的给出了更加完整的关卡的代码,甚至包括服务器:ShadowGun Deadzone GM Kit。 对于这个包的用途, 官方简介:www.madfingergames.com/deadz... 阅读全文
posted @ 2015-07-20 16:49 yaukey 阅读(833) 评论(0) 推荐(0)
摘要:很早之前做了一个“凌波微步”的幻影效果,但是有很多问题,如:位置不准确,需要预先设置很多参数,摄像机的视口裁剪和位置无法动态更新,并需要把对应的粒子特效等预设全部跟主角配套好,今天把这些问题都修改了,无论角色在屏幕的任何位置,都可以十分理想的呈现出效果,加载全自动,几乎不需要手动调整参数,目前唯... 阅读全文
posted @ 2015-01-20 14:01 yaukey 阅读(699) 评论(0) 推荐(0)
摘要:由于我们的项目采用的寻路解决方案是:客户端使用 unity 原生的寻路系统,服务器采用 RecastNavigation 系统,而服务器的寻路数据来自于从 unity 导出的,所以理论上两边的寻路结果应该是一样的,可事实上并非如此,unity 无论如何寻路,都能表现出比较自然的结果,但是服务器却有时 阅读全文
posted @ 2015-01-12 22:27 yaukey 阅读(8211) 评论(4) 推荐(1)
摘要:前几天大家完成了一个重要版本,我的内容主要是增加一些特效和服务器客户端通信消息的bug。 1.完成了 unity 版的适用于移动平台的优化版的 Heat Distortion 效果,传统的方法严格依赖在 pixel shader 中做 projective texture mapping 计算,再加上 render to texture 的消耗,移动平台是肯定吃不消的。所以优化的结果是,将所有的运算放在 vertex shader 中,pixel shader 中只有 texture sample 运算而已,这样开销仅仅是在截屏这里,实际的测试效果非常理想,大多数时候和传统版的没啥区别,... 阅读全文
posted @ 2014-03-16 11:43 yaukey 阅读(477) 评论(0) 推荐(0)
摘要:上周的工作重点转移到服务器寻路上来,刚刚做完没几天,总结一下,当时团队讨论的结果是使用 Unity 原生的 NavMesh 系统,然后将数据导出到服务器使用。我最初的思路是将导出的网格加载到服务器后,自己写 A* 算法来寻路,但看了 RecastNavigation 后,果断放弃想法,想使用已导出的数据到 RecastNavigation 中使用,按照作者的简介是可以,但是并没有相关的代码,后来翻到了一篇关于这个的帖子,作者明确回答说没有时间做这个功能,所以就只能自己动手,丰衣足食了,有这么个系统已经很棒了。 第一步工作就是分析RecastNavigation 的工作流,我后来着重分析了... 阅读全文
posted @ 2014-03-06 20:01 yaukey 阅读(18309) 评论(11) 推荐(3)
摘要:今天又出现了shader的问题,编译到真机效果就没了,后来仔细还是因为浮点数精度的问题,后来仔细查找了些资料,才发现自己太粗心,没有看清楚 fixed-point 数据类型就乱用,这是个范围在 [-1,+1]或者[-1,+2]之间的浮点数,我却当做普通的浮点数用,导致很多数据溢出,所以才丢失原有的效果,得注意了!不明白的就去看 http://http.developer.nvidia.com/CgTutorial/cg_tutorial_chapter03.html 的3.3.2小节吧重点:Continuous quantities are not limited to integer val 阅读全文
posted @ 2013-11-10 00:35 yaukey 阅读(1269) 评论(0) 推荐(1)
摘要:太久没更新了,不过很多心得都是随手记在了印象笔记,最近工作状态不是很好,一直没有调整到最好状态,比较烦躁,加上前两天又跟老妈吵架,她第二天血压还升高,我就立马自责后悔了,最近各种生活烦心事让我真是压抑,心情也是坏到不行,我是个很容易受情绪影响的人,工作也是自然受到影响,但我一直在努力调整,告诉自己一心工作来淡忘这些,但效果还有待坚持呢训练,现在不是一个人在战斗,也肩负着整个团队共同的目标和希望,加油!最近做了些事情,一些有坑的地方,翻出来分享下好了,有些没想起来的就没写了:1.由于找了很多零散资源,大多模型贴图都是各顾各的,所以就写了个工具,将很多贴图合并成Atlas,然后再修改模型的顶点uv 阅读全文
posted @ 2013-10-16 22:54 yaukey 阅读(597) 评论(0) 推荐(0)
摘要:MADFINGER-Lightmap-Unlit-Wind用于模拟布料和树被风吹的弯曲摆动效果这个来自于《GPU GEMS 3》中的 “Chapter 16 Vegetation Procedural Animation and Shading in Crysis” 一章16.1。但略微有点不同,在计算edge和branch的bend时,原文为:“Edge (xy) and branch bending (z)”,shadow gun里使用的是“Edge (xz) and branch bending (y)”,这里的edge指旗子的边缘和自身xz方向的震动,branch指的是旗子整体的y方向 阅读全文
posted @ 2013-07-08 13:53 yaukey 阅读(2435) 评论(0) 推荐(0)
摘要:今天仔细研究了 Shaowgun 示例中那个金黄色雕像所使用的光照纹理烘焙工具:“Render To Texel Baker”。因为要在移动设备展现比较逼真的光照效果,但是实时使用法线贴图并大量用于场景建筑中,对于移动设备还是有些力不从心。于是原作者写了这个工具,使用法线贴图和多个光源来对模型的贴图进行光照烘焙并保存烘焙结果。 作者直接读取模型的所有三角形,顶点,uv,法线和切线数据,以及提供的模型法线贴图(最终转换到世界坐标系,计算过程证明了我之前对于tbn矩阵相关计算的理解是正确的),然后针对每个三角形中的每个像素,都通过插值和权重来计算出这个像素的世界坐标位置和世界坐标法线,并分别... 阅读全文
posted @ 2013-06-28 00:25 yaukey 阅读(1152) 评论(0) 推荐(0)