随笔分类 - Unity3D
摘要:Unity5.3.1 录制 animation 带有 rotation 信息打包 Android 会运动错乱的问题 ,临时解决方法是:在动画面板中点击 rotation 属性,右键选择菜单中 interpolation,再选择 Euler Angles (Quaternion Approximati
阅读全文
摘要:时间缩放状态下,比如 Time.timeScale 缩小为 0 或者 0.000001 等极小值时,若想将特效的播放速度放大相同的倍数,即修改 ParticleSystem.playbackSpeed / Time.timeScale,非循环播放特效仍然无法正常播放(这可能是 Unity5.3.1的
阅读全文
摘要:Android: 使用 File 类 来访文本文件系统不区分大小写;但是访问 jar 包内的文件是区分大小写的,比如使用 www类,都需要区分大小写。 iOS: 使用 File 类 来访文本文件系统严格区分大小写。
阅读全文
摘要:Unity 在底层默认希望为你做尽可能多的优化,降低使用门槛,比如 BuildSetting 中的 Optimize Mesh Data 选项就是一个典型的例子。 这个选项到底有什么用呢?文档描述为: Optimize Mesh Data Remove any data from meshes th
阅读全文
摘要:前几天同事做了一个效果,希望在原本使用了遮罩组件 Mask 的技能图标(让技能图标变成圆形)上在添加一个置灰的功能,但问题来了:因为是动态根据游戏中玩家的条件才动态置灰,以修改 Mask 下子节点 Image 组件的材质来实现的,但是实际上怎么修改也不起作用,呈现出的效果都只停留在第一次运行时的样子
阅读全文
摘要:9月份时,趁着国庆阅兵的假期,将 Unity官方 Demo: 2DPlatformer 移植了一个SLua 版本,并放在了我的 GitHub 账号下:https://github.com/yaukeywang/2DPlatformer-SLua,用于大家交流和学习 Lua 的使用,尤其是基于 U...
阅读全文
摘要:2016-03-05 更新: 之前编译的库,在 Android 下 Lua_Number 和 Lua_Integer 被编译为了32位,导致从 C# 到 Lua 过程中有64位到32位整型转换会出现溢出出错,出现异常大的负整数。 以下修改或是之前遗漏的部分均使用红色表示。 2016-11-21 更新
阅读全文
摘要:一向在技术上比较开放的 MadFinger 继上次给出 shadowgun 的关卡包之后,这次更加大方的给出了更加完整的关卡的代码,甚至包括服务器:ShadowGun Deadzone GM Kit。 对于这个包的用途, 官方简介:www.madfingergames.com/deadz...
阅读全文
摘要:由于目前要把大量的代码移植到 lua 中(真是够虐心的),面向对象肯定少不了,项目的代码都是这么设计的,于是就测试 Slua.Class 接口来扩展 C# 的类,发现有点问题,给作者提交了一个 Issue 和 一个 Pull Request,作者也很快确认并 Merge 了。 问题是这样:当使...
阅读全文
摘要:打包完以后,看BuildLog,发现 Level 这一项数据很大,按照官方文档,这应该是很小的一项才对,但是我们的包中Level占据了80+M,20-30%,经过反复试验,发现是 Static Batching 造成的。。。 于是写了个工具,用来给关卡排除场景中没有共享材质的物体,把他们都取消...
阅读全文
摘要:现在发行商的要求越来越变态,必须要求程序热更新,以应对上线后的bug及时调整,我们目标锁定在 ulua, slua,(也对L#感兴趣过),一开始对 ulua 很困惑,unity 的 assetstore 上有售卖,但是又有一个 www.ulua.org 的网站和组织声称最新版本的 ulua 为 ...
阅读全文
摘要:现在发行商都需要cp们做热更新,而对于unity制作的游戏来讲,这个恐怕是个噩梦,而项目已经进行到中后期,确实很麻烦,有UniLua,但是如果全部手动解决恐怕上不了线了工作量太大,初步设想如果做一个基于llvm或者lex&yacc的c#-port-lua的代码转换器是否可行?只移植游戏逻辑块。
阅读全文
摘要:很早之前做了一个“凌波微步”的幻影效果,但是有很多问题,如:位置不准确,需要预先设置很多参数,摄像机的视口裁剪和位置无法动态更新,并需要把对应的粒子特效等预设全部跟主角配套好,今天把这些问题都修改了,无论角色在屏幕的任何位置,都可以十分理想的呈现出效果,加载全自动,几乎不需要手动调整参数,目前唯...
阅读全文
摘要:由于我们的项目采用的寻路解决方案是:客户端使用 unity 原生的寻路系统,服务器采用 RecastNavigation 系统,而服务器的寻路数据来自于从 unity 导出的,所以理论上两边的寻路结果应该是一样的,可事实上并非如此,unity 无论如何寻路,都能表现出比较自然的结果,但是服务器却有时
阅读全文
摘要:前几天大家完成了一个重要版本,我的内容主要是增加一些特效和服务器客户端通信消息的bug。 1.完成了 unity 版的适用于移动平台的优化版的 Heat Distortion 效果,传统的方法严格依赖在 pixel shader 中做 projective texture mapping 计算,再加上 render to texture 的消耗,移动平台是肯定吃不消的。所以优化的结果是,将所有的运算放在 vertex shader 中,pixel shader 中只有 texture sample 运算而已,这样开销仅仅是在截屏这里,实际的测试效果非常理想,大多数时候和传统版的没啥区别,...
阅读全文
摘要:上周的工作重点转移到服务器寻路上来,刚刚做完没几天,总结一下,当时团队讨论的结果是使用 Unity 原生的 NavMesh 系统,然后将数据导出到服务器使用。我最初的思路是将导出的网格加载到服务器后,自己写 A* 算法来寻路,但看了 RecastNavigation 后,果断放弃想法,想使用已导出的数据到 RecastNavigation 中使用,按照作者的简介是可以,但是并没有相关的代码,后来翻到了一篇关于这个的帖子,作者明确回答说没有时间做这个功能,所以就只能自己动手,丰衣足食了,有这么个系统已经很棒了。 第一步工作就是分析RecastNavigation 的工作流,我后来着重分析了...
阅读全文
摘要:今天又出现了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
阅读全文
摘要:太久没更新了,不过很多心得都是随手记在了印象笔记,最近工作状态不是很好,一直没有调整到最好状态,比较烦躁,加上前两天又跟老妈吵架,她第二天血压还升高,我就立马自责后悔了,最近各种生活烦心事让我真是压抑,心情也是坏到不行,我是个很容易受情绪影响的人,工作也是自然受到影响,但我一直在努力调整,告诉自己一心工作来淡忘这些,但效果还有待坚持呢训练,现在不是一个人在战斗,也肩负着整个团队共同的目标和希望,加油!最近做了些事情,一些有坑的地方,翻出来分享下好了,有些没想起来的就没写了:1.由于找了很多零散资源,大多模型贴图都是各顾各的,所以就写了个工具,将很多贴图合并成Atlas,然后再修改模型的顶点uv
阅读全文
摘要:目前的工作需要加入自动寻路,后来决定使用 unity 自带的 NavMesh,但有个问题是这个寻路数据,服务器也是需要的,那么我就要把这个数据导出为服务器所用才行。 但 NaveMesh 暂时没有官方接口说如何导出这个 Mesh 的顶点数据,后来在论坛里发现 Unity 内部的人说,确实有接口可以导出数据,但是忘了名字。。。汗|||,还补充说这个接口只能在编辑器模式下使用,不过还好有人在下面给出了这个重要接口,那就是:NavMesh.Triangulate(out Vector3[]vertices, out Int[]indices);分别取出顶点和顶点索引。 其实,还有个办法能找到...
阅读全文
摘要:在分析shadowgun时,无意中发现所有的环境建筑运行后,都被合并成一个叫做 "Combined Mesha (root: scene)" 的mesh了,但是没有发现任何合并的脚本,因为在unity以前的版本有个一小岛的demo,里面有用到合并场景静态mesh的脚本,后来4.x换了新的demo了,这里面也没发现有合并脚本。后来反复试验才发现,原来所有被勾选了“Static”的GameObject,其中的Mesh Filter中的mesh都会被合并到 "Combined Mesha (root: scene)" 中,在自带的deomo:AngryBots
阅读全文

浙公网安备 33010602011771号