Book Details

ISBN 139781847195722

Paperback428 pages

Book Description

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

Chapter 1: Setting Up

Downloading Papervision3D

Downloading the non-compiled source using SVN

Downloading the non-compiled source in the ZIP file

Downloading the compiled source

Configuring your authoring tool for Papervision3D

Where to find the Papervision3D documentation

Summary

Chapter 2: Building Your First Application

Introduction to classes and object-oriented programming

Working with the Document Class/Main Application File

Basics of a 3D scene in Papervision3D

Creating a basic class for Papervision3D

Smart programmers use less code

Preparing for the book examples

Summary

Chapter 3: Primitives

The basic elements of 3D objects

The rendering pipeline

Creating and adding primitives

Nesting

Accessing vertices

Summary

Chapter 4: Materials

Introduction to materials

Basic materials

Three ways of using bitmaps as a material

Two ways of using a movie clip as material

VideoStreamMaterial

Combining materials

Interactivity

Tips and tricks

Example—creating a carousel

Summary

Chapter 5: Cameras

Cameras inherit from DisplayObject3D

Basic camera settings

Camera types

Setting a target with the lookAt() method

Culling

Clipping

Summary

Chapter 6: Moving Things Around

What can we move around?

How can we move things around?

Rotating objects

Mouse interaction

Animating with Tweener

Example—the galaxy extended

Summary

Chapter 7: Shading

Introduction to shading

Flat shading

Gouraud shading

Cell shading

Phong shading

Bumping your materials

Reflection mapping

Example—shading the Earth in our galaxy

Summary

Chapter 8: External Models

Modeling for Papervision3D

Creating a template class to load models

Creating models in Autodesk 3ds Max and loading them into Papervision3D

Authors

Paul Tondeur

Paul Tondeur is as an internet entrepreneur who lives and works in Amsterdam, the Netherlands.

He started as a freelance PHP and Flash developer during his study multimedia technology in 2003. After successfully completing his study he was asked to become the CTO of a Dutch online marketing agency in 2004. At this company he developed a strong interest for 3D and got the chance to get professionally involved as the technical lead for serious Second Life projects. Second Life was too limited to fulfill his needs to create accessible interactive multiplayer 3D on the web and this is when he found out about Papervision3D during the early days. Because of his passion for the Flash platform this was love at first sight.

At the beginning of 2009, Paul decided he had to take more advantage of his technical skills as an internet entrepreneur. Currently he helps other companies as a Unity, Papervision3D, Red5 and mobile streaming consultant. Together with a team of people around him, he is also involved in creating a browser based MMO, incorporating the usage of Red5, Unity, Flash and Papervision3D.

URL: www.paultondeur.com

Jeff Winder

Jeff Winder is an independent Flash developer living and working in Amsterdam, the Netherlands. He discovered Flash and ActionScript in 2003, mainly creating timeline animation, but was soon gripped by non-timeline coding. He has a special interest in new technologies that are related to Flash, especially open-source projects such as WiiFlash, FLARToolKit, and Papervision3D. Jeff acquired an MSc in Social Psychology at the University of Amsterdam. He is also a passionate musician, playing guitar and drums. Since 2006 Jeff has been self-employed and working for leading agencies. URL: http://www.jeffwinder.nl

Table of Contents

Chapter 1: Setting Up

Downloading Papervision3D

Downloading the non-compiled source using SVN

Downloading the non-compiled source in the ZIP file

Downloading the compiled source

Configuring your authoring tool for Papervision3D

Where to find the Papervision3D documentation

Summary

Chapter 2: Building Your First Application

Introduction to classes and object-oriented programming

Working with the Document Class/Main Application File

Basics of a 3D scene in Papervision3D

Creating a basic class for Papervision3D

Smart programmers use less code

Preparing for the book examples

Summary

Chapter 3: Primitives

The basic elements of 3D objects

The rendering pipeline

Creating and adding primitives

Nesting

Accessing vertices

Summary

Chapter 4: Materials

Introduction to materials

Basic materials

Three ways of using bitmaps as a material

Two ways of using a movie clip as material

VideoStreamMaterial

Combining materials

Interactivity

Tips and tricks

Example—creating a carousel

Summary

Chapter 5: Cameras

Cameras inherit from DisplayObject3D

Basic camera settings

Camera types

Setting a target with the lookAt() method

Culling

Clipping

Summary

Chapter 6: Moving Things Around

What can we move around?

How can we move things around?

Rotating objects

Mouse interaction

Animating with Tweener

Example—the galaxy extended

Summary

Chapter 7: Shading

Introduction to shading

Flat shading

Gouraud shading

Cell shading

Phong shading

Bumping your materials

Reflection mapping

Example—shading the Earth in our galaxy

Summary

Chapter 8: External Models

Modeling for Papervision3D

Creating a template class to load models

Creating models in Autodesk 3ds Max and loading them into Papervision3D

Alerts & Offers

Series & Level

We understand your time is important. Uniquely amongst the major publishers, we seek to develop and publish the broadest range of learning and information products on each technology. Every Packt product delivers a specific learning pathway, broadly defined by the Series type. This structured approach enables you to select the pathway which best suits your knowledge level, learning style and task objectives.

Learning

As a new user, these step-by-step tutorial guides will give you all the practical skills necessary to become competent and efficient.

Beginner's Guide

Friendly, informal tutorials that provide a practical introduction using examples, activities, and challenges.

Essentials

Fast paced, concentrated introductions showing the quickest way to put the tool to work in the real world.

Cookbook

A collection of practical self-contained recipes that all users of the technology will find useful for building more powerful and reliable systems.

Blueprints

Guides you through the most common types of project you'll encounter, giving you end-to-end guidance on how to build your specific solution quickly and reliably.

Mastering

Take your skills to the next level with advanced tutorials that will give you confidence to master the tool's most powerful features.

Starting

Accessible to readers adopting the topic, these titles get you into the tool or technology so that you can become an effective user.

Progressing

Building on core skills you already have, these titles share solutions and expertise so you become a highly productive power user.