Game Development with Rust and WebAssembly: Learn how to run Rust on the web while building a game (Paperback)
暫譯: 使用 Rust 和 WebAssembly 進行遊戲開發:學習如何在網頁上運行 Rust 並構建遊戲 (平裝本)

Smith, Eric

  • 出版商: Packt Publishing
  • 出版日期: 2022-04-29
  • 售價: $1,840
  • 貴賓價: 9.5$1,748
  • 語言: 英文
  • 頁數: 476
  • 裝訂: Quality Paper - also called trade paper
  • ISBN: 1801070970
  • ISBN-13: 9781801070973
  • 相關分類: Rust 語言程式語言WebAssembly
  • 海外代購書籍(需單獨結帳)

買這商品的人也買了...

商品描述

Write an endless runner game for the web in Rust and test, deploy, and debug your 2D game using the WebAssembly toolchain

Key Features

- Build and deploy an endless runner game for the web from scratch through this helpful guide with key images printed in color
- Learn how to use Rust for web development with WebAssembly
- Explore modern game development and programming techniques to build 2D games using Rust

Book Description

The Rust programming language has held the most-loved technology ranking on Stack Overflow for 6 years running, while JavaScript has been the most-used programming language for 9 years straight as it runs on every web browser. Now, thanks to WebAssembly (or Wasm), you can use the language you love on the platform that's everywhere.

This book is an easy-to-follow reference to help you develop your own games, teaching you all about game development and how to create an endless runner from scratch. You'll begin by drawing simple graphics in the browser window, and then learn how to move the main character across the screen. You'll also create a game loop, a renderer, and more, all written entirely in Rust. After getting simple shapes onto the screen, you'll scale the challenge by adding sprites, sounds, and user input. As you advance, you'll discover how to implement a procedurally generated world. Finally, you'll learn how to keep your Rust code clean and organized so you can continue to implement new features and deploy your app on the web.

By the end of this Rust programming book, you'll build a 2D game in Rust, deploy it to the web, and be confident enough to start building your own games.

What you will learn

- Build and deploy a Rust application to the web using WebAssembly
- Use wasm-bindgen and the Canvas API to draw real-time graphics
- Write a game loop and take keyboard input for dynamic action
- Explore collision detection and create a dynamic character that can jump on and off platforms and fall down holes
- Manage animations using state machines
- Generate levels procedurally for an endless runner
- Load and display sprites and sprite sheets for animations
- Test, refactor, and keep your code clean and maintainable

Who this book is for

This game development book is for developers interested in Rust who want to create and deploy 2D games to the web. Game developers looking to build a game on the web platform using WebAssembly without C++ programming or web developers who want to explore WebAssembly along with JavaScript web will also find this book useful. The book will also help Rust developers who want to move from the server side to the client side by familiarizing them with the WebAssembly toolchain. Basic knowledge of Rust programming is assumed.

商品描述(中文翻譯)

撰寫一個無盡跑者遊戲,使用 Rust 在網頁上進行測試、部署和除錯,並利用 WebAssembly 工具鏈來開發您的 2D 遊戲。

主要特點

- 通過這本有用的指南,從零開始構建並部署一個無盡跑者遊戲,並附有彩色印刷的關鍵圖片
- 學習如何使用 Rust 進行 Web 開發,搭配 WebAssembly
- 探索現代遊戲開發和編程技術,使用 Rust 構建 2D 遊戲

書籍描述

Rust 程式語言在 Stack Overflow 上連續 6 年保持最受喜愛的技術排名,而 JavaScript 則連續 9 年成為使用最廣泛的程式語言,因為它可以在每個網頁瀏覽器上運行。現在,得益於 WebAssembly(或 Wasm),您可以在無處不在的平台上使用您喜愛的語言。

這本書是一本易於遵循的參考資料,幫助您開發自己的遊戲,教您有關遊戲開發的所有知識,以及如何從零開始創建一個無盡跑者。您將從在瀏覽器窗口中繪製簡單圖形開始,然後學習如何讓主角在螢幕上移動。您還將創建一個遊戲循環、一個渲染器等,所有內容均使用 Rust 完成。在將簡單形狀顯示到螢幕上之後,您將通過添加精靈、聲音和用戶輸入來增加挑戰。隨著進展,您將發現如何實現程序生成的世界。最後,您將學習如何保持您的 Rust 代碼乾淨且有組織,以便您可以繼續實現新功能並在網上部署您的應用程式。

在這本 Rust 程式設計書的結尾,您將能夠用 Rust 構建一個 2D 遊戲,將其部署到網路上,並有信心開始創建自己的遊戲。

您將學到的內容

- 使用 WebAssembly 將 Rust 應用程式構建並部署到網路上
- 使用 wasm-bindgen 和 Canvas API 繪製即時圖形
- 編寫遊戲循環並接收鍵盤輸入以實現動態行動
- 探索碰撞檢測,創建可以在平台上跳躍和掉入洞中的動態角色
- 使用狀態機管理動畫
- 為無盡跑者程序生成關卡
- 加載和顯示精靈及精靈表以進行動畫
- 測試、重構並保持您的代碼乾淨且可維護

本書適合對象

這本遊戲開發書籍適合對 Rust 感興趣的開發者,想要創建並部署 2D 遊戲到網路上。希望在網頁平台上使用 WebAssembly 構建遊戲的遊戲開發者,或想要探索 WebAssembly 與 JavaScript 網頁的網頁開發者也會發現這本書有用。這本書還將幫助希望從伺服器端轉向客戶端的 Rust 開發者,讓他們熟悉 WebAssembly 工具鏈。假設讀者具備基本的 Rust 程式設計知識。

作者簡介

Eric Smith is a software crafter with over 20 years of software development experience. Since 2005, he's worked at 8th Light, where he consults for companies big and small by delivering software, mentoring developers, and coaching teams. He's a frequent speaker at conferences speaking on topics such as educating developers and test-driven development, and holds a master's degree in video game development from DePaul University. Eric wrote much of the code for this book live on his Twitch stream. When he's not at the computer, you can find Eric running obstacle races and traveling with his family.

作者簡介(中文翻譯)

Eric Smith 是一位擁有超過 20 年軟體開發經驗的軟體工匠。自 2005 年以來,他在 8th Light 工作,為大小公司提供諮詢服務,透過交付軟體、指導開發人員和培訓團隊來協助他們。他經常在會議上發表演講,主題包括教育開發人員和測試驅動開發,並持有德保羅大學(DePaul University)遊戲開發碩士學位。Eric 在他的 Twitch 直播中實時編寫了本書的大部分程式碼。當他不在電腦前時,你可以找到 Eric 在參加障礙賽和與家人旅行。

目錄大綱

1. Hello WebAssembly
2. Drawing Sprites
3. Creating a Game Loop
4. Managing Animations with State Machines
5. Collision Detection
6. Creating an Endless Runner
7. Sound Effects and Music
8. Adding a UI
9. Testing, Debugging, and Performance
10. Continuous Deployment
11. Further Resources and What's Next?

目錄大綱(中文翻譯)

1. Hello WebAssembly

2. Drawing Sprites

3. Creating a Game Loop

4. Managing Animations with State Machines

5. Collision Detection

6. Creating an Endless Runner

7. Sound Effects and Music

8. Adding a UI

9. Testing, Debugging, and Performance

10. Continuous Deployment

11. Further Resources and What's Next?

最後瀏覽商品 (17)