202503-18 Godot学习笔记之资源加载卸载(六) Godot并没有提供异步加载接口,而是通过ResourceLoader.LoadThreadedRequest(path)启动一个线程来加载,需要使用者在update中进行轮训查看加载结果。 先来看看这段代码,代码中并没有处理异常,我们先不管它。流程上是OK的,可以进行一个异步加载的调用,并且.... Read More >
202503-17 Godot学习笔记之文件系统(五) Godot的文件系统和Unity的Assetbundle设计上并不一样,所以误导了一段时间。 我开始以为pckPacker就是类似打包AB的脚本,但是并不是。 [crayon-67dec0326e86f587266954/] 注意看第二个Addfile方法,看到这里是不是感觉很好奇,为什么还要加.... Read More >
202502-21 Godot学习笔记之断点调试引擎编辑器和运行时C++代码(四) 从学习的角度最大的需求就是学习引擎底层是如何工作的,比如下面这段C#代码,我就想看看C++底层是如何加载ResourceLoader.Load<Texture2D>这段代码的,我还需要能下断点来调试它。 [crayon-67dec0326ecbc759531416/] 首先需要编译引.... Read More >
202502-18 Godot学习笔记之拓展编辑面板(三) 如果单纯的只是序列化一些属性,可以不用添加脚本,如下图所示,选中任意节点然后Add metadata就可以添加属性了。 而且metadata还可以在运行时添加,只需要获取任意节点对象都可以访问它。 [crayon-67dec0326f1a0302649537/] 如果希望在编辑面板.... Read More >
202502-16 Godot学习笔记之播放FBX模型动画(二) Unity中通常的做法是基础模型是FBX文件,每个动画也是个单独的FBX文件。Unity导入FBX后还可以继续修改,比如修改动画名。Godot是不建议在引擎内部修改的,它认为这样会破坏继续在DCC软件中模型文件的再次编辑,尽量所有东西都可以在3DMAX或者Blender中编辑,导出后直接在Godot.... Read More >
202502-13 Godot学习笔记之开发语言的选择(一) 前段时间用godot做了一个小小游戏demo,算是入门了一下这个引擎,后面可能会继续学习,我会记录一些学习笔记,通过记录笔记学习会更快一些,希望大家多多交流。 官方给了一套很好的实例项目,是一个学习的宝库。这个仓库非常好,初学者我非常建议每个project都打开运行一下,能学到不少东西。 .... Read More >
202404-06 飞书机器人发送unity手机中日志 手机中可以通过 Application.logMessageReceivedThreaded来监听日志的信息,在通过File.AppendAllText来将日志写在手机的Application.persistentDataPath目录中。日志可以按天写入,这样即使游戏闪退也可以把当天产生的日志取出来.... Read More >
202312-16 使用ripgrep快速搜索引用关系 反向搜索某个资源被哪里引用,比如贴图被那个资源使用了,可以利用ripgrep这样搜索会秒出结果。如下图所示,拖入待搜索的贴图,然后搜索它被哪里用了。 rg.exe 下载 https://github.com/BurntSushi/ripgrep/releases 代码利用 rg.... Read More >
202310-22 我的新书Unity3D游戏开发(第3版) 又来啦!!又来啦!!大家好,我和图灵出版社合作的新书《Unity 3D游戏开发(第3版)》终于出版了!2023 心怀梦想,乘风破浪!!! 这本书我写了800页,从厚度上可以看到已经远超上一版。有过前两版的经验,我真心希望把最好的一面带给读者。Unity这些年发展的很迅猛,现在的功能也很多,如果.... Read More >
202305-13 Shader变种收集PassType的问题 材质上可以通过material.shaderKeywords来获取使用到的宏,接着使用ShaderVariantCollection就可以动态创建变种收集器了。 [crayon-67dec03270ee9882821545/] 这里面有个巨大的坑就是passtype,比如这里有两个宏A和B同时开.... Read More >
202209-09 Unity边玩边下限制下载速度 Unity提供了DownloadHandlerFile类来进行文件的下载,如果是那种网络比较好的宽带每秒下载速度可以达到20M以上,这样导致IO容易卡住。如果是进游戏前那种提前下载肯定没问题,但是边玩边下这种如果不限制下载速度那么游戏就不会那么流畅了。 Unity提供了DownloadHand.... Read More >
202209-07 URP场景渲成一张图优化性能 我们游戏是回合制卡牌,场景并不会像MMO那样人物在屏幕上可以自由移动,这里产生的一个优化的可能就是将场景先渲染到一张图上,然后在Blit到屏幕上,然后在绘制后面的人物。前提是相机不能移动和旋转,这样在低端机上可以从设计上锁了镜头的旋转移动。如果对效果要求不那么高其实RT用ARGB32就够了。 [c.... Read More >
202208-28 URP下让美术同学困惑的多主光计算 在URP中Input.hlsl中定义了主光的全局变量,C#管线这边需要每帧将主光的位置和颜色传递到Shader中。 [crayon-67dec03272be4708977250/] 如下图所示,在FrameDebugger中可以看到,这里显示的数值是localToWorldMatrix后的结果,.... Read More >