贈書:HTML5 Canvas 2d 編程必讀的兩本經典


贈書:HTML5 Canvas 2d 編程必讀的兩本經典

這兩年多一直在和HTML5 Canvas 打交道,也帶領團隊開發了世界首款基於HTML5 Canvas 的演示文檔工具---AxeSlide(斧子演示,www.axeslide.com)。在這個領域也積累了一些 經驗,希望有機會和大家分享。今天是要給大家推薦兩本這方面的書,同時會送一本書給大家。


要介紹的第一本書是我學習Canvas開發的入門書——《HTML5 Canvas核心技術:圖形、動畫與游戲開發》。 此書作者David Geary,中文版譯者為愛飛翔,由機械工業出版社出版。

我相信這本書,不僅是我個人,很多學習Html5 Canvas開發的同學都是把它當做案頭必備。 這本書是HTML5 Canvas領域的標桿之作,也是迄今為止該領域內容最為全面和深入的著作之一,是公認的經典、五星級暢銷書、資深技術專家David Geary力作。它不僅全面講解了canvas元素的API,以及如何利用Canvas進行圖形繪制、動畫制作、物理效果模擬、碰撞檢測、游戲開發、移動應用開發,還包含大量實例,可操作性極強。 我們在開發斧子演示的時候,從基本的繪圖,圖片,視頻,音頻處理,到動畫、文本處理, 所有核心開發內容都能從這本書中獲取知識和靈感。 

《HTML5 Canvas核心技術:圖形、動畫與游戲開發》共分11章。第1章介紹了canvas元素及如何在網絡應用程序中使用它;第2章深入研究了如何使用Canvas的API進行繪制;第3章告訴讀者如何繪制並操作Canvas中的文本;第4章專門講解圖像、圖像的操作及視頻處理;第5章介紹如何實現平滑的動畫效果;第6章講解如何用JavaScript語言來實現精靈;第7章展示了如何在動畫中模擬物理效果;第8章介紹了進行碰撞檢測所用的技術;第9章以一個簡單但是高效的游戲引擎開始,提供了游戲制作所需的全部支持功能;第10章討論了實現自定義控件的通用方法;第11章專門講述如何實現基於Canvas的手機應用程序。


上面的書已經成為經典,接下來的這本,即將成為經典。同樣是大牛David Geary的力作——《HTML5 2D游戲編程核心技術》。

此書由機械工業出版社出版,目前你在網上和實體書店還買不到這本書,不過我已經提前拿到了,並且仔細 閱讀了幾天。

相對於上一本書,此書可作為Html5 Canvas編程的進階書來讀,同時可以作為HTML5游戲編程 的入門寶典來長期翻閱。

大師與普通人的區別,不僅僅在於能力的高低,更重要的是能把知識講明白,真正做到傳道、 授業、解惑。 這本書做到了。

本書是為希望使用HTML5進行2D游戲開發,且具備一定JavaScript編程經驗的開發人員而准備的。在本書中,筆者從零開始完整講解了一個復雜的橫向卷軸平台視頻游戲的開發過程,並將該視頻游戲命名為“Snail Bait”。在開發過程中,筆者沒有使用任何第三方圖形框架或游戲框架,因此讀者將從本書中學會以編程方式實現平滑動畫、sprite爆炸、開發人員后門程序、游戲難易度設計等所有內容。如果讀者正在使用某個游戲框架開發游戲,那么本書對於幫助讀者理解游戲框架內部的工作原理也同樣大有裨益。

 出於教學目的,Snail Bait游戲僅實現了一個關卡,然而它卻具備了街機風格游戲的全部特點。Snail Bait游戲在滾動的背景上同時操作多個動畫對象,即sprite對象,在播放游戲背景音樂的同時添加多種音頻效果。sprite對象具備多種行為,包括但不限於跑動、跳躍、飛行、閃光、彈跳、來回移動、爆炸、碰撞、平台着陸、從游戲畫面底部跌落等。

另外,Snail Bait游戲還實現了多個特色功能。例如,一個可以減慢或加快游戲整體速度的時間系統;游戲加載過程動畫;當游戲主角失去生命時,震動游戲畫面的特殊效果;模擬煙霧和燃燒的粒子系統等。當游戲窗口失去焦點時,Snail Bait游戲會暫停運行,而當游戲窗口重新獲得焦點時,Snail Bait游戲會以一個倒計時動畫作為開始,以便玩家有時間來恢復對游戲的控制。

雖然沒有使用游戲框架或圖形框架,但是Snail Bait游戲使用Node.js和socket.io技術實現了將游戲中的一些指標數據發送到服務器端、高分存儲和檢索,並在游戲窗口頂部顯示高分榜等功能。當游戲運行緩慢時,Snail Bait游戲還將顯示警告信息。而當按下“Ctrl+D”組合鍵啟動游戲時,Snail Bait游戲將啟動開發人員后門程序,從而賦予操作人員特殊權限,例如修改時間軸的流動,或者顯示sprite對象碰撞檢測矩形以及其他功能等。

當Snail Bait游戲檢測到自己運行在移動設備上時,將通過調用觸摸事件處理句柄、調整游戲窗口大小來重新配置自身,以便適應移動設備的屏幕大小及控制方式。

游戲編程一直以來是我練習編程技能的最佳訓練方法。因為哪怕一個小小的游戲,你也要考慮 程序的架構,考慮分層和解耦,考慮消息傳遞,考慮繪圖,考慮動畫,考慮網絡,考慮性能, 考慮交互,多媒體處理,多線程等等。游戲編程,往往需要我們在某一方面做到極致,對編程者 的磨練是相當大的。從一個小游戲的編寫中,我們能系統學習很多知識和技巧。

以上是我極力推薦此書的原因,此書不難,只要你用心,都能看懂,而且作者還配備了視頻教程。 更主要的原因是作者寫的足夠好!


兩本經典,各一本送給大家,每人只能得其中一本。參與方式如下:

0. 微信掃描關注 玄魂工作室 (xuanhun521)

1.如果你可以寫出HTML5 Canvas 相關的優秀文章,請在微信訂閱號本文下面留言投稿給我。如果你的稿件被采納,我會立即送書一本。

2.隨機打賞,並在此文章下留言。我會隨機抽取幸運者。


機械工業出版社華章圖書在贈書給玄魂工作室的讀者之外,還給了我全網最低價的購書優惠, 大家通過我可以以 75折+5元郵費的方式買到這兩本書。如果你想購買,直接文章下留言就好。 這是我個人獨享的優惠,沒有任何中間利潤,如果你有更便宜的方式買,也請推薦給我,但不要說三道四,無中生有。

兩本書的定價均為 人民幣99元。

 



免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM