Java遊戲編程原理與實踐教程

Java遊戲編程原理與實踐教程

《Java遊戲編程原理與實踐教程》是2013年人民郵電出版社出版的圖書,是由陳銳、夏敏捷、葛麗萍主編的。本書從最基本的Java圖形開發開始,對遊戲的原理及其Java程式實現進行了詳細介紹。

基本介紹

  • 書名:Java遊戲編程原理與實踐教程
  • 作者:陳銳、夏敏捷、葛麗萍
  • ISBN:978-7-115-30134-5
  • 頁數:276 頁
  • 定價:38.80 元
  • 出版社:人民郵電出版社
  • 出版時間:2013年3月
  • 裝幀:平裝
  • 開本:16
  • 叢書名 :21世紀高等教育計算機規劃教材
內容提要,圖書目錄,

內容提要

《Java遊戲編程原理與實踐教程》包括動畫的實現、音效的處理、滑鼠和鍵盤事件的處理等。本書最大的特色在於以遊戲開發案例為主要內容,書中涉及的遊戲都是大家耳熟能詳的。比如推箱子、連連看、網路中國象棋、開心農場等。使你對枯燥的語言學習充滿樂趣,對於國中級的Java學習者是一份很好的參考資料。書中不僅列出了完整的遊戲代碼,同時對所有的原始碼進行了非常詳細的解釋,做到了通俗易懂且圖文並茂。
本書不僅可作為計算機、軟體相關專業遊戲開發課程的教材,同時也可供遊戲編程愛好者、軟體開發人員和Java語言學習者參考使用。

圖書目錄

