Windows Phone程式設計(XNA框架)

Windows Phone程式設計(XNA框架)

《Windows Phone程式設計(XNA框架)》是2012年出版的圖書,作者是Charles Petzold 。

基本介紹

  • 書名:Windows Phone程式設計(XNA框架)
  • 作者:Charles Petzold
  • 譯者:楊帆
  • ISBN:9787121157677
  • 定價:69.00元
  • 出版時間:2012-3
出版信息,內容簡介,關於作者,引 言,本書組織,關於讀者的假設,系統需求,使用手機模擬器,代碼示例,最後時刻的內容,重要的人,糾錯和書籍支持,保持聯繫,目 錄,

出版信息

《Windows Phone程式設計(XNA框架)》
[美]Charles Petzold 著
楊帆 譯
ISBN 978-7-121-15767-7
2012年3月出版
定價:69.00元
16開
476頁
在Windows編程傳奇人物的指導下,將你的遊戲創意變成現實

內容簡介

Windows Phone是微軟經過數年曆練,融合了幾乎所有的微軟產品及服務而推出的創新性智慧型手機平台。遊戲是智慧型手機上必不可少的應用程式,Windows Phone上提供的遊戲開發框架是XNA,這是微軟的專業跨平台遊戲開發框架。
本書的編寫兼顧了實用性和創新性,書中的實例是讀者很好的學習資源。全書共分上、下兩篇,上篇對比Silverlight和XNA介紹Windows Phone平台的基本概念,具體包括控制程式朝向、觸控簡介、處理點陣圖材質、感測器和服務,以及在程式內傳遞和保存數據遇到的問題。下篇主要介紹如何使用XNA開發高性能的二維遊戲,具體包括文字和子畫面(sprites)的創建,以及動畫控制、處理點陣圖(載入、從像素基本控制、使用動態的材質)、使用變換、使用觸控和感測器來創建遊戲。

關於作者

Charles Petzold書寫基於Windows作業系統上編程的書籍已有24年了。他是微軟客戶端應用程式開發的MVP,Windows先驅獎的獲得者。他筆耕不輟,那本經典的《Windows程式設計》現在已經是第五版,是歷史上最好的編程書籍之一,另外,其著作《編碼:隱匿在計算機軟硬體背後的語言》也受到了廣泛的讚賞。

引 言

重要提示:本書和另外一本Microsoft Silverlight Edition: Programming Windows Phone 7都有完整的索引,它們均來自一本免費的電子書,名為Programming Windows Phone 7。本書可以從微軟出版社的部落格上找到,這本書沒有對原始的版本進行任何文字上的修改,也包括原始圖片的顏色說明,只是在這本書中以黑白色來顯示。下面是原書的引言,唯一的不同是,“代碼示例”的部分是根據本書內容來更新的。
本書是微軟的Windows Phone 7項目組給編程社區的一份禮物,筆者有幸成為其中一員。本書將向讀者介紹使用C#程式語言和Silverlight、XNA 2D框架來為Windows Phone 7平台開發應用程式的基本知識。
是的,Programming Windows Phone 7這本書是可以免費下載的,對於依然喜歡紙質書的讀者,這本書分成了兩個完整索引的列印版本:Microsoft Silverlight Edition: Programming Windows Phone 7和Microsoft XNA Framework Edition: Programming Windows Phone 7。
因為下載了這本書而節省下的錢請您用於購買其他的書籍。儘管在網路上有大量的信息,書籍仍然是學習編程的最好的方式,因為其有條理並且有完整的輔導方式。每本書的銷售都會帶給作者歡樂的眼淚,所以請給予作者肯定和支持。
您可以購買其他書籍來作為本書的補充材料,比如,在本書中,筆者很少談到Web服務,這部分內容是缺乏的,現在Web服務對於Windows Phone 7應用程式來說變得越來越重要了。本書對於XNA的內容只是局限於2D的圖形編程,作者也希望給本書的下一個版本中加入一些3D的內容,現在的內容也並不完全涉及Xbox LIVE社區角度的遊戲編程。本書沒有討論Visual Studio之外的編程工具,也沒有討論Expression Blend。
本書的發行商微軟出版社也有關於Windows Phone 7的其他書籍即將上市:Andy Wigley和Peter Foot的Windows Phone 7 Silverlight Development Step by Step提供了更多的面向工具的方式。另外,儘管Michael Stroh的Windows Phone 7 Plain & Simple是一本手機的使用嚮導,而不是關於開發的,它也給程式設計師提供了一些洞察力和好想法。
此外,作者也聽說老友Doug Boling在編寫一本關於Windows Phone 7企業開發的書籍,這應該是一本大作,值得推薦。

