發表於2024-12-25
告訴你,讓遊戲逼真、流暢的秘密
42個編程實例,打通遊戲開發的任督二脈
134張圖解,清晰講解遊戲編程五大基本實現
物體的運動 捲動 碰撞檢測 光綫的製作 畫麵切換
如何做齣火山噴發似的酷炫效果?
各種形狀的物體的碰撞測試是如何實現的?
怎樣精準模擬重力作用下的運動軌跡?
怎樣實現追蹤目標物體並可彎麯的激光?
《遊戲開發的數學和物理》嚴格選取瞭遊戲開發中最常用的數學和物理學知識,通過遊戲開發實例,配上豐富的插圖,以從易到難的順序進行講解。第1章到第5章分彆講解瞭物體的運動、捲動、碰撞檢測、光綫的製作、畫麵切換的細分處理。這五章將2D遊戲必需的知識一網打盡,同時還嚴格挑選瞭少量3D遊戲編程的基礎內容以供參考。第6章係統梳理瞭遊戲開發的數學和物理學理論,幫助讀者更好地理解前五章的內容。
《遊戲開發的數學和物理》適閤網絡和手機遊戲開發者閱讀。
加藤潔,畢業於東京理科大學物理專業,後轉攻信息科學。現任教於AmusementMedia綜閤學院,主講遊戲數學和3D程序開發。近年來隨著遊戲開發所需的技術水平越來越高,主張讓高中畢業的遊戲開發者也能習得這些高深的技巧。日常緻力於教育方法的研究工作,希望以簡單有效的方式講解門檻較高的理科知識。著有《PC-9801PROGRAMMERSBible》(閤著,技術評論社,1994)。
徐謙(本書譯者),7年技術開發及項目經驗,曾以技術工程師身份赴日本工作兩年,後歸國聯閤創辦互聯網公司,現居上海繼續創業中。側重Web開發,有若乾高並發、實時Web係統的分布式解決案例。熱愛開源,曾嚮多個知名開源項目貢獻代碼,在Github開源的個人項目獲得廣泛認可。樂於分享技術心得。
第1章 物體的運動
1.1 讓物體沿水平方嚮運動 【勻速直綫運動、x+=v;、 v = -v】
1.2 通過鍵盤控製物體的運動 【鍵盤輸入、斜方嚮移動、勾股定理】
1.3 讓物體沿任意方嚮運動 【三角函數、正弦、餘弦、弧度】
1.4 在物體運動中加入重力 【拋物運動、重力加速度、計算誤差、積分】
1.5 物體隨機飛濺運動 【隨機數、均勻隨機數、正態分布】
1.6 讓物體進行圓周運動 【角速度、嚮心力】
1.7 [ 進階] 微分方程式及其數值解法 【微分方程、數值解法、歐拉法】
第2章 捲動
2.1 將背景從一端捲動到另一端 【鏡頭位置、捲動幅度、比例關係】
2.2 讓背景捲動與角色的運動産生聯動 【區域坐標、畫麵坐標】
2.3 捲動由地圖塊組閤的地圖 【地圖、地圖塊、整數的減法、移位運算、邏輯運算】
2.4 波紋式的搖擺捲動 【波紋扭麯、正弦波、波長、振幅、周期】
2.5 製作有縱深感的捲動 【透視、比例計算、梯形】
2.6 [ 進階] 透視理論 【視景體、近似】
第3章 碰撞檢測
3.1 長方形物體間的碰撞檢測 【矩形、德摩根定律】
3.2 圓形與圓形、圓形與長方形物體間的碰撞檢測 【距離、勾股定理、平方比較】
3.3 細長形物體與圓形物體間的碰撞檢測 【點與綫段的距離、內積、微分】
3.4 扇形物體的碰撞檢測 【條件劃分、嚮量的運算、嚮量的內分點、圓的方程式】
3.5 [ 進階] 3D的碰撞檢測 【2D、3D、維度擴展】
第4章 光綫的製作
4.1 讓物體嚮任意方嚮鏇轉(含縮放效果) 【鏇轉、基嚮量、嚮量加法、嚮量減法】
4.2 任意兩點間的光綫投射 【嚮量長度、單位嚮量】
4.3 光綫彎麯處理 【圓形、圓周長、僞影】
4.4 實現帶追蹤效果的激光 【左右判定、外積、鏇轉速度】
4.5 [ 進階] 繪製大幅度彎麯的麯綫時的難點 【麯率、麯綫的粗細、插值麯綫、反射】
第5章 畫麵切換效果
5.1 水平掃描式畫麵切換 【三角多邊形、紋理素材、uv坐標】
5.2 斜嚮掃描式畫麵切換 【嚮量形式的直綫、剪裁】
5.3 使用帶模糊效果的分界綫進行畫麵切換 【漸變、Alpha 閤成】
5.4 使用圓形進行畫麵切換 【避免重復渲染、環形、a值】
5.5 雨刷式畫麵切換 【避免條件分支】
5.6 [ 進階] 多種多樣的畫麵切換方法 【遮罩圖案、可編程著色器、高斯濾波器】
第6章 遊戲開發的數學和物理學基礎理論
6.1 比例、一次函數及直綫方程 【比例係數、斜率、截距、參數方程】
6.2 算式展開與因式分解 【計算優先級、分配律】
6.3 二次函數、二次方程與拋物綫 ? 圓 【完全平方、求根公式、圓錐麯綫】
6.4 三角函數 【直角三角形、單位園、弧度、相位】
6.5 嚮量與矩陣 【長度、方嚮、一次變換、逆變換】
6.6 微分 【變化率、微分係數、極限、閤成函數】
6.7 級數與積分 【數列、西格瑪、原函數、不定積分、積分常數】
附 錄 示例程序的編譯及運行方法
--基於Visual Studio 2013、Visual Studio 2012、Visual Studio
這是一本通過遊戲開發實例,講解數學與物理知識的書。數學與物理,兩者都是遊戲開發中不可或缺的。然而在實際的遊戲製作中,並不能像在學校的物理數學課上那樣,不管三七二十一先背下一堆可能用得著的公式或解題技巧。真正的遊戲開發,總是先遇到一個需要實現的需求,然後再在尋求實現方法的過程中,去學習必要的數學和物理知識,即“先有需求,再掌握實現需求的工具”。對於普通人來說,想必這樣的學習模式纔是更加自然並有效的吧。
自古以來,數學都是伴隨著一些頗具實用性的目的産生並發展起來的。例如在古代,建築中必須要測算距離或長度,賦稅或商業活動中必須計算款項、麵積、體積等,數學正是在這些現實需求中一步步發展起來的。而物理學的初衷也是用算式這種客觀的語言來描述身邊發生的現象,同樣起源於非常實際的需求。因此,從某種意義上來說,“先有需求,再去掌握實現需求的工具”這種學習模式,正是順應整個數學和物理發展過程的最自然的方式。
時至今日,數學和物理已經經曆過無數纔華橫溢的先人的反復錘煉,稱它們為集閤瞭人類智慧的瑰寶也不為過,它們共同支撐起瞭現代的科學技術,當然也是遊戲以及計算機行業的基石。但是我們在學習這樣的智慧瑰寶時,卻往往不明白數學和物理究竟有什麼作用,隻是像背誦咒語一樣強行記下公式,甚至也有不少人對其感到厭惡。其實人的本性確實如此,假如不是對某樣事物抱有興趣,或者迫於外部壓力,是很難認真地自覺學習的。即便數學和物理是人類智慧的瑰寶,但如果在連它們能做什麼都不瞭解的情況下去勉強學習,那也是違背人類本性的,學習起來自然也就倍感艱難瞭。
本書以編程為題材,每一章節都會先提齣一個需要解決的實際問題,然後針對問題通過公式和必要的理論知識講解解決方法。為瞭讓這樣的學習模式更加有效,書中所提齣的問題應當是真正實用的,纔容易讓讀者産生興趣,因此本書所涉及的問題嚴格選取瞭實際2D遊戲編程中不可缺少的技術。而本著盡量生動有趣的原則,在編撰人員的努力下,解決問題的示例程序都采用瞭與實際遊戲同樣的圖片素材。希望廣大讀者朋友可以籍由本書更加自然地走進門檻不低的數學和物理世界。
本書大緻可以有兩種閱讀方法。方法一,通過解決問題的實際案例入門(第1章~第5章),掌握必要的數學、物理知識。這種閱讀方法適閤所有想編寫遊戲程序的讀者。針對這部分讀者,本書涵蓋瞭2D遊戲開發中所涉及的幾乎所有的必要知識。而對於想要開發3D遊戲的讀者,也建議不要一下跳躍到3D,先以本書所涉及的2D知識為基礎開始學習會更加容易入門。另一種閱讀方法是,從本書的理論部分(第6章)開始,先瞭解本書所涉及的數學、物理公式在實際生活中究竟有什麼作用。推薦那些在中學、大學裏不得不學習理科,卻又不知道學習理科有什麼用的同學們采用這種閱讀方法。我本人作為一名遊戲學校的講師,一直在幫助學生將中學、大學裏的教育成果轉變為遊戲公司的實際生産力,充當著橋梁的作用,因此如果本書能對中學生、大學生的理科教育有一點幫助的話,對我來說將是意外的驚喜。
在閱讀本書時請注意,為瞭簡化理論知識以外的部分,本書中的示例代碼可能會違背一些代碼編寫的基本規範。特彆是類似將vx這樣的短變量名作為全局變量的做法,在真正編程時韆萬不要去模仿。
最後,對給予我執筆機會,並對內容等方麵提供巨大幫助的小川史晃編輯及翔泳社的諸位,對邀請我寫作並協助策劃的AmusementMedia綜閤學院的豬狩賢一郎先生,以及對本書文字提齣很多建議的學院劇本專業的老師們,一並錶示深深的感謝。
2013年11月
加藤潔
遊戲開發的數學和物理 下載 mobi pdf epub txt 電子書 格式 2024
遊戲開發的數學和物理 下載 mobi epub pdf 電子書質量很好,物流超級快,值得推薦
評分好好學習天天嚮上吧!
評分挺好用的,不過要是有C++代碼就好瞭
評分適閤遊戲開發者,很實用的書
評分好好好好好好好好好
評分大緻翻閱一下,沒具體看,感覺包裝還可以
評分經常在京東購買,這次的圖書打摺買瞭很多,價格和質量都更好,不做更多的敘述,需要的就得買
評分例子裏都列齣瞭完整的算法,不過是用c++寫的看起來有點不習慣。除瞭學習還可以當成參考手冊使用。
遊戲開發的數學和物理 mobi epub pdf txt 電子書 格式下載 2024