第1章 電腦遊戲開發概述 1
1.1 電腦遊戲的發展歷史 1
1.2 電腦遊戲的類型 2
1.3 電腦遊戲的策劃 7
1.3.1 遊戲策劃的基本概念 7
1.3.2 遊戲設計的基本內容 7
1.4 電腦遊戲的程式開發工具 8
第2章 遊戲圖形界面開發基礎 11
2.1 AWT簡介 11
2.2 Swing基礎 11
2.3 Swing組件 12
2.3.1 按鈕(Jbutton) 12
2.3.2 單選按鈕(JRadioButton) 12
2.3.3 複選框(JCheckBox) 14
2.3.4 組合框(JComboBox) 15
2.3.5 列表(JList) 16
2.3.6 文本框(JTextField和JPasswordField) 16
2.3.7 面板(JPanel) 17
2.3.8 表格(JTable) 18
2.3.9 框架(JFrame) 19
2.4 布局管理器 19
2.4.1 布局管理器概述 20
2.4.2 流布局管理器FlowLayout 20
2.4.3 邊界布局BorderLayout 20
2.4.4 卡片布局管理器CardLayout 21
2.4.5 格線布局管理器GridLayout 21
2.4.6 null布局管理器 22
2.5 常用事件處理 22
2.5.1 動作事件處理 22
2.5.2 滑鼠事件處理 23
2.5.3 鍵盤事件處理 25
第3章 Java圖形處理和Java 2D 27
3.1 Java圖形坐標系統和圖形上下文 27
3.2 Color類 28
3.3 Font類和FontMetrics類 29
3.3.1 Font類 29
3.3.2 FontMetrics類 30
3.4 常用的繪圖方法 31
3.4.1 繪製直線 31
3.4.2 繪製矩形 31
3.4.3 繪製橢圓 32
3.4.4 繪製弧形 33
3.4.5 繪製多邊形和折線段 34
3.4.6 清除繪製的圖形 35
3.5 Java 2D簡介 35
3.5.1 Java 2D API 35
3.5.2 Graphics2D簡介 36
3.5.3 Graphics2D繪製 37
3.5.4 Graphics2D的屬性設定 39
3.5.5 路徑類 42
3.5.6 平移、縮放或旋轉圖形 44
第4章 Java遊戲程式的基本框架 45
4.1 動畫的類型及幀頻 45
4.1.1 動畫類型 45
4.1.2 設定合理的幀頻 45
4.2 遊戲動畫的製作 46
4.2.1 繪製動畫以及動畫循環 46
4.2.2 消除動畫閃爍現象——雙緩衝技術 49
4.3 使用定時器 52
4.4 設定遊戲難度 53
4.5 遊戲與玩家的互動 53
4.6 遊戲中的碰撞檢測 55
4.6.1 矩形碰撞 55
4.6.2 圓形碰撞 57
4.6.3 像素碰撞 57
4.7 遊戲中圖像的繪製 58
4.7.1 圖像檔案的裝載 58
4.7.2 圖像檔案的顯示 59
4.7.3 繪製捲軸型圖像 62
4.7.4 繪製磚塊型圖像 62
4.8 遊戲角色開發 63
4.9 遊戲聲音效果的設定 66
第5章 推箱子遊戲 68
5.1 推箱子遊戲介紹 68
5.2 程式設計的思路 69
5.3 程式設計的步驟 71
5.3.1 設計地圖數據類(MapFactory.java) 71
5.3.2 設計地圖類(Map.java) 72
5.3.3 設計遊戲面板類(GameFrame.java) 73
5.3.4 播放背景音樂類(Sound.java) 80
第6章 雷電飛機射擊遊戲 82
6.1 雷電遊戲介紹 82
6.2 程式設計的思路 82
6.2.1 遊戲素材 82
6.2.2 地圖滾動的原理實現 83
6.2.3 飛機和子彈的實現 84
6.2.4 主角飛機子彈與敵機的碰撞檢測 85
6.3 關鍵技術 86
6.3.1 多執行緒 86
6.3.2 Java的Thread類和Runnable接口 87
6.4 雷電飛機遊戲設計的步驟 90
6.4.1 設計子彈類(Bullet.java) 90
6.4.2 設計敵機類(Enemy.java) 91
6.4.3 設計遊戲界面類(GamePanel.java) 93
6.4.4 設計遊戲視窗類(planeFrame.java) 98
第7章 21點撲克牌遊戲 99
7.1 21點撲克牌遊戲介紹 99
7.2 關鍵技術 100
7.2.1 撲克牌面繪製 100
7.2.2 識別牌的點數 100
7.2.3 Dealer(莊家)要牌的智慧型實現 101
7.2.4 遊戲規則的算法實現 101
7.3 程式設計的步驟 102
7.3.1 設計撲克牌類(Card.java) 102
7.3.2 設計一副撲克類(Poker.java) 103
7.3.3 設計遊戲面板類(PokerPanel.java) 104
7.3.4 設計遊戲主視窗類(Pai.java) 107
第8章 連連看遊戲 109
8.1 連連看遊戲介紹 109
8.2 程式設計的思路 110
8.2.1 連連看遊戲數據模型 110
8.2.2 動物方塊布局 111
8.2.3 連通算法 111
8.2.4 智慧型查找功能的實現 118
8.3 關鍵技術 120
8.3.1 動物方塊圖案的顯示 120
8.3.2 滑鼠相關的事件 121
8.3.3 延時功能 126
8.4 程式設計的步驟 127
8.4.1 設計遊戲界面窗體(LLKFrame.java) 127
8.4.2 設計遊戲面板類(LLKPanel.java) 128
第9章 人物拼圖遊戲 133
9.1 人物拼圖遊戲介紹 133
9.2 程式設計的思路 133
9.3 關鍵技術 134
9.3.1 按鈕顯示圖片的實現 134
9.3.2 圖片按鈕移動的實現 134
9.3.3 從BufferedImage轉換成ImageIcon 135
9.4 程式設計的步驟 135
9.4.1 設計單元圖片類(Cell.java) 136
9.4.2 枚舉類型Direction.java 136
9.4.3 遊戲面板類(GamePanel.java) 137
9.4.4 主視窗類(MainFrame.java) 140
第10章 對對碰遊戲(按鈕版) 142
10.1 對對碰遊戲介紹 142
10.2 程式設計的思路 143
10.2.1 遊戲素材 143
10.2.2 設計思路 143
10.3 關鍵技術 144
10.3.1 動態生成8×8的按鈕 144
10.3.2 進度條組件(JProgressBar) 145
10.3.3 定時器功能 145
10.4 程式設計的步驟 145
10.4.1 設計遊戲視窗類(MyJframes.java) 145
10.4.2 設計內部定時器類 153
第11章 對對碰遊戲(圖形版) 154
11.1 對對碰遊戲介紹 154
11.2 對對碰遊戲設計思路 154
11.2.1 遊戲素材 154
11.2.2 設計思路 155
11.3 程式設計的步驟 155
11.3.1 設計遊戲視窗類(GameRoom.java) 155
11.3.2 設計內部遊戲面板類 161
11.3.3 設計內部定時器類 161
第12章 俄羅斯方塊遊戲 162
12.1 俄羅斯方塊遊戲介紹 162
12.2 程式設計的思路 163
12.2.1 俄羅斯方塊形狀的設計 163
12.2.2 俄羅斯方塊遊戲的面板螢幕 164
12.2.3 俄羅斯方塊遊戲的運行流程 165
12.3 俄羅斯方塊設計的步驟 165
12.3.1 設計遊戲界面類(Tetrisblok.java) 165
12.3.2 設計遊戲視窗類(TetrisFrame.java) 171
第13章 開心農場 173
13.1 開心農場遊戲介紹 173
13.2 程式設計的思路 173
13.2.1 遊戲素材 173
13.2.2 設計思路 174
13.3 關鍵技術 174
13.3.1 實現圖形按鈕 174
13.4 開心農場設計的步驟 175
13.4.1 設計農作物類(Crop.java) 175
13.4.2 設計背景的面板(BackgroundPanel.java) 175
13.4.3 設計農場類(Farml.java) 176
13.4.4 設計窗體類(MainFrame.java) 178
第14章 單機版五子棋遊戲 182
14.1 單機版五子棋遊戲簡介 182
14.2 五子棋設計思想 182
14.3 關鍵技術 183
14.3.1 Vector向量容器 183
14.3.2 判斷輸贏的算法 184
14.4 程式設計的步驟 185
14.4.1 設計視窗類(wuziqi2.java) 185
第15章 網路五子棋遊戲 190
15.1 網路五子棋遊戲簡介 190
15.2 五子棋設計思想 191
15.2.1 界面設計 191
15.2.2 通信協定 192
15.3 關鍵技術 193
15.3.1 Socket技術 193
15.3.2 InetAddress類簡介 194
15.3.3 ServerSocket類 195
15.3.4 Socket類 197
15.4 程式設計的步驟 199
15.4.1 設計伺服器端類(Server.java) 199
15.4.2 設計客戶端類(Client.java) 208
第16章 網路中國象棋 214
16.1 中國象棋介紹 214
16.2 關鍵技術 215
16.2.1 UDP簡介 215
16.2.2 DatagramPacket類 215
16.2.3 DatagramSocket類 216
16.2.4 P2P知識 218
16.3 網路中國象棋設計思路 219
16.3.1 棋盤表示 219
16.3.2 棋子表示 219
16.3.3 走棋規則 220
16.3.4 坐標轉換 221
16.3.5 通信協定設計 221
16.3.6 網路通信傳遞棋子信息 222
16.4 網路中國象棋實現的步驟 223
16.4.1 設計棋子類(chess.java) 223
16.4.2 設計棋盤類(ChessBoard.java) 225
16.4.3 設計遊戲窗體(Frmchess.java) 237
第17章 RGP走迷宮遊戲 241
17.1 RGP走迷宮遊戲介紹 241
17.2 程式設計的思路 241
17.2.1 遊戲素材 241
17.2.2 設計思路 242
17.2.3 RGP人物的動畫 242
17.3 走迷宮遊戲設計的步驟 243
17.3.1 設計主窗體類(miGong.java) 243
17.3.2 設計遊戲面板類(MyPanel.java) 244
第18章 青蛙過河遊戲 249
18.1 青蛙過河遊戲介紹 249
18.2 程式設計的思路 249
18.2.1 遊戲素材 249
18.2.2 設計思路 250
18.3 青蛙過河遊戲設計的步驟 250
18.3.1 設計青蛙方塊類(frogCell.java) 250
18.3.2 設計遊戲面板類(frogPanel.java) 251
18.3.3 設計主窗體類(frogFrame.java) 254
第19章 打獵遊戲 256
19.1 打獵遊戲介紹 256
19.2 程式設計的思路 256
19.2.1 遊戲素材 256
19.2.2 設計思路 257
19.3 關鍵技術 257
19.3.1 控制動物組件的移動速度 257
19.3.2 隨機間歇產生動物組件 258
19.3.3 玻璃面板顯示 259
19.4 打獵遊戲設計的步驟 259
19.4.1 設計小鳥類(BirdLabel.java) 259
19.4.2 設計野豬類(PigLabel.java) 261
19.4.3 設計背景面板類(BackgroundPanel.java) 263
19.4.4 設計主窗體類(MainFrame.java) 263
第20章 2.5D遊戲 267
20.1 2.5D遊戲介紹 267
20.2 2.5D遊戲設計思路 268
20.3 程式設計的步驟 270
20.3.1 創建遊戲界面類(PushBox.java) 270
20.3.2 設計遊戲視窗類(BoxFrame2.java) 273

相關詞條

熱門詞條

聯絡我們