Learning Game Physics with Bullet Physics and OpenGL

Chris Dickinson

  • 出版商: Packt Publishing
  • 出版日期: 2013-10-25
  • 售價: $1,310
  • 貴賓價: 9.5$1,245
  • 語言: 英文
  • 頁數: 126
  • 裝訂: Paperback
  • ISBN: 1783281871
  • ISBN-13: 9781783281879
  • 相關分類: OpenGL物理學 Physics
  • 海外代購書籍(需單獨結帳)

商品描述

Practical 3D physics simulation experience with modern feature-rich graphics and physics APIs

Overview

  • Create your own physics simulations and understand the various design concepts of modern games
  • Build a real-time complete game application, implementing 3D graphics and physics entirely from scratch
  • Learn the fundamental and advanced concepts of game programming using step-by-step instructions and examples

In Detail

Physics simulation is an integral part of almost all game development projects as it is essential to the rules and feel of the game (gameplay) regardless of the project's scale. Bullet is a 3D Collision Detection and Rigid Body Dynamics Library for games, and special effects for film and animations. Bullet is integrated into many 3D modelers including Maya, Houdini, Cinema 4D, LightWave, and Blender. It is free for commercial use and open source under the permissive ZLib License.

A comprehensive guide to start building games with the Bullet Physics library. Learn how modern physics engines work by implementing key features such as collision event systems, user input handling, and simulation of soft bodies. Then learn to control it all with forces, constraints, and robust object management. This book will reveal what's going on under the hood of two modern and feature-rich graphics and physics APIs; OpenGL and Bullet Physics.

This book begins by teaching you to write your first OpenGL application, and then dives in to exploring the many features of the Bullet library in a straightforward manner. Each new feature expands upon the last, teaching you more about how physics is simulated in a video game, and how Bullet gives you the power to control every aspect of your simulation. You will learn how to render simple and complex shapes, apply some basic lighting, and construct a simple yet robust rendering system. From here, you will pull back the veil to see what's going on underneath Bullet Physics, and learn to implement key game logic features through this widely-used and extensive physics library. After you finish this book, you'll be armed with a wealth of knowledge to tackle the more advanced aspects of game graphics and physics going forward.

What you will learn from this book

  • Develop game applications from scratch; create a window, render the scene, and interact with your game through mouse and keyboard input
  • Write OpenGL code at a low-level; render objects and understand every line of code you write!
  • Understand how to keep the graphical and physical components of the simulation isolated for ease of understanding and future changes
  • Learn how to properly handle the rendering and physics processing of multiple objects
  • Explore the technologies and concepts behind modern game physics simulation through a practical understanding of Bullet Physics and OpenGL
  • Build crucial features that are essential to all games; collision events, user input, object control, and trigger volumes
  • Implement advanced physics simulation features like soft body physics, constraints, and collision filtering
  • Delve into a robust and modern physics engine game; and understand the challenges and solutions the developers of Bullet built into the library

Approach

A comprehensive set of straight-forward, easy-to-follow tutorials in OpenGL and Bullet Physics that will teach you how modern game physics and 3D graphics work.

商品描述(中文翻譯)

實用的3D物理模擬體驗,擁有現代化的功能豐富圖形和物理API

概述:
- 創建自己的物理模擬並了解現代遊戲的各種設計概念
- 從頭開始構建實時完整的遊戲應用程序,完全實現3D圖形和物理
- 通過逐步的指導和示例學習遊戲編程的基礎和高級概念

詳細內容:
物理模擬是幾乎所有遊戲開發項目的重要組成部分,無論項目的規模如何,它對遊戲的規則和感覺(遊戲玩法)都至關重要。Bullet是一個用於遊戲的3D碰撞檢測和剛體動力學庫,也用於電影和動畫的特效。Bullet已集成到許多3D建模軟件中,包括Maya、Houdini、Cinema 4D、LightWave和Blender。它可以免費商業使用,並在寬鬆的ZLib許可證下開源。

這本書是使用Bullet Physics庫開始構建遊戲的全面指南。通過實現碰撞事件系統、用戶輸入處理和軟體物體模擬等關鍵功能,學習現代物理引擎的工作原理。然後學習使用力、約束和強大的物體管理來控制它們。本書將揭示OpenGL和Bullet Physics這兩個現代且功能豐富的圖形和物理API的內部運作。

本書首先教您編寫第一個OpenGL應用程序,然後以直觀的方式探索Bullet庫的許多功能。每個新功能都擴展了上一個功能,讓您更多地了解在視頻遊戲中如何模擬物理,以及Bullet如何讓您控制模擬的每個方面。您將學習如何渲染簡單和複雜的形狀,應用一些基本的照明效果,並構建一個簡單但強大的渲染系統。從這裡,您將揭示Bullet Physics的內部運作,並通過這個廣泛使用的物理庫實現關鍵的遊戲邏輯功能。完成本書後,您將掌握豐富的知識,能夠應對遊戲圖形和物理的更高級方面。

本書將教您以下內容:
- 從頭開始開發遊戲應用程序;創建窗口,渲染場景,並通過鼠標和鍵盤輸入與遊戲互動
- 以低級別編寫OpenGL代碼;渲染物體並理解您編寫的每一行代碼!
- 理解如何將模擬的圖形和物理組件隔離,以便更容易理解和進行未來更改
- 學習如何正確處理多個物體的渲染和物理處理
- 通過實際理解Bullet Physics和OpenGL的技術和概念,探索現代遊戲物理模擬的背後
- 構建對所有遊戲都至關重要的關鍵功能;碰撞事件、用戶輸入、物體控制和觸發區域
- 實現高級物理模擬功能,如軟體物體物理、約束和碰撞過濾
- 深入了解強大且現代的物理引擎遊戲;並了解Bullet開發人員在庫中遇到的挑戰和解決方案

方法:
一套全面且易於遵循的OpenGL和Bullet Physics教程,將教您現代遊戲物理和3D圖形的工作原理。