Talk:Freescape

From Wikipedia, the free encyclopedia
Jump to: navigation, search
WikiProject Video games (Rated Start-class, Mid-importance)
WikiProject icon This article is within the scope of WikiProject Video games, a collaborative effort to improve the coverage of video games on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.
Start-Class article Start  This article has been rated as Start-Class on the project's quality scale.
 Mid  This article has been rated as Mid-importance on the project's importance scale.
 

Merge of Freescape and Ian Andrew[edit]

I've suggested that Ian Andrew be merged into the history section of this article as the Ian Andrew article is extremely short.

I disagree, short only means it should be expanded. --Falcorian (talk) 15:12, 27 June 2006 (UTC)

Not licensed?[edit]

What about the construction kits then? It could be used to create stand alone titles. "The great thing about the system is that it creates stand-alone programs so you can load them without having to reload 3D Kit."[1] // Liftarn

How did it work?[edit]

How did it work on a technical level? Did it use depth sorting? Or did it use some kind of BSP approach? Shinobu 16:41, 2 September 2007 (UTC)

From using the 3d Construction Kit, objects are usually built from 3d primitives such as cubes and prisms. You can place abitrary lines and polygons of up to six sides, but constructing scenes from them uses quite a lot of memory compared to using the 3d primitives.
Playing the games and using the kit shows that Freescape (on 80x86 at least) actually has a quite low-precision polygon drawer, which frequently causes polygons that should exactly meet up to not quite join, leaving pixel seams along edges. Observing those provides further evidence of the fact that many objects are composed of the primitives as often faces that should be hidden by contact (e.g. where a prism sits exactly on top of a cube) become slightly visible.
Furthermore, occasional sorting errors suggest that the primitives (3d and 2d) are being sorted and drawn with the painter's algorithm. In any case, it'd be surprising if they were using BSP. First of all, it doesn't fit very nicely with constructing a scene from 3d primitives and secondly it hadn't really made it's way from academic papers into the thought processes of people writing realtime games yet.
It's likely, given the time and in the environment (i.e. pre-internet) that Freescape was constructed that the authors just invented a lot of the techniques themselves. That would explain the low precision polygon drawing (most people when writing their first code don't consider it obvious that you need to think in terms of sampling a space defined by real numbers and just write polygon fillers as an extension of Bresenham lines or other algorithms that discard subpixel accuracy), reasonably inventive solutions to things like collision detection (all collisions are versus the bounding boxes of objects) and strange limitations (3d primitives may not be freely rotated, which probably saves almost nothing in drawing and collision costs).
All this is original research, of course, and so not suitable for the body of this article. I'm pretty sure that it would be possible to make a better-than-Freescape engine for the same hardware for someone who works with 3d rasterisation now, as the distribution of ideas and level of community experience is just several orders of magnitude better than it was in the mid-80s. Nevertheless, Freescape is a technical marvel and an incredible achievement — evidenced by its lack of serious competition if nothing else.
By the way, I'm user ThomasHarte but don't have my login details with me and am not using my own PC, so I'll have to sign this with an IP for now: 80.177.129.250 (talk) 10:17, 28 February 2008 (UTC)
Hi, just to say: I did make the above comment. — ThomasHarte (talk) 20:23, 28 February 2008 (UTC)
Are you this [2] Thomas Harte? 'Nuff respect if you are. -Ashley Pomeroy (talk) 08:54, 16 April 2008 (UTC)