Book Image

OGRE 3D 1.7 Beginner's Guide

Book Image

OGRE 3D 1.7 Beginner's Guide

Overview of this book

Want to make your own 3D applications, simulations, and games? OGRE 3D, an open source Object-Oriented 3D Graphics Rendering Engine written in C++, which can be utilized to create a variety of 3D applications and is commonly used in game creation, can help you to do so! OGRE 3D 1.7 Beginner's Guide, based on the latest version 1.7, makes it super easy for you to make your own monsters, spaceship shooters, weapons, enemies, and more!OGRE 3D 1.7 Beginner's Guide will teach you to develop 3D applications that are exciting and interesting and if used correctly can result in stunning games and simulations. You will start from the very beginning and then work your way up to complex scenes and stunning effects.In this book you will start with how to download and configure OGRE 3D, then create your first example scene. With the help of this sample scene, you will be introduced to several related topics each of which will be explained through several other examples and by do-it-yourself tasks. After each example there is a section that explains the theory behind the technique used for deeper understanding. You will also use what you learned in one example in another example and repeat each technique several times while learning new ones at the same time to strengthen the topics learned. Within no time you will master the art of game creation. Imagine how great you will feel when all your friends are playing the great-looking games you've created with OGRE 3D and this book.
Table of Contents (17 chapters)
Ogre 3D 1.7
Credits
About the Author
About the Reviewers
Preface
Index

Time for action — adding a pulse


Adding a pulse to our model is quite easy and only needs some changes to our code.

  1. This time, we only need a new vertex shader because we are going to use the existing fragment shader. Create a new vertex shader named MyVertexShader5 and use it in the new material MyMaterial17, but use MyFragmentShader2 because this shader only textures our model and nothing more:

    material MyMaterial17
    {
    technique
    {
    pass
    {
    vertex_program_ref MyVertexShader5
    {
    }
    fragment_program_ref MyFragmentShader2
    {
    }
    texture_unit
    {
    texture terr_rock6.jpg
    }
    }
    }
    }
    
  2. The new vertex shader is the same as the ones we've seen before; just add a new parameter in the default_params block called pulseTime that gets the value from the time keyword:

    vertex_program MyVertexShader5 cg
    {
    source Ogre3DBeginnerGuideShaders.cg
    entry_point MyVertexShader5
    profiles vs_1_1 arbvp1
    default_params
    {
    param_named_auto worldViewMatrix worldviewproj_matrix
    param_named_auto pulseTime time
    }
    }
    
  3. We don't need to change...