Unity

unity 移动平台打包丢失shader的问题

少于 1 分钟读完

自己写了个shader,并且是从代码里面来进行加载,编辑器中并没有引用。在编辑器中运行项目没有问题,但是当我发布到iso和android平台之后发现游戏中并不能找到我自己的shader,猜想是unity在打包过程中进行了一些优化,没有用到的shader不会被打到游戏包内。

理解自动内存管理

2 分钟读完

当创建对象、字符串或数组时,存储它所需的内存将从称为堆的中央池中分配。当项目不再使用时,它曾经占用的内存可以被回收并用于别的东西。在过去,通常由程序员通过适当的函数调用明确地分配和释放这些堆内存块。如今,像Unity的Mono引擎这样的运行时系统会自动为您管理内存。自动内存管理需要比显式分配/释放更少的编码工作,...

理解托管堆

2 分钟读完

另一个Unity开发者面对的普遍问题是托管堆的意外扩展。在Unity中,托管堆的扩张比收缩更加容易。进一步说,Unity的垃圾回收策略倾向于碎片化内存,这可以防止收缩出来一个大的堆。

Buff System

少于 1 分钟读完

内部运算 1、是否包含技能效果?(提高/降低 攻击 命中 闪避 移动速度 群体伤害 替换技能ID 等 ) 2、是否包含阶段效果?(BUFF分为多个阶段,不同的阶段有不同的效果,比如影之哀伤) 3、是否包含计时器?(持续时长计算、叠加时长计算 总之所有关于持续性时间的问题 都丢这里) 4、是否包含计数器?(用来计算...

常见的2D碰撞检测

4 分钟读完

“碰乜鬼嘢啊,碰走晒我滴靓牌”。想到“碰”就自然联想到了“麻将”这一伟大发明。当然除了“碰”,洗牌的时候也充满了各种『碰撞』。

unity使用代理

少于 1 分钟读完

Unity的AssetStore下载package的时候经常抽风,而且开了代理工具的全局代理依然无效。

如何快速的注入汇编

少于 1 分钟读完

写汇编码比较麻烦,可以试下下面的方法,先写好你要注入的代码,然后编译好,使用ilsyp查看…选择到要注入的代码再使用Reflexil工具查看

ilruntime的研究

2 分钟读完

C#代码在编写后,是需要执行编译的,才能起效,这样如果在手机端,没有对应的编译环境,那么对应的c#代码就无法实现热更。ILRuntime实现的基础,也是基于AssetBundle的资源热更新方式,将需要热更新的c#代码打包成DLL,在每次完成资源打包后,对应的DLL会被作为资源热更新出去。这样就规避了编译相关的环...

关于addressable那些事

少于 1 分钟读完

在本文中将详细的描述Addressable对于内存的管理,如果正确的卸载资源

Unity Raycasters 剖析

6 分钟读完

Raycasters 用来检测当前事件发送给哪个对象,检测原理就是 Raycast。当给定一个屏幕坐标系中的位置,Raycasters 就会利用射线检测寻找潜在的对象,并返回一个离当前屏幕最近的对象。

googlePlay 发布问题

少于 1 分钟读完

问题 隐私声明 使用这个站点https://app-privacy-policy-generator.firebaseapp.com/ 根据app的名称,类型,平台等等,选择对应的选项,右边按钮还包含对应的第三方隐私服务链接,如果你用到的话,比如google play service, firebase等等,那么...

Unity的il2cpp

1 分钟读完

unity是运行在mono下的,il2cpp有自己的运行时,il2cpp不是运行在mono下的不是mono的aot