From: <cry...@us...> - 2006-12-28 01:29:46
|
Revision: 26131 http://svn.sourceforge.net/crystal/?rev=26131&view=rev Author: crystal-manage Date: 2006-12-27 17:29:41 -0800 (Wed, 27 Dec 2006) Log Message: ----------- master header files: Automated master header file repair. Visual-C++ project files: Automated Visual-C++ project file repair. Texinfo files: Automated Texinfo @node and @menu repair. Swig Python files: Automated Swig Python file repair. Swig Perl5 files: Automated Swig Perl5 file repair. User's Manual: Automated Texinfo to HTML conversion. Modified Paths: -------------- CS/trunk/docs/html/manual/cs_1.4.html CS/trunk/docs/html/manual/cs_1.5.html CS/trunk/docs/html/manual/cs_2.1.html CS/trunk/docs/html/manual/cs_2.4.1.html CS/trunk/docs/html/manual/cs_2.4.2.html CS/trunk/docs/html/manual/cs_2.6.html CS/trunk/docs/html/manual/cs_3.2.html CS/trunk/docs/html/manual/cs_4.1.1.html CS/trunk/docs/html/manual/cs_4.1.2.html CS/trunk/docs/html/manual/cs_4.1.4.html CS/trunk/docs/html/manual/cs_4.1.6.html CS/trunk/docs/html/manual/cs_4.10.1.html CS/trunk/docs/html/manual/cs_4.10.2.html CS/trunk/docs/html/manual/cs_4.10.html CS/trunk/docs/html/manual/cs_4.11.1.html CS/trunk/docs/html/manual/cs_4.11.2.html CS/trunk/docs/html/manual/cs_4.11.html CS/trunk/docs/html/manual/cs_4.12.1.html CS/trunk/docs/html/manual/cs_4.12.2.html CS/trunk/docs/html/manual/cs_4.12.html CS/trunk/docs/html/manual/cs_4.13.1.html CS/trunk/docs/html/manual/cs_4.13.2.html CS/trunk/docs/html/manual/cs_4.13.html CS/trunk/docs/html/manual/cs_4.14.1.html CS/trunk/docs/html/manual/cs_4.14.2.html CS/trunk/docs/html/manual/cs_4.14.html CS/trunk/docs/html/manual/cs_4.15.1.html CS/trunk/docs/html/manual/cs_4.15.2.html CS/trunk/docs/html/manual/cs_4.15.3.html CS/trunk/docs/html/manual/cs_4.15.4.html CS/trunk/docs/html/manual/cs_4.15.5.html CS/trunk/docs/html/manual/cs_4.15.html CS/trunk/docs/html/manual/cs_4.16.1.html CS/trunk/docs/html/manual/cs_4.16.2.html CS/trunk/docs/html/manual/cs_4.16.html CS/trunk/docs/html/manual/cs_4.17.1.html CS/trunk/docs/html/manual/cs_4.17.2.html CS/trunk/docs/html/manual/cs_4.17.html CS/trunk/docs/html/manual/cs_4.18.1.html CS/trunk/docs/html/manual/cs_4.18.2.html CS/trunk/docs/html/manual/cs_4.18.3.html CS/trunk/docs/html/manual/cs_4.18.4.html CS/trunk/docs/html/manual/cs_4.18.html CS/trunk/docs/html/manual/cs_4.19.1.html CS/trunk/docs/html/manual/cs_4.19.2.html CS/trunk/docs/html/manual/cs_4.19.3.html CS/trunk/docs/html/manual/cs_4.19.4.html CS/trunk/docs/html/manual/cs_4.19.5.html CS/trunk/docs/html/manual/cs_4.19.6.html CS/trunk/docs/html/manual/cs_4.19.7.html CS/trunk/docs/html/manual/cs_4.19.8.html CS/trunk/docs/html/manual/cs_4.19.9.html CS/trunk/docs/html/manual/cs_4.19.html CS/trunk/docs/html/manual/cs_4.2.1.3.html CS/trunk/docs/html/manual/cs_4.2.2.3.html CS/trunk/docs/html/manual/cs_4.2.2.html CS/trunk/docs/html/manual/cs_4.2.3.2.html CS/trunk/docs/html/manual/cs_4.2.4.10.html CS/trunk/docs/html/manual/cs_4.2.4.5.html CS/trunk/docs/html/manual/cs_4.2.4.7.html CS/trunk/docs/html/manual/cs_4.2.4.html CS/trunk/docs/html/manual/cs_4.2.html CS/trunk/docs/html/manual/cs_4.20.html CS/trunk/docs/html/manual/cs_4.21.html CS/trunk/docs/html/manual/cs_4.22.1.html CS/trunk/docs/html/manual/cs_4.22.2.html CS/trunk/docs/html/manual/cs_4.22.3.html CS/trunk/docs/html/manual/cs_4.22.html CS/trunk/docs/html/manual/cs_4.3.3.html CS/trunk/docs/html/manual/cs_4.4.1.html CS/trunk/docs/html/manual/cs_4.4.2.html CS/trunk/docs/html/manual/cs_4.4.3.html CS/trunk/docs/html/manual/cs_4.4.4.html CS/trunk/docs/html/manual/cs_4.4.html CS/trunk/docs/html/manual/cs_4.5.1.html CS/trunk/docs/html/manual/cs_4.5.2.html CS/trunk/docs/html/manual/cs_4.5.html CS/trunk/docs/html/manual/cs_4.6.1.html CS/trunk/docs/html/manual/cs_4.6.2.html CS/trunk/docs/html/manual/cs_4.6.html CS/trunk/docs/html/manual/cs_4.7.1.html CS/trunk/docs/html/manual/cs_4.7.2.html CS/trunk/docs/html/manual/cs_4.7.html CS/trunk/docs/html/manual/cs_4.8.1.html CS/trunk/docs/html/manual/cs_4.8.2.html CS/trunk/docs/html/manual/cs_4.8.3.html CS/trunk/docs/html/manual/cs_4.8.html CS/trunk/docs/html/manual/cs_4.9.1.html CS/trunk/docs/html/manual/cs_4.9.10.html CS/trunk/docs/html/manual/cs_4.9.2.html CS/trunk/docs/html/manual/cs_4.9.3.html CS/trunk/docs/html/manual/cs_4.9.4.html CS/trunk/docs/html/manual/cs_4.9.5.html CS/trunk/docs/html/manual/cs_4.9.6.html CS/trunk/docs/html/manual/cs_4.9.7.html CS/trunk/docs/html/manual/cs_4.9.8.html CS/trunk/docs/html/manual/cs_4.9.9.html CS/trunk/docs/html/manual/cs_4.9.html CS/trunk/docs/html/manual/cs_4.html CS/trunk/docs/html/manual/cs_5.1.html CS/trunk/docs/html/manual/cs_5.2.html CS/trunk/docs/html/manual/cs_5.3.html CS/trunk/docs/html/manual/cs_5.4.html CS/trunk/docs/html/manual/cs_5.5.html CS/trunk/docs/html/manual/cs_5.6.html CS/trunk/docs/html/manual/cs_5.7.html CS/trunk/docs/html/manual/cs_5.8.html CS/trunk/docs/html/manual/cs_5.9.html CS/trunk/docs/html/manual/cs_5.html CS/trunk/docs/html/manual/cs_6.1.1.1.html CS/trunk/docs/html/manual/cs_6.2.html CS/trunk/docs/html/manual/cs_6.3.html CS/trunk/docs/html/manual/cs_6.4.html CS/trunk/docs/html/manual/cs_7.1.html CS/trunk/docs/html/manual/cs_7.2.html CS/trunk/docs/html/manual/cs_A.html CS/trunk/docs/html/manual/cs_B.html CS/trunk/docs/html/manual/cs_C.1.1.html CS/trunk/docs/html/manual/cs_C.1.2.html CS/trunk/docs/html/manual/cs_C.2.1.html CS/trunk/docs/html/manual/cs_C.2.10.html CS/trunk/docs/html/manual/cs_C.2.12.html CS/trunk/docs/html/manual/cs_C.2.18.html CS/trunk/docs/html/manual/cs_C.2.2.html CS/trunk/docs/html/manual/cs_C.2.21.html CS/trunk/docs/html/manual/cs_C.2.22.html CS/trunk/docs/html/manual/cs_C.2.3.html CS/trunk/docs/html/manual/cs_C.2.4.html CS/trunk/docs/html/manual/cs_C.2.6.html CS/trunk/docs/html/manual/cs_C.2.7.html CS/trunk/docs/html/manual/cs_C.2.8.html CS/trunk/docs/html/manual/cs_C.2.9.html CS/trunk/docs/html/manual/cs_C.3.html CS/trunk/docs/html/manual/cs_C.4.html CS/trunk/docs/html/manual/cs_C.5.html CS/trunk/docs/html/manual/cs_C.6.html CS/trunk/docs/html/manual/cs_C.7.html CS/trunk/docs/html/manual/cs_C.8.html CS/trunk/docs/html/manual/cs_C.9.html CS/trunk/docs/html/manual/cs_INDEX0.html CS/trunk/docs/html/manual/cs_INDEX1.html CS/trunk/docs/html/manual/cs_INDEX2.html CS/trunk/docs/html/manual/cs_INDEX3.html CS/trunk/docs/html/manual/cs_INDEX4.html CS/trunk/docs/html/manual/cs_Index.html CS/trunk/docs/html/manual/cs_ovr.html CS/trunk/docs/html/manual/cs_toc.html CS/trunk/mk/msvc7/wkstypical.sln CS/trunk/mk/msvc7/wkswxtypical.sln CS/trunk/mk/msvc71/wkstypical.sln CS/trunk/mk/msvc71/wkswxtypical.sln CS/trunk/mk/msvc8/wkstypical.sln CS/trunk/mk/msvc8/wkswxtypical.sln Added Paths: ----------- CS/trunk/docs/html/manual/cs_4.10.10.html CS/trunk/docs/html/manual/cs_4.10.11.html CS/trunk/docs/html/manual/cs_4.10.12.html CS/trunk/docs/html/manual/cs_4.10.13.html CS/trunk/docs/html/manual/cs_4.10.14.html CS/trunk/docs/html/manual/cs_4.10.15.html CS/trunk/docs/html/manual/cs_4.10.16.html CS/trunk/docs/html/manual/cs_4.10.17.html CS/trunk/docs/html/manual/cs_4.10.18.html CS/trunk/docs/html/manual/cs_4.10.3.html CS/trunk/docs/html/manual/cs_4.10.4.html CS/trunk/docs/html/manual/cs_4.10.5.html CS/trunk/docs/html/manual/cs_4.10.6.html CS/trunk/docs/html/manual/cs_4.10.7.html CS/trunk/docs/html/manual/cs_4.10.8.html CS/trunk/docs/html/manual/cs_4.10.9.html CS/trunk/docs/html/manual/cs_4.12.1.1.html CS/trunk/docs/html/manual/cs_4.12.1.2.html CS/trunk/docs/html/manual/cs_4.12.1.3.html CS/trunk/docs/html/manual/cs_4.12.3.1.html CS/trunk/docs/html/manual/cs_4.12.3.2.html CS/trunk/docs/html/manual/cs_4.12.3.3.html CS/trunk/docs/html/manual/cs_4.12.3.4.html CS/trunk/docs/html/manual/cs_4.12.3.5.html CS/trunk/docs/html/manual/cs_4.12.3.6.html CS/trunk/docs/html/manual/cs_4.12.3.html CS/trunk/docs/html/manual/cs_4.12.4.html CS/trunk/docs/html/manual/cs_4.15.6.html CS/trunk/docs/html/manual/cs_4.16.2.1.html CS/trunk/docs/html/manual/cs_4.16.2.2.html CS/trunk/docs/html/manual/cs_4.16.2.3.html CS/trunk/docs/html/manual/cs_4.16.2.4.html CS/trunk/docs/html/manual/cs_4.16.3.1.html CS/trunk/docs/html/manual/cs_4.16.3.2.html CS/trunk/docs/html/manual/cs_4.16.3.3.html CS/trunk/docs/html/manual/cs_4.16.3.html CS/trunk/docs/html/manual/cs_4.16.4.html CS/trunk/docs/html/manual/cs_4.16.5.html CS/trunk/docs/html/manual/cs_4.19.10.html CS/trunk/docs/html/manual/cs_4.19.11.1.html CS/trunk/docs/html/manual/cs_4.19.11.2.html CS/trunk/docs/html/manual/cs_4.19.11.3.html CS/trunk/docs/html/manual/cs_4.19.11.4.html CS/trunk/docs/html/manual/cs_4.19.11.5.html CS/trunk/docs/html/manual/cs_4.19.11.html CS/trunk/docs/html/manual/cs_4.19.3.1.html CS/trunk/docs/html/manual/cs_4.19.3.2.html CS/trunk/docs/html/manual/cs_4.19.3.3.html CS/trunk/docs/html/manual/cs_4.19.5.1.html CS/trunk/docs/html/manual/cs_4.19.5.10.html CS/trunk/docs/html/manual/cs_4.19.5.11.html CS/trunk/docs/html/manual/cs_4.19.5.12.html CS/trunk/docs/html/manual/cs_4.19.5.13.html CS/trunk/docs/html/manual/cs_4.19.5.14.html CS/trunk/docs/html/manual/cs_4.19.5.2.html CS/trunk/docs/html/manual/cs_4.19.5.3.html CS/trunk/docs/html/manual/cs_4.19.5.4.html CS/trunk/docs/html/manual/cs_4.19.5.5.html CS/trunk/docs/html/manual/cs_4.19.5.6.html CS/trunk/docs/html/manual/cs_4.19.5.7.html CS/trunk/docs/html/manual/cs_4.19.5.8.html CS/trunk/docs/html/manual/cs_4.19.5.9.html CS/trunk/docs/html/manual/cs_4.20.1.html CS/trunk/docs/html/manual/cs_4.20.2.html CS/trunk/docs/html/manual/cs_4.20.3.html CS/trunk/docs/html/manual/cs_4.20.4.1.html CS/trunk/docs/html/manual/cs_4.20.4.2.html CS/trunk/docs/html/manual/cs_4.20.4.3.html CS/trunk/docs/html/manual/cs_4.20.4.4.html CS/trunk/docs/html/manual/cs_4.20.4.5.html CS/trunk/docs/html/manual/cs_4.20.4.6.html CS/trunk/docs/html/manual/cs_4.20.4.html CS/trunk/docs/html/manual/cs_4.20.5.html CS/trunk/docs/html/manual/cs_4.20.6.html CS/trunk/docs/html/manual/cs_4.20.7.html CS/trunk/docs/html/manual/cs_4.20.8.html CS/trunk/docs/html/manual/cs_4.20.9.1.html CS/trunk/docs/html/manual/cs_4.20.9.2.html CS/trunk/docs/html/manual/cs_4.20.9.3.html CS/trunk/docs/html/manual/cs_4.20.9.4.html CS/trunk/docs/html/manual/cs_4.20.9.5.html CS/trunk/docs/html/manual/cs_4.20.9.html CS/trunk/docs/html/manual/cs_4.22.4.html CS/trunk/docs/html/manual/cs_4.22.5.html CS/trunk/docs/html/manual/cs_4.22.6.html CS/trunk/docs/html/manual/cs_4.23.1.html CS/trunk/docs/html/manual/cs_4.23.2.html CS/trunk/docs/html/manual/cs_4.23.3.html CS/trunk/docs/html/manual/cs_4.23.html CS/trunk/docs/html/manual/cs_4.5.3.html CS/trunk/docs/html/manual/cs_4.5.4.1.html CS/trunk/docs/html/manual/cs_4.5.4.2.html CS/trunk/docs/html/manual/cs_4.5.4.3.html CS/trunk/docs/html/manual/cs_4.5.4.4.html CS/trunk/docs/html/manual/cs_4.5.4.5.html CS/trunk/docs/html/manual/cs_4.5.4.6.html CS/trunk/docs/html/manual/cs_4.5.4.html CS/trunk/docs/html/manual/cs_4.6.2.1.html CS/trunk/docs/html/manual/cs_4.6.2.2.html CS/trunk/docs/html/manual/cs_4.9.8.1.html CS/trunk/docs/html/manual/cs_4.9.8.2.html CS/trunk/docs/html/manual/cs_4.9.8.3.html CS/trunk/docs/html/manual/cs_4.9.8.4.html CS/trunk/docs/html/manual/cs_4.9.8.5.html CS/trunk/docs/html/manual/cs_4.9.8.6.html CS/trunk/docs/html/manual/cs_4.9.8.7.html CS/trunk/docs/html/manual/cs_4.9.8.8.html CS/trunk/mk/msvc/appimagetool.manifest CS/trunk/mk/msvc/appimagetool.rc CS/trunk/mk/msvc7/appimagetool.vcproj CS/trunk/mk/msvc71/appimagetool.vcproj CS/trunk/mk/msvc8/appimagetool.vcproj Removed Paths: ------------- CS/trunk/docs/html/manual/cs_4.11.1.1.html CS/trunk/docs/html/manual/cs_4.11.1.2.html CS/trunk/docs/html/manual/cs_4.11.1.3.html CS/trunk/docs/html/manual/cs_4.11.3.1.html CS/trunk/docs/html/manual/cs_4.11.3.2.html CS/trunk/docs/html/manual/cs_4.11.3.3.html CS/trunk/docs/html/manual/cs_4.11.3.4.html CS/trunk/docs/html/manual/cs_4.11.3.5.html CS/trunk/docs/html/manual/cs_4.11.3.6.html CS/trunk/docs/html/manual/cs_4.11.3.html CS/trunk/docs/html/manual/cs_4.11.4.html CS/trunk/docs/html/manual/cs_4.14.3.html CS/trunk/docs/html/manual/cs_4.14.4.html CS/trunk/docs/html/manual/cs_4.14.5.html CS/trunk/docs/html/manual/cs_4.14.6.html CS/trunk/docs/html/manual/cs_4.15.2.1.html CS/trunk/docs/html/manual/cs_4.15.2.2.html CS/trunk/docs/html/manual/cs_4.15.2.3.html CS/trunk/docs/html/manual/cs_4.15.2.4.html CS/trunk/docs/html/manual/cs_4.15.3.1.html CS/trunk/docs/html/manual/cs_4.15.3.2.html CS/trunk/docs/html/manual/cs_4.15.3.3.html CS/trunk/docs/html/manual/cs_4.17.3.html CS/trunk/docs/html/manual/cs_4.17.4.html CS/trunk/docs/html/manual/cs_4.18.10.html CS/trunk/docs/html/manual/cs_4.18.11.1.html CS/trunk/docs/html/manual/cs_4.18.11.2.html CS/trunk/docs/html/manual/cs_4.18.11.3.html CS/trunk/docs/html/manual/cs_4.18.11.4.html CS/trunk/docs/html/manual/cs_4.18.11.5.html CS/trunk/docs/html/manual/cs_4.18.11.html CS/trunk/docs/html/manual/cs_4.18.3.1.html CS/trunk/docs/html/manual/cs_4.18.3.2.html CS/trunk/docs/html/manual/cs_4.18.3.3.html CS/trunk/docs/html/manual/cs_4.18.5.1.html CS/trunk/docs/html/manual/cs_4.18.5.10.html CS/trunk/docs/html/manual/cs_4.18.5.11.html CS/trunk/docs/html/manual/cs_4.18.5.12.html CS/trunk/docs/html/manual/cs_4.18.5.13.html CS/trunk/docs/html/manual/cs_4.18.5.14.html CS/trunk/docs/html/manual/cs_4.18.5.2.html CS/trunk/docs/html/manual/cs_4.18.5.3.html CS/trunk/docs/html/manual/cs_4.18.5.4.html CS/trunk/docs/html/manual/cs_4.18.5.5.html CS/trunk/docs/html/manual/cs_4.18.5.6.html CS/trunk/docs/html/manual/cs_4.18.5.7.html CS/trunk/docs/html/manual/cs_4.18.5.8.html CS/trunk/docs/html/manual/cs_4.18.5.9.html CS/trunk/docs/html/manual/cs_4.18.5.html CS/trunk/docs/html/manual/cs_4.18.6.html CS/trunk/docs/html/manual/cs_4.18.7.html CS/trunk/docs/html/manual/cs_4.18.8.html CS/trunk/docs/html/manual/cs_4.18.9.html CS/trunk/docs/html/manual/cs_4.19.4.1.html CS/trunk/docs/html/manual/cs_4.19.4.2.html CS/trunk/docs/html/manual/cs_4.19.4.3.html CS/trunk/docs/html/manual/cs_4.19.4.4.html CS/trunk/docs/html/manual/cs_4.19.4.5.html CS/trunk/docs/html/manual/cs_4.19.4.6.html CS/trunk/docs/html/manual/cs_4.19.9.1.html CS/trunk/docs/html/manual/cs_4.19.9.2.html CS/trunk/docs/html/manual/cs_4.19.9.3.html CS/trunk/docs/html/manual/cs_4.19.9.4.html CS/trunk/docs/html/manual/cs_4.19.9.5.html CS/trunk/docs/html/manual/cs_4.21.1.html CS/trunk/docs/html/manual/cs_4.21.2.html CS/trunk/docs/html/manual/cs_4.21.3.html CS/trunk/docs/html/manual/cs_4.21.4.html CS/trunk/docs/html/manual/cs_4.21.5.html CS/trunk/docs/html/manual/cs_4.21.6.html CS/trunk/docs/html/manual/cs_4.4.4.1.html CS/trunk/docs/html/manual/cs_4.4.4.2.html CS/trunk/docs/html/manual/cs_4.4.4.3.html CS/trunk/docs/html/manual/cs_4.4.4.4.html CS/trunk/docs/html/manual/cs_4.4.4.5.html CS/trunk/docs/html/manual/cs_4.4.4.6.html CS/trunk/docs/html/manual/cs_4.5.2.1.html CS/trunk/docs/html/manual/cs_4.5.2.2.html CS/trunk/docs/html/manual/cs_4.7.3.html CS/trunk/docs/html/manual/cs_4.8.10.html CS/trunk/docs/html/manual/cs_4.8.4.html CS/trunk/docs/html/manual/cs_4.8.5.html CS/trunk/docs/html/manual/cs_4.8.6.html CS/trunk/docs/html/manual/cs_4.8.7.html CS/trunk/docs/html/manual/cs_4.8.8.1.html CS/trunk/docs/html/manual/cs_4.8.8.2.html CS/trunk/docs/html/manual/cs_4.8.8.3.html CS/trunk/docs/html/manual/cs_4.8.8.4.html CS/trunk/docs/html/manual/cs_4.8.8.5.html CS/trunk/docs/html/manual/cs_4.8.8.6.html CS/trunk/docs/html/manual/cs_4.8.8.7.html CS/trunk/docs/html/manual/cs_4.8.8.8.html CS/trunk/docs/html/manual/cs_4.8.8.html CS/trunk/docs/html/manual/cs_4.8.9.html CS/trunk/docs/html/manual/cs_4.9.11.html CS/trunk/docs/html/manual/cs_4.9.12.html CS/trunk/docs/html/manual/cs_4.9.13.html CS/trunk/docs/html/manual/cs_4.9.14.html CS/trunk/docs/html/manual/cs_4.9.15.html CS/trunk/docs/html/manual/cs_4.9.16.html CS/trunk/docs/html/manual/cs_4.9.17.html CS/trunk/docs/html/manual/cs_4.9.18.html CS/trunk/mk/msvc/appgfxtest.manifest CS/trunk/mk/msvc/appgfxtest.rc CS/trunk/mk/msvc7/appgfxtest.vcproj CS/trunk/mk/msvc71/appgfxtest.vcproj CS/trunk/mk/msvc8/appgfxtest.vcproj Modified: CS/trunk/docs/html/manual/cs_1.4.html =================================================================== --- CS/trunk/docs/html/manual/cs_1.4.html 2006-12-27 21:49:05 UTC (rev 26130) +++ CS/trunk/docs/html/manual/cs_1.4.html 2006-12-28 01:29:41 UTC (rev 26131) @@ -75,7 +75,7 @@ have a good idea on some of the basic concepts of Crystal Space. </p> <p>Additionally, the tutorial section contains the <small>HOWTO</small> section -(see section <a href="cs_4.22.html#4.22">HOWTO</a>). The <small>HOWTO</small>s are small documents explaining how to +(see section <a href="cs_4.23.html#4.23">HOWTO</a>). The <small>HOWTO</small>s are small documents explaining how to deal with specific issues. They usually contain example code. Most of the <small>HOWTO</small>s are related to dealing with the Crystal Space engine (like collision detection, mesh lighting and animation, mesh @@ -84,19 +84,19 @@ application tree, one for Unix or Unix-like environments (such as Msys/Mingw or Cygwin) and another for Microsoft Visual C++. </p> -<p>The section of the manual that talks about the engine (see section <a href="cs_4.8.html#4.8">The 3D Engine</a>) +<p>The section of the manual that talks about the engine (see section <a href="cs_4.9.html#4.9">The 3D Engine</a>) is very important. If you want to know how the 3D engine works internally (which is important if you want to build your own 3D worlds) then you should read the section explaining the world components -(see section <a href="cs_4.8.1.html#4.8.1">Components of a World</a>) and the section explaining portals -(see section <a href="cs_4.8.4.html#4.8.4">Portal Engine</a>). There is a <small>HOWTO</small> about render -priorities (see section <a href="cs_4.8.3.html#4.8.3">Render Priorities and Objects in Sectors</a>) which should assist greatly +(see section <a href="cs_4.9.1.html#4.9.1">Components of a World</a>) and the section explaining portals +(see section <a href="cs_4.9.4.html#4.9.4">Portal Engine</a>). There is a <small>HOWTO</small> about render +priorities (see section <a href="cs_4.9.3.html#4.9.3">Render Priorities and Objects in Sectors</a>) which should assist greatly in that area. </p> -<p>The section about the Map File Parser (see section <a href="cs_4.15.html#4.15">Loading Maps and Models</a>) is useful if +<p>The section about the Map File Parser (see section <a href="cs_4.16.html#4.16">Loading Maps and Models</a>) is useful if you want to create your map files manually. </p> -<p>Reading the mesh object section (see section <a href="cs_4.9.html#4.9">Mesh Object Plug-In System</a>) is also recommended. +<p>Reading the mesh object section (see section <a href="cs_4.10.html#4.10">Mesh Object Plug-In System</a>) is also recommended. Mesh objects are objects that represent geometry in Crystal Space. If you want to display something in your world you will have to know how to use them. The tutorials and <small>HOWTO</small>s contain information about mesh Modified: CS/trunk/docs/html/manual/cs_1.5.html =================================================================== --- CS/trunk/docs/html/manual/cs_1.5.html 2006-12-27 21:49:05 UTC (rev 26130) +++ CS/trunk/docs/html/manual/cs_1.5.html 2006-12-28 01:29:41 UTC (rev 26131) @@ -94,13 +94,13 @@ <li> Geometric utility library with handy classes such as 2D and 3D vectors, matrices, transforms, quaternions, kdtree, axis aligned and oriented bounding -box routines, rectangle subdivision, etc. See section <a href="cs_4.5.1.html#4.5.1">Geometry Library (<code>csGeom</code>)</a>. +box routines, rectangle subdivision, etc. See section <a href="cs_4.6.1.html#4.6.1">Geometry Library (<code>csGeom</code>)</a>. </li><li> General utility library with stuff like templated arrays, smart pointers, hash maps, object registry, plugin manager, radix sort, bit array, optimized allocators, strings, command-line parsing, configuration files, and more. -See section <a href="cs_4.5.2.html#4.5.2">Utility Library (<code>csUtil</code>)</a>. See section <a href="cs_4.1.html#4.1">Basics and Overview</a>. See section <a href="cs_4.4.2.html#4.4.2">Configuration File</a>. +See section <a href="cs_4.6.2.html#4.6.2">Utility Library (<code>csUtil</code>)</a>. See section <a href="cs_4.1.html#4.1">Basics and Overview</a>. See section <a href="cs_4.5.2.html#4.5.2">Configuration File</a>. </li><li> Higher level tool library containing things like some example procedural @@ -120,7 +120,7 @@ </li><li> Virtual file system and transparent support for <small>ZIP</small> files. This -allows cross-platform access to game data files. See section <a href="cs_4.6.html#4.6">Virtual File System (<small>VFS</small>)</a>. +allows cross-platform access to game data files. See section <a href="cs_4.7.html#4.7">Virtual File System (<small>VFS</small>)</a>. </li><li> Flexible and extensible event system. @@ -129,19 +129,19 @@ Full screen effects (fading, whiteout, etc). </li><li> -Level of Detail <small>LOD</small>. See section <a href="cs_4.8.10.html#4.8.10">Level of Detail</a>. +Level of Detail <small>LOD</small>. See section <a href="cs_4.9.10.html#4.9.10">Level of Detail</a>. </li><li> Various types of mesh objects: bezier curves, polygonal lightmapped objects, triangle meshes, haze mesh (bit like volumetric light), <small class="dots">...</small>. -See section <a href="cs_4.9.html#4.9">Mesh Object Plug-In System</a>. See section <a href="cs_4.9.9.html#4.9.9">Thing Mesh Object</a>, -See section <a href="cs_4.9.4.html#4.9.4">Creating a Thing Mesh</a>. See section <a href="cs_4.9.8.html#4.9.8">Genmesh Mesh Object</a>. -See section <a href="cs_4.9.5.html#4.9.5">Creating a Genmesh Mesh</a>. +See section <a href="cs_4.10.html#4.10">Mesh Object Plug-In System</a>. See section <a href="cs_4.10.9.html#4.10.9">Thing Mesh Object</a>, +See section <a href="cs_4.10.4.html#4.10.4">Creating a Thing Mesh</a>. See section <a href="cs_4.10.8.html#4.10.8">Genmesh Mesh Object</a>. +See section <a href="cs_4.10.5.html#4.10.5">Creating a Genmesh Mesh</a>. </li><li> -Animated 3D models (3D sprites) using frame based animation. See section <a href="cs_4.14.html#4.14">Animating your Objects</a>. -See section <a href="cs_4.9.13.html#4.9.13">Sprite3D Mesh Object</a>. +Animated 3D models (3D sprites) using frame based animation. See section <a href="cs_4.15.html#4.15">Animating your Objects</a>. +See section <a href="cs_4.10.13.html#4.10.13">Sprite3D Mesh Object</a>. </li><li> Animated 3D models using a skeletal animation system with good support @@ -149,7 +149,7 @@ </li><li> Animated Cal3D models using skeletal based animation using the -<tt>`sprcal3d'</tt> plugin. See section <a href="cs_4.9.14.html#4.9.14">SpriteCal3D Mesh Object</a>. +<tt>`sprcal3d'</tt> plugin. See section <a href="cs_4.10.14.html#4.10.14">SpriteCal3D Mesh Object</a>. </li><li> 2D animations. @@ -160,12 +160,12 @@ and <small>3DS</small> models directly. </li><li> -Crystal Space native windowing system(s). See section <a href="cs_4.18.html#4.18">Alternate Windowing System (<small>AWS</small>)</a>. +Crystal Space native windowing system(s). See section <a href="cs_4.19.html#4.19">Alternate Windowing System (<small>AWS</small>)</a>. </li><li> Cross-platform support for hardware rendering via OpenGL and software rendering as well as a special "null" renderer for applications like game -servers. See section <a href="cs_4.12.html#4.12">The Rendering System</a>. +servers. See section <a href="cs_4.13.html#4.13">The Rendering System</a>. </li><li> Supports various common image formats (<small>BMP</small>, <small>DDS</small>, <small>GIF</small>, <small>JPG</small>, @@ -173,67 +173,67 @@ </li><li> Portals and sectors which allow for flexible world creation. -See section <a href="cs_4.8.4.html#4.8.4">Portal Engine</a>. +See section <a href="cs_4.9.4.html#4.9.4">Portal Engine</a>. </li><li> Visibility culling based on kd-tree with coverage buffers (Dynavis). -See section <a href="cs_4.8.8.html#4.8.8">Visibility Culling In Detail</a>. +See section <a href="cs_4.9.8.html#4.9.8">Visibility Culling In Detail</a>. </li><li> Lighting: static, pseudo-dynamic, dynamic, halos, shadows, stencil shadows. -See section <a href="cs_4.10.1.html#4.10.1">Lighting</a>. See section <a href="cs_4.10.2.html#4.10.2">Pseudo-dynamic Lights</a>. +See section <a href="cs_4.11.1.html#4.11.1">Lighting</a>. See section <a href="cs_4.11.2.html#4.11.2">Pseudo-dynamic Lights</a>. </li><li> -Multiple cameras. See section <a href="cs_4.8.6.html#4.8.6">Camera Movement</a>. +Multiple cameras. See section <a href="cs_4.9.6.html#4.9.6">Camera Movement</a>. </li><li> Powerful material support. Shaders and textures can be assigned arbitrarily to materials allowing great flexibility. Shaders support <small>CG</small>, <small>ARB</small>, and -<samp>`fixed function'</samp> language. See section <a href="cs_4.11.3.html#4.11.3">Texture Mapping</a>. +<samp>`fixed function'</samp> language. See section <a href="cs_4.12.3.html#4.12.3">Texture Mapping</a>. </li><li> -Procedural textures. See section <a href="cs_4.14.6.html#4.14.6">Procedural Texture System</a>. See section <a href="cs_4.11.3.html#4.11.3">Texture Mapping</a>. +Procedural textures. See section <a href="cs_4.15.6.html#4.15.6">Procedural Texture System</a>. See section <a href="cs_4.12.3.html#4.12.3">Texture Mapping</a>. </li><li> Cross-platform support for sound rendering. Supports <small>WAV</small> and <small>OGG</small> -sounds. See section <a href="cs_4.16.1.html#4.16.1">Sound Plugins</a>. +sounds. See section <a href="cs_4.17.1.html#4.17.1">Sound Plugins</a>. </li><li> Terrain engine with support for texture splatting (blending multiple materials -on a terrain) and Level Of Detail <small>LOD</small>. See section <a href="cs_4.9.10.html#4.9.10">Terrain Mesh Object</a>. +on a terrain) and Level Of Detail <small>LOD</small>. See section <a href="cs_4.10.10.html#4.10.10">Terrain Mesh Object</a>. </li><li> Particle system to make fire, explosions, rain, snow, fountains, and much -more. See section <a href="cs_4.9.16.html#4.9.16">Particle Systems in General</a>. +more. See section <a href="cs_4.10.16.html#4.10.16">Particle Systems in General</a>. </li><li> Collision detection (using <small>OPCODE</small>) or full physics using the <small>ODE</small> or <small>BULLET</small> external libraries. -See section <a href="cs_4.13.1.html#4.13.1">Basic Collision Detection</a>. See section <a href="cs_4.13.2.html#4.13.2">Physics using ODE</a>. +See section <a href="cs_4.14.1.html#4.14.1">Basic Collision Detection</a>. See section <a href="cs_4.14.2.html#4.14.2">Physics using ODE</a>. </li><li> Powerful sequence manager to control movement, animation and other -features in a world. See section <a href="cs_4.14.5.html#4.14.5">Sequence Manager</a>. +features in a world. See section <a href="cs_4.15.5.html#4.15.5">Sequence Manager</a>. </li><li> -Built-in support for TrueType fonts. See section <a href="cs_4.12.1.html#4.12.1">Using a Custom Font</a>. +Built-in support for TrueType fonts. See section <a href="cs_4.13.1.html#4.13.1">Using a Custom Font</a>. </li><li> Unicode text output. </li><li> -<small>XML</small>-based map format. See section <a href="cs_4.15.2.html#4.15.2">Format of Map File (<small>XML</small>)</a>, -See section <a href="cs_4.2.3.html#4.2.3">Simple Tutorial 3: Map Loading, Collision Detection</a>. See section <a href="cs_4.15.3.html#4.15.3">Old Format of Map File</a>. +<small>XML</small>-based map format. See section <a href="cs_4.16.2.html#4.16.2">Format of Map File (<small>XML</small>)</a>, +See section <a href="cs_4.2.3.html#4.2.3">Simple Tutorial 3: Map Loading, Collision Detection</a>. See section <a href="cs_4.16.3.html#4.16.3">Old Format of Map File</a>. </li><li> -Scripting bindings (Python, Perl, Java). See section <a href="cs_4.17.html#4.17">Scripting Languages</a>. +Scripting bindings (Python, Perl, Java). See section <a href="cs_4.18.html#4.18">Scripting Languages</a>. </li><li> -Plugin for integrated movie recording. See section <a href="cs_4.22.3.html#4.22.3">Recording Movies</a>. +Plugin for integrated movie recording. See section <a href="cs_4.23.3.html#4.23.3">Recording Movies</a>. </li><li> Pull-down console that you can integrate in your own games. -See section <a href="cs_4.4.4.5.html#4.4.4.5">Console Configuration</a>. +See section <a href="cs_4.5.4.5.html#4.5.4.5">Console Configuration</a>. </li><li> Debugging systems. Modified: CS/trunk/docs/html/manual/cs_2.1.html =================================================================== --- CS/trunk/docs/html/manual/cs_2.1.html 2006-12-27 21:49:05 UTC (rev 26130) +++ CS/trunk/docs/html/manual/cs_2.1.html 2006-12-28 01:29:41 UTC (rev 26131) @@ -374,7 +374,7 @@ </p> <dl compact="compact"> <dt> <code>CS/plugins/filesys/vfs</code></dt> -<dd><p>Virtual filesystem, <small>VFS</small>. See section <a href="cs_4.6.html#4.6">Virtual File System (<small>VFS</small>)</a>. +<dd><p>Virtual filesystem, <small>VFS</small>. See section <a href="cs_4.7.html#4.7">Virtual File System (<small>VFS</small>)</a>. </p></dd> </dl> @@ -396,7 +396,7 @@ </dd> <dt> <code>CS/plugins/mesh</code></dt> -<dd><p>Various mesh object implementations (see section <a href="cs_4.9.html#4.9">Mesh Object Plug-In System</a>). For every mesh +<dd><p>Various mesh object implementations (see section <a href="cs_4.10.html#4.10">Mesh Object Plug-In System</a>). For every mesh object there is typically one implementation in <tt>`object/'</tt> and one or more loader/saver plugins in <tt>`persist/'</tt>. <tt>`persist/standard/'</tt> is the loader in Crystal Space format. Modified: CS/trunk/docs/html/manual/cs_2.4.1.html =================================================================== --- CS/trunk/docs/html/manual/cs_2.4.1.html 2006-12-27 21:49:05 UTC (rev 26130) +++ CS/trunk/docs/html/manual/cs_2.4.1.html 2006-12-28 01:29:41 UTC (rev 26131) @@ -64,7 +64,7 @@ including <small>GNU</small>/Linux, FreeBSD, NetBSD, Solaris, etc. </p> <p>It is also possible to install Crystal Space using packaging systems, -See section <a href="cs_4.21.5.html#4.21.5">Creating Crystal Space <small>RPM</small>'s</a>. +See section <a href="cs_4.22.5.html#4.22.5">Creating Crystal Space <small>RPM</small>'s</a>. </p> <p>Crystal Space's X11 canvas optionally supports the <small>MIT</small> Shared Memory Extension (<small>MIT-SHM</small>). This makes Crystal Space run much faster if your Modified: CS/trunk/docs/html/manual/cs_2.4.2.html =================================================================== --- CS/trunk/docs/html/manual/cs_2.4.2.html 2006-12-27 21:49:05 UTC (rev 26130) +++ CS/trunk/docs/html/manual/cs_2.4.2.html 2006-12-28 01:29:41 UTC (rev 26131) @@ -263,7 +263,7 @@ <p>There is a <small>HOWTO</small> which explains how to create an <small>MSVC7</small> project file for your own program which utilizes Crystal Space. -See section <a href="cs_4.21.2.html#4.21.2">Creating an External <small>MSVC</small> 7, 7.1 or 8 Application</a>. +See section <a href="cs_4.22.2.html#4.22.2">Creating an External <small>MSVC</small> 7, 7.1 or 8 Application</a>. </p> <a name="SEC51"></a> <h4 class="subsubheading"> Frequently Asked Questions (<small>FAQ</small>) </h4> Modified: CS/trunk/docs/html/manual/cs_2.6.html =================================================================== --- CS/trunk/docs/html/manual/cs_2.6.html 2006-12-27 21:49:05 UTC (rev 26130) +++ CS/trunk/docs/html/manual/cs_2.6.html 2006-12-28 01:29:41 UTC (rev 26131) @@ -113,8 +113,8 @@ advised to re-run the application with <samp>`-relight'</samp>. </p> <p>You can also use other command line parameters when running Crystal Space -applications. See section <a href="cs_4.4.1.html#4.4.1">Common Command Line Options</a>. Detailed setup can be done -in the configuration file. See section <a href="cs_4.4.2.html#4.4.2">Configuration File</a>. For Walktest, in-game +applications. See section <a href="cs_4.5.1.html#4.5.1">Common Command Line Options</a>. Detailed setup can be done +in the configuration file. See section <a href="cs_4.5.2.html#4.5.2">Configuration File</a>. For Walktest, in-game setup can be done via the console. See section <a href="cs_3.1.4.html#3.1.4">Console Commands</a>. </p> Modified: CS/trunk/docs/html/manual/cs_3.2.html =================================================================== --- CS/trunk/docs/html/manual/cs_3.2.html 2006-12-27 21:49:05 UTC (rev 26130) +++ CS/trunk/docs/html/manual/cs_3.2.html 2006-12-28 01:29:41 UTC (rev 26131) @@ -308,7 +308,7 @@ </dd> <dt> <code>vsh</code></dt> <dd><p>This is the test application for the Virtual File System (<small>VFS</small>). It works -very similar to the standard Unix shell programs. See section <a href="cs_4.6.html#4.6">Virtual File System (<small>VFS</small>)</a>. +very similar to the standard Unix shell programs. See section <a href="cs_4.7.html#4.7">Virtual File System (<small>VFS</small>)</a>. </p> <a name="IDX79"></a> <a name="IDX80"></a> Modified: CS/trunk/docs/html/manual/cs_4.1.1.html =================================================================== --- CS/trunk/docs/html/manual/cs_4.1.1.html 2006-12-27 21:49:05 UTC (rev 26130) +++ CS/trunk/docs/html/manual/cs_4.1.1.html 2006-12-28 01:29:41 UTC (rev 26131) @@ -64,7 +64,7 @@ for creating computer games. Although some of the packages are intended more for 3D gaming this is not as such a restriction of the package. Components such as the sound driver function just as well in a 2D gaming environment, and -the Virtual File System plugin (see section <a href="cs_4.6.html#4.6">Virtual File System (<small>VFS</small>)</a>) can be used in non-graphical +the Virtual File System plugin (see section <a href="cs_4.7.html#4.7">Virtual File System (<small>VFS</small>)</a>) can be used in non-graphical applications. This highlights one of the important characteristics of Crystal Space: the components and libraries are more or less independent of each other. If you do not want "real" physics, then just don't use the physics plugin. Modified: CS/trunk/docs/html/manual/cs_4.1.2.html =================================================================== --- CS/trunk/docs/html/manual/cs_4.1.2.html 2006-12-27 21:49:05 UTC (rev 26130) +++ CS/trunk/docs/html/manual/cs_4.1.2.html 2006-12-28 01:29:41 UTC (rev 26131) @@ -71,14 +71,14 @@ <p><small>VFS</small> serves as the basic module for file access for all parts of Crystal Space. It allows one to map "virtual" directories to "real" ones; to map several real directories together as a single virtual directory; and to treat -<tt>`.zip'</tt> files like subdirectories. See section <a href="cs_4.6.html#4.6">Virtual File System (<small>VFS</small>)</a>. +<tt>`.zip'</tt> files like subdirectories. See section <a href="cs_4.7.html#4.7">Virtual File System (<small>VFS</small>)</a>. </p> </li><li> <em>Graphics Drivers</em> <p>The graphics modules provide "low-level" graphics output. This includes drawing pixels, lines and text, but also drawing polygons and polygon meshes -to support hardware acceleration. See section <a href="cs_4.12.html#4.12">The Rendering System</a>. The graphics +to support hardware acceleration. See section <a href="cs_4.13.html#4.13">The Rendering System</a>. The graphics drivers themselves uses a "canvas" plugin specific to the operating system and/or the graphics driver in order to open a window or setup the graphics base system. @@ -88,13 +88,13 @@ <p>The sound modules allow you to load and play sound effects and music. 3d effects are supported, as well as different ways to the same sound file. -See section <a href="cs_4.16.1.html#4.16.1">Sound Plugins</a>. +See section <a href="cs_4.17.1.html#4.17.1">Sound Plugins</a>. </p> </li><li> <em>3D Engine</em> <p>This is the core of Crystal Space. It is the main driving force behind -CS. See section <a href="cs_4.8.html#4.8">The 3D Engine</a>. +CS. See section <a href="cs_4.9.html#4.9">The 3D Engine</a>. </p> </li><li> <em>Mesh Objects</em> @@ -102,14 +102,14 @@ <p>Mesh objects are 3D objects that can be used and displayed by the engine. Examples are 3D sprites, 2D sprites, particle systems, terrain mesh, .... This functionality used to be in the engine but has been removed from the -engine for greater flexibility. See section <a href="cs_4.9.html#4.9">Mesh Object Plug-In System</a>. +engine for greater flexibility. See section <a href="cs_4.10.html#4.10">Mesh Object Plug-In System</a>. </p> </li><li> <em>Map Loader</em> <p>This plug-in provides map loading capabilities for your game. In addition it also contains functions to load mesh objects, textures, and sounds. -See section <a href="cs_4.15.html#4.15">Loading Maps and Models</a>. +See section <a href="cs_4.16.html#4.16">Loading Maps and Models</a>. </p> </li><li> <em>Image Loaders</em> Modified: CS/trunk/docs/html/manual/cs_4.1.4.html =================================================================== --- CS/trunk/docs/html/manual/cs_4.1.4.html 2006-12-27 21:49:05 UTC (rev 26130) +++ CS/trunk/docs/html/manual/cs_4.1.4.html 2006-12-28 01:29:41 UTC (rev 26131) @@ -63,7 +63,7 @@ <p>In the previous section we explained the basic concepts of the Crystal Space framework. In this section we explain the basic concepts of the engine. These are the concepts that you have to work with to make your 3D game data. -(see section <a href="cs_4.8.1.html#4.8.1">Components of a World</a>). +(see section <a href="cs_4.9.1.html#4.9.1">Components of a World</a>). </p> <hr size="1"> <table cellpadding="1" cellspacing="1" border="0"> Modified: CS/trunk/docs/html/manual/cs_4.1.6.html =================================================================== --- CS/trunk/docs/html/manual/cs_4.1.6.html 2006-12-27 21:49:05 UTC (rev 26130) +++ CS/trunk/docs/html/manual/cs_4.1.6.html 2006-12-28 01:29:41 UTC (rev 26131) @@ -62,9 +62,9 @@ <p>In order to compile a Crystal Space application I recommend you look at the howto on compiling an external application. For <small>MSVC</small> 7 and later this -tutorial can be found at See section <a href="cs_4.21.2.html#4.21.2">Creating an External <small>MSVC</small> 7, 7.1 or 8 Application</a>, +tutorial can be found at See section <a href="cs_4.22.2.html#4.22.2">Creating an External <small>MSVC</small> 7, 7.1 or 8 Application</a>, for other environments based on <small>GNU</small> make you can look at -See section <a href="cs_4.21.1.html#4.21.1">Creating an External Crystal Space Application</a>. +See section <a href="cs_4.22.1.html#4.22.1">Creating an External Crystal Space Application</a>. </p> <p>Additionally note that the source for some of these tutorials can be found in the <tt>`CS/apps/tutorials'</tt> directory. There are also a few Modified: CS/trunk/docs/html/manual/cs_4.10.1.html =================================================================== --- CS/trunk/docs/html/manual/cs_4.10.1.html 2006-12-27 21:49:05 UTC (rev 26130) +++ CS/trunk/docs/html/manual/cs_4.10.1.html 2006-12-28 01:29:41 UTC (rev 26131) @@ -11,10 +11,10 @@ --> <head> -<title>Crystal Space: 4.10.1 Lighting</title> +<title>Crystal Space: 4.10.1 MeshObject Concepts</title> -<meta name="description" content="Crystal Space: 4.10.1 Lighting"> -<meta name="keywords" content="Crystal Space: 4.10.1 Lighting"> +<meta name="description" content="Crystal Space: 4.10.1 MeshObject Concepts"> +<meta name="keywords" content="Crystal Space: 4.10.1 MeshObject Concepts"> <meta name="resource-type" content="document"> <meta name="distribution" content="global"> <meta name="Generator" content="texi2html 1.76"> @@ -40,7 +40,7 @@ <body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000"> -<a name="Lighting"></a> +<a name="MeshObject-Concepts"></a> <a name="4.10.1"></a> <table cellpadding="1" cellspacing="1" border="0"> <tr><td valign="middle" align="left">[<a href="cs_4.10.html#4.10" title="Previous section in reading order"> < </a>]</td> @@ -58,190 +58,118 @@ <td valign="middle" align="left">[<a href="cs_Index.html#Index" title="Index">Index</a>]</td> <td valign="middle" align="left">[<a href="cs_abt.html#SEC_About" title="About (help)"> ? </a>]</td> </tr></table> -<h3 class="subsection"> 4.10.1 Lighting </h3> +<h3 class="subsection"> 4.10.1 MeshObject Concepts </h3> - <p><em>Written by Jorrit Tyberghein, <a href="mailto:jor...@gm...">jor...@gm...</a>.</em> </p> -<p>Crystal Space supports three types of lighting: <em>static</em>, -<em>pseudo-dynamic</em> and <em>dynamic</em>. They are different in the ways you -can change their attributes while the engine is running. Static lights cannot -be changed at all, but produce best performance and least memory consumption. -Pseudo-dynamic lights can change their color and brightness, but not their -position. Dynamic lights can also change their position. +<p>In this section a general overview is given of the mesh object plug-in +system and several of the concepts are explained. </p> -<p>In the interest of accuracy, it is actually possible to change the so-called -"unchangeable" attributes of static and pseudo-dynamic lights, but after -doing so, it is necessary to perform time-consuming recalculation of lightmaps -in order for the changes to be reflected in the rendered world. +<a name="SEC282"></a> +<h4 class="subsubheading"> Mesh Object </h4> + +<p>A <em>Mesh Object</em> is what this plug-in system is all about. It is basically +a 3D object that the engine can render. Every mesh object knows how to render +and light itself. Mesh Objects don't control their own position in the engine +though. The engine is responsible for doing that. Mesh Object implementations +must implement the <small>SCF</small> interface <samp>`iMeshObject'</samp>. Every visible mesh +object in the world will implement this interface. Note that from the +perspective of the engine you will always communicate with <samp>`iMeshWrapper'</samp> +instead of <samp>`iMeshObject'</samp>. </p> -<p>Every light has a position in world space coordinates and a current -<em>sector</em>. Every light also has a radius (expressed in squared distance). -This radius indicates where the light levels of the three light tables will -reach zero. +<p>Mesh Objects often also implement one or more additional type specific +interfaces to access the characteristics of that Mesh Object. The engine +itself does not know about these interfaces. It is the responsibility of the +application writer to correctly set up the characteristics of all Mesh Objects +that it uses. These type specific interfaces are usually called +<samp>`iSomethingState'</samp> (replace <em>Something</em> with the appropriate name). </p> -<a name="SEC381"></a> -<h4 class="subsubheading"> Static Lights </h4> +<a name="SEC283"></a> +<h4 class="subsubheading"> Mesh Object Factory </h4> -<p>This section gives a very brief explanation of the static lighting system used -in Crystal Space. <strong>Warning</strong>: <em>Although the basic principle -described here is still valid, much more is going on now. This document needs -to be updated to reflect the current state of the engine.</em> +<p>A <em>Mesh Object Factory</em> is an object from which you can generate Mesh +Object instances. The Mesh Objects generated from a Mesh Object Factory will +inherit some of the characteristics from this factory. Exactly which +characteristics depend upon the Mesh Object Type (see below). Roughly +speaking, there are three possibilities: </p> -<p>Static lighting is based on <em>lightmaps</em>. These are like textures except -that every pixel defines the combined brightness of all lights at its -position. Before the rendering loop starts, these lightmaps are precalculated -so there is little performance loss at runtime, where we only need to blend -texture and lightmap of a polygon. -</p> -<p>Lightmaps are calculated as follows: -</p> <ol> <li> -First initialize all lightmaps to black (or the ambient color). +For some types the factory is really empty and only serves as a stub to create +Mesh Object instances. In that case you would only have to use one factory to +generate all your Mesh Objects of that type. </li><li> -For every light in the world generate a view frustum as seen from the position -of that light. The frustum is defined as a set of 3D polygon or light -patches. Every light patch is clipped against the relevant portals until -nothing remains (light patch becomes empty). Every light patch in this -frustum is in fact a projection of the light on the normal polygons. It is in -that area that we need to update the lightmap for every polygon. +In other cases the factory contains default values for some characteristics +that are copied to all Mesh Objects created from that factory. In that case +you can decide to use one factory and change the settings before creating new +instances. Or (for convenience) you can create several factories with default +values that you use often and create Mesh Objects from the factory of choice. </li><li> -For every polygon that was hit, cast beams from the light to every lightmap -point on the polygon (lightmap points are often defined every 16 by 16 texels -although you can change this value if desired). We know that in principle the -beam of light should reach the polygon since the light patch gives the -boundary of where the light can reach the polygon. But the frustum was -generated ignoring Things. So it is possible that there is a Thing blocking a -specific beam of light. We need to test for that. - -</li><li> -If there is a successful hit then calculate the distance between the light and -the point on the polygon and update the intensity there. +In still other cases the factory actually contains the characteristics used by +all Mesh Objects created from it. Changing the factory characteristics will +actually modify the characteristics for all Mesh Objects instantly. In this +case you will have to use a separate factory for all Mesh Objects sharing the +same characteristics. </li></ol> -<p>To create the three lightmaps for every polygon a 2D bounding box in texture -space is calculated. This defines a rectangle that overlaps with the texture -on the polygon and is correctly aligned with it (so that every 16 by 16 texel -grid has one lightmap position). A consequence of this is that rotated -textures can waste a lot of lightmap space. For example, see the following -polygon: +<p>Which of the possibilities is selected by some Mesh Object type depends on the +type. You'll have to look it up in the respective documentation for that type. +Mesh Object Factories implement the <small>SCF</small> interface +<samp>`iMeshObjectFactory'</samp>. Note that from the +perspective of the engine you will always communicate with +<samp>`iMeshFactoryWrapper'</samp> instead of <samp>`iMeshObjectFactory'</samp>. </p> -<p><img src="usingcs/lighting/light1.png" alt="usingcs/lighting/light1"> +<p>Mesh Object Factories often implement one or more additional type specific +interfaces to access the characteristics of that Mesh Object Factory. The +engine itself does not know about these interfaces. It is the responsibility +of the application writer to correctly set up the characteristics of all Mesh +Objects Factories that it uses. These type specific interfaces are usually +called <samp>`iSomethingFactoryState'</samp> (replace <em>Something</em> with the +appropriate name). </p> +<a name="SEC284"></a> +<h4 class="subsubheading"> Mesh Object Type </h4> -<p>And assume that the texture is aligned horizontally. Then we would need a -lightmap of the following size: +<p>The <em>Mesh Object Type</em> describes a specific kind of Mesh Object plug-in. +For example, Crystal Space supports several types of Mesh Objects: particle +system, ball, terrain, genmesh, etc. The Mesh Object +Type corresponds directly to the plug-in itself. It is the class' responsible +for creating all Mesh Object Factories. Mesh Object Types implement the +<small>SCF</small> interface <samp>`iMeshObjectType'</samp>. </p> -<p><img src="usingcs/lighting/light2.png" alt="usingcs/lighting/light2"> +<p>Some Mesh Object Types implement the <small>SCF</small> interface <samp>`iConfig'</samp>. In +this case, you can use this interface to query all run-time options that are +valid for that type. </p> +<a name="SEC285"></a> +<h4 class="subsubheading"> Loaders </h4> -<p>Note also, that the texture in the texture cache will have that size. +<p>In addition to the functionality for the Mesh Objects themselves, many Mesh +Object Types support two implementations of the <small>SCF</small> interface +<samp>`iLoaderPlugin'</samp>. By implementing this, these plug-ins can be used +directly by the standard Crystal Space map file loader. There is a loader for +the Mesh Object Factory and a loader for the Mesh Object itself. The Mesh +Object plug-in itself doesn't know about these loader plug-ins. In fact, you +can even write different loader plug-ins for the same Mesh Object Type if you +so desire. </p> -<a name="SEC382"></a> -<h4 class="subsubheading"> Pseudo-Dynamic Lights </h4> +<a name="SEC286"></a> +<h4 class="subsubheading"> Responsibilities </h4> -<p>The pseudo-dynamic lighting system is an extension to the static lighting -system described above. Pseudo-dynamic lights can not move but you can change -the intensity or color. When some light is made pseudo-dynamic (a simple -flag) the processing is a bit different. The shadow-computation remains the -same but every polygon that is hit by the pseudo-dynamic light needs to have -separate lightmaps for every pseudo-dynamic light that hits the polygon. So -in the end all the polygons that are only hit by static lights have just one -lightmap (for the three tables) for all static lighting information. Every -polygon that is hit by one or more pseudo-dynamic lights will have one or more -extra lightmap tables for every pseudo-dynamic light and one extra for all -static lights. This information is then added together to result in the final -lightmap table that can then be used by the texture cache routine (as -explained earlier). +<p>As mentioned above Mesh Objects only know how to render themselves and how to +update lighting information. The engine is responsible for deciding when to +draw and when to update. So basically, the Mesh Objects control the <em>how</em> +while the engine controls the <em>when</em>. This is not completely true, +though. The Mesh Object implementation itself must do some parts of the +visibility testing on its own. For example, far plane clipping, and testing if +the bounding box of the object is visible on screen are all the responsibility +of the Mesh Object (but it can use the engine for help on calculating these +things). </p> -<p>The lightmaps for the pseudo-dynamic lights are stored without the strength of -the light. So where the light shines brightest the value in the lightmap will -be 255, and where it shines least bright the value will be 0. When combining -all pseudo-dynamic lightmaps and the static lightmap the strength of every -light will be multiplied with the distance value to result in the real -lightmap value. This also implies that there is only one extra lightmap for -every polygon/pseudo-dynamic light because the shadow information (which is -basically what is represented in pseudo-dynamic lightmaps) is the same for all -three light-tables. -</p> -<p>Here are some performance considerations for pseudo-dynamic lighting. There -is a memory penalty for every polygon that is hit by some pseudo-dynamic -lighting because extra lightmaps need to be created. So if you use no -pseudo-dynamic lighting you will suffer no penalty but if you use a very large -pseudo-dynamic light (with a large radius) it will probably hit a large number -of polygons and you will have a considerable increase in memory requirements. -</p> -<p>There is also a performance penalty whenever the intensity of a pseudo-dynamic -light changes. This is because all the textures for the polygons that are hit -by the pseudo-dynamic light need to be recalculated (they are removed from the -texture cache). -</p> -<p>If the intensity of a pseudo-dynamic light does not change there is no -performance hit at all. -</p> -<a name="SEC383"></a> -<h4 class="subsubheading"> Dynamic Lights </h4> -<p>Crystal Space also supports true dynamic lights. These are rendered atop the -normal lightmaps as explained above and support colors and limited shadows. -</p> -<a name="SEC384"></a> -<h4 class="subsubheading"> Shadow Calculation </h4> - -<p>The algorithm to see if a given beam reaches a specific point on some polygon -works as follows. The beam is described as two vertices (<em>start</em> and -<em>end</em>): -</p> -<ol> -<li> -Start at the "sector" of the light. - -</li><li> -If the current sector is equal to the sector of the polygon then there is a -hit, since all polygons of a sector are completely visible from anywhere in a -sector. - -</li><li> -Otherwise, if the light is not in this sector, the beam could reach this -sector through a portal. Since the beam certainly ends at the polygon (this -is given, the start and end vertices define a beam that will--if not -blocked--reach the polygon) and the beam passed through portals to reach here -then the beam hits the polygon. So perform the following steps: - -<ol> -<li> -Determine which polygon of the current sector intersects with the beam. - -</li><li> -If the polygon is on the same plane as the destination polygon then there is a -hit. The reason this is true has to do with the fact that the lightmaps are -slightly bigger than what is really needed. Bilinear interpolation is used to -finally light the polygon and it has to be able to correctly interpolate at -the boundaries of the polygon as well. - -</li><li> -If the polygon that is hit is a portal then recursively continue with the -following sector. If the recursive calls returns a hit then we have a hit. - -</li><li> -If the polygon is not a portal there is no hit so return from the algorithm -(the beam of light does not reach the polygon). -</li></ol> - -</li><li> -In all cases where a hit occurred according to the previous steps, arrive at -this step to check if there are no Things blocking the beam. For every Thing -in the current sector check if the beam intersects with one of the polygons of -the Thing. If so then there is no hit. Otherwise there is a hit. -</li></ol> - - -<p>A similar algorithm is used for Things. -</p> <hr size="1"> <table cellpadding="1" cellspacing="1" border="0"> <tr><td valign="middle" align="left">[<a href="cs_4.10.html#4.10" title="Previous section in reading order"> < </a>]</td> Added: CS/trunk/docs/html/manual/cs_4.10.10.html =================================================================== --- CS/trunk/docs/html/manual/cs_4.10.10.html (rev 0) +++ CS/trunk/docs/html/manual/cs_4.10.10.html 2006-12-28 01:29:41 UTC (rev 26131) @@ -0,0 +1,383 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html401/loose.dtd"> +<html> +<!-- Created by texi2html 1.76 --> +<!-- +Written by: Lionel Cons <Lio...@ce...> (original author) + Karl Berry <ka...@fr...> + Olaf Bachmann <oba...@ma...> + and many others. +Maintained by: Many creative people <de...@te...> +Send bugs and suggestions to <us...@te...> + +--> +<head> +<title>Crystal Space: 4.10.10 Terrain Mesh Object</title> + +<meta name="description" content="Crystal Space: 4.10.10 Terrain Mesh Object"> +<meta name="keywords" content="Crystal Space: 4.10.10 Terrain Mesh Object"> +<meta name="resource-type" content="document"> +<meta name="distribution" content="global"> +<meta name="Generator" content="texi2html 1.76"> +<meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> +<style type="text/css"> +<!-- +a.summary-letter {text-decoration: none} +pre.display {font-family: serif} +pre.format {font-family: serif} +pre.menu-comment {font-family: serif} +pre.menu-preformatted {font-family: serif} +pre.smalldisplay {font-family: serif; font-size: smaller} +pre.smallexample {font-size: smaller} +pre.smallformat {font-family: serif; font-size: smaller} +pre.smalllisp {font-size: smaller} +span.sansserif {font-family:sans-serif; font-weight:normal;} +ul.toc {list-style: none} +--> +</style> + + +</head> + +<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000"> + +<a name="MeshObject-TerrFunc"></a> +<a name="4.10.10"></a> +<table cellpadding="1" cellspacing="1" border="0"> +<tr><td valign="middle" align="left">[<a href="cs_4.10.9.html#4.10.9" title="Previous section in reading order"> < </a>]</td> +<td valign="middle" align="left">[<a href="cs_4.10.11.html#4.10.11" title="Next section in reading order"> > </a>]</td> +<td valign="middle" align="left"> </td> +<td valign="middle" align="left">[<a href="cs_4.html#4." title="Beginning of this chapter or previous chapter"> << </a>]</td> +<td valign="middle" align="left">[<a href="cs_4.10.html#4.10" title="Up section"> Up </a>]</td> +<td valign="middle" align="left">[<a href="cs_5.html#5." title="Next chapter"> >> </a>]</td> +<td valign="middle" align="left"> </td> +<td valign="middle" align="left"> </td> +<td valign="middle" align="left"> </td> +<td valign="middle" align="left"> </td> +<td valign="middle" align="left">[<a href="index.html#SEC_Top" title="Cover (top) of document">Top</a>]</td> +<td valign="middle" align="left">[<a href="cs_toc.html#SEC_Contents" title="Table of contents">Contents</a>]</td> +<td valign="middle" align="left">[<a href="cs_Index.html#Index" title="Index">Index</a>]</td> +<td valign="middle" align="left">[<a href="cs_abt.html#SEC_About" title="About (help)"> ? </a>]</td> +</tr></table> +<h3 class="subsection"> 4.10.10 Terrain Mesh Object </h3> + +<p><em>Written by Jorrit Tyberghein, +(<a href="mailto:jor...@gm...">jor...@gm...</a>).</em> +</p> +<p>This mesh object represents a landscape engine. The basic idea is that +the entire landscape is represented by a two dimensional heightmap. +This heighmap typically comes from a heightmap image file but it can also +come from other sources. +</p> +<p>It features: +</p><ul> +<li> +Automatic lod. +</li><li> +Splatting: having multiple detail materials selected with a material palette +and smooth transitions between the different materials. +</li><li> +Static precalculated lighting with shadows. +</li><li> +Dynamic lighting using bumpmapping and similar techniques. +</li></ul> + +<a name="SEC327"></a> +<h4 class="subsubheading"> Basic Structure </h4> + +<p>The following <small>SCF</small> class names are used (for <code>csLoadPlugin</code>): +</p> +<ul> +<li> +Type plugin: <code>crystalspace.mesh.object.terrain.bruteblock</code> +</li><li> +Loader plugin: <code>crystalspace.mesh... [truncated message content] |