Copy Link
Add to Bookmark
Report
3DICA: Table of Contents
* A C source treating the subject included
0 General Things
- 0.0 LICENSE AGREEMENT
- 0.0.1 DISCLAIMER
- 0.0.2 LIMITED WARRANTY
- 0.0.3 Seriously
- 0.0.4 3dica careware -- what does that mean?
- 0.1 Authors, Greets, etc.
- 0.1.1 Ica
- 0.1.2 Chem
- 0.1.3 Hubris Productions
- 0.1.4 Thanks for help
- 0.1.5 Greets
- 0.1.6 Thanks for support
- 0.2 About the Document
- 0.2.1 Where can I get the newest version of 3dica?
- 0.2.2 What has happened since the last version?
- 0.2.3 Features to be added
- 0.3 3D Terms etc.
- 0.4 FAQ
- 0.5 Recommended References
- 0.6 A Quick Introduction to Radians
1 Vector and Matrix Algebra
- 1.1 Vectors
- 1.1.1 General
- 1.1.2 Vector equation
- 1.1.3 Vector length *
- 1.1.4 Vector addition
- 1.1.5 Dot product *
- 1.1.6 Vector projection
- 1.1.7 Cross product *
- 1.1.8 Scalar triple product
- 1.2 Matrices
- 1.2.1 General
- 1.2.2 Matrix operations
- 1.2.2.1 Addition
- 1.2.2.2 Multiplying by a scalar *
- 1.2.2.3 Multiplication *
- 1.2.2.3.1 Multiplying by a vector *
- 1.2.2.4 Transposition
2 3D Geometry
- 2.1 The Relationship Between 2D and 3D Worlds *
- 2.2 The Matrix Technique -- Foreword
- 2.3 Rotating the Object Matrix*
- 2.3.1 Rotating about an arbitrary vector
- 2.4 The Camera *
- 2.4.1 Deriving the camera matrix from a vector
- 2.4.2 B-Splines
- 2.5 Transforming a Vertex by the Object Matrix*
- 2.6 Hierarchical Transformations
- 2.7 Inverse Transformations
3 Polygon Fillers
- 3.1 Flat Triangle *
- 3.1.1 Fixed point *
- 3.2 Gouraud Triangle *
- 3.3 Texture Triangle *
- 3.3.1 The idea of perspective correction *
- 3.3.2 Fitting a texture onto an object *
- 3.3.3 Bilinear filtering
- 3.4 Texturing + Shading *
- 3.5 The Idea of Convex Polygons
4 Sorting
- 4.1 Z-Sorting *
- 4.2 Z-Buffer *
- 4.3 BSP-Tree
- 4.3.1 The main idea
- 4.3.2 Required formulas
- 4.3.3 Hints
- 4.4 S-Buffer
5 Shading
- 5.1 Flat Shading 5.1.1 Z-Flat
- 5.1.2 Lambert Flat *
- 5.2 Gouraud Shading
- 5.2.1 Z-Gouraud
- 5.2.2 "Real" Gouraud *
- 5.3 Phong Shading
- 5.3.1 Phong Illumination *
- 5.3.2 Environment mapping *
- 5.3.3 "Real" Phong *
- 5.4 Light Source Handling
- 5.4.1 Freely moving light sources
- 5.4.2 Spotlights
- 5.4.3 Light attenuation
6 Hidden Face Removal
- 6.1 Backface Culling *
- 6.2 View Cone *
- 6.2.1 3D clipping
- 6.3 Portals
7 Some Other Nice Things
- 7.1 Frame skipping
- 7.2 Optimizing in Assembly
- 7.3 Palette Quantisizing
- 7.3.1 What is it actually?
- 7.3.2 Local K Mean
- 7.3.2.1 An abstract approach
- 7.3.2.2 A more technical approach
- 7.3.3 Median Cut
- 7.3.3.1 The definition
- 7.3.3.2 The algorithm
- 7.3.3.3 Implementation hints
8 Utterly Important Crap
- 8.1 An Effective Algorithm for Generating Torus Objects
- 8.2 Phong Illumination Model Using Gamma Approximation and Evenly Hashed Gaussian Distribution not Forgetting LaRusse Fireclouds
- 8.3 Coding Tips by our Graphician
- 8.4 How to code your own Hubris-membah -Tamagotchi