《Genesis-3D开源游戏引擎完整实例教程-跑酷游戏篇06:移动版优化指南》--本系列完结
6.移动版优化指南
概述:
移动设备不同于目前的高端设备(Wii、Xbox 360和PS3),市场上的手机硬件是很有限的,并且所有的移动设备都是不一样的。像Adroid手机,由于品牌和出厂年限的不同,有一部分手机相对整个市场而言是老旧的、较慢的。但是,作为游戏开发者并不能因为这些老旧的设备,而摒弃这部分的市场,因为尤其在中国,这些手机占有了很大一部分市场份额。那么如何保证好的游戏画面的同时,来保证游戏可以快速有效的运行,就是开发者在游戏开发初期应该考虑的问题。 本文意旨在于给应用Genesis-3D引擎开发新的手机游戏感到不知所措,抑或是在为新的手机游戏进行规划和原型设计,或移植现有项目到移动设备上让其顺利运行的开发者们一些参考。使开发者最好的将开发的游戏进行优化,使得开发的游戏有趣且迅速。
分析
分析很重要,因为它可以帮助你辨别哪些优化有益于较大的性能提高,哪些浪费了宝贵时间。大量的数据都表明,游戏运行的大部分时间花费在了渲染上。优化渲染作为提高游戏运行速度,值得更多开发者注意,并且美术人员也需要知道平台和他们通常要绕过的方法的局限性,使他们能够做出有益的、创造性的决定,而不必重做工作。
注意事项:
1. 在制作美术资源时。应该尽量避免使用法线贴图。真正的法线贴图只有在角色上才会使用。避免使用法线贴图可以减少实时渲染的时间,并且也会减少美术资源的制作时间。例如runcool里,贴图大小不超过256*256像素,模型不到处法线和切线,使用洪培关照等。
2. 引擎虽然支持物体板块。但是在碰撞检测方面,不建议玩家引入刚体。自己处理物体的碰撞检测。例如runcool中引入了子空Actor,在程序上实现碰撞的检测。
3. GPU优化,尤其是在移动设备上的GPU,在做alpha测试 (或者在像素着色器里做剪切和丢弃操作)的时候会产生很大的性能开销。如果可能,你应该用alpha混合来代替alpha测试。如果alpha测试不能避免,应该保证可见的进行alpha测试的像素个数是最小值。
4. 纹理压缩。
(1)iOS纹理压缩,有一些图像,尤其是使用iOS/Android pvr格式压缩的纹理,带有透明通道的图片压缩后质量损失较大,根据自己需求使用。在Genesis-3D引擎的编辑器中,集成了此项功能,压缩后图片将会保留原来的后缀名覆盖掉原有图片,建议在发布前再压缩图片。
(2)Android 纹理压缩,所有的Android 设备都能支持OpenGL ES 2.0 ,并因此支持ETC1压缩格式,因此,尽可能使用ETC1作为首选纹理格式。
引擎官方网站:http://www.genesis-3d.com.cn/
官方论坛:http://bbs.9tech.cn/genesis-3d/
官方千人大群:59113309 135439306
YY频道-游戏开发大讲堂(完全免费,定期开课):51735288
Genesis-3D开源游戏引擎:游戏起源,皆因有我!!!
《Genesis-3D开源游戏引擎完整实例教程-跑酷游戏篇06:移动版优化指南》--本系列完结的更多相关文章
- 《Genesis-3D开源游戏引擎--横版格斗游戏制作教程:简介及目录》(附上完整工程文件)
介绍:讲述如何使用Genesis-3D来制作一个横版格斗游戏,涉及如何制作连招系统,如何使用包围盒实现碰撞检测,软键盘的制作,场景切换,技能读表,简单怪物AI等等,并为您提供这个框架的全套资源,源码以 ...
- 《Genesis-3D开源游戏引擎--横版格斗游戏制作教程04:技能的输入与检测》
4.技能的输入与检测 概述: 技能系统的用户体验,制约着玩家对整个游戏的体验.游戏角色的技能华丽度,连招的顺利过渡,以及逼真的打击感,都作为一款游戏的卖点吸引着玩家的注意.开发者在开发游戏初期,会根据 ...
- 《Genesis-3D开源游戏引擎--横版格斗游戏制作教程01: 资源导入》
1. 资源导入 概述: 制作一款游戏需要用到很多资源,比如:模型.纹理.声音和脚本等.通常都是用其它相关制作资源软件,完成前期资源的收集工作.比如通常用的三维美术资源,会在Max.MAYA等相应软件中 ...
- 《Genesis-3D开源游戏引擎--横版格斗游戏制作教程08:虚拟键盘实现》--本系列完结
8.虚拟键盘实现 概述: 硬键盘就是物理键盘,平时敲的那种.软键盘是虚拟的键盘,不是在键盘上,而是在"屏幕"上.虚拟按键就是虚拟键盘的一部分,根据功能需求,提供部分按键效果的UI可 ...
- 《Genesis-3D开源游戏引擎--横版格斗游戏制作教程07:UI》
概述: UI即User Interface(用户界面)的简称.UI设计是指对软件的燃机交互.操作逻辑.界面美观的整体设计.好的UI设计不仅可以让游戏变得更有品位,更吸引玩家,还能充分体现开发者对游戏整 ...
- 《Genesis-3D开源游戏引擎--横版格斗游戏制作教程06:技能播放的逻辑关系》
6.技能播放的逻辑关系 技能播放概述: 当完成对技能输入与检测之后,程序就该对输入在缓存器中的按键操作与程序读取的技能表信息进行匹配,根据匹配结果播放相应的连招技能. 技能播放原理: 按键缓存器中内容 ...
- 《Genesis-3D开源游戏引擎--横版格斗游戏制作教程05:技能读表》
5.技能读表 技能读表概述: 技能读表,作为实现技能系统更为快捷的一种方式,被广泛应用到游戏开发中.技能配表,作为桥梁连接着游戏策划者和开发者在技能实现上的关系.在游戏技能开发中,开发者只需要根据策划 ...
- 《Genesis-3D开源游戏引擎--横版格斗游戏制作教程03:碰撞检测》
3.碰撞检测 碰撞检测的概述: 碰撞在物理学中表现为两粒子或物体间极端的相互作用.而在游戏世界中,游戏对象在游戏世界自身并不受物理左右,为了模拟真实世界的效果,需要开发者为其添加属性,以模拟真实事件的 ...
- 《Genesis-3D开源游戏引擎--横版格斗游戏制作教程02:关键帧动画导入与切割》
2. 关键帧动画导入与切割 动画的分割与导入概述: 在游戏当中,游戏角色在不同状态下会有不同的动作,这些动作在引擎里相当于一段段的动画片段.当导入模型资源的时候,连同模型动画都会一并导入到引擎中.开发 ...
- Beat 'Em Up Game Starter Kit (横版格斗游戏) cocos2d-x游戏源代码
浓缩精华.专注战斗! 游戏的本质是什么?界面?养成?NoNo! 游戏来源于对实战和比赛的模拟,所以它的本源就是对抗.就是战斗! 是挥洒热血的一种方式! 一个游戏最复杂最难做的是什么?UI?商城? ...
随机推荐
- Searching in a rotated and sorted array
Given a sorted array that has been rotated serveral times. Write code to find an element in this arr ...
- OD之窗口界面
- ntpServer搭建用以进行时间同步
在试各种乱七八糟的集群中,突然发现了一个问题,假如在一个闭网环境下安装某些集群软件的时候服务器之间的时间不同步(如HBase),会导致启动失败.那么就需要进行时间同步.可是往常都是网络校准的,没网的集 ...
- Codeforces Round #240 (Div. 2)(A -- D)
点我看题目 A. Mashmokh and Lights time limit per test:1 secondmemory limit per test:256 megabytesinput:st ...
- PowerDesigner(五)-概念数据模型(CDM生成LDM,PDM和OOM)
概念数据模型 概念数据模型(Conceptual Data Model,CDM):表达的是数据整体逻辑结构,该结构独立于任何软件和数据存储结构,即它只是系统分析人员,应用程序设计人员,维护人员和用户之 ...
- 新的HTTP框架:Daraja Framework
https://www.habarisoft.com/daraja_framework.html
- 解决 Your project contains error(s),please fix them before running your application问题
原文地址: Android笔记:解决 Your project contains error(s),please fix them before running your application问题 ...
- PLS-00215:字符串长度限制在范围
在Oracle中有一张people表 创建跟新表的存储过程 修改定义字段长度 总结:在Oracle中执行存储过程时,输出参数的长度要与原表中字段长度一致!
- Struts中的 saveToken的方法
Struts中的 saveToken的方法 saveToken防止2次提交的问题 struts有自带的Token(令牌)的机制来解决重复提交(包括后退,刷新等).举例: 假设:假设有一个新增用 ...
- poj1925Spiderman(dp)
链接 确实是破题 按复杂度估计怎么着也不能按坐标D 啊 网上的代码交上去还TLE 无语了 多次TLE之后终于看到一次WA..好高兴 以横坐标进行DP dp[j] = min(dp[j],dp[2*x ...