- 博客(19)
- 资源 (10)
- 收藏
- 关注
原创 unity帧同步游戏极简框架及实例(附客户端服务器源码)
阅前提示: 此框架专为有帧同步需求的游戏打造,实现了一个最精简的框架,这几篇文章我会详细讲解帧同步游戏的制作要点,伴随框架自带了一个小的塔防demo作为演示.什么情况下需要使用帧同步帧同步原理服务器校验如何做平台分离逻辑和绘制如何分离哪些unity接口不能调用(Debug.log)定点数如何去掉Vector2和Vector3不能使用dotween随机数如何做加...
2018-09-01 11:36:51 40565 42
原创 游戏开发中常用设计模式梳理和总结
阅前提示:本文讲述内容为游戏开发中涉及的常用设计模式,以及个人对这些模式的思考和总结,这些模式来自于前辈们众多项目经验实战总结,因此读者应具备一定的游戏开发经验,方能更好的理解和运用到实际工作中目录:状态模式外观模式单例模式中介者模式桥接模式策略模式模板方法模式工厂模式建造者模式享元模式组合模式命令模式责任链模式观察者模式备忘录模式访问者模式装饰模式...
2018-08-20 08:45:46 3577
原创 Unity3D + luaframework如何做到一键打包
阅前提示:本文讲述内容为如何优化luaframework的打包流程,并不是讲如何使用luaframework配合unity3D进行热更新的基础内容,因此需要读者有unity3d + luaframework的使用经验,以及熟悉assetbundle的热更原理和流程,否则不建议阅读.目录: 1.为什么要做一键打包 2.使用OnScriptsReloaded 来串接整个流程 3.如何在O...
2018-08-04 17:48:15 1734 2
原创 多人在线游戏技术难点分析
本文主要聚焦于多人在线游戏的两个技术难点:1.服务器的承载能力2.玩家体验通信架构同步方式和异步方式同步简单粗暴,数据稳定性高,但需要收集到所有玩家数据后才能做出下一步反应,因此体验取决于网速最慢的那个人异步方式体验最好,可以容忍更加不稳定的传输线路和糟糕的延迟,但需要处理很多异常状况游戏中具体采用哪种通信架构并没有一个标准答案,要根据游戏具体的设计和玩法来进行对应的选择构成游戏世界的三大基本要素:玩家和npc的交互(异步)格斗游戏,攻击与躲闪的异步冲突,发送表示原因的数据,不能只发送结
2021-05-10 17:30:44 3328
原创 Dots初探和原理分析
什么是DOTSData-Oriented Tech StackECS Entity Component SystemC# Job SystemBurst CompilerDots的官方数据450w个mesh render10万个音频文件同时播放5k个不同的汽车模型20万个不同的建筑模型稳定60帧DOTS原理ECS 用于编写高性能代码Job System 用于高效运行多线程代码Burst Compiler 用于生成高度优化的本地代码这三者是完全不同的两个概念,可以分开使用,但
2021-02-14 15:42:24 2607
原创 unity客户端载入体验优化解决过程记录
最近运营组提了优化建议,说进入游戏时感觉很卡顿,进入游戏的整个loading过程中会出现3次明显的卡顿,不顺畅,体验很不舒服,同时找了几个竞品游戏做对比,发现我们的游戏确实加载体验不好,遂开始着手分析是哪里出了问题.1.第一直觉是美术资源加载的问题,资源加载是卡主线程的,肯定会出现画面卡顿.于是我从启动函数开始梳理,直到卡顿的地方,发现还没到加载美术资源的地方就已经卡了,继续2.发现运行第一个lua脚本的地方会出现明显卡顿,于是开始分析这个lua脚本做了什么逻辑,一行一行进行注释,调试,最后只剩
2020-07-04 19:43:26 476
原创 unity接入bugly无法显示C#错误行号
项目上线后在bugly后台收集到一些c#的错误日志,如下所示:可以看到堆栈信息,但看不到具体的行号,这对于一个函数中有多行代码的逻辑来说只能说帮助有限.在unity社区发现目前并不支持release发布的l2cpp的版本显示行号,于是我尝试改为develop+mono进行打包测试,结果如下:这次可以正常显示了,为了确认是develop+mono才能正常显示,我又试了试release+mo...
2020-02-08 17:38:11 2767 7
原创 unity www在android端不释放内存问题解决方案
最近在优化unity游戏项目内存占用,游戏打开时会先从包里解压一部分资源到本地,原本是使用的www进行解压,解压的包体有400M,解压完毕后发现unity竟然不会释放这部分内存给系统,而是继续持有,查询了很多相关资料后发现这是C#的问题,C#的设计理念是一但应用可以申请400M的内存进行解压,那这400M内存也不用还给系统,应用后续的其它内存申请可复用之前申请的内存空间,减少数据吞吐提升运行效率,...
2020-02-02 21:13:19 1278
原创 unity2019.1.5f1及更高版本不再存储UIText的完整vertex信息
最近在做聊天emoji支持,用的版本是unity 2019.1.8f1参考了网上多个例子,均出现排版怪异的问题,排查原因后发现是unity新版中不再存储UIText的空格,换行等完整vertex信息,因此,所有通过OnPopulateMesh重新修改text的顶点信息来实现图文混排的算法全部失效.在这篇帖子中,unity官方给了回复:https://forum.unity.com/thre...
2020-01-14 14:00:02 2394
原创 unity+tolua 64位android崩溃排查过程记录
最近项目上线googleplay,需要打64位包,由于unity l2cpp打包比mono慢很多,因此前期开发过程中都是用的mono打的32位包进行测试.结果64位包出来后发生各种莫名其妙的卡死,尤其是重载场景以后,几乎必然出现我试着把手机接上androidstudio查询日志,发现卡死的时候触发了bugly,难道是bugly的bug导致的?于是我决定暂时去掉bugly,结果发现原来会触发卡死...
2020-01-02 15:04:50 2020
原创 unity IAP错误排查:The object of type ‘AsyncWebUtil‘ has been destroyed but you are still trying to acces
unity IAP 错误排查:The object of type 'AsyncWebUtil' has been destroyed but you are still trying to access it.正在开发的项目有超时断线重连的功能,这时候会重载场景,重载后如果调用IAP的支付代码会触发报错:MissingReferenceException: The object of typ...
2019-12-28 19:48:57 1620
原创 Luaframework Unity2019适配(附源码)
公司最近新开项目,打算升级unity到最新的2019,run了一下最新的luaframework无法正常运行,于是做了一些小调整.改动了以下三个文件:在win10, android,ios上均测试通过.如有类似需求的同学可以参考看看.源码地址:https://github.com/CraneInForest/LuaFramework_UGUI.git具体修改的地方可以看看git仓库...
2019-05-23 21:14:16 2437 1
原创 游戏团队,各职位人员离职所带来的影响和不同
公司boss是商务出身,不懂技术,也不懂游戏开发和游戏团队,于是常常需要给他普及一些常识性的知识.游戏制作人游戏制作人一般为游戏title的发起者,多为公司高层,股东,甚至boss本身,一般来说,游戏制作人是不会轻易离职的,除非公司出现重大变故,或者公司内部政治斗争导致不得不走等等,但,一旦出现游戏制作人离职的情况,那该项目团队或许就要面临解散的局面了.项目负责人/项目经理很...
2019-05-10 09:21:33 1644
原创 科技公司需要了解的重要问题,工程师的思维和情商
我是技术出身,对于曾经共事的同事多有观察,发现工程师的思维非常可爱,简单,直接.会在心里转小九九的地方大都在薪资福利,岗位,职级等地方打转,很少会在人情世故,鸡毛蒜皮的事上的纠结.代码写累了,阳台人手一根烟就是一群兄弟最真实的写照.最近公司出了两个新政策,让公司工程师大为光火,公司规定:1.周末加班餐不可统一报销,必须各报各的,而且需要餐饮发票.2.周末加班不管加到...
2019-05-10 09:10:41 388
原创 skynet中如何使用redis
我们最近的项目中,使用Skynet+redis作为搭档,redis这个高速缓存使用起来非常方便,效率也很不错,现在进行一个简单的记录和分享.我们使用的Redis是适配与skynet的lua版本.Redis的启动非常简单,一句话搞定:目录定位到:/skynet/myexample/mulclient启动命令:redis-serverredis/redis-na-base-m...
2019-05-10 09:07:25 3400 1
原创 项目leader如何把控团队氛围
今天主美来找我,说有个做建模的MM反应说团队氛围不好,太过严肃,死气沉沉。这着实让我吃了一惊。主美问我要不要抽个时间做个团建,聚个餐,缓和一下团队氛围?直觉告诉我没那么简单,我说让我考虑考虑。下班回家路上我就在反思哪里出了问题。最近我定了两个可能让团队成员压抑的规矩:1.所有人创建工作QQ,上班时间不能使用私人QQ我发现不少人有在上班时间闲聊QQ的坏习惯,可能是上家公...
2019-05-10 09:04:34 1202
原创 unity5.x适配Android P刘海屏方案
unity5.x适配Android P刘海屏方案修改启动Activity生成jar包替代启动Activityunity2018的方案最近项目有需要适配Android P的刘海屏,尝试在androidManifest.xml中进行了各种配置发现系统仍然自动两边留黑,刘海附近默认不绘制,最后方案是通过修改启动activity进行解决:修改启动Activity以下是MainActivity.jav...
2019-03-05 13:45:04 3029 5
原创 通过Jenkins搭配Unity3d + luaframework实现网页端自动化打包
阅前提示 本文讲述内容为在实现unity3d+luaframework一键打包后,如何与jenkins整合,进行自动化打包,如果您不知道如何做到一键打包,请参阅我的另一篇文章: https://www.jianshu.com/p/2377340b2a18 如果您对unity3d,luaframework不熟悉,则不建议阅读.上一篇我们讲了Unity3D + luaframework如何做...
2018-08-13 09:10:12 647
游戏架构设计与策划基础
2019-02-14
设计模式可复用面向对象软件设计基础
2019-02-14
人月神话(中文版)-pdf
2019-02-14
C#入门经典 第7版 pdf
2019-02-14
Irrlicht 1.7 Realtime 3D Engine Beginner's Guide书和源码
2012-01-02
Irrlicht 1.7 Realtime 3D Engine Beginner's Guide随书源文件
2012-01-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人