Installing Panda3D and Preparing a Workspace
Getting started with Panda3D installation packages
Time for action – downloading and installing Panda3D
Switching to an advanced text editor
Time for action – downloading and installing Notepad++
Time for action – demoing Suicide Jockeys
Creating the Universe: Loading Terrain
Setting up a new file in Notepad++
Time for action – setting up a new file in Notepad++
Time for action – importing DirectStart
Time for action – creating a World Object
Time for action – loading the terrain
Time for action – introducing NodePaths and nodes
Time for action – manipulating NodePaths
Time for action – understanding parent child inheritance
Time for action – explaining relative coordinate systems
Time for action – demonstrating render attributes
Time for action – printing the task list from the task manager
Time for action – creating a task and adding it to the task manager
Time for action – looking at task statistics
Time for action – using doMethodLater
Time for action – using delta time
Over viewing task return options
Time for action – exploring task return options
Removing tasks from the task manager
Time for action – removing tasks by name
Taking Control: Events and User Input
Time for action – registering and responding to events
Time for action – creating and using a key map
Implementing advanced cycle controls
Time for action – implementing acceleration
Time for action – implementing throttle control
Time for action – implementing turning
Utilizing mouse input and creating camera control
Time for action – tying the camera to the cycle
Time for action – turning the camera with the mouse position
Handling Large Programs with Custom Classes
Time for action – making and importing a custom class
Adding NodePath functionality to a custom class
Time for action – defining the Cycle class
Time for action – simulating drift
Accessing classes from within another class
Time for action – adding an input manager
The World in Action: Handling Collisions
Collision basics: Our first collision system
Time for action – creating a simple collision detection system
Creating inter-cycle collisions
Time for action – inter-cycle collisions
Using BitMasks to organize collisions
Time for action – implementing BitMasks
Time for action – setting a range of bits with BitMask.range
Using Python tags to get colliding objects
Time for action – setting and getting PythonTags
Time for action – creating a ground collision system
Overview of additional collision solids and handlers
Making it Fancy: Lighting, Textures, Filters, and Shaders
Time for action – adding lights to the game
Time for action – creating a bam writer
Time for action – using TextureStages
Time for action – adding a bloom filter
Time for action – adding a sky sphere
GUI Goodness: All About the Graphic User Interface
Time for action – creating a menu system
Time for action – creating a basic HUD
Time for action – loading Actors and Animations
Time for action – blending two animations
Creating and using Actor subparts
Time for action – playing animations on subparts
Time for action – animating our cycles
Creating Weaponry: Using Mouse Picking and Intervals
Time for action – setting up mouse aim
Understanding Intervals, Sequences, and Parallels
Time for action – using Intervals in Sequences and Parallels
Time for action – adding collision detection to the MachineGun
Time for action – creating the main cannon
Adding weapon information to the HUD
Time for action – adding a new HUD section
Time for action – finalizing weapons with damage response
What's that Noise? Using Sound
Time for action – selecting an audio library
Time for action – creating background music
Time for action – generating 3D audio with Audio3DManager
Finishing Touches: Getting the Game Ready for the Customer
Time for action – collecting garbage from the Explosion classes
Time for action – collecting garbage from the Gun classes
Time for action – collecting garbage from the Cycle class
Time for action – collecting garbage from the Track class
Time for action – creating a preloader to load models
Time for action – reading data from a file
Time for action – customizing the mouse cursor
Time for action – packing a Panda3D game
Creating a Sky Sphere with Spacescape
Creating a Sky Sphere with Spacescape
Creating a Sky Sphere with Spacescape
Creating a Sky Sphere with Spacescape
Creating a Sky Sphere with Spacescape
Creating a Sky Sphere with Spacescape
Creating a Sky Sphere with Spacescape
Creating a Sky Sphere with Spacescape
Creating a Sky Sphere with Spacescape
Creating a Sky Sphere with Spacescape
Creating a Sky Sphere with Spacescape
Using Egg-Texture-Cards and ExploTexGen
Using Egg-Texture-Cards and ExploTexGen
Using Egg-Texture-Cards and ExploTexGen
Using Egg-Texture-Cards and ExploTexGen
Using Egg-Texture-Cards and ExploTexGen
Using Egg-Texture-Cards and ExploTexGen
Using Egg-Texture-Cards and ExploTexGen