摘要: 前段时间看了很多关于同步机制的文章,和同组leader也讨论了很多这方面相关的内容,总结了一部分,在此写下保存自留吧 帧同步 主旨:同步的玩家操作指令 “相同的输入 + 相同的时机 = 相同的显示” 目的:在于消除网络波动性带给玩家的卡顿以及忽快忽慢的不良体验。 大致流程: 同步随机数种子(可以保持 阅读全文
posted @ 2022-03-20 08:13 cancantrbl 阅读(1810) 评论(0) 推荐(1) 编辑
摘要: 结合了GitKraken软件,介绍了几个git的常用指令:git checkout, git rebase, git merge, git pull, git push等等 阅读全文
posted @ 2022-05-15 13:06 cancantrbl 阅读(82) 评论(0) 推荐(0) 编辑
摘要: 本文主要浅谈一下UGUI的底层渲染结构以及Canvas渲染模式的概念,关于合批的流程解析建议去看这篇 底层结构 先看到UI渲染的底层结构,UI渲染主要由三个部分组成:CanvasUpdateRegistry, Graphic, CanvasRender CanvasUpdateRegistry负责通 阅读全文
posted @ 2022-04-12 21:03 cancantrbl 阅读(1816) 评论(0) 推荐(1) 编辑
摘要: Masking is implemented using the stencil buffer of the GPU. Mask是通过GPU的模板缓冲实现的,关键代码只有一行,它的作用是为Mask对象生成一个特殊的材质,这个材质会将StencilBuffer的值置为1。 var maskMateri 阅读全文
posted @ 2022-04-05 14:12 cancantrbl 阅读(403) 评论(0) 推荐(0) 编辑
摘要: 最近有被问到“你知道为什么不同计算机里的浮点数会不一样吗” “不太清楚” “你没有好奇去不同的机器上尝试打印出来吗” “没有...” 很惭愧,发现自己对这些计算机底层原理还不是很熟,并且自己也没有实际的去尝试过好奇过,人呐,还是要对知识的追求继续保持好奇态度的! 先简单的做个测试,我在mac上计算0 阅读全文
posted @ 2022-03-31 22:20 cancantrbl 阅读(912) 评论(0) 推荐(0) 编辑
摘要: 总结一下我在现在这个项目里所用的音效检查是如何实现的吧,主要涉及到audio importer的使用。 在Unity中加工具菜单,方便策划美术使用,用的是MenuItem[] 主要的步骤是: 拿到项目里所有的音效文件 修改其meta文件 具体流程如下: 1. 找到音效文件 Directory.Get 阅读全文
posted @ 2022-03-28 22:06 cancantrbl 阅读(244) 评论(0) 推荐(0) 编辑
摘要: 发现自己只是知道合批怎么用,是可以减少drawcall,但却不知道这些底层的机制是怎么样的,为什么可以减少drawcall?这可是犯了大忌!决定潜心学习研究一下,在此记录。 首先什么是合批? 合批,也可以叫做批量渲染。合批就是通过减少CPU向GPU发送渲染命令(DrawCall)的次数,以及减少GP 阅读全文
posted @ 2022-03-27 21:42 cancantrbl 阅读(3948) 评论(0) 推荐(0) 编辑
摘要: Lua中的table就是一种对象 table和对象一样可以拥有状态 table和对象一样拥有一个独立于其值的标识(一个self): Lua只需要使用冒号,则能隐藏该self参数 able和对象一样具有独立于创建者和创建地的生命周期 local table1 = {a = 1, b = 2} loca 阅读全文
posted @ 2022-03-27 11:25 cancantrbl 阅读(171) 评论(0) 推荐(0) 编辑
摘要: deque v.s. vector deque 允许使用常数项时间对头端进行元素的插入和删除操作 deque 没有容量的概念,因为它是动态的以分段连续空间组合而成,随时可以增加一段新的空间并链接起来,deque 没有必须要提供所谓的空间保留(reserve)功能。 而vector需要旧空间不足而重新 阅读全文
posted @ 2022-03-25 00:28 cancantrbl 阅读(141) 评论(0) 推荐(0) 编辑
摘要: SAT:Separating Axis Theorem (分离轴理论),通过判断任意两个凸多边形在任意角度下的投影是否均存在重叠,来判断是否发生碰撞。即两个不相交的多边形一定能找到一条轴,它们在这条轴上的投影不相交 注意:分离轴定理只适合凸多边形,所以如果是凹多边形的话需要转换成多个凸多边。 来自: 阅读全文
posted @ 2022-03-23 23:27 cancantrbl 阅读(487) 评论(0) 推荐(0) 编辑
摘要: 目前用到了两种图集打包的方式:sprite packer and sprite altas Sprite Packer 流程: 打开 Edit -> Project Setting -> Editor 选择Always Enabled(Legacy Sprite Packer)模式 单独给每个需要打 阅读全文
posted @ 2022-03-23 07:29 cancantrbl 阅读(3627) 评论(0) 推荐(1) 编辑