游戏引擎

面向Unity游戏引擎:PowerVR性能建议

作者:Dev Tech

如果你正在进行移动端Unity开发,那么这篇博客你绝对不能错过!最近,我们为广大用户提供了面向虚幻4游戏引擎的PowerVR性能建议,如果你更多时候使用的是Unity游戏引擎,那么我们现在就将与你分享PowerVR性能建议文档中关于提升Unity性能的一些方法。

大部分优化操作都适用于移动平台,但是也有一些是专门面向PowerVR平台的。也就是说,无论你的目标应用平台是什么,几乎所有的情况下都能够带来性能的提升,采用这些建议通常是很好的做法。

编译设置

纹理压缩

首先一定要确保使用了纹理压缩,这不仅能压缩存储空间,同时也会节省运行时的带宽,这是提升性能且节约电池寿命最好的方法之一。纹理压缩的优点是它们会一直处于压缩状态直到它们要被用于某个片段处理操作的时候。

Cocos2d-x中的Node

节点是cocos2d-x游戏引擎中的重要元素,是其他重要游戏元素的基类,例如,场景Scene,图层Layer,菜单Menu和精灵sprite都是继承节点类Node. Node类包含了一些基本的属性、节点相关、Action动作的执行、以及定时器等相关的操作。 当然Node也有父类,其父类为Ref。

节点的主要特点:

— 他们可以包含其他的节点对象(addChild, getChildByTag, removeChild, etc)
— 他们可以安排定期的回调(schedule, unschedule, etc)
— 他们可以执行一些动作(runAction, stopAction, etc)
— 子类节点通常意味着(单一的/所有的)
— 重写初始化资源并且可以安排回调
— 创建回调来操作进行的时间
— 重写“draw”来渲染节点
— 节点的属性有:位置、缩放、旋转、倾斜、锚点、内容大小、可见性

节点常用的一些操作函数及新的功能特性。

(1)节点的属性:位置、缩放、旋转、倾斜、锚点、内容大小、可见性

//  
/** 
 * 位置Position 
 *     设置节点的坐标(x,y).在OpenGL中的坐标 
 *     增加3D坐标 
 *     增加标准化坐标设置 
 */  

虚幻引擎学习之路:动画模块之基础篇

之前我们陆续为大家详细介绍了Unreal 4引擎的渲染模块(包括光照系统材质系统相机后处理全局光照明),接下来我们将讲解动画模块的基础功能。

动画模块是游戏引擎中的重要部分,是驱动游戏中场景、角色能够活灵活现地做出动作的基础。本文将分三块内容介绍Unreal 4引擎中的动画模块功能,其中包括:基础功能、进阶功能以及特殊功能。在介绍基础和进阶功能时,本文不仅会对其功能进行重点讲解,同时也将结合Unity引擎中的相似功能进行类比,以求让大家可以更明晰地掌握Unreal引擎动画模块的功能使用。在特殊功能中,本文将对Unreal 4引擎中针对特殊用途提供的功能进行重点解读。

本节主要介绍Unreal 4引擎动画模块中提供的基础功能。其中主要包括以下几个部分:

Unity正式推出新版游戏引擎Unity2017.1

Unity引擎是当前最受欢迎的游戏引擎之一,预计全球一半的手游和四分之三AR/VR内容都是基于Unitu引擎开发。现在,Unity正式发布了最新版本的游戏引擎——Unity2017.1。

Unity2017.1已经可以在Unity Store下载。这一版本的发布标志着Unity推出了第一款完全基于订阅模式的产品。最新的Unity引擎旨在为艺术工作者和设计师提供新工具,帮助他们创建更多的内容,其中包括最新的视觉工具Timeline和Cinemachine。

Timeline和Cinemachine允许创作者控制摄像机角度和拍摄,无需手工编写代码。其他功能包括最新的分析工具,让创作者可以了解更多关于用户的数据。Unity同时优化了资源商店,一个全新设计的Unity资源商店预计将在未来几个月内铺开。

Unity的亚当·麦希尔(Adam Myhill)表示:“Unity2017.1是一个一站式创作平台,可允许艺术工作者和设计师团队解锁所有的创意。借助Timeline这样的开放编排工具,Cinemachine中的智能程序性摄像机,内置的世界级色彩分级套件,以及从内部编辑和输出所有内容的功能,我们改变了内容创作的过程,并将优化彼此之间的协作。在如此强大和灵活的环境中工作不仅会节省大量的时间,而且能够让你以一种对许多优秀内容都是关键因素的方式进行实验、迭代和协作。”

有关游戏引擎的过去,现在与未来

在今天的产业中出现了许多非常有趣的开发,特别是围绕着电子游戏引擎的发展的开发,这也是我想要与你们分享的内容。但现在的我还不打算这么做。相反地我将努力做到自律,即我将先思考为什么作为在产业中待了22年多的资深人士,我会受到这些全新的开发内容的鼓舞。而为了理解为何这一问题如此重要,我们需要先谈谈电子游戏引擎的开发历史。

简要的历史回顾

对于作为电子游戏产业中的开发者的我们,我们能够找到许多致力于全新且有趣的新游戏的机会。早前这全部都是关于游戏,但随着硬件兼容性的提高,并且游戏也变得更加复杂,我们需要投入更多时间于游戏背后的技术中。所以我们便看到在90年代和2000年代许多拥有成功作品和引以为傲的技术成就的公司将他们的引擎授权给了其它工作室去创造其它产品。这是一种自然发展的过程并让许多游戏开发者能够专注于我们工作中最重要的一部分—-游戏。

