LinkExchange Member | Free Home Pages at GeoCities |
Note! I removed all answers regarding to versions older than 0.10. This is the latest official release and you should not use anything older. Not 0.08 because it is hopelessly outdated and certainly not any of the 0.09 releases because they are beta.
Where can I download Crystal Space?
A.
The official version (0.10) can be downloaded from:
I downloaded Crystal Space and it won't run!
A1.
Have you also downloaded some data files? Crystal Space needs a ZIP
archive containing the world file and textures. There are several levels
that you can download from the same place as the source archive (you only
need to download one).
A2.
Crystal Space requires an 8, 15, or 16-bit display and will not
work on other displays.
A3.
Several people coudn't run Crystal Space because they downloaded an
executable and it didn't seem to be a valid executable. It turned out that
the problem was that their browser removed the 'gz' extension from the
file while downloading without decompressing it. The executables that you
can downloaded are compressed with 'gzip' and you first need to decompress
them before you can run them.
Normally Crystal Space will just use all the data from a ZIP file and start
immediatelly. But sometimes it starts recalculating stuff. Why is this?
A.
Occasionally it can happen that the internal representation of data
is a little different on other systems. The difference is not noticeable
while running but it is there in any case. So if you use a ZIP file
generated on one system it can happen that Crystal Space does not
recognize some of the precomputed stuff as valid. In that case it will
automatically recalculate them and replace them with versions which
are correct for the native system. If this happens, don't worry. Startup
may be a little slower but this is only the first time this happens.
One example of this happening is when you transfer a ZIP file from a
DOS/DJGPP version to a DOS/Watcom version of Crystal Space.
If I disable lighting with the -nolight option will Crystal Space run
faster? (question valid starting with 0.06)
A1.
No. There is no speed penalty for lighting at render time. All lighting
is done at startup and disabling this startup calculation has no effect
on the speed of the renderer afterwards.
A2.
However, since the -nolight option automatically turns of colored
lighting you will get a speed increase in the texture cache. This
means that every new texture will be loaded into the cache faster
which has a positive influence on the overal speed of the engine
(but not on the frame rate of any individual frame).
(NOTE! This is no longer true for recent 0.07 versions of Crystal
Space. You have to explicetely set MIXLIGHTS to nocolor to disable
colored lighting and get the speed increase).
I don't have lots of memory. Can I still run Crystal Space?
Crystal Space is really slow on my computer. Can't something be
done about this?
I want to create textures for Crystal Space. What palette should
I use? How big should I create the textures? What format can I use?
I'd like to contribute to Crystal Space. What can I do?
How does Crystal Space work?
Who is doing what currently?
I want to write a game/MUD/RPG/... with Crystal Space? Can
I do this? Will you help me? ...
A1.
Well, that depends. There are several things that you can do to
decrease memory usage. First of all, version 0.06 of Crystal Space
is already a lot more efficient than previous versions so things
may already work.
A2.
If this is still not enough you can decrease the size of the texture
cache with the -cache
A3.
Using a low resolution also decreases the memory usage. Crystal Space
uses a Z-buffer containing long (4-byte) values with the same size
as the display. So a display of 640x480 uses a Z-buffer of 1228800
bytes!
A4.
Another thing you can do to decrease memory usage is the -nocolor
option (or COLOR=no in cryst.cfg) (starting with 0.06). This option
disables colored lighting which saves a considerable amount of
memory proportional to the number of polygons in the world file.
If you have a recent version 0.07, COLOR and -nocolor are no longer
supported. For that version you have to set 'MIXLIGHTS=nocolor'
in the cryst.cfg file (or in the 'cryst.cfg' file which can be in the
ZIP file you are loading).
A5.
If you are still low on memory there is only one thing you can do:
decrease the complexity of the world. For every polygon in
the world there is a lot of memory used (the lightmaps for
example). If you just want to try the engine you can run Crystal
Space with some of the simpler worlds (like 'perf.zip', 'rgb.zip',
or 'simple.zip'). 'perf.zip' is a good choice because it is not
too complex and it contains most of the features Crystal Space has
(since it is designed for performance testing).
A1.
Crystal Space is a 6DOF engine. It needs to do semi-perspective
correct texture mapping to get a nice display and this is slow. Compare
Crystal Space to Quake and you will see that Crystal Space is not
terribly slow (it is slower but only by a few frames per second on
my Pentium 90). You can expect that Crystal Space will probably
need the same kind of computer as Quake: at least a Pentium
or a very fast 486 with a floating point coprocessor.
On my computer (a Pentium 90 with 16M memory) and a screen size
of 640x480 I get about 6-8 FPS with no assembler and 7-11 FPS
with assembler.
A2.
Of course I'm always glad to accept any code that would speed up
Crystal Space. Please try.
A3.
Many things are being done currently to try to speed up Crystal
Space. Hardware acceleration is one important area but there are
others.
A1.
The palette does not really matter because Crystal Space tries
to calculate the most optimal palette given a set of input textures.
But there are some things to keep in mind. Try to get the number
of different colors as low as possible without sacrificing for
quality and if you design a set of textures that are meant to be
used together it is always best to let them use a similar palette.
This will make it easier for Crystal Space to calculate a good
palette. If you run Crystal Space in truecolor mode (15/16-bit
mode) and with private colormaps then there is actually no need
anymore for using similar palettes.
A2.
The width and height of a texture must be a power of 2 (8, 16, 32,
64, ...). That's about the only restriction. Textures need not
be square (but it is probably easier to keep them square). You
can have textures with sizes like 16x256.
A3.
Crystal Space currently uses GIF by default but it can also read
TGA, PNG and JPG (if enabled in the makefile).
A4.
Unless a texture is not meant for tiling you should make sure that
it can be tiled. This means that if you put a number of textures
next to each other of above each other the boundaries of the
'tiles' should seemlessly integrate with each other.
Of course, it is perfectly possible to create textures that are
specifically drawn for untiled usage. An example would be a
texture representing a computer keyboard. This texture will
probably not be tiled (it would be a little strange).
A5.
I have some imaging tools (like XV and ImageMagick) so I can do
a lot with any textures I get. If you can't output to GIF, no
problem, I can read almost any image format. If the size is not
a power of two I will scale them. If the image uses too many
colors I can reduce the number of colors...
A.
Have a look at the Todo file. I try to keep a fairly comprehensive
list of missing features and bugs there. If there is something there
that you find interesting and nobody else is working on it (check
the Who Is Doing What file).
Even if someone else is working on some feature you may still have some
unique ideas that you want to share.
In any case you should contact me so that I can coordinate the
efforts and avoid duplicate work.
A1.
This is a short question with a long answer. Two documents
to get you started are 'document.txt' and 'cam_matr.txt' (both
included with Crystal Space). 'document.txt' contains a description
of how Crystal Space uses the portal system and how lighting works.
'cam_matr.txt' is a document explaining how the camera system is
used in Crystal Space (included starting with version 0.06).
'document.txt' assumes that you have some knowledge about matrices,
and 3D mathematics in general. 'cam_matr.txt' gives more information
about matrices and transformations so you can read that file first.
A2.
Starting with version 0.09 there is online documentation in the
form of automatically generated HTML files (using Doc++).
You can download these generated documentation from the same place
as the beta archive or you can generate them yourselves using
'make -f makefile.??? doc'.
A3.
If you still need more information (after all, not everything is
explained in those two documents) just mail me and I will answer
you as soon as I can.
A.
Check the Who Is Doing What file to get a list
of all people that I know who are doing something for Crystal Space.
A1.
The ultimate purpose of Crystal Space is that it will become a useable
and powerful engine for writing games and other similar programs.
The current version of Crystal Space (0.10 or 0.11) is not yet ready for this.
But you can contribute to Crystal Space to make this happen!
I'm willing to help anyone trying to use Crystal Space is another
project. However, because of time constraints I will only do development
and management of the general Crystal Space engine. Specific features
and game development will have to be done by someone else (maybe this
changes in future if I will ever acquire more of that precious resource:
TIME, but I doubt it). Of course, any enhancements to Crystal Space
will undoubtedly benefit all developers using Crystal Space so this
should not really be a problem.
A2.
Since Crystal Space is now using the LGPL licensing policy you can
make commercial or shareware products using it. See the file COPYING
which you can find in the source archive for more details about what
you can and cannot do.
Get your own Free Home Page