欢迎来到天天文库
浏览记录
ID:35295056
大小:32.00 KB
页数:3页
时间:2019-03-23
《unity3d游戏开发之大会的部分总结》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、一、项目开发,管理和发布策略1. 四大准则a. 美术的资源量b. 美术规范,要根据开发什么样的游戏制定统一的规范,这样尽可能的形成统一的规范。然后程序要协助美术制定相应的查看美术是否适合规范的的工具,并把所有美术资源统计出来(这里需要UI的二次开发)。--来自狗刨学习网c. 先从CPU和内存的优化,然后GPUd. 增量更新,包的大小控制,低端设备的支持 控制drawcall的数量,UI贴图,技能特效,换装等。 Sorting:Opaque:fromfronttoback Mipmaps:打开,启用 硬件分级:
2、 {resolution,post-processing,MSAA,Fx/partidesdensityon/off,Shader} 内存管理,一半原则,不要超过内存的一半 {A. 减少贴图的大小B. 场景物体都做成prefabC. 用好AssetbundleD. ObjectPool和LoadManager,避免频繁new,在切换场景的时候不释放公共UIE. LoadManager,同一时间一次载入}AssetBunddle,采用依赖性打包用alphatest的效率低 自己写一套控制打包的脚本二、自动打包Asset
3、PostprocessorAssetImportBuildPlayer支持命令行编译,自动化打包发布Assetbundle的东西放入到StreamAssets文件夹中NewBehaviourScript.txt新建脚本的模板Assetlabel:提升检索的速度打包Android的jar文件命令:jar-cvfclass.jar*Edit里面有个GncphicsEmulation选项,暂时不清楚干什么的,用来模拟不同硬件的测试增量更新:就是打包的时候要实现,增量更新的方式1) 脚本资源分离2) 接口与实现分离UnityNativecode1. C,C++代码2
4、. 生成.so文件3. 放到plugin下4. 在Unity中调用Java中调用navtivecode用Systemn.Loadlibrary一次打包10个包BeginSamplePrifilor取样CPU的的信息三、内存尽可能避免不必要的堆内存的分配a. CPU–GCAlloc查看性能分析器里:记录游戏运行时内存分配,尽可能避免不必要的堆内存分配1. 一次性分配超过2kb的选项2. 检测每帧都具有20B以上的内存的分配的原则b. CPU-Time帧超过5ms的c. 内存ManagedHeap.UsedSize不超过20
5、Md. 内存查看是否有重复的资源,纹理压缩,不要超过1M,Assetbundle打包的时候的依赖关系。Device.Present:一般出现了复杂的ShaderShader.CreateGPUPrgreamOther.compareTag()不要用等号==,影响速度需要了解的内容:1. 项目的管理如何协调美术和策划把资源的利用最大化2. 内存的优化3. CPU的优化4. GPU的优化5. 性能监视器的使用6. 常用性能比较好的插件7. 特殊友好效果的实现8. Assetbundle的使用9. 对Unity3d
6、里面的特性进行熟悉目标就是高效率的项目管理流程,一切都以速度和效率为先。高性能的游戏设计技巧
此文档下载收益归作者所有