[Top]
[Contents]
[Index]
[ ? ]
1. Introduction
1.1 How To Read This Manual
1.2 Current Status
1.3 Using Crystal Space For Your Project
1.4 A Guide to This Documentation
1.5 Feature List
1.6 Where to Get Crystal Space
1.7 Mailing Lists
1.8 Internet Relay Chat (IRC)
1.9 Feedback and Bug Reporting
1.10 Genesis of Crystal Space
1.11 Documentation Authors & Contributors
1.12 Crystal Space Contributors
2. Building and Installing
2.1 WinCVS Tutorial
2.1.1 Step 1: Getting the Software
2.1.2 Step 2: Installing the Software
2.1.3 Step 3: Creating a Home Directory
2.1.4 Step 4: Setting WinCVS Preferences
2.1.5 Step 5: Setting WinCVS Login Settings
2.1.6 Step 6: Setting Location to Checkout Crystal Space
2.1.7 Step 7: Checking out Crystal Space
2.1.8 Step 8: Updating Crystal Space
2.2 Directory Hierarchy
2.3 Requirements
2.4 External Libraries
2.5 Platform Specific Instructions
2.5.1 Unix
2.5.2 Windows using Microsoft Visual C++
2.5.2.1 Microsoft Visual C++ 6
2.5.2.2 Microsoft Visual C++ 7
2.5.3 Windows using MinGW
2.5.4 Windows using Cygwin
2.5.5 MacOS/X
2.5.5.1 Library Prerequisites
2.5.5.2 Resources
2.5.5.3 Building
2.5.5.4 Using Crystal Space
2.6 Platform Specific Problems
2.7 Quick Start
3. Running The Demos
3.1 Walktest, the Basic Test Application
3.1.1 Getting Started
3.1.2 Mouse Movement
3.1.3 Command Line options
3.1.4 Console Commands
3.1.4.1 General Commands
3.1.4.2 Movement Commands
3.1.4.3 Special Effects
3.1.4.4 Recording and Playback Commands
3.1.4.5 Views Commands
3.1.4.6 Mesh Manipulation Commands
3.1.4.7 Lighting Commands
3.1.4.8 Statistics Commands
3.1.4.9 Debugging Commands
3.1.5 Special Keys
3.1.6 Configuration Files
3.2 Quick Overview
4. Using Crystal Space
4.1 The Basics
4.1.1 Basic Crystal Space Concepts
4.1.2 Minimum Application Requirements
4.1.3 Compiling the Application
4.2 Quick Overview
4.3 Tutorials
4.3.1 Simple Tutorial 1
4.3.1.1 Simple Header File
4.3.1.2 Event Handling
4.3.1.3 Creating a "World"
4.3.1.4 The Camera
4.3.1.5 Locomotion (Moving Around)
4.3.2 Simple Tutorial 2: Sprites
4.3.2.1 Loading a Material in Memory
4.3.2.2 Loading a Mesh Factory in Memory
4.3.2.3 Creating a Mesh from a Factory
4.3.3 Simple Tutorial 3: Map Loading
4.3.3.1 Minimal Base Code
4.3.3.2 Loading The Map
4.3.3.3 Locating the Camera
4.4 Plugins, Reference counting, Interfaces (SCF)
4.4.1 Shared Class Facility (SCF)
4.4.1.1 How it Works
4.4.1.2 Using SCF
4.4.1.3 Classes Implementing Multiple Interfaces
4.4.1.4 Interface Versions
4.4.1.5 Client Side
4.4.1.6 Plugin Meta-Information
4.4.1.7 Meta-Information Embedding
4.4.1.8 Plugin Discovery
4.4.1.9 Example
4.4.1.10 Advanced Techniques
4.4.2 Correctly Using Smart Pointers
4.4.3 Create Your Own Plugin
4.5 Configuring Crystal Space
4.5.1 Common Command Line Options
4.5.2 Configuration File
4.5.3 Configuration Domains
4.5.4 Specific Options
4.5.4.1 System Configuration
4.5.4.2 Graphics Configuration
4.5.4.3 Engine Configuration
4.5.4.4 Sound Configuration
4.5.4.5 Console Configuration
4.5.4.6 Mouse Configuration
4.6 Basic Libraries
4.6.1 Geometria könyvtár (csGeom)
csGeom
4.6.2 Segédkönyvtár (csUtil)
csUtil
4.6.2.1 Typed Arrays
4.7 Virtual File System (VFS)
4.7.1 Details
4.7.2 Configuration File (`vfs.cfg')
4.8 Managing Game Specific Data
4.8.1 csObject and iObject
4.8.2 Attaching User Objects to CS Objects
4.8.3 Attaching User Objects to CS Objects in a map file
4.9 The 3D Engine
4.9.1 Renderelési prioritások és Objektumok a szektorokban
4.9.2 A világ alkotóelemei
4.9.3 Portál Engine
4.9.4 Cameras and Matrices
4.9.5 Camera Movement
4.9.6 Space Warping
4.9.7 Visibility Culling In Detail
4.9.7.1 Sectors and Portals
4.9.7.2 Visibility Cullers
4.9.7.3 Entities
4.9.7.4 Sector Structure
4.9.7.5 Visibility Culling
4.9.7.6 View Frustum Culling
4.9.7.7 Portal/Sector Visibility
4.9.7.8 In-sector Visibility
4.9.8 Dynamic Worlds
4.9.9 Level of Detail
4.10 A mesh Objetum plugin rendszer
4.10.1 MeshObject Concepts
4.10.2 Using Mesh Objects
4.10.3 Writing Mesh Objects
4.10.4 Creating a Thing Mesh
4.10.5 Creating a Genmesh Mesh
4.10.6 Mesh Lighting and Animation
4.10.7 Mesh Movement
4.10.8 Portal Container Mesh Object
4.10.9 Sprite2D Mesh Object
4.10.10 Sprite3D Mesh Object
4.10.11 SpriteCal3D Mesh Object
4.10.12 Genmesh Mesh Object
4.10.13 Ball Mesh Object
4.10.14 Emitter Mesh Object
4.10.15 Particle Systems in General
4.10.16 Fountain Mesh Object
4.10.17 Fire Mesh Object
4.10.18 Snow Mesh Object
4.10.19 Rain Mesh Object
4.10.20 Explosion Mesh Object
4.10.21 Spiral Mesh Object
4.10.22 Haze Mesh Object
4.10.23 Terrain Mesh Object
4.10.24 Thing Mesh Object
4.11 The Lighting System
4.11.1 Lighting
4.11.2 Pseudo-dynamic Lights
4.12 Materials and Textures
4.12.1 Alpha in Textures
4.12.2 Texture Mapping
4.12.2.1 Conventions
4.12.2.2 General Concepts
4.12.2.3 Perspective Correction
4.12.2.4 Bringing it All Together
4.12.2.5 Instructions for Texture Mapper
4.12.2.6 Procedural, Dynamic and Animated Textures
4.12.3 Efficient Textures
4.13 The Rendering System
4.13.1 Using a Custom Font
4.13.2 Drawing Text
4.14 Collision Detection and Physics
4.14.1 Basic Collision Detection
4.14.2 Physics using ODE
4.15 Animating your Objects
4.15.1 Sprite3D Animation
4.15.2 SpriteCal3D Animation
4.15.3 Socket Animation
4.15.4 GenMesh Animation
4.15.5 Sequence Manager
4.15.6 Procedural Texture System
4.16 Importing Model Files
4.16.1 Common Model Data Structure (iModelData)
iModelData
4.17 Map Loader
4.17.1 Loading a Level
4.17.2 Format of Map File (XML)
4.17.2.1 Initalization Section
4.17.2.2 World Element Section
4.17.2.3 World Definition Section
4.17.2.4 Action Section
4.17.3 Old Format of Map File
4.17.3.1 Grammar
4.17.3.2 Syntax
4.17.3.3 Hints
4.17.4 binary XML
4.18 Sound System
4.18.1 Sound Plugins
4.18.2 Playing a Sound
4.19 Scripting Languages
4.19.1 The iScript Interface
4.19.2 Java Bindings
4.19.3 Perl Bindings
4.19.4 Python Bindings
4.20 Alternate Windowing System (AWS)
4.20.1 Quick Start
4.20.2 Signals: Responding To User Input
4.20.3 Creating Custom AWS Components
4.20.3.1 Parameter Delivery
4.20.3.2 Events: Responding To User Actions
4.20.3.3 Sending and Receiving Signals
4.20.4 AWS Standard Sink Trigger Reference
4.20.5 AWS Standard Component Signal and Action Reference
4.20.5.1 All Components
4.20.5.2 Command Button
4.20.5.3 Label
4.20.5.4 Check Box
4.20.5.5 Radio Button
4.20.5.6 Group Frame
4.20.5.7 List Box
4.20.5.8 Scrollbar
4.20.5.9 Textbox
4.20.5.10 Image View
4.20.5.11 Multiline Edit
4.20.5.12 Notebook
4.20.5.13 Notebook Page
4.20.5.14 Bar Chart
4.20.6 In-Depth Explanation of AWS Architecture
4.20.7 Using QT Designer To Create AWS Definition Files
4.20.8 AWS Automation: Properties and Scripting
4.20.9 Automation Objects Available for Components
4.20.10 Automation Objects Available for Windows
4.20.11 Flexible Vector Graphics
4.20.11.1 FVG Rectangle
4.20.11.2 FVG Circle
4.20.11.3 FVG Ellipse
4.20.11.4 FVG Line
4.20.11.5 FVG Path
4.21 CEGUI Introduction
4.22 Making Projects Using Crystal Space
4.22.1 Creating an External Crystal Space Application
4.22.2 Creating an External MSVC 6 Application
4.22.3 Creating an External MSVC 7 Application
4.22.4 Creating an External Application using KDevelop
4.22.5 Creating an External Crystal Space Application Using Dev-CPP
4.22.6 Creating Crystal Space RPM's
4.22.7 Setting the CRYSTAL environment variable
4.23 HOWTO
4.23.1 Clicking on Objects
4.23.2 Loading Images for Pixmaps
4.23.3 Recording Movies
5. Working with Engine Content
5.1 Hogyan készíts optimális pályákat a Crystal Space-hez
5.2 Simple Map Example
5.3 Making Levels and Models in Blender
5.4 Making Levels and Models in 3DSMax
5.5 map2cs Manual (Quake Map Converter)
map2cs
5.5.1 Reference for `map2cs.cfg'
5.5.2 Classnames and Keys
5.5.3 Invoking
5.5.4 Game-Specific Data
5.6 map2cs Tutorial
5.6.1 Step 1: Links to Required Tools and Data
5.6.2 Step 2: Configuring Worldcraft
5.6.3 Step 3: Configuring `map2cs'
5.6.4 Step 4: Creating a Simple Room in Worldcraft
5.6.5 Step 5: Compiling the Room and Testing It
5.6.6 Step 6: Applying Textures
5.6.7 Step 7: Adding Another Room
5.6.8 Step 8: Adding More Detail
5.6.9 Step 9: Adding Manual Sectors
5.6.10 Generating Skybox Textures
5.6.11 Tips for Map Creation
5.7 md32spr Tutorial
md32spr
5.8 Quake Model Converter (mdl2spr)
mdl2spr
5.9 3D Sprites
5.9.1 A Simple 3D Sprite
5.9.2 Texturing
5.9.3 Shading
6. Internal Project Structure
6.1 Platform-Specific Details
6.1.1 MacOS/X
6.1.1.1 Contents
6.1.1.2 Run-Loop
6.1.1.3 Dynamic Linking
6.2 Threads in Crystal Space
6.3 The Engine Internals Explained
6.4 Rendering Loop
7. Contributing to Crystal Space
7.1 Writing Documentation
7.2 Portability
7.3 Coding Style
7.4 CVS Etiquette Guidelines
7.5 Porting to a New Platform
A. Glossary
B. Frequently Asked Questions (FAQ)
C. Release Notes
C.1 Release Notes from 0.98 to 1.00
C.2 Release Notes from 0.96 to 0.98
C.3 Release Notes from 0.94 to 0.96
C.4 Release Notes from 0.92 to 0.94
C.5 Release Notes from 0.90 to 0.92
C.6 Release Notes from 0.18 to 0.90
C.7 Release Notes from 0.17 to 0.18
C.8 Release Notes from 0.16 to 0.17
D. Licenszek
D.1 GNU Lesser General Public License
D.1.1 Preamble
D.1.2 TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
D.1.3 How to Apply These Terms to Your New Libraries
D.2 Portions of Crystal Space Covered Under Different Licenses
D.3 GNU General Public License
D.3.1 Preamble
D.3.2 TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
D.3.3 Appendix: How to Apply These Terms to Your New Programs
Index
This document was generated using texi2html 1.76.