0% found this document useful (0 votes)
17 views6 pages

Pro Ogre 3d Programming jpcj86pcml

Pro OGRE 3D Programming by Gregory Junker is a comprehensive guide to the OGRE 3D SDK, covering its features, installation, and design philosophy. The book includes detailed chapters on scene management, materials, resource management, animation, and dynamic shadows, providing practical examples and insights for developers. Additionally, it offers appendices on tools, add-ons, and script attributes to enhance the development experience.

Uploaded by

krazanadratsara
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
17 views6 pages

Pro Ogre 3d Programming jpcj86pcml

Pro OGRE 3D Programming by Gregory Junker is a comprehensive guide to the OGRE 3D SDK, covering its features, installation, and design philosophy. The book includes detailed chapters on scene management, materials, resource management, animation, and dynamic shadows, providing practical examples and insights for developers. Additionally, it offers appendices on tools, add-ons, and script attributes to enhance the development experience.

Uploaded by

krazanadratsara
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

Pro OGRE 3D

Programming

Gregory Junker

Apress
Contents ^ ^ ^ ^ ^ ^ ^ ^ ^ p l

Foreword xiii
About the Author xv
About the Technical Reviewer xvii
Acknowledgments xix
Introduction xxi

CHAPTER 1 What Is This Ogre? 1


The Ogre 3D SDK 1
Where Does It Fit? 3
Features 4
Origins 5
Prerequisite Knowledge 6

CHAPTER 2 Capturing the Beast 9


Platform Support 9
Dependencies 9
Ogre Binary SDK 10
Ogre Source Distribution 11
Installing an SDK 11
Microsoft Visual C++ .NET 2003 (VC 7.1) 11
Visual C++ 2005 21
Other Free IDE/Compiler Combinations on Windows 21
Building from Source 23
Linux 23
Graphics Drivers 24
Dependencies 25
Conclusion 36

CHAPTER 3 Ogre Design Overview 37


Design Philosophy 37
Design Highlights 38
Subsystem Overview 46
vii
viii CONTENTS

Ogre Managers 49
Conclusion 50

CHAPTER 4 Ogre First Steps 51


Ogre Initialization: Quick Start 51
plugins.cfg 51
Ogre.cfg 53
Ogre.log 55
Render Window 56
Render Loop 58
Ogre Initialization: Manual 59
Root 59
Main Rendering Loop 73
Conclusion 75

CHAPTER 5 Ogre Scene Management 77


Scene Manager 78
Scene Manager Types 78
Scene Object Creation 79
Spatial Relationships and 3D Transforms 82
Movable Scene Objects 89
World Geometry 95
Static Geometry 97
Scene Management by Example 98
The Simple Things 98
Scene Manager Features 102
Conclusion 112

CHAPTER 6 Ogre Materials 113


Materials 101 114
Basic Object Shading 114
Texture Mapping 116
Programmable Shading 116
Materials and Application Design 117
Batching 117
Material Cloning 118
GPUShaders 118
Techniques and Schemes 118
KONTENTS ix

Material Composition 119


Pass 120
Entities 121
Materials by Example 121
Materials and the Fixed-Function Pipeline 121
Materials and the Programmable Pipeline 128
A More Complex Example: Offset (Parallax) Mapping 134
Conclusion 142

CHARTER 7 Resource M a n a g e m e n t 143

Conceptual Overview 143


Resource Management 144
Resource Management in Practice 150
Resource Locations 150
Resource Initialization 152
Resource Unloading 152
Ogre Archives 156
Archive 156
ArchiveManager 156
Custom Resource Loading via Archive Implementation 157
Conclusion 157

CHAPTER 8 Ogre Render Targets 159


Conceptual Overview 159
Render Window 160
Viewports 160
Render Texture 161
Render Target Classes 162
Render Window by Example 162
Render-to-Texture by Example 165
DemoJRenderToTexture 165
Demo_Fresnel 168
Conclusion 170

CHAPTER 9 Animation 171


Types of Animation Support in Ogre 171
Animation 172
Controllers 180
Animation vs. Controller 180
CONTENTS

Animation by Example 181


Demo_SkeletalAnimation 181
Conclusion 187

CHAPTER 10 Billboards and Particies 189


Billboards 189
Billboard Sets 190
Billboard Creation 191
Billboard Chains and Ribbon Trails 195
Particle Systems 197
Particle System Basics 197
Emitters 201
Affectors 201
Particle System Renderers 202
Conclusion 206

CHAPTER 11 Dynamic Shadows 207


Shadow Techniques 209
Overview 209
Stencil Shadowing 210
Texture Shadowing 214
Modulative Shadow Blending 221
Additive Shadow Masking 221
Conclusion 225

CHAPTER 12 Ogre 2D and Compositing 227


Ogre in Two Dimensions 227
Overlays 227
Runtime Overlay Example 234
Compositor Framework 235
Compositor Example 235
Compositor Chains 242
Notes on Compositor Usage 244
Conclusion 245

APPENDIX A Ogre Tools and Add-Ons 247

Official Tools and Utilities 247


Exporters and Plug-ins 247
Command-Line Tools and Utilities 248
»CONTENTS xi

Third-Party Tools and Utilities 249


Exporters and Plug-ins 249
Digital Content Creation 250
Ogre Addons 251
COLLADA 251
Paging Scene Manager 251
Streaming Video 251
Physics Library Connectors 252
Script Bindings 252
External Projects Using Ogre 253

APPENDIX B Script Attribute Reference 255

Material Script Attributes 255


Top-Level Material Attributes 255
Technique Attributes 255
Pass Attributes 256
Texture-Unit Attributes 258
GPU Program Attributes 260
Compositor Script 264
Technique Attributes 264
Target Attributes 264
Pass Attributes 264
Clear-Pass Attributes 265
Stencil-Pass Attributes 265
Particie Script Attributes 265
Particie System Definition Attributes 265
Particie Emitter Definition Attributes 266
Standard Particie Affectors 267
Overlay Script Attributes 269
Overlay Attribute 269
Element and Container Attributes 270
Element- and Container-Specific Attributes 270
Font Definition Script Attributes 271

INDEX 273

You might also like