您的位置:首页 > 其它

那些独立开发者适用的游戏引擎

2013-03-01 18:46 330 查看
Unity3d 资源包可以跨平台吗?

Are AssetBundles cross-platform?

资源包可以跨平台吗?

AssetBundles are compatible between some platforms. Use the following table as a guideline.

在有一些平台中是可以兼容的,可以参考下面的这个表格。
Platform compatibility for AssetBundles 资源包在平台的兼容性
Standalone
Webplayer
iOS
Android
Editor
Y
Y
Y
Y
Standalone
Y
Y
Webplayer
Y
Y
iOS
Y
Android
Y

Unity3d Protecting content (AssetBundle 加密)


Protecting content 保护内容

Unity allows you to create an AssetBundle object from a byte[] array with AssetBundle.CreateFromMemory. You can
use this as a way to enhance the security by encrypting your assetbundles before transmission and decrypt them at runtime.

Unity允许用户使用AssetBundle.CreateFromMemory从一个 byte[]数组中建立一个AssetBundle的对象。在运行时传输和解密之前,可以用这种加密方法来提高安全性和保护用户建立的资源包中内容。
string url = "http://www.mywebsite.com/mygame/assetbundles/assetbundle1.unity3d"; IEnumerator Start () { // Start a download of the given URL WWW www = new WWW (url); // Wait for download to complete yield return www;// Get the byte data byte[] encryptedData = www.bytes; // Load the TextAsset object byte[] decryptedData =YourDecryptionMethod(encryptedData); // Create an AssetBundle from the bytes array AssetBundle bundle =AssetBundle.CreateFromMemory(decryptedData); // You can now use your AssetBundle }


Unity3d Creating AssetBundles 创建资源包


Creating AssetBundles 创建资源包

有三个类方法可以用来构建资源包:

BuildPipeline.BuildAssetBundle,

BuildPipeline.BuildStreamedSceneAssetBundle 

BuildPipeline.BuildAssetBundleExplicitAssetNames

BuildPipeline.BuildAssetBundle allows you to build AssetBundles of any type of asset. 
可以构建任意类型资源的资源包。【创建一个压缩好的包含Assets下的所有资源文件.unity3d。可以包含是项目目录下的任意资源,而把所有的资源压缩成一个.unity3d的文件,这个文件包括所有的预置物体(prefabs),纹理贴图(textures),模型,动画。使用AssetBundle.mainAsset这个函数可以很方便的让你指定一个定义好的物体。被压缩的资源储存在pathName.
Options,会自动的允许用户包含相关的或者需要用到的】

BuildPipeline.BuildStreamedSceneAssetBundle is used when you want to include only scenes to be streamed and loaded as the data becomes available. 
用来当你希望只包括流场景,使数据加载变为可用。【建立一个或多个场景,这些场景所需要的所有资源将被压缩入资源包,即asset bundle里面。资源包中的场景文件可以在任何平台上建立,而且这些文件往往是以一个单一的unity3d文件格式被用来创建。使用WWW类可以下载场景文件。当场景文件被下载好可以使用WWW.LoadFromCacheOrDownload来加载下载好的场景文件。】

BuildPipeline.BuildAssetBundleExplicitAssetNames is the same as BuildPipeline.BuildAssetBundle but has an extra parameter to specify a custom string identifier (name) for each object. 
和BuildPipeline.BuildAssetBundle类似,但是有额外的参数来指定每个物体的自定义的字符串(名字)。【建立一个自定义名字的资源包方法: 创建一个包含所有资源的一个压缩好的unity3d文件。AssetBundle可以包括任何项目目录下的资源文件。在assetNames参数中提供一个与资源数目相同大小的字符串数组。在资源数组中存储的信息与资源文件名相同,可以传递AssetBundle.Load去加载一个指定的资源。使用BuildAssetBundle时,只需使用资源的路径名。压缩好的资源包文件将会被储存在pathName.
Options,允许用户自动包含与之相关的或者总是包含完整的资源去代替确切的参照物体。】

当使用上面的三个函数做完准备工作,我们现在就需要去下载这些资源然后加载它们。

作者:Gavalakis Vaggelis

人们时常想要自行制作游戏,也经常会有人组建起小团队,讨论新游戏的制作。多数情况下,有不少团队程序员决定自行制作游戏引擎。我个人认为,任何游戏项目的参与者都应当考虑他们的目标。如果真得是为了制作游戏,那么就没必要费心费力重新制作游戏引擎。目前有大量的游戏引擎可供使用,让开发者开发游戏项目的过程变得更为简单。使用现有的游戏引擎能够让项目更为简单,也能更快地完成项目,保持精灵的合理运转。而且,使用现有游戏引擎几乎可以确保不出现重大漏洞,让游戏可以流畅地运行。

3D游戏开发引擎

Unity3D 3.1

Unity可能是目前独立开发者的最佳选择,可以顺利实现多平台开发。使用Unity,你可以借助迅速架构游戏原型和开发游戏。Unity的渲染&光照能力卓著,支持延迟光照、遮挡剔除、SSAO、Beast光照映射以及诸多后处理效果。Unity拥有对刚体、软体和布料的物理支持。Unity的编辑器用起来令人舒适,资产工作流程也非常棒。编程可以使用C#、JavaScript或Boo,而且Unity可以被扩展,因为它已经可以添加许多优秀插件。网络上有大量资源和帮助你入门的教程,而且拥有一个很棒的开发社区。

Unity Indie是免费的,但缺失许多功能,Unity Pro售价1500美元。如果你想要开发iOS或Android游戏,必须花钱购买授权。







Unity 3D(from gratisprogramas.org)

Shiva 3D 1.9

开发者通常将Stonetrip的Shiva3D与Unity相比,因为它们的使用方法及售价都很相似。与Unity相同,Shiva也有着很棒的整合编辑器,可以用来制作所有的内容。Shiva游戏可以发布到Windows、Mac、Linux、iPhone、iPad、Android、Palm、PSP和Wii上。Shiva的功能正符合开发者对现代游戏引擎的需求。

Shiva PLE是免费的,但是如果要发布游戏的话,有两个差别不大的授权可供选择。一个售价170欧元,另一个售价1500欧元。





shiva-editor-1.9(from shiva3d)

Leadwerks Engine 2

形象地说,Leadwerks Engine可以体现出现代技术发展水平。Leadwerks Engine中带有高效编辑器,可用来设计游戏场景,也可以用现已支持的LUA脚本语言来编写。事实上,Leadwerks Engine的游戏可以用任何语言来编程,因为该引擎被编译成DLL的形式。但是,目前支持的语言只有C#和C++,以往还支持Blitzmax。公司放弃了对Blitzmax的支持让我觉得很可惜,因为这是我最喜欢的语言。但是,该引擎有个很大的优点,就是其API或许是我目前见过的游戏引擎中最清晰和易于理解的。资源数量可能比不上其他游戏引擎,但是足够你使用。值得注意的是,Leadwerks
Engine 3正在开发中,我已经迫不及待想看看这个新产品。

Leadwerks Engine 2的售价仅200欧元。

Essenthel Engine

我记得,当自己找到Essenthel Engine时它正处在开发早期。我下载了测试版,它的功能令我感到惊奇,在使用该引擎的数年时间里,它的发展仍足以令我大为惊讶。它支持所有的常见功能。Essenthel带有所有现代引擎应该包含的编辑器,编程语言只能使用C++,至少对我来说这是件很不幸的事。然而,Essenthel Engine带有的编辑器和工具设计不佳而且不够直观。Essenthel游戏能够兼容任何苹果设备,这也算是该引擎的一大优势。

根据你的游戏收益和所需的引擎源代码数量,授权版本的售价从150美元到40万美元不等。事实上,1000美元的版本就可以满足多数人的需求,所获源代码足够用来开发游戏。

GameCore 2.5

虽然这个引擎的知名度并不高,但GameCore 2.5提供了绝妙的图像质量、延迟光照、物理效果以及我见过的最好的编辑器和美术传输途径。输入模型并为其制作材料显得简单易懂。所制作游戏可以发布到PC、Mac和Web上。GameCore 2.5有自己的脚本语言,语法与C语言风格相似,易于使用。

GameCore 2.5 Indie是免费版本,但存在些许局限性,Pro版本的售价为1500美元。





gamecore(from crearevideogames.blogspot.com)

S2 Engine HD

S2 Engine HD还未发布,但是我想把它添加到这个列表中。S2Engine有可能成为一款优秀的游戏引擎,带有丰富的图像、AI和令人惊叹的编辑器。

它的售价为200欧元,如果你想要C++ SDK的话,需要支付2000欧元。

2D游戏开发引擎

Construct 0.99

Construct是款用于2D游戏开发的游戏引擎,可能是最简单的游戏引擎之一,它完全不需要编程知识,因为它是个基于可视事件驱动的系统,类似于老式的Multimedia Fusion软件。可在Construct的编辑器中执行开发,引擎可以通过其插件架构来扩展。我推荐你了解下这款游戏引擎,因为它是免费和开源的。





construct-0.99(from construct.softonic.fr)

Gamemaker 8

Gamemaker已经被用来制作出许多游戏。这是款2D游戏引擎,精致整合的编辑器带有许多功能。它有可视事件驱动系统,但是也支持直接进行简单的编程。Gamemaker的一大优势是良好的支持性和教程,还可以用许多扩展和插件来扩展引擎的功能。

Gamemaker 8的售价只有25美元,但是还有个受限的免费版本。





Game Maker 8(from Software downloads)

Game Editor

Game Editor也是款事件驱动游戏引擎,也是开源的。它有着清爽简单的界面,可以胜任多平台开发,包括智能手机、Linux、苹果设备和Mac。程序说明书做得很棒,而且还有许多教程让你可以轻松上手。





Game Editor(from itunes.apple.com)

Adventure Game Studio 3.1.2

AGS是款用来制作2D指向点击冒险游戏的游戏引擎。有许多冒险游戏(游戏邦注:例如《7 Days a Skeptic》)便是用这款引擎制作完成。所有的开发都在AGS编辑器内完成,你可以制作场景、可移动和可点击区域、UI和事件。制作简单冒险游戏不需要编程,但是引擎也能够支持编程,这样便能制作更多高级的游戏。尽管游戏质量不算很好,但这个引擎确实是经典老式冒险游戏的最佳选择。

AGS是免费引擎。





7 days a skeptic(from nuverian)

Visionaire Adventure Studio 3.4

与AGS相似,Visionaire Adventure Studio也是款用来制作指向点击冒险游戏的游戏引擎。但是与AGS相比,Visionaire Studio显得更为清晰,而且有更多的功能,比如PNG支持,图像质量也更好。引擎的可视事件系统与AGS相似,能够定义可行走和可点击区域。

Visionaire Adventure Studio的售价为35欧元。





Visionaire Adventure studio(from nuverian)

其他引擎

DX Studio

DX Studio是用来制作互动3D图像的综合性开发环境。系统由即时3D引擎和一套编辑工具组成。你可以使用DX Studio来构建全即时互动应用、模拟或游戏,可以独立使用,也可以嵌入其他Microsoft Office/Visual Studio应用中。

Torque 3D

Torque 3D是目前最易于使用的游戏制作平台。Torque 3D以Frontline优秀的Torque Game Engine Advanced为基础构建而成,配备一整套制作游戏的工具和API。游戏的发布平台包括PC、Mac、Xbox 360、Wii、iPhone和web。

Haaf’s Game Engine

HGE是款易于使用而且强大的硬件加速2D游戏引擎。对于想要方便迅速地开发带有商业化质量的游戏的人来说,这是款全功能中间件。它支持所有你能够想到的2D游戏题材,你可以制作从简单的谜题游戏到高级的多层次平台或战略游戏等各种类型的游戏,甚至无需去思考任何游戏逻辑代码!而且,你无需知晓任何有关“窗口信息”和DirectX编程之类的内容。你可以在拿到引擎的15分钟时间里开始开发自己的游戏。

C4 Engine

C4 Engine是款综合性的游戏编程工具,主要针对Windows和Mac OS X平台。它不仅是强大的3D图像引擎,而且还包含对物理、音频、连网、输入设备和资源管理等方面的多方位支持。

Neoaxis Engine

NeoAxis Game Engine是款用于3D模拟、形象化和游戏制作的多用途现代3D图像引擎。NeoAxis Engine是个用来制作互动3D图像的综合性开发环境,可以针对3D虚拟世界、AAA游戏和现实模拟类游戏。系统由即时3D引擎和一套全功能工具组成。

fixel 2

“它使Flash游戏制作发生变革。它是人机对接的新方式。它标志着游戏开发新时代的来临。我们将全部内容放在了新的flixel 2中。组别有助于组织游戏物体,象限四分数可实现更快更精确的碰撞,更清晰的API,同时包含所有老flixel的经典内容:动画精灵、位图和颗粒发射器。最为重要的是,flixel的个人或商业用户来说仍是完全免费的。你还在等什么呢?是时候开始制作游戏了。”

SIO2

什么是SIO2 Engine?SIO2是款基于OpenGLES的跨平台2D和3D游戏引擎,提供所有现代游戏引擎所具有的功能,而售价比同质量引擎要便宜得多。功能丰富、快速灵活的SIO2允许你针对最喜欢的手机平台制作出堪比AAA游戏的美术效果。与其他解决方案相反,SIO2不会强迫你使用任何特定IDE来编程或构建游戏。

Realm Crafter 2

Realm Crafter游戏引擎是MMORPG开发系统的核心。该引擎能够制作出虚拟游戏世界和世界所包含所有东西的行为。它能够生成3D图片,处理连网通信。Realm Crafter引擎显得模块化,这意味着它能够被分解成较小的单位,从而使你可以更轻易地自定义其操作。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: