Panda3D 1.6 Game Engine Beginner's Guide. This is the A-Z of Panda3D for developers who have never used the engine before. Step-by-step, it t Katowice

Panda3D is a game engine, a framework for 3D rendering and game development for Python and C++ programs. It includes graphics, audio, I/O, collision detection, and other abilities relevant to the creation of 3D games. Also, Panda3D is Open Source and free for any purpose, including commercial …

od 125,10 Najbliżej: 26 km

Liczba ofert: 1

Oferta sklepu

Opis

Panda3D is a game engine, a framework for 3D rendering and game development for Python and C++ programs. It includes graphics, audio, I/O, collision detection, and other abilities relevant to the creation of 3D games. Also, Panda3D is Open Source and free for any purpose, including commercial ventures. This book will enable you to create finished, marketable computer games using Panda3D and other entirely open-source tools and then sell those games without paying a cent for licensing.Panda3D 1.6 Game Engine Beginner's Guide follows a logical progression from a zero start through the game development process all the way to a finished, packaged installer. Packed with examples and detailed tutorials in every section, it teaches the reader through first-hand experience. These tutorials are followed by explanations that describe what happened in the tutorial and why.You will start by setting up a workspace, and then move on to the basics of starting up Panda3D. From there, you will begin adding objects like a level and a character to the world inside Panda3D. Then the book will teach you to put the game's player in control by adding change over time and response to user input. Then you will learn how to make it possible for objects in the world to interact with each other by using collision detection and beautify your game with Panda3D's built-in filters, shaders, and texturing. Finally, you will add an interface, audio, and package it all up for the customer. Spis treści: Panda3D 1.6 Game Engine Table of Contents Panda3D 1.6 Game Engine Credits About the Author About the Reviewers www.PacktPub.com Support files, eBooks, discount offers, and more Why Subscribe? Free Access for Packt account holders Preface Who this book is for What this book covers What you need for this book Conventions Time for action heading What just happened? Pop quiz heading Have a go hero heading Reader feedback Customer support Errata Piracy Questions 1. Installing Panda3D and Preparing a Workspace Getting started with Panda3D installation packages Time for action downloading and installing Panda3D What just happened? Switching to an advanced text editor Time for action downloading and installing Notepad++ What just happened? Installing the game content Time for action demoing Suicide Jockeys What just happened? Installing optional tools Blender and Chicken Spacescape Explosion Texture Generator Summary 2. Creating the Universe: Loading Terrain Notepad++ Setting up a new file in Notepad++ Time for action setting up a new file in Notepad++ What just happened? Importing Panda3D components Time for action importing DirectStart What just happened? Creating a World Object Time for action creating a World Object What just happened? Loading the terrain Time for action loading the terrain What just happened? Loading files into Panda3D The model path Eggs Bams Pop Quiz starting Panda3D and loading models NodePaths and nodes Time for action introducing NodePaths and nodes What just happened? Manipulating NodePaths Time for action manipulating NodePaths What just happened? Have a go hero more NodePath manipulation The Scene Graph Time for action understanding parent child inheritance What just happened? Time for action explaining relative coordinate systems What just happened? Have a go hero parenting and relative coordinate systems Loading a file multiple times Render attributes Time for action demonstrating render attributes What just happened? Pop Quiz using NodePaths and understanding Scene Graph inheritance Have a go hero render attributes Summary 3. Managing Tasks Over Time The task manager Time for action printing the task list from the task manager What just happened? Avoiding multiple task managers Adding tasks to the task manager Time for action creating a task and adding it to the task manager What just happened? Time for action looking at task statistics What just happened? Adding a delay to tasks Time for action using doMethodLater What just happened? Pop quiz the task manager Using delta time Time for action using delta time What just happened? Pop quiz delta time Over viewing task return options About the None type object Time for action exploring task return options What just happened? Pop quiz task return options Have a go hero creating more tasks Prioritizing tasks Removing tasks from the task manager Time for action removing tasks by name What just happened? Dissecting task objects Summary 4. Taking Control: Events and User Input Working with events Time for action registering and responding to events What just happened? Pop quiz working with events Using keyboard events Using a key map Time for action creating and using a key map What just happened? Pop quiz using keyboard input Implementing advanced cycle controls Time for action implementing acceleration What just happened? Time for action implementing throttle control What just happened? Time for action implementing turning What just happened? Utilizing mouse input and creating camera control Time for action tying the camera to the cycle What just happened? Reacting to mouse movement Time for action turning the camera with the mouse position What just happened? Pop quiz utilizing mouse input Have a go hero creating more tasks Ending event response Summary 5. Handling Large Programs with Custom Classes Importing custom classes Time for action making and importing a custom class What just happened? Pop quiz importing custom classes Adding NodePath functionality to a custom class Time for action defining the Cycle class What just happened? Simulating drift Time for action simulating drift What just happened? Pop quiz using custom classes with NodePaths Accessing classes from within another class Time for action adding an input manager What just happened? Have a go hero Adding AI to the cycle Pop quiz accessing custom classes from other custom classes Summary 6. The World in Action: Handling Collisions Collision basics: Our first collision system Time for action creating a simple collision detection system What just happened? Pop Quiz regarding basic collision detection Creating inter-cycle collisions Time for action inter-cycle collisions What just happened? Pop quiz understanding handlers that generate events Have a go hero using collision events Using BitMasks to organize collisions Time for action implementing BitMasks What just happened? Time for action setting a range of bits with BitMask.range What just happened? Pop quiz understanding BitMasks Using Python tags to get colliding objects Time for action setting and getting PythonTags What just happened? Have a go hero gaining experience with BitMasks and PythonTags Pop quiz using Python Tags Setting up ground collision Time for action creating a ground collision system What just happened? Pop quiz complex collision detection Overview of additional collision solids and handlers Collision solids Collision handlers Summary 7. Making it Fancy: Lighting, Textures, Filters, and Shaders Adding lighting Time for action adding lights to the game What just happened? Types of lights Have a go hero adding more lights to the scene Pop quiz using lights Applying textures to models Time for action creating a bam writer What just happened? Have a go hero loading the bam file Texture stages Time for action using TextureStages What just happened? Have a go hero apply textures Pop quiz understanding textures and TextureStages Creating filters Time for action adding a bloom filter What just happened? Using a sky sphere Time for action adding a sky sphere What just happened? Pop quiz setting up a sky sphere Summary 8. GUI Goodness: All About the Graphic User Interface Creating a menu system About DirectGUI Time for action creating a menu system What just happened? Pop quiz understanding DirectGUI Have a go hero performing additional actions with new menus Putting menus to use Time for action using menus What just happened? In-game HUD Time for action creating a basic HUD What just happened? Pop quiz creating a Heads Up Display Have-a-go hero proper order of images Summary 9. Animating in Panda3D Actors and Animations Time for action loading Actors and Animations What just happened? Pop quiz animation basics Controlling animations Have a go hero basic animation controls Animation blending Time for action blending two animations What just happened? Creating and using Actor subparts Time for action playing animations on subparts What just happened? Pop quiz advanced animation Exposing joints Time for action animating our cycles What just happened? Summary 10. Creating Weaponry: Using Mouse Picking and Intervals Using mouse picking Time for action setting up mouse aim What just happened? Pop quiz mouse picking Understanding Intervals, Sequences, and Parallels Sequences and Parallels Creating machine guns Time for action using Intervals in Sequences and Parallels What just happened? Time for action adding collision detection to the MachineGun What just happened? Implementing the main cannon Time for action creating the main cannon What just happened? Adding weapon information to the HUD Time for action adding a new HUD section What just happened? Handling damage response Time for action finalizing weapons with damage response What just happened? Pop quiz Intervals Summary 11. Whats that Noise? Using Sound Editing Config.prc Time for action selecting an audio library What just happened? Adding music AudioSound objects AudioManager objects Time for action creating background music What just happened? Pop quiz making music Adding sound effects Time for action generating 3D audio with Audio3DManager What just happened? About sound intervals Pop quiz sounding off Summary 12. Finishing Touches: Getting the Game Ready for the Customer Collecting garbage Time for action collecting garbage from the Explosion classes What just happened? Time for action collecting garbage from the Gun classes What just happened? Time for action collecting garbage from the Cycle class What just happened? Time for action collecting garbage from the Track class What just happened? Pop quiz garbage collection Creating a preloader Time for action creating a preloader to load models What just happened? File handling Time for action reading data from a file What just happened? Customizing the mouse cursor Time for action customizing the mouse cursor What just happened? Have a Go Hero the end of the race Pop quiz using a custom mouse cursor Creating an Installer Time for action packing a Panda3D game What just happened? Have a Go Hero improving load times Pop quiz building an installer Summary A. Creating a Sky Sphere with Spacescape Learning Spacescape basics Time for action getting started with Spacescape What just happened? Blending layers Time for action blending layers to create nebulas What just happened? Using point stars and billboard stars Time for action populating the sky with stars What just happened? Creating a sky sphere from a skybox made with Spacescape Time for action populating the sky with stars What just happened? Time for action creating the sky sphere in Panda3D What just happened? Summary B. Using Egg-Texture-Cards and ExploTexGen Using ExploTexGen Time for action reading the ExploTexGen documentation What just happened? Time for action designing an explosion What just happened? Creating flipbook animations with egg-texture-cards Time for action using egg-texture-cards What just happened? Additional egg-texture-card options Summary C. Pop quiz Answers Chapter 2: Creating the Universe: Loading Terrain Starting Panda3D and loading models Using NodePath and understanding scene graph inheritance Chapter 3: Managing Tasks Over Time The task manager Delta time Task return options Chapter 4: Taking Control: Events and User Input Working with events Using keyboard input Utilizing mouse input Chapter 5: Handling Large Programs with Custom Classes Importing custom classes Accessing custom classes from other classes Chapter 6: The World in Action: Handling Collisions Regarding basic collision detection Understanding handlers that generate events Understanding BitMasks Using Python tags Complex collision detection Chapter 7: Making it Fancy: Lighting, Textures, Filters, and Shaders Using lights Understanding textures and TextureStages Setting up a sky sphere Chapter 8: GUI Goodness: All About the Graphic User Interface Understanding DirectGUI Creating a Heads Up Display Chapter 9: Animating in Panda3D Animation basics Advanced animation Chapter 10: Creating Weaponry: Using Mouse Picking and Intervals Mouse picking Intervals Chapter 11: What's that Noise? Using Sound Making music Sounding off Chapter 12: Finishing Touches: Getting the Game Ready for the Customer Garbage collection Using a custom mouse cursor Building an installer Index

Specyfikacja

Podstawowe informacje

Autor
  • David Brian Mathews, David B Mathews, Reinier de Blois
Wybrane wydawnictwa
  • Packt Publishing
Format
  • PDF
  • MOBI
  • EPUB
Ilość stron
  • 356
Rok wydania
  • 2011