03 2022 档案
发表于 2022-03-31 22:20阅读:998评论:0推荐:0
摘要:最近有被问到“你知道为什么不同计算机里的浮点数会不一样吗” “不太清楚” “你没有好奇去不同的机器上尝试打印出来吗” “没有...” 很惭愧,发现自己对这些计算机底层原理还不是很熟,并且自己也没有实际的去尝试过好奇过,人呐,还是要对知识的追求继续保持好奇态度的! 先简单的做个测试,我在mac上计算0
阅读全文 »
发表于 2022-03-28 22:06阅读:257评论:0推荐:0
摘要:总结一下我在现在这个项目里所用的音效检查是如何实现的吧,主要涉及到audio importer的使用。 在Unity中加工具菜单,方便策划美术使用,用的是MenuItem[] 主要的步骤是: 拿到项目里所有的音效文件 修改其meta文件 具体流程如下: 1. 找到音效文件 Directory.Get
阅读全文 »
发表于 2022-03-27 21:42阅读:4302评论:0推荐:0
摘要:发现自己只是知道合批怎么用,是可以减少drawcall,但却不知道这些底层的机制是怎么样的,为什么可以减少drawcall?这可是犯了大忌!决定潜心学习研究一下,在此记录。 首先什么是合批? 合批,也可以叫做批量渲染。合批就是通过减少CPU向GPU发送渲染命令(DrawCall)的次数,以及减少GP
阅读全文 »
发表于 2022-03-27 11:25阅读:180评论:0推荐:0
摘要:Lua中的table就是一种对象 table和对象一样可以拥有状态 table和对象一样拥有一个独立于其值的标识(一个self): Lua只需要使用冒号,则能隐藏该self参数 able和对象一样具有独立于创建者和创建地的生命周期 local table1 = {a = 1, b = 2} loca
阅读全文 »
发表于 2022-03-25 00:28阅读:154评论:0推荐:0
摘要:deque v.s. vector deque 允许使用常数项时间对头端进行元素的插入和删除操作 deque 没有容量的概念,因为它是动态的以分段连续空间组合而成,随时可以增加一段新的空间并链接起来,deque 没有必须要提供所谓的空间保留(reserve)功能。 而vector需要旧空间不足而重新
阅读全文 »
发表于 2022-03-23 23:27阅读:521评论:0推荐:0
摘要:SAT:Separating Axis Theorem (分离轴理论),通过判断任意两个凸多边形在任意角度下的投影是否均存在重叠,来判断是否发生碰撞。即两个不相交的多边形一定能找到一条轴,它们在这条轴上的投影不相交 注意:分离轴定理只适合凸多边形,所以如果是凹多边形的话需要转换成多个凸多边。 来自:
阅读全文 »
发表于 2022-03-23 07:29阅读:3897评论:0推荐:1
摘要:目前用到了两种图集打包的方式:sprite packer and sprite altas Sprite Packer 流程: 打开 Edit -> Project Setting -> Editor 选择Always Enabled(Legacy Sprite Packer)模式 单独给每个需要打
阅读全文 »
发表于 2022-03-22 07:39阅读:592评论:0推荐:0
摘要:先简单说一下什么是栈帧 大多数机器的数据传递、局部变量的分配和释放通过操纵程序栈来实现。为单个过程(函数调用)分配的那部分栈称为栈帧。 栈帧 stack frame 定义:机器用栈来自传递过程参数,存储返回信息,保存寄存器为以后恢复及本地存储。 作用:用于控制和保存一个函数调用过程的所有信息的 组成
阅读全文 »
发表于 2022-03-20 19:26阅读:1736评论:0推荐:1
摘要:计算机的大小端指的是不同的字节顺序储存方式。 如0x1A2B3C4D,总共四个字节,两个十六进制数表示一个字节,高位字节为0x1A,低位字节为0x4D;中间两个字节分别为0x2B和0x3C;数值0x1A2B3C4D想要在计算机中正确使用,就必须要考虑在内存中将其对应的四个字节合理存储。 对于一个数值
阅读全文 »
发表于 2022-03-20 08:13阅读:2030评论:0推荐:1
摘要:前段时间看了很多关于同步机制的文章,和同组leader也讨论了很多这方面相关的内容,总结了一部分,在此写下保存自留吧 帧同步 主旨:同步的玩家操作指令 “相同的输入 + 相同的时机 = 相同的显示” 目的:在于消除网络波动性带给玩家的卡顿以及忽快忽慢的不良体验。 大致流程: 同步随机数种子(可以保持
阅读全文 »
发表于 2022-03-19 23:35阅读:1208评论:1推荐:0
摘要:计算机是不能直接做减法运算的,因为普通电脑硬件中没有减法器,但负数的存在可以用加法器转换成减法。但也就是因为负数的存在,原码和反码都不适合做计算,为什么呢?首先我们得知道什么是原码,什么是补码还有什么是反码。 原码 原码是对自然正数(包括0)的二进制编码,正数在计算机中直接用原码进行存储。 整数的正
阅读全文 »
发表于 2022-03-12 12:10阅读:1952评论:0推荐:1
摘要:建议去看《Lua程序设计》24-28章,里面详细介绍了Lua和C语言之间的通信原理,多看函数是怎么调用的,就会理解了虚拟栈是怎么操作的,以下是我看完后的总结。 为什么Lua可以作为热更新语言 首先我们得知道什么是热更新,简单来说,就是在用户通下载安装APP之后,打开App时遇到的即时更新。本质是代码
阅读全文 »