跨平臺工具詳解:Ideaworks 3D Ltd (Marmalade)
主要產(chǎn)品和技術(shù)
Marmalade的工作是把C++代碼轉(zhuǎn)換為本地設(shè)備支持的代碼。支持的設(shè)備包括iOS,Android,BlackBerry平板,Symbian和Bada。開發(fā)者用標準C++、OpenGL和跨平臺的Marmalade API來編程。Marmalade API相對本地設(shè)備API來說更加簡潔。標準編譯器把代碼轉(zhuǎn)換為ARM級的機器語言,同時也轉(zhuǎn)換為帶有平臺特性的代碼。這種代碼在由運行時封裝的本地抽象層執(zhí)行。超過400Kb的基線內(nèi)存,相比其他是更好的解決方案。
Marmalade的App可以用Microsoft Visual Studio或者Xcode桌面開發(fā)環(huán)境開發(fā)。它的SDK包含很多的工具,比如仿真,桌面ARM調(diào)試,UI構(gòu)建,部署,用于設(shè)備控制測試的遠程調(diào)控手段,和支持本地代碼用C語言擴展為App的擴展開發(fā)包。
Marmalade的很多版本都可以使用。提供給個人開發(fā)者的是149美元的個人版(附贈一個Marmalade 的軟件啟動畫面),也有提供給企業(yè)和出版商的版本。OEM級的服務(wù)包括優(yōu)化,SDK的可定制增強, 多個SDK的聯(lián)合, 以及其他平臺上App的管理端口。
Ideaworks還能為用Marmalade開發(fā)的App提供一個分布式的解決方案,使之能適用于多個App商店,這些商店涵蓋了SDK支持的所有平臺。這家公司還開發(fā)了一個名為GitHub的space,它現(xiàn)在包括了超過60個源C++組件,以及經(jīng)過調(diào)整適用于Marmalade的擴展。
市場影響力
Marmalade宣稱差不多5萬名開發(fā)者安裝了他們的開發(fā)工具,這之中包括知名游戲工作室比如EA和PopCap。著名的基于Marmalade開發(fā)的軟件,有Plants vs. Zombies, Call of Duty: Black Ops: Zombies, Need for Speed Shift,Cut The Rope,,Lara Croft Guardian of Light 以及Sim City Deluxe。
市場定位
Marmalade的市場定位和其他3D游戲引擎提供商如Unity和Unreal比較相似。他們的產(chǎn)品都更偏向于設(shè)計第一人稱設(shè)計類游戲的設(shè)計,而Marmalade的產(chǎn)品是則更靈活多變。其他的開發(fā)工具用的是包含BatteryTech和EDGELIB的C++內(nèi)核,這是定位于游戲產(chǎn)品開發(fā),同時也能延伸到MoSync,雖然這并不是游戲開發(fā)的范疇。由于Marmalade支持眾多平臺,開發(fā)者可權(quán)衡平臺的流行程度自行選擇為什么平臺進行開發(fā)。用Marmalade開發(fā)的App中,32%支持Bada,27%支持BlackBerry,29%支持Symbian,同時93%支持iOS,85%支持Android。調(diào)查顯示,對Windows Phone的支持,以及更好的桌面部署方案(現(xiàn)在還是beta版),現(xiàn)在正受到開發(fā)者的廣泛需要。
Ideaworks以前曾專注于為知名游戲開發(fā)商提供產(chǎn)品服務(wù),服務(wù)對象后來增加了個人開發(fā)者,OEM和出版商。因此,Marmalade功能中包括3D繪圖和動畫工具,2D/3D幾何支持,以及最近才有的本地UI組件。這些組件擴寬了Marmalade的用戶范圍,因為它對非游戲開發(fā)者也有幫助。這些繼承自Marmalade的遺產(chǎn)反映在目標市場上,就是81%的Marmalade開發(fā)者進行的是游戲開發(fā),19%的進行企業(yè)App開發(fā)。調(diào)查中,開發(fā)者表示,性能這一選擇工具時的重要指標是讓Marmalade得到大多數(shù)投票的重要因素。
開發(fā)者也表示,讓他們放棄一個工具的原因中,該工具不支持他們的目標平臺占大多數(shù)。這個原因占了32%的比例,而其他原因的平均值是18%。Marmalade支持的移動平臺范圍很廣,這個原因也許對它不適用。不過因為在游戲引擎市場,開發(fā)者也許會需要Marmalade支持其他游戲引擎(如Unity)支持的網(wǎng)絡(luò)游戲控制平臺,所以要求Marmalade支持其他平臺的開發(fā)者比例是29%,而其他工具平均是17%。這一點(而且Marmalade支持的App種類多于Unity)也反映在開發(fā)者表示他們曾放棄了包括Marmalade在內(nèi)的工具,只是因為他們不適應(yīng)游戲開發(fā)。
Marmalade主要吸引經(jīng)驗豐富的開發(fā)知名移動App的開發(fā)者。這在我們的調(diào)查中,反映在Marmalade的使用者比其他平臺的使用者通常有多得多的移動開發(fā)經(jīng)驗。這些開發(fā)者從事開發(fā)的時間都比平均開發(fā)者長2至3倍。Marmalade的開發(fā)者同時還更傾向于開發(fā)有10萬到100萬用戶的知名游戲。
Marmalade的原話
“運行于智能手機、平板電腦和其他嵌入式平臺上的豐富App和游戲,都可以在Marmalade SDK這一跨平臺開發(fā)環(huán)境下方便高效地開發(fā)。Marmalade已經(jīng)被多個世界頂尖出版商采用,在Apple的App Store中發(fā)布了一系列高品質(zhì)、 知名的App。”