出版時(shí)間:2013-1 出版社:清華大學(xué)出版社 作者:[美] Vladimir Silva 頁數(shù):243 字?jǐn)?shù):402000
Tag標(biāo)簽:無
內(nèi)容概要
《Android 4f#戲高級(jí)編程(第2版)》將幫助你充分利用最新的Android SDK
4.0的強(qiáng)大功能,構(gòu)建更加成熟、令人著迷的游戲應(yīng)用。最重要的是,本書向你展示了如何將類似Doom、Quake
I和I1這樣的原生PC游戲以最少的精力移植到最新的Android平臺(tái)。
將本書作為你值得信賴的指南,你將會(huì)發(fā)現(xiàn)一些能極大提高Android游戲應(yīng)用開發(fā)技能的方式。通過創(chuàng)建渲染二十面體的Android項(xiàng)目,你會(huì)看到如何使用OpenGL
ES
2.0產(chǎn)生高效的圖形。同時(shí)你還將學(xué)習(xí)如何使用更好的字體、新的用戶界面和體驗(yàn)(UI/UX)API、多點(diǎn)觸摸功能、多任務(wù),并得到更快的性能。只需要跟隨每一章可操作的源代碼和來自真實(shí)世界的示例,你將善于:
· 結(jié)合Java優(yōu)雅的面向?qū)ο蠊δ芎虲的原始動(dòng)力。
· 掌握一系列專業(yè)和高級(jí)的技術(shù),比如混合使用OpenGL、OpenGL ES和JNI的3D圖形技術(shù)。
·
移植和完善2D射擊游戲,構(gòu)建類~Quake的3D射擊游戲。如果想迅速提升自己開發(fā)Android高端游戲的技能,本書將是你的最佳選擇。
作者簡介
Vladimir
Silva出生于厄瓜多爾基多。他在1994年獲得厄瓜多爾軍隊(duì)理工學(xué)院系統(tǒng)分析師學(xué)位。同年,他作為交換生來到美國,在田納西州州立大學(xué)攻讀計(jì)算機(jī)科學(xué)碩士學(xué)位。畢業(yè)后,他加入了IBM
WebAhead實(shí)驗(yàn)室。他的興趣包括網(wǎng)格計(jì)算、神經(jīng)網(wǎng)絡(luò)和人工智能。他還擁有許多IT認(rèn)證,包括Oracle認(rèn)證專家(Oracle
Certified Professional,OCP).微軟認(rèn)證解決方案開發(fā)專家(Microsoft Certified
Solution Developer,MCSD)和微軟認(rèn)證專家(Microsoft Certified
Professional,MCP)。他在IBM developerWorks社區(qū)編寫了大量關(guān)于安全和網(wǎng)格計(jì)算方面的技術(shù)文章。
書籍目錄
第1章 歡迎來到Android世界
1.1配置開發(fā)機(jī)
1.2下載并安裝SDK
1.3配置Eclipse
1.4安裝原生開發(fā)工具包
1.4.1安裝NDK
1.4.2安裝Cygwin
1.5創(chuàng)建Android模擬器
1.6配置真實(shí)設(shè)備
1.7本章小結(jié)
第2章 針對手機(jī)或平板電腦的游戲技巧
2.1在Android中編譯原生代碼
2.1.1創(chuàng)建支持原生代碼的Android項(xiàng)目
2.1.2應(yīng)用程序的體系結(jié)構(gòu)
2.2編譯共享庫
2.3調(diào)試模擬器
2.4Java對C/C++事件處理的封裝
2.4.1獨(dú)立處理音頻
2.4.2級(jí)聯(lián)視頻事件
2.5多點(diǎn)觸摸
2.5.1MultiTouchGesture
2.5.2Multi工c.uchScreen
2.53TestActivity
2.6藍(lán)牙控制器(Zeemote)
2.7本章小結(jié)
第3章 更多OpenGL與JNI游戲技巧
3.1移動(dòng)設(shè)備的動(dòng)力
3.2Java方式的OpenGL
3.2.1創(chuàng)建項(xiàng)目
3.2.2Java版本的主Activity
3.2.3surface視圖
3.2.4GL線程
3.2.5立方體渲染器
3.2.6Cube類
3.3原生方式的OpenGL
3.3.1主Activity
3.3.2原生接口類
3.3.3修改原示例
3.3.4原生立方體渲染器
3.3.5原生立方體類
3.3.6編譯和運(yùn)行示例
3.4通過OpenGLES混合模式縮放視頻緩沖區(qū)
3.4.1為什么使用混合縮放
3.4.2初始化surface
3.4.3繪制到紋理
3.4.4當(dāng)圖像的尺寸不是2的冪時(shí)會(huì)發(fā)生什么
3.5本章小結(jié)
第4章 OpenGLES2.0的高效圖形
4.10penGLES2.0與Android
4.1.1著色器
4.1.2GLSL
4.1.3剖析著色器
……
第5章 3D射擊游戲:Doom
第6章 3D射擊游戲:Quake
第7章 3D射擊游戲:QuakeII
附錄 部署和編譯技巧
章節(jié)摘錄
版權(quán)頁: 插圖: 第2章介紹的一些針對Android的基本游戲開發(fā)技術(shù)為我們提供了非常重要的引導(dǎo),包括處理音頻/視頻、I/O事件和藍(lán)牙控制器?,F(xiàn)在,我們將進(jìn)行更深入的學(xué)習(xí)。 在本章中,你將學(xué)習(xí)在Java和C中混合OpenGL代碼這一絕技。這是在Java代碼中重用大量OpenGL C代碼的關(guān)鍵一步,即使用每種語言的最佳特性,以便最大限度地節(jié)約時(shí)間和成本。 每個(gè)游戲開發(fā)人員都知道OpenGL是高級(jí)游戲開發(fā)的靈魂。你不可能找到任何一款沒有使用該API編寫的強(qiáng)大游戲,因?yàn)樗杏布铀俚膬?yōu)勢,這比任何一種軟件渲染器都完美。 對于新手來說,OpenGL的復(fù)雜性可能會(huì)讓你望而卻步。但你不必作為OpenGL專家去理解它做了什么以及這些API是如何繪制元素的。你需要學(xué)習(xí)的僅僅是一個(gè)用于游戲開發(fā)的強(qiáng)大工具而已。 本章的目標(biāo)并不是要教你學(xué)習(xí)OpenGL(一整本書也講不完),而是向你展示如何利用Google提供的Android OpenGL示例,并以完全不同的方式修改它,通過在Java和原生C這兩種語言之間混合調(diào)用OpenGLAPI,以便最大限度地重用原生C代碼。 也許有人會(huì)說,這只不過是針對移動(dòng)設(shè)備的另一個(gè)OpenGL章節(jié)(毫無價(jià)值,對嗎?)。當(dāng)然不是,本章所介紹的OpenGL技術(shù)在Android中是獨(dú)一無二的,并且在編寫本書時(shí),整個(gè)互聯(lián)網(wǎng)上都沒有任何適用于Android領(lǐng)域的相關(guān)資料。這是我在思考移植Quake游戲到Android時(shí)偶然想到的一種技術(shù)。簡而言之,該技術(shù)由在Java中創(chuàng)建OpenGL上下文、顯示屏和Surface對象,并在原生C中執(zhí)行所有繪制操作兩部分組成。在渲染周期結(jié)束時(shí),C引擎將通過一個(gè)JNI回調(diào)告訴Java端交換緩沖區(qū)(渲染圖像),然后重復(fù)該周期。當(dāng)你擁有像Quake一樣有200000行的代碼需要重用時(shí),這種技術(shù)就會(huì)非常有用,因?yàn)橛肑ava重寫這些代碼幾乎不可能(本章的3.3節(jié)和本書的第5章將會(huì)詳細(xì)介紹并解釋該技術(shù))。 本章將以一個(gè)OpenGL翻轉(zhuǎn)立方體例子開始,進(jìn)而分析OpenGL如何在Java中運(yùn)作。 接著,我們將關(guān)注如何在原生層實(shí)現(xiàn)渲染過程,以及JNI如何綁定每個(gè)模塊。最后一節(jié)將討論OpenGL嵌入式系統(tǒng)(OpenGL Embedded System,OpenGL Es)運(yùn)用在高級(jí)3D游戲中的一些局限性。和第2章一樣,本章討論的內(nèi)容同樣兼容Android 4。 讓我們開始吧。
圖書封面
圖書標(biāo)簽Tags
無
評論、評分、閱讀與下載