在游戏引擎中应用快速的光线追踪软阴影

大约1年前,我在Gamasutra上发表了“游戏领域的光线追踪实用技巧”一文,阐释了开发人员如何在PowerVR GR6500(即我们的光线可追踪GPU)上应用一系列的混合渲染技术来实现一些令人印象深刻的效果。尽管光线追踪的目标应用程序极为不同,但本文主要关注点在于阴影。光线追踪不仅仅可以创造更多精确的且可摆脱阴影贴图伪影的阴影,其追踪阴影的效率还成倍地提高了。它们只需GPU一半的周期或更多的是只需一半的内存传输便可生成更具可比性或质量更好的图像。

接下来,我将带你走进一个高效实现软阴影技术的全过程。

• 传统栅格图像中的级联阴影贴图

首先,让我们回顾一下级联阴影贴图——即当下使用的为栅格图形生成阴影的最先进的技术。级联阴影贴图旨在基于视点的距离将视景体分为许多区域,并在每个区域呈现一个阴影。这为阴影贴图提供了可变的分辨率:距离相机较近的物体则可得到高分辨率,而距离较远的物体每单位面积分辨率则更低。

下述图中,我们可以看到场景中一些物体的示例。阴影贴图将逐一呈现,且每个贴图覆盖的场景将逐渐变大。由于所有的阴影贴图都具有相同的分辨率,因此阴影贴图像素的密度将随着我们逐渐远离视点而变得越来越低。

不只游戏引擎,Unity 正在改变每个人的生活体验

如果让我推荐几款最近玩过的、体验不错的移动端游戏,《Dark Echo》、《ULRTAFLOW》都是不错的选择。

在《Dark Echo》中你身处黑暗,需要依靠自己的脚步回声判断迷宫形状、还要小心脚步声不要惊动红色的怪兽吃掉自己;《ULRTAFLOW》则是通过墙壁和障碍的反射,将自己的小球在规定步数中投入目标大球。

《Dark Echo》游戏界面

《Dark Echo》游戏界面

Cocos2d-JS进阶教程01_自学的艺术

前面的话:

大家好,从今天开始呢,我们就继续来学习Cocos2d-JS这个游戏引擎。这个系列的教程,我同样以视频的方式分享给大家,所以这套视频是《Cocos2d-JS进阶视频教程》。

既然都进阶视频教程了,那肯定也有入门教程。所以呢,这里贴出我的第一套Cocos2d-JS快如入门视频教程链接:

系列教程:《Cocos2d-JS 快速入门视频教程

优酷高清:http://i.youku.com/lingjianfeng

百度网盘:http://pan.baidu.com/share/home?uk=1260900318#category/type=0 

四大开源3d游戏引擎探究

本人水平有限,只对于长久以来研究的几个经典3d游戏引擎的设计思想、程序架构和应用行深入剖析的结果与游戏开发同行分享,文档有不妥之处请指出,期待我们的共同进步。

引擎名称:
1. orge(鬼怪)
2. Irrlicht(鬼火),
3. Nebula(星云)
4. klayGE(。。)

前言:目前,开源3d游戏引擎已经趋近于商业化引擎标准,许多引擎在图形渲染,内存分配,网络通讯方面甚超越了许多商业引擎。这些开源引擎的共同特点是这样的:

(1)引擎框架:多数的3d引擎框架为树形结构。框架最为清晰、经典的游戏引擎是Nebula星云引擎。父子节点构成了整个框架的层次,首先nebula有一个叫nRoot的类,它是所有对象类的基类,nRoot中有一个名字变量,有一个parent指针指向它的父结点,还有一个childlist链表保存它所拥有的子结点.因为结点也是nRoot类,所有结点的子结点中也可能有子结点,这样就形成了一个树形目录结构.nRoot中有一个nRoot* Find( const char* name )方法,功能很简单,就是遍历自已的
childlist链表对比每一个nRoot结点对象的名字,如果相同就返回些对象的指针.。其他引擎也有类似的框架,比如orge的root根节点下面子节点代表每一个功能模块。

十大开源游戏引擎深入比较

在国内外,业界盛传有十大开源游戏引擎,分别是OGRE、Irrlicht、Panda3D、Crystal Space、jME、Blender Game Engine、Reality Factory、The Nebula Device 2、RealmForge、OpenScene- Graph。我们对这十款开源游戏引擎深入进行分析。

(1) OGRE是面向对象图形渲染引擎(Object-Oriented Graphics Rendering Engine)的缩写,采用C++开发,以MIT许可证发布,可以在Windows、Linux、Mac上运行。OGRE自己也说明本身不是游戏引擎。

其主要特征如下:

面向对象,插件扩展架构,具有文档支持。

支持脚本。可以通过脚本管理材质资产并进行多路渲染。

支持物理碰撞检测。

支持顶点灯光、像素灯光、灯光映射。

支持阴影映射、三维阴影。

支持多纹理、凹凸贴图、多重材质贴图、立体投影。

支持顶点、像素、高级着色。

支持场景管理,具有多种数据结构。

支持逆向运动动画、骨架动画、变形动画、混合动画及姿态动画。

支持网格加载、皮肤、渐进网格。

支持环境映射、镜头眩光、公告牌、粒子、运动模糊、天空、水、雾、丝带轨迹、透明对象。

同步内容
--电子创新网--
粤ICP备12070055号