Book Image

Papervision3D Essentials

Book Image

Papervision3D Essentials

Overview of this book

Papervision3D is a powerful real-time 3D engine for Flash. Papervision3D can take externally created 3D models and render them as Flash content, without requiring end-users to download or install an additional plug-in. It has an outstanding reputation within the Flash community and its ease of use has even impressed experienced 3D game developers. However, getting started with Papervision3D can be daunting and mastering it can be challenging. This book guides you through the easiest way to tackle challenges that you may normally face with Papervision3D and master them effectively. The book will show you how to build Papervision3D applications from scratch in the easiest way, providing plenty of examples that make sense even if you're not a Flash expert. Papervision3D Essentials serves as a comprehensive guide to getting you started, as well as being an invaluable reference for every Papervision3D user and developer. By the end of this book you will be able to create your own projects with real-time 3D rendering. Since the first release of Papervision3D in 2007, the authors have been involved in various commercial projects with Papervision3D, building up a deep understanding of the engine. In Papervision3D Essentials, the authors share their knowledge to help you create stunning 3D content in Flash and teach you how to work with one of the most exciting open-source Flash projects around. Papervision3D Essentials shows you how to download Papervsion3D and make it work in Flash, Flash Builder and Flex Builder. It provides a short introduction to Object Oriented Programming and classes for those who are new to non-timeline programming. Then, it takes a closer look at the engine, discussing a broad range of topics from how to work with built-in 3D objects to using and animating cameras, 3D objects, and light. Applying materials and textures, using filters and effects, particles and performance optimizations are also covered. Ultimately, this book will provide you with the information you need to build your first Papervision3D application. Covering the basics, but by no means limited to beginners, Papervision3D Essentials provides a thorough explanation of the engine and numerous tips and tricks, making it a valuable resource for every Papervision3D user.
Table of Contents (18 chapters)
Papervision3D Essentials
Credits
About the Authors
About the Reviewers
Preface

Flat shading


Flat shading is the most basic and lightweight type of shading. By default, the ShadingTypesDemo.swf opens with FlatShadeMaterial selected. With flat shading, each triangle of an object will be shaded by using a color fill. The color is determined by the angle between a triangle's surface normal and the position of the light. As there's no interpolation between the colors used on a triangle and the triangle next to it, this will result in hard edges and a very blocked look and feel, which seems even stronger because of the 3D model that we use. The model has pairs of triangles, which share the same surface normal. This also gives the incorrect impression that flat shading is based on polygons instead of triangles.

Note

A surface normal is the perpendicular vector of a surface, which in this example is a triangle. The normal determines the orientation of a surface. The following image illustrates the surface normals of six triangle pairs that seem to form a polygon together:

More...