Book Image

Panda3D 1.6 Game Engine Beginner's Guide

Book Image

Panda3D 1.6 Game Engine Beginner's Guide

Overview of this book

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.
Table of Contents (22 chapters)
Panda3D 1.6 Game Engine
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Time for action – designing an explosion


Let's dive right in by creating a sci-fi explosion for some type of energy weapon.

  1. In ExploTexGen, click the button that says particles\particle_default.dds in the Base Particles section to open a file dialogue box.

  2. Navigate the dialog box that appears to the BGP3D/Misc folder. If no files appear, change the File of Type drop-down box at the bottom to Portable Network Graphic . Select the StarParticleTeal.png file.

  3. Click the button in the Sparks section to change that particle as well. This time, select the RingParticleBlue.png file.

  4. In the Global Parameters section, set these values:

    Texture Size: 1024
    Grid Size: 4x4
    Explosion Scale: 2
  5. Enter these values in the Base Particles section:

    Initial Count: 50
    Random Count: 25
    Initial Spread: 1
    Rotation Speed: 5
    Velocity: 6
    Size: 1
  6. For the Sparks section, type in these values:

    Initial Count: 30
    Random Count: 15
    Initial Spread: 1.5
    Rotation Speed: 2
    Velocity: 6
    Size: 2
  7. Click the Generate Explosion button until you get a satisfying explosion. Make sure that none of the particles reach the edge of the preview. It should look something like this:

What just happened?

That's all it takes to make a nice-looking blast in ExploTexGen. The reason we put the smaller teal particles in the Base Particles section is because the Sparks section particles don't actually rotate, despite having a Rotation Speed setting.

There's one last thing to do before we use egg-texture-cards to create an egg file of the explosion. We need to take the output of ExploTexGen into an image editing program and cut it apart. Instead of one large texture, we want 16 small ones: one for each frame of the animation.