本書組織

本書分為兩篇。第一篇是討論Windows Phone 7編程的基本概念,Silverlight和XNA的實例都會使用。大多數Windows Phone 7的程式設計師都會選擇其中一個平台,但筆者認為,程式設計師對於可選的方向具備必要的知識是很重要的。
本書的第二篇是關於XNA 2D的。為了方便讀者閱讀,本書的結構編排都是建立在前面章節知識的基礎上的,所以推薦的閱讀方式是按順序來閱讀。

關於讀者的假設

這裡假設讀者具備基本的.NET編程的知識,熟悉C#程式語言。對於不了解這些知識的讀者,可以閱讀作者免費的線上書籍.NET Book Zero: What the C or C++ Programmer Needs to Know about C# and the .NET Framework,這本書可以在作者的網站上找到。

系統需求

使用本書前,讀者需要先下載並安裝Windows Phone開發工具,其中會包含針對Windows Phone的Visual Studio 2010 Express版本、XNA Game Studio 4.0,還有一個螢幕上的Windows Phone的模擬器用來在沒有手機設備時測試程式。讀者可以從中獲取最新的信息並下載。
也可以將這些工具安裝在Visual Studio 2010上,這樣會給Visual Studio 2010增加手機開發的功能,這也是筆者在使用的配置。
儘管可以使用手機的模擬器來做很多事情,在某個時間點會需要將程式部署到真實的Windows Phone 7的設備上,讀者可以在上註冊一個開發者賬號,然後解鎖手機,這樣才能通過Visual Studio將程式部署到手機上。
在2010年7月,作者得到一部LG GW910手機來測試本書中的程式,當時手機上安裝的版本是7.0.7003.0。

使用手機模擬器

Windows Phone 7支持多點觸控,這是開發手機程式很重要的一部分。當使用Windows Phone的模擬器時,滑鼠的單擊和滑鼠的移動可以模擬模擬器上的觸控,但是只有一個手指。要想在模擬器上測試多點觸控功能,就需要一個多點觸控的顯示屏,並且允許運行在Windows 7系統下。
如果沒有多點觸控的顯示器,可以使用多個滑鼠來模擬多點觸控。在網站上可以找到相關下載,也有連結到提供教程的網頁。
Windows Phone 7設備也有一個內置的加速度儀,這在模擬器 上也是很難模擬的。Blomqvist(本書的技術審閱人之一)在中發現了一個程式,該程式使用webcam和ARToolkit來模擬加速度儀感測器,並通過TCP/HTTP伺服器將數據傳給Windows Phone 7模擬器。儘管我們還沒有嘗試,但這看起來也是很有趣的。

代碼示例

為了介紹Silverlight和XNA的編程概念,本書描述了190個完整的程式,很多程式都是小而簡單的,也有一些大的而且更加有趣的程式。
有些人喜歡通過在Visual Studio中重新創建工程並且自己輸入原始碼來學習新的編程環境。也有一些喜歡研究已有的代碼,並且運行來看看這些代碼到底是乾什麼的。如果是後者,可以在連結的頁面中的Companion Content下載到一個ZIP檔案,其中包含所有的原始碼。
如果覺得那些代碼里有對你的項目有用的部分,都是可以免費使用的,而且沒有任何限制,你可以直接使用或者根據需要來修改。

最後時刻的內容

