Curved Spaces

Revision History

3.2 29 Oct 2009

Minor user interface improvements.

28 Oct 2009

Set tiling radius and drawing radius according to the SpaceType, to allow deeper tilings in flat spaces than in hyperbolic ones.

28 Oct 2009

Added spaceship to mark user's position and orientation in the manifold.

26 Oct 2009

(Win) Simplified loading of Open GL entry points.

21 Sep 2009

(Mac) Added workaround for Mac OS 10.6 OpenGL performance issue when fog is enabled. [This issue disappared when Curved Spaces moved to programmable shaders (OpenGL 2.0), and the workaround has been removed.]

20 Sep 2009

(Mac) Migrated NSString literals with UTF-8 to newer, simpler format.

20 Sep 2009

Rewrote menu translation code for Mac OS 10.6 compatibility.

17 May 2009

Moved responsibility for requesting a display redraw from platform-dependent code to platform-independent code.

Minor changes for OpenGL ES compatibility.

4 May 2009

Minor maintenance on Win32 user interface

3.1 22 Apr 2009

Reorganized drawing code to use Vertex Buffer Objects instead of display lists, because displays lists are deprecated in standard OpenGL and don't exist at all in OpenGL ES. New drawing code almost doubles the frame rate for large hyperbolic tilings (e.g. from 96fps to 186fps for the default scene) on current hardware. Note to self: glMultiDrawArrays() turned out to be a performance disaster.

Replaced OpenGL quads with generic OpenGL meshes.

Added data persistence ("user prefs" on Mac, "registry keys" on Windows) so KaleidoTile now remembers the multisampling ("Smooth Edges") setting from a previous session.

10 Feb 2009

Simplified default language initialization on Mac OS X, eliminating LanguageCode.strings files.

28 Jan 2009

Vertex shader avoids negative fog coordinate, which the MacBook OpenGL implementation would take the absolute value of.

3.0.5 9 Nov 2008

Trivial tidying of code.

Cosmetic improvements to user interface.

17 Oct 2008

Avoids calling ErrorMessage() when the OpenGL context is active.

8 Oct 2008

Provides a clear explanation if the application gets separated from its supporting files.

4 Sep 2008

Re-organized internationalization paradigm so that

  • for each language, a single platform-independent file contains all localized strings and
  • the Windows version no longer needs separate .rc and .dll files for each language
  • (the Mac OS X version was already relieved of its language-specific NIB files at the previous revision).

Suspends continuous redraw when display is static.

3.0.4 4 Aug 2008

Re-organized internationalization paradigm on Mac OS X, to avoid maintaining multiple copies of the NIB file.

Added Japanese, thanks to Tatsu Takeuchi.

3.0.3 8 May 2007

(Win) Added Copy Image and Save Image… that work correctly with multisampling.

3.0.2 5 Apr 2007

Minor menu reorganization.

Added technical FAQs to website.

(Mac) Modified image copying code to accommodate Mac OS 10.3.9.

(Win) Revised error messages to refer to technical FAQ.

3.0.1 6 Feb 2007

French added, thanks to Roland Lehoucq.

For consistency with the Torus Games, double-click as well as single-click works to exit navigational mode.

Documentation upgraded to HTML 4.0.1.

Discontinued Win95 version.

Fixed bug: Avoids calling glDisable() for unsupported features. Thanks to Paul Chavez for helping track this down.

3.0 8 Nov 2006

MacOS X version added.

Extensive internal re-organization to isolate platform-independent code from UI.

Help Book written.

Spinning Earth (as in Curved Spaces 1) added, with level-of-detail rendering.

Texturing respects aspect ratio to avoid "texture creep".

2.0 20 Jun 2006

Faster tiling algorithm: replaced O(n²) algorithm with O(n log n) algorithm.

Faster rendering algorithm: 2-3 times faster.

Smoother rendering algorithm: cells added and removed on a frame-by-frame basis.

More flexible fog algorithm: automatically adapts to depth of tiling.

Uses programmable vertex shader to move fog computation from CPU to GPU.

Walls of fundamental cell may be fully closed, fully open or anywhere in between.

Vertex figures displayed upon demand.

Clifford parallels displayed upon demand (in spherical spaces).

1.0 ~2000

Original Curved Spaces 1.0 release.