### Ray-Casting Tutorial For Game Development And Other Purposes
### by F. Permadi
#### PREFACE
This document explores the fundamental theory behindray-casting, a pseudo 3-dimensional rendering technique that are very popular in game development arena in the 90s. In general, this document does not bother with implementation andcoding detail. The discussion will be mainly about concepts, the implementationis up to the reader. For a casual reader, the knowledge of the_Pythagorean theorem_ and knowledge of high-school levelmath are assumed.
This document was written in the yearof 1996, and although ray-casting has been supplanted by newer andmore powerful techniques (and hardware!), the reader can hopefullystill benefit from the technique.
Please be sure to read the [disclaimer][40]before proceeding.
#### CONTENTS
* [Introduction][41]
* [A BriefHistory][42]
* [Whatis Ray-Casting][42]
* [Ray-Castingvs Ray-Tracing For Game Development][43]
* [Limitationsof Ray-Casting][42]
* [Creatinga World][42]
* [DefiningProjection Attributes][44]
* [FindingDistance To Projection Plane][45]
* [FindingWalls][46]
* [FindingDistance to Walls][47]
* [DrawingWalls][48]
* [TextureMapped Walls][49]
* [DrawingFloors][50]
* [DrawingCeilings][51]
* [Wallswith Variable Height][52]
* [HorizontalMotion / / Making the Player Move][53]
* [LookingUp and Down][42]
* [Flyingand Crouching][42]
* [CombinedEffects][42]
* [Shading][54]
* [Bibliography,References and Notes][55]
* [Examplein Java (with source code)][56]
![caster10][57]
Copyright 1996-2010 F. Permadi
[permadi@permadi.com][58]
This document may be printed for
personal/non-commercial/educational use, it may not be reproduced
and/or distributed without permission.
**<< [BEGIN TUTORIAL][59]>>**
[Next post__][60]
Advertisement
[Like Us on Facebook][61] | [Follow Us on Twitter][62]| [About ][63] | [Privacy Policy][64]| [Contact][65]| [Site Terms of Use][66]