b82d808078f97562e90aa65c97aee91795a76915
[xscreensaver] / hacks / bubbles.README
1 First of all, you should read and possibly change the options in
2 bubbles.h.  Things should work without you having to change anything.
3
4 Most of the stuff below is of no use to you if you do not have the
5 XPM library and thus cannot use rendered bubbles.  The same goes for
6 monochrome displays, whether you have XPM or not.
7
8 The most interesting #define here is BUBBLES_IO.  If this is set then
9 the -file and -directory options become available to you, which means
10 that you can use bubbles with the program other than just the one that
11 is used by default (see below).  The problem is that there is code in
12 the routines that implement this which arenot portable across the
13 various flavours of UNIX.  Therefore, this #define is not set out of
14 the box.  Chances are that it will work for you fine, however.  I have
15 personally seen it work under Linux 1.3.x and Solaris 2.x.  IRIX has
16 problems, from what I hear.  If you do need to hack the code in order
17 to get these features to work, please send e-mail to the address at
18 the bottom of this file and detail your changes.  They will be
19 incorporated in a future release.  
20
21 If you are compiling with the XPM library you have the option of
22 putting in or leaving out a "default" bubble in your binary, i.e. if
23 no -file or -directory options are specified on the command line then
24 this bubble will be used.  Things are setup to include this by
25 default, so that people can happily run the program without there
26 being any compulsory options.  If you use very large bubbles or are
27 low on memory you might like to take the option of not compiling in
28 the default bubble and thus saving some space should you wish to use
29 more than one bubble (to make life more interesting, or whatever).
30 This can be done by removing the comments around #define
31 NO_DEFAULT_BUBBLE in bubbles.h.  
32
33 If you are hacking the bubbles code then you might like to switch on
34 extra checks and messages with the DEBUG flag in bubbles.h, but
35 otherwise you can leave it commented out.  The sanity checks enables
36 there will slow things down.
37
38 There are also some configuration options to help you compile and run
39 bubbles properly.  These are explained in bubbles.h.  All changes
40 affecting portability will end up in here.  If you need to change
41 anything to get bubbles to compile on your system, please tell me what
42 they are.
43
44 Apart from the source files, there are also some other directories
45 here which contain things you might use if loading bubbles at runtime
46 or developing new ones :
47
48
49 bubbles-tools/
50                  Contains several perl scripts to help you make new
51 sets of bubbles easily.  povbubbles runs povray on a scene description
52 file and outputs a series of XPM files which you can then postprocess
53 if need be.  To turn these files into a new instance of the default
54 bubble source file bubbles_default.c, use the script bubblestodefault.
55 To put all the files together into a single file which can be loaded
56 with the -file or -directory options (if available), use the script
57 bubblestofile.
58
59         Read the comments at the top of each script to find out more.
60
61 bubbles-samples/
62                  This directory contains some compressed bubbles
63 files which can be used with the -directory option (or the -file
64 option on individual files there).  The files will be automatically
65 uncompressed before use.
66
67 bubbles-sources/
68                  The povray sources used to make some of the bubbles
69 in the bubbles-samples directory.  You can use these as templates for
70 making new bubbles.
71
72
73 I'm not much good with povray so the examples are probably pretty
74 boring.  If you make some nice bubbles yourself, I'd like to see them.
75 Send your _sources_ to J.Macnicol@student.anu.edu.au (please don't
76 fill my inbox with XPM files, there is a limit on the amount of
77 waiting e-mail I can have).
78
79
80 Enjoy.
81
82
83 --
84 James Macnicol
85 e-mail: J.Macnicol@student.anu.edu.au
86 http://goblet.anu.edu.au/~m9305357/home.html