在本書快完成的時候,第一個版本的Silverlight for Windows Phone Toolkit也已經發布,其中提供了額外的元素和控制項,讀者可以在中下載。在歷史上,Silverlight工具包中常常有一些元素和控制項的預覽,它們有些會包含在下一個版本的Silverlight發布中。很遺憾,在本書中沒能有一個章節來討論這個工具包中的內容。
對於XNA的程式,Visual Studio有時候會報錯說不能編譯或者部署,如果遇到這類問題,可以在解決方案的平台下拉列表中選擇“Windows Phone”,而不是“Any CPU”,或者在Build選單的配置管理器中,在活動解決方案的平台下拉列表中選擇“Windows Phone”,而不是“Any CPU”。
在作者的個人網站中也包含了本書的信息,或許也有未來版本的信息。此外,筆者也希望儘可能多地寫一些關於Windows Phone 7編程的部落格。

重要的人

這本書的出版也要感謝Dave Edson——我的老朋友,我們最早認識要追溯到20世紀90年代早期,我在《微軟系統雜誌》(Microsoft System Journal)做特約編輯時,他力薦我是寫這本Windows Phone 7教程的最佳人選。在2009年的12月,Dave就安排我參加微軟內部關於手機的深入技術研究,Todd Brix對本書也很支持,Anand lyer負責和微軟出版社的協調工作。
在微軟出版社,Ben Ryan啟動了這個項目,Devon Musgrave負責將我的代碼和分散的文章組織成書(我們以前就有交情,回到1998年出版的《Windows程式設計》第五版,在著作權頁的底部也可以看到Ben和Devon的名字。)
我的技術審閱者是勤勞的Per Blomqvist,他好像測試了本書中所有的代碼和用到的實例,在這個過程中,他找出了書中的很多錯誤,這真是讓人敬佩。
Dave Edson也審閱了本書的部分章節,同時也作為我和Windows Phone產品組之間的橋樑,這使我的一些技術問題和疑問能夠得到解決。從最開始,Aaron Stebner提供了重要的指導,Michael Klucher也審閱了本書的一些章節,Kirti Deshpande、Charlie Kindel、Casey McGee和Shawn Oster也告訴了我一些很重要的東西。另外,還要感謝Bonnie Lehenbauer審閱了本書的一個章節。
我也感謝Shawn Hargreaves,他具備的XNA專業知識幫了我不少忙,Yochay Kiriaty和Richard Bailey也告訴了我不少關於墓碑機制(Tombstoning)的內幕知識。
我的妻子Deirdre Sinnott很了不起,在過去的數月里,當我面對電腦螢幕有時變得情緒不穩定、瘋狂大叫時,她對我總是很有耐心,而且容忍我的行為。因為我有寫書的困難,因此,她也替我分擔了不少的家務活。
此外,我也不能責怪本書中還有的bug,因為它們都是屬於我的。
Charles Petzold
New York City and Roscoe, New York
October 22, 2010

糾錯和書籍支持

我們做了最大的努力來確保本書及其附帶內容的準確性。如果您發現任何錯誤,請給微軟出版社的書籍支持發郵件。(請注意,這個郵件地址不提供對於微軟軟體的產品支持。)
我們希望聽到您的反饋
對於微軟出版社來說,讀者滿意是最高的優先權,讀者的反饋是最珍貴的財產。請通過下面的連結告訴我們您怎樣看待本書:
這個調查很短,我們會閱讀您的每一條評論和想法,在此提前對您表示感謝。

保持聯繫

我們會一直在Twitter上,讓我們繼續保持聯繫吧!

目 錄

上篇 基礎
第1章 Windows Phone 7簡介 1
第2章 支持朝向變化 31
第3章 觸控接口簡介 52
第4章 點陣圖(或稱材質) 71
第5章 感測器和服務 92
第6章 程式架構中的問題 118
下篇 XNA
第7章 移動的理論 158
第8章 材質和子畫面 187
第9章 動態的材質 217
第10章 根據手勢進行變換 267
第11章 通過觸控來玩遊戲 339
第12章 通過傾斜來玩遊戲 407

相關詞條

熱門詞條

聯絡我們