09 2018 档案
摘要:一个游戏公司,决定开始用U3D做一款新游戏,这个游戏类型从来没做过。 如果没有一个成熟的游戏框架,那么从头撸起。 是一开始就将LUA热更新考虑进来呢 还是先做成纯C#的框架呢? 考虑因素:游戏逻辑如果特别复杂,那么就选纯C#,原因: 1,C#可以单步调试,便于定位复杂问题,也可以利用堆栈理清调用关系
阅读全文
摘要:通常,我们设计游戏引擎时,或者管理器时,都会由管理器产出各种产品,一旦有新产品要加,就要修改管理器,来增加相应的生成代码。 这从设计上来看有两个问题: 1,管理器参数需要有个类型,在管理器中用if else根据类型来生产不同产品 2,违反了设计原则“对修改封闭,对扩展开放” 使用者使用时要通过管理器
阅读全文
摘要:http://www.cocoachina.com/game/20150824/13174.html RVO算法 RVO避开agent
阅读全文
摘要:我在使用Unity 发布IOS真机过程时遇到的关于JIT的问题列表 谁偷了我的热更新?Mono,JIT,IOS Unity在iOS平台下的Mono在Full AOT模式下的限制
阅读全文
摘要:C#的优点:1,不会有运行时崩溃,解决了C++的痛点一,难预防,难查错2,使用文件不需要包含进来,只需要using namespace即可,解决了C++的痛点二,包含复杂,路径复杂,编译复杂3,编译速度极快,解决了C++的痛点三4,库代码易懂,智能提示好。std::map<int, <error-t
阅读全文
摘要:摘自: more effective c# 9. 对数组跟集合使用foreach 循环数组或集合有三种方式: 第一种: foreach(int i in foo) foreach(int i in foo) { { // do somethings. // do somethings. } } 第二
阅读全文
摘要:我们的程序里有这段代码: DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1)); DateTime curServerDateTime = startTime.AddSeconds(gl
阅读全文
摘要:Unity3D RTS游戏中帧同步实现 帧同步游戏开发基础指南
阅读全文
摘要:在帧同步处理中,需要由服务端下发相同的随机数种子到各端,各端根据这个种子来产生一组随机数。对每个端来说,这组数都是固定的,只根种子有关,和运行次数无关。
阅读全文
摘要:因为单纯的随机确实会影响到竞技性,所以dota2引入的是伪随机机制,在大量的技能中,比如说混沌的混乱之箭、剑圣的剑舞、冰女的冰霜领域之类的技能,都利用了伪随机机制。 而纯随机,或者标准正态分布并不会因为之前的结果影响此次技能的效果,因为他们的每次计算是互相独立的。 所以,从魔兽争霸3继承来的PRD(
阅读全文
摘要:测试机型:【VIVO Y53】2017 900元左右, 安卓6.0,骁龙425/1.4GHz/4核, adreno308, 2GB/16GB, 960x540P 2500mAh【OPPO A5】2018.6 1500元左右,安卓8.1,骁龙450B/1.8GHz/8核, adreno506, 4GB
阅读全文
摘要:直接在VS的安装程序里选:使用.NET的移动开发,其中就包括了安卓SDK,JAVA SE等 另外:自己手动安装SDK时,不要选模拟器相关的东西,太大了,如果每个版本都选,安装下来上100G以上
阅读全文
摘要:在class中的结构体内存在堆上,因为class是引用类型。 函数中直接new出的单一结构体对象,内存在栈上。 new出的结构体数组,内存在栈上,因为数组是引用类型。
阅读全文
摘要:MemoryProfiler Unity 5.3a4 has a new very lowlevel memory profiler API. It can tell you which objects got blamed for how much C++ memory allocations.
阅读全文
摘要:U3D文档中说明了,反射在IOS是支持的,除了system.reflection.emit空间内的,其它都支持。JIT是不支持的。 本质上来说即是:只要不在运行时动态生成代码的行为都支持,reflection.emit下的功能可以动态的生成代码(生成程序集,生成类,生成函数,生成类型等,是真正的生成
阅读全文
摘要:1,安卓APP发行:google play,原名android store 2,IOS APP: apple store 3,国内各大平台,应用宝,360,小米,华为 ...
阅读全文
摘要:1,虚拟机上安装MAC系统,里面装XCODE 2,WINDOWS上安装code blocks,这个IDE可以直接在WIN上编译XCODE工程: 最新的IOS在windows环境下编译环境搭建记录
阅读全文
摘要:答:1.将Assets和Library一起迁移2.导出包package3.用unity自带的assets Server功能
阅读全文
摘要:U3D的Profiler中的GC ALLOC 项让人很麻烦,一直搞不清楚它是什么,因为 GC 是垃圾回收,而alloc是内存分配,那么 GC ALLOC 是 垃圾回收内存分配? 这个名字起的太TM烂了,其实这是U3D的不知哪个二货程序员起的,除了U3D中,其它任何文献中都没有这个名词。 GC_FOR
阅读全文
摘要:相同点:字典和map都是泛型,而hashtable不是泛型。 不同点:三者算法都不相同 Hashtable,看名字能想到,它是采用传统的哈希算法:探测散列算法,而字典则采用的是散列拉链算法,效率较高,空间也小。Stl:map使用的是红黑树算法,效率最低为o(nlogn) 这里要注意的是 dictio
阅读全文
摘要:在U3D中默认情况下是使用CPU蒙皮的,在BUILDING SETTING中的others中可以设置为GPU skinning
阅读全文
摘要:在西山居的这篇U3D cheatsheet中,提到: c12. 确保 struct 实现了 Equals() 和 GetHashCode() 这怎么理解? 首先,看下system.object.equals和 ReferenceEquals的实现: public static bool Refere
阅读全文
摘要:U3D手册: Optimizing garbage collection in Unity games https://zhuanlan.zhihu.com/p/25306993 https://github.com/mc-gulu/gl-bits/tree/master/(2017)%20unit
阅读全文
摘要:ST ot;//分配在栈上 ST[] arrt = new ST[2];//分配在堆上,因为数组是引用
阅读全文
摘要:UGUI研究院之缓存策略让UI打开更快(三十) [投稿]Unity3D游戏优化之头顶UI 注意里面提到了:SuperTextMesh:能渲染动态文字,富文本支持图文混排,缺点是支持atlas但很弱,资源管理、解析效率内存占用都算不上优秀。好在有源码可以改,就选这个了。
阅读全文
摘要:U3D进行场景烘焙时,发现阴影无法选择烘焙质量,其实想一下也合理,毕竟是烘焙,是将光照与阴影信息保存到lightmap中,因此阴影的质量取决于光照贴图的精度, 就算光照贴图再大,也远不可能达到实时光照算出的最高质量阴影。 那么问题来了,可不可以写一个工具,将场景中的实时阴影与光照输出到对应的纹理贴图
阅读全文