diff options
Diffstat (limited to 'ksokoban/images')
36 files changed, 740 insertions, 0 deletions
diff --git a/ksokoban/images/Makefile.am b/ksokoban/images/Makefile.am new file mode 100644 index 00000000..f2af8b9f --- /dev/null +++ b/ksokoban/images/Makefile.am @@ -0,0 +1,88 @@ + +noinst_DATA = data.c +bin2c_SOURCES = bin2c.c +bin2c_LDFLAGS = $(all_libraries) +bin2c_LDADD = $(LIBZ) + +noinst_PROGRAMS = bin2c + +test: + x-povray +W200 +H200 [email protected] [email protected] +p +d + rm -f [email protected] + +POVFILES=floor_common.inc goal.pov halfstone_1.pov halfstone_2.pov halfstone_3.pov halfstone_4.pov man.pov man_common.inc object.pov saveman.pov stone_1.pov stone_2.pov stone_3.pov stone_4.pov stone_5.pov stone_6.pov stone_common.inc treasure.pov + +IMAGES=goal.png halfstone_1.png halfstone_2.png halfstone_3.png halfstone_4.png man.png object.png saveman.png stone_1.png stone_2.png stone_3.png stone_4.png stone_5.png stone_6.png treasure.png starfield.png + +EXTRA_DIST = $(POVFILES) $(IMAGES) +CLEANFILES = data.c + +RESOLUTION=+W96 +H96 +STONE_RESOLUTION=+W96 +H48 +HALFSTONE_RESOLUTION=+W48 +H48 + +# no antialias +#ANTIALIAS= + +# normal antialias +#ANTIALIAS=+A + +# slow antialias +ANTIALIAS=+A0 +R9 + +POVRAY=povray $(ANTIALIAS) + +data.c: $(IMAGES) bin2c + list=""; for i in $(IMAGES); do list="$$list $(srcdir)/$$i"; done; \ + ./bin2c "" $$list + +############################################################################ +# Povray rules to generate images +# +#halfstone_1.png: halfstone_1.pov stone_common.inc +# $(POVRAY) $(HALFSTONE_RESOLUTION) +I$< +O$@ +# +#halfstone_2.png: halfstone_2.pov stone_common.inc +# $(POVRAY) $(HALFSTONE_RESOLUTION) +I$< +O$@ +# +#halfstone_3.png: halfstone_3.pov stone_common.inc +# $(POVRAY) $(HALFSTONE_RESOLUTION) +I$< +O$@ +# +#halfstone_4.png: halfstone_4.pov stone_common.inc +# $(POVRAY) $(HALFSTONE_RESOLUTION) +I$< +O$@ +# +# +#stone_1.png: stone_1.pov stone_common.inc +# $(POVRAY) $(STONE_RESOLUTION) +I$< +O$@ +# +#stone_2.png: stone_2.pov stone_common.inc +# $(POVRAY) $(STONE_RESOLUTION) +I$< +O$@ +# +#stone_3.png: stone_3.pov stone_common.inc +# $(POVRAY) $(STONE_RESOLUTION) +I$< +O$@ +# +#stone_4.png: stone_4.pov stone_common.inc +# $(POVRAY) $(STONE_RESOLUTION) +I$< +O$@ +# +#stone_5.png: stone_5.pov stone_common.inc +# $(POVRAY) $(STONE_RESOLUTION) +I$< +O$@ +# +#stone_6.png: stone_6.pov stone_common.inc +# $(POVRAY) $(STONE_RESOLUTION) +I$< +O$@ +# +# +#treasure.png: treasure.pov goal.pov floor_common.inc +# $(POVRAY) $(RESOLUTION) +I$< +O$@ +# +#object.png: object.pov floor_common.inc +# $(POVRAY) $(RESOLUTION) +I$< +O$@ +# +#man.png: man.pov man_common.inc floor_common.inc +# $(POVRAY) $(RESOLUTION) +I$< +O$@ +# +#saveman.png: saveman.pov man_common.inc goal.pov floor_common.inc +# $(POVRAY) $(RESOLUTION) +I$< +O$@ +# +#goal.png: goal.pov floor_common.inc +# $(POVRAY) $(RESOLUTION) +I$< +O$@ + diff --git a/ksokoban/images/bin2c.c b/ksokoban/images/bin2c.c new file mode 100644 index 00000000..0dad91d1 --- /dev/null +++ b/ksokoban/images/bin2c.c @@ -0,0 +1,256 @@ +/* + * bin2c - compresses data files & converts the result to C source code + * Copyright (C) 1998-2000 Anders Widell <[email protected]> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +/* + * This command uses the zlib library to compress each file given on + * the command line, and outputs the compressed data as C source code + * to the file 'data.c' in the current directory + * + */ + +#include "../../config.h" + +#include <stdio.h> +#include <stdlib.h> +#include <string.h> + +#ifdef USE_LIBZ +#include <zlib.h> +#else +typedef unsigned char Bytef; +typedef unsigned long uLongf; +#endif + +#define BUFSIZE 16384 /* Increase buffer size by this amount */ + +static Bytef *source=NULL; /* Buffer containing uncompressed data */ +static Bytef *dest=NULL; /* Buffer containing compressed data */ +static uLongf sourceBufSize=0; /* Buffer size */ +#ifdef USE_LIBZ +static uLongf destBufSize=0; /* Buffer size */ +#endif + +static uLongf sourceLen; /* Length of uncompressed data */ +static uLongf destLen; /* Length of compressed data */ + +static FILE *infile=NULL; /* The input file containing binary data */ +static FILE *outfile=NULL; /* The output file 'data.c' */ + +static const char *programName=""; + +/* + * Print error message and free allocated resources + * + */ + +static int +error (msg1, msg2, msg3) + char *msg1; + char *msg2; + char *msg3; +{ + fprintf (stderr, "%s: %s%s%s\n", programName, msg1, msg2, msg3); + + if (infile != NULL) fclose (infile); + if (outfile != NULL) fclose (outfile); + remove ("data.c"); + free (dest); + free (source); + + return 1; +} + +/* + * Replacement for strrchr in case it isn't present in libc + * + */ + +static char * +my_strrchr (s, c) + char *s; + int c; +{ + char *ptr = NULL; + + while (*s) { + if (*s == c) ptr = s; + s++; + } + + return ptr; +} + +#ifdef USE_LIBZ +/* + * NOTE: my_compress2 is taken directly from zlib 1.1.3 + * + * This is for compatibility with early versions of zlib that + * don't have the compress2 function. + * + */ + +/* =========================================================================== + Compresses the source buffer into the destination buffer. The level + parameter has the same meaning as in deflateInit. sourceLen is the byte + length of the source buffer. Upon entry, destLen is the total size of the + destination buffer, which must be at least 0.1% larger than sourceLen plus + 12 bytes. Upon exit, destLen is the actual size of the compressed buffer. + + compress2 returns Z_OK if success, Z_MEM_ERROR if there was not enough + memory, Z_BUF_ERROR if there was not enough room in the output buffer, + Z_STREAM_ERROR if the level parameter is invalid. +*/ +int my_compress2 (dest, destLen, source, sourceLen, level) + Bytef *dest; + uLongf *destLen; + const Bytef *source; + uLong sourceLen; + int level; +{ + z_stream stream; + int err; + + stream.next_in = (Bytef*)source; + stream.avail_in = (uInt)sourceLen; +#ifdef MAXSEG_64K + /* Check for source > 64K on 16-bit machine: */ + if ((uLong)stream.avail_in != sourceLen) return Z_BUF_ERROR; +#endif + stream.next_out = dest; + stream.avail_out = (uInt)*destLen; + if ((uLong)stream.avail_out != *destLen) return Z_BUF_ERROR; + + stream.zalloc = (alloc_func)0; + stream.zfree = (free_func)0; + stream.opaque = (voidpf)0; + + err = deflateInit(&stream, level); + if (err != Z_OK) return err; + + err = deflate(&stream, Z_FINISH); + if (err != Z_STREAM_END) { + deflateEnd(&stream); + return err == Z_OK ? Z_BUF_ERROR : err; + } + *destLen = stream.total_out; + + err = deflateEnd(&stream); + return err; +} +#endif + +int +main (argc, argv) + int argc; + char **argv; +{ + int i; + const char *suffix; +#ifdef USE_LIBZ + int result; +#endif + unsigned j; + char *ptr; + int position; + + programName = argv[0]; + + outfile = fopen ("data.c", "w"); + if (outfile == NULL) { + fprintf (stderr, "%s: can't open 'data.c' for writing\n", argv[0]); + return 1; + } + + suffix = argv[1]; + /* Process each file given on command line */ + for (i=2; i<argc; i++) { + infile = fopen (argv[i], "rb"); + if (infile == NULL) return error ("can't open '", argv[i], "' for reading"); + + /* Read infile to source buffer */ + sourceLen = 0; + while (!feof (infile)) { + if (sourceLen + BUFSIZE > sourceBufSize) { + sourceBufSize += BUFSIZE; + source = realloc (source, sourceBufSize); + if (source == NULL) return error ("memory exhausted", "", ""); + } + sourceLen += fread (source+sourceLen, 1, BUFSIZE, infile); + if (ferror (infile)) return error ("error reading '", argv[i], "'"); + } + fclose (infile); + +#ifdef USE_LIBZ + + /* (Re)allocate dest buffer */ + destLen = sourceBufSize + (sourceBufSize+9)/10 + 12; + if (destBufSize < destLen) { + destBufSize = destLen; + dest = realloc (dest, destBufSize); + if (dest == NULL) return error ("memory exhausted", "", ""); + } + + /* Compress dest buffer */ + destLen = destBufSize; + result = my_compress2 (dest, &destLen, source, sourceLen, 9); + if (result != Z_OK) return error ("error compressing '", argv[i], "'"); + +#else + + destLen = sourceLen; + dest = source; + +#endif + + /* Output dest buffer as C source code to outfile */ + ptr = my_strrchr (argv[i], '.'); + if (ptr != NULL) *ptr = '\0'; + /* use only the file 2name and throw away the path name */ + position = strlen(argv[i]) - 1; + while (position && argv[i][position] != '/') position--; + if (argv[i][position] == '/') position++; + + fprintf (outfile, "static const unsigned char %s_data_%s[] = {\n", argv[i] + position, suffix); + + for (j=0; j<destLen-1; j++) { + switch (j%8) { + case 0: + fprintf (outfile, " 0x%02x, ", ((unsigned) dest[j]) & 0xffu); + break; + case 7: + fprintf (outfile, "0x%02x,\n", ((unsigned) dest[j]) & 0xffu); + break; + default: + fprintf (outfile, "0x%02x, ", ((unsigned) dest[j]) & 0xffu); + break; + } + } + + if ((destLen-1)%8 == 0) fprintf (outfile, " 0x%02x\n};\n\n", ((unsigned) dest[destLen-1]) & 0xffu); + else fprintf (outfile, "0x%02x\n};\n\n", ((unsigned) dest[destLen-1]) & 0xffu); + } + + fclose (outfile); +#ifdef USE_LIBZ + free (dest); +#endif + free (source); + + return 0; +} diff --git a/ksokoban/images/floor_common.inc b/ksokoban/images/floor_common.inc new file mode 100644 index 00000000..a669fd97 --- /dev/null +++ b/ksokoban/images/floor_common.inc @@ -0,0 +1,19 @@ +// Pov-ray image source for ksokoban +// copyright (c) 1998-1999 Anders Widell <[email protected]> + +#declare FloorColour = <114/255, 114/255, 114/255>; + +camera { + orthographic + location <0, 0, -50> + look_at <0, 0, 0> + right <1, 0, 0> + up <0, 1, 0> +} + +light_source { <-5000, 10000, -10000> color rgb <1, 1, 1> } +light_source { <-5000, 10000, -10000> color rgb <1, 1, 1> } + +plane { -z, -2 + pigment { color rgb FloorColour } +} diff --git a/ksokoban/images/goal.png b/ksokoban/images/goal.png Binary files differnew file mode 100644 index 00000000..fcac3f41 --- /dev/null +++ b/ksokoban/images/goal.png diff --git a/ksokoban/images/goal.pov b/ksokoban/images/goal.pov new file mode 100644 index 00000000..ba2fa4a1 --- /dev/null +++ b/ksokoban/images/goal.pov @@ -0,0 +1,34 @@ +// Pov-ray image source for ksokoban +// copyright (c) 1998-1999 Anders Widell <[email protected]> + +#include "floor_common.inc" + +torus { + 0.35, 0.05 + rotate <90, 0, 0> + translate <0,0,2> + pigment { color rgb FloorColour } +} + +cylinder {< 0.35,0,2>, < 10,0,2>, 0.05 pigment { color rgb FloorColour}} +cylinder {<-0.35,0,2>, <-10,0,2>, 0.05 pigment { color rgb FloorColour}} +cylinder {<0, 0.35,2>, <0, 10,2>, 0.05 pigment { color rgb FloorColour}} +cylinder {<0,-0.35,2>, <0,-10,2>, 0.05 pigment { color rgb FloorColour}} + +sphere { + 2*z, 0.3 + + finish { + ambient 0.1 + diffuse 0.3 + reflection .25 + specular 1 + roughness 0.02 + } + interior { + ior 2.4 + } + pigment { color rgbf <0.1, 1, 0.2, 0.8>} + + scale <1,1,0.1> +} diff --git a/ksokoban/images/halfstone_1.png b/ksokoban/images/halfstone_1.png Binary files differnew file mode 100644 index 00000000..267b3e45 --- /dev/null +++ b/ksokoban/images/halfstone_1.png diff --git a/ksokoban/images/halfstone_1.pov b/ksokoban/images/halfstone_1.pov new file mode 100644 index 00000000..e015b666 --- /dev/null +++ b/ksokoban/images/halfstone_1.pov @@ -0,0 +1,17 @@ +// Pov-ray image source for ksokoban +// copyright (c) 1998-1999 Anders Widell <[email protected]> + +#include "stone_common.inc" + +camera { + orthographic + location <0, 0, -50> + look_at <0, 0, 0> + right <1/2, 0, 0> + up <0, 1/2, 0> +} + +object { + HalfStone + texture { StoneTexture translate <0,1,1> } +} diff --git a/ksokoban/images/halfstone_2.png b/ksokoban/images/halfstone_2.png Binary files differnew file mode 100644 index 00000000..96144c60 --- /dev/null +++ b/ksokoban/images/halfstone_2.png diff --git a/ksokoban/images/halfstone_2.pov b/ksokoban/images/halfstone_2.pov new file mode 100644 index 00000000..afc9fda1 --- /dev/null +++ b/ksokoban/images/halfstone_2.pov @@ -0,0 +1,17 @@ +// Pov-ray image source for ksokoban +// copyright (c) 1998-1999 Anders Widell <[email protected]> + +#include "stone_common.inc" + +camera { + orthographic + location <0, 0, -50> + look_at <0, 0, 0> + right <1/2, 0, 0> + up <0, 1/2, 0> +} + +object { + HalfStone + texture { StoneTexture translate <0,2,0> } +} diff --git a/ksokoban/images/halfstone_3.png b/ksokoban/images/halfstone_3.png Binary files differnew file mode 100644 index 00000000..30994f96 --- /dev/null +++ b/ksokoban/images/halfstone_3.png diff --git a/ksokoban/images/halfstone_3.pov b/ksokoban/images/halfstone_3.pov new file mode 100644 index 00000000..d6a53bba --- /dev/null +++ b/ksokoban/images/halfstone_3.pov @@ -0,0 +1,17 @@ +// Pov-ray image source for ksokoban +// copyright (c) 1998-1999 Anders Widell <[email protected]> + +#include "stone_common.inc" + +camera { + orthographic + location <0, 0, -50> + look_at <0, 0, 0> + right <1/2, 0, 0> + up <0, 1/2, 0> +} + +object { + HalfStone + texture { StoneTexture translate <0,3,0> } +} diff --git a/ksokoban/images/halfstone_4.png b/ksokoban/images/halfstone_4.png Binary files differnew file mode 100644 index 00000000..d8137006 --- /dev/null +++ b/ksokoban/images/halfstone_4.png diff --git a/ksokoban/images/halfstone_4.pov b/ksokoban/images/halfstone_4.pov new file mode 100644 index 00000000..4bb286e6 --- /dev/null +++ b/ksokoban/images/halfstone_4.pov @@ -0,0 +1,17 @@ +// Pov-ray image source for ksokoban +// copyright (c) 1998-1999 Anders Widell <[email protected]> + +#include "stone_common.inc" + +camera { + orthographic + location <0, 0, -50> + look_at <0, 0, 0> + right <1/2, 0, 0> + up <0, 1/2, 0> +} + +object { + HalfStone + texture { StoneTexture translate <0,4,0> } +} diff --git a/ksokoban/images/man.png b/ksokoban/images/man.png Binary files differnew file mode 100644 index 00000000..491e7ebf --- /dev/null +++ b/ksokoban/images/man.png diff --git a/ksokoban/images/man.pov b/ksokoban/images/man.pov new file mode 100644 index 00000000..f5d71061 --- /dev/null +++ b/ksokoban/images/man.pov @@ -0,0 +1,5 @@ +// Pov-ray image source for ksokoban +// copyright (c) 1998-1999 Anders Widell <[email protected]> + +#include "floor_common.inc" +#include "man_common.inc" diff --git a/ksokoban/images/man_common.inc b/ksokoban/images/man_common.inc new file mode 100644 index 00000000..87fa7423 --- /dev/null +++ b/ksokoban/images/man_common.inc @@ -0,0 +1,59 @@ +// Pov-ray image source for ksokoban +// copyright (c) 1998-1999 Anders Widell <[email protected]> + +#include "colors.inc" + +blob { + threshold .5 + + sphere { <0, .4, 0>, .2, 1 pigment {Flesh} } // head + + + sphere { <-.04, .42, -.1>, .025, -1 pigment {Flesh} } // left eye hole + sphere { < .04, .42, -.1>, .025, -1 pigment {Flesh} } // right eye hole + + //sphere { <-.04, .42, -.09>, .025, 1 pigment {Flesh} } // left eye + //sphere { < .04, .42, -.09>, .025, 1 pigment {Flesh} } // right eye + + + + cylinder { <0, .415, -.1>, <0, .4, -.11>, .02, 1 pigment {Flesh} } // nose + + + cylinder { <0, .4, 0>, <0, .2, 0>, .075, 1 pigment {Flesh} } // neck + sphere { <0, .4, 0>, .05, -1 pigment {Flesh} } // head- + sphere { <0, .2, 0>, .05, -1 pigment {Flesh} } // shoulder- + + cylinder { <-.2,.2,0>, <.2,.2,0>, .115, .9 pigment {White} } // shoulder + cylinder { <-.1,.1,0>, <.1,.1,0>, .115, .9 pigment {White} } // stomach + cylinder { <-.1, 0,0>, <.1, 0,0>, .115, .9 pigment {White} } // stomach + cylinder { <-.1,-.05,0>, <.1,-.05,0>, .115, 1 pigment {White} } // stomach + cylinder { <-.1,-.05,0>, <.1,-.05,0>, .115, -1 pigment {White} } // stomach + cylinder { <-.1,-.1,0>, <.1,-.1,0>, .115, .9 pigment {Blue} } // waist + + +// Left arm + + cylinder { <-.2,.2,0>, <-.3, 0,0>, .1, 1 pigment {White } } + sphere { <-.2,.2,0>, .1, -1 pigment {White } } // shoulder- + cylinder { <-.3,0,0>, <-.2,-.1,-.1>, .075, 1 pigment {Flesh } } + sphere { <-.3,0,0>, .075, -1 pigment {Flesh } } // arm- + + +// Right arm + + cylinder { < .2,.2,0>, < .3, 0,0>, .1, 1 pigment {White}} + sphere { < .2,.2,0>, .1, -1 pigment {White}} // shoulder- + cylinder { < .3,0,0>, < .2,-.1,-.1>, .075, 1 pigment {Flesh}} + sphere { < .3,0,0>, .075, -1 pigment {Flesh}} // arm- + + // left leg + cylinder { <-.1,-.2,0>, <-.125,-.5,-.025>, .15, 1 pigment {Blue } } + + // right leg + cylinder { < .1,-.2,0>, < .125,-.5,-.025>, .15, 1 pigment {Blue } } + + + scale 0.95 + translate 0.01*y +} diff --git a/ksokoban/images/object.png b/ksokoban/images/object.png Binary files differnew file mode 100644 index 00000000..f6a842d0 --- /dev/null +++ b/ksokoban/images/object.png diff --git a/ksokoban/images/object.pov b/ksokoban/images/object.pov new file mode 100644 index 00000000..813af77f --- /dev/null +++ b/ksokoban/images/object.pov @@ -0,0 +1,36 @@ +// Pov-ray image source for ksokoban +// copyright (c) 1998-1999 Anders Widell <[email protected]> + +#include "floor_common.inc" + +object { + intersection { + plane {-z, 0.3 rotate < 30, 0, 0>} + plane {-z, 0.3 rotate < 30, 60, 0>} + plane {-z, 0.3 rotate < 30, 120, 0>} + plane {-z, 0.3 rotate < 30, 180, 0>} + plane {-z, 0.3 rotate < 30, 240, 0>} + plane {-z, 0.3 rotate < 30, 300, 0>} + + plane {-z, 0.3 rotate <-50, 0, 0>} + plane {-z, 0.3 rotate <-50, 60, 0>} + plane {-z, 0.3 rotate <-50, 120, 0>} + plane {-z, 0.3 rotate <-50, 180, 0>} + plane {-z, 0.3 rotate <-50, 240, 0>} + plane {-z, 0.3 rotate <-50, 300, 0>} + } + + finish { + ambient 0.1 + diffuse 0.3 + reflection .25 + specular 1 + roughness 0.02 + } + interior { + ior 2.4 + } + pigment { color rgbf <1, 0.1, 0.2, 0.8>} + + translate <0, -0.1, 0> +} diff --git a/ksokoban/images/saveman.png b/ksokoban/images/saveman.png Binary files differnew file mode 100644 index 00000000..c859047c --- /dev/null +++ b/ksokoban/images/saveman.png diff --git a/ksokoban/images/saveman.pov b/ksokoban/images/saveman.pov new file mode 100644 index 00000000..df6ad750 --- /dev/null +++ b/ksokoban/images/saveman.pov @@ -0,0 +1,5 @@ +// Pov-ray image source for ksokoban +// copyright (c) 1998-1999 Anders Widell <[email protected]> + +#include "goal.pov" +#include "man_common.inc" diff --git a/ksokoban/images/starfield.png b/ksokoban/images/starfield.png Binary files differnew file mode 100644 index 00000000..e09204be --- /dev/null +++ b/ksokoban/images/starfield.png diff --git a/ksokoban/images/stone_1.png b/ksokoban/images/stone_1.png Binary files differnew file mode 100644 index 00000000..221975ca --- /dev/null +++ b/ksokoban/images/stone_1.png diff --git a/ksokoban/images/stone_1.pov b/ksokoban/images/stone_1.pov new file mode 100644 index 00000000..357abafb --- /dev/null +++ b/ksokoban/images/stone_1.pov @@ -0,0 +1,17 @@ +// Pov-ray image source for ksokoban +// copyright (c) 1998-1999 Anders Widell <[email protected]> + +#include "stone_common.inc" + +camera { + orthographic + location <0, 0, -50> + look_at <0, 0, 0> + right <1, 0, 0> + up <0, 1/2, 0> +} + +object { + Stone + texture { StoneTexture translate <1,0,0> } +} diff --git a/ksokoban/images/stone_2.png b/ksokoban/images/stone_2.png Binary files differnew file mode 100644 index 00000000..71ea2962 --- /dev/null +++ b/ksokoban/images/stone_2.png diff --git a/ksokoban/images/stone_2.pov b/ksokoban/images/stone_2.pov new file mode 100644 index 00000000..791e0f9e --- /dev/null +++ b/ksokoban/images/stone_2.pov @@ -0,0 +1,17 @@ +// Pov-ray image source for ksokoban +// copyright (c) 1998-1999 Anders Widell <[email protected]> + +#include "stone_common.inc" + +camera { + orthographic + location <0, 0, -50> + look_at <0, 0, 0> + right <1, 0, 0> + up <0, 1/2, 0> +} + +object { + Stone + texture { StoneTexture translate <2,0,0> } +} diff --git a/ksokoban/images/stone_3.png b/ksokoban/images/stone_3.png Binary files differnew file mode 100644 index 00000000..a85c5eec --- /dev/null +++ b/ksokoban/images/stone_3.png diff --git a/ksokoban/images/stone_3.pov b/ksokoban/images/stone_3.pov new file mode 100644 index 00000000..8d983b5b --- /dev/null +++ b/ksokoban/images/stone_3.pov @@ -0,0 +1,17 @@ +// Pov-ray image source for ksokoban +// copyright (c) 1998-1999 Anders Widell <[email protected]> + +#include "stone_common.inc" + +camera { + orthographic + location <0, 0, -50> + look_at <0, 0, 0> + right <1, 0, 0> + up <0, 1/2, 0> +} + +object { + Stone + texture { StoneTexture translate <3,0,0> } +} diff --git a/ksokoban/images/stone_4.png b/ksokoban/images/stone_4.png Binary files differnew file mode 100644 index 00000000..5f17e094 --- /dev/null +++ b/ksokoban/images/stone_4.png diff --git a/ksokoban/images/stone_4.pov b/ksokoban/images/stone_4.pov new file mode 100644 index 00000000..5d3a5636 --- /dev/null +++ b/ksokoban/images/stone_4.pov @@ -0,0 +1,17 @@ +// Pov-ray image source for ksokoban +// copyright (c) 1998-1999 Anders Widell <[email protected]> + +#include "stone_common.inc" + +camera { + orthographic + location <0, 0, -50> + look_at <0, 0, 0> + right <1, 0, 0> + up <0, 1/2, 0> +} + +object { + Stone + texture { StoneTexture translate <4,0,0> } +} diff --git a/ksokoban/images/stone_5.png b/ksokoban/images/stone_5.png Binary files differnew file mode 100644 index 00000000..7a29b25d --- /dev/null +++ b/ksokoban/images/stone_5.png diff --git a/ksokoban/images/stone_5.pov b/ksokoban/images/stone_5.pov new file mode 100644 index 00000000..612dfffc --- /dev/null +++ b/ksokoban/images/stone_5.pov @@ -0,0 +1,17 @@ +// Pov-ray image source for ksokoban +// copyright (c) 1998-1999 Anders Widell <[email protected]> + +#include "stone_common.inc" + +camera { + orthographic + location <0, 0, -50> + look_at <0, 0, 0> + right <1, 0, 0> + up <0, 1/2, 0> +} + +object { + Stone + texture { StoneTexture translate <5,0,0> } +} diff --git a/ksokoban/images/stone_6.png b/ksokoban/images/stone_6.png Binary files differnew file mode 100644 index 00000000..22eefb05 --- /dev/null +++ b/ksokoban/images/stone_6.png diff --git a/ksokoban/images/stone_6.pov b/ksokoban/images/stone_6.pov new file mode 100644 index 00000000..463c5131 --- /dev/null +++ b/ksokoban/images/stone_6.pov @@ -0,0 +1,17 @@ +// Pov-ray image source for ksokoban +// copyright (c) 1998-1999 Anders Widell <[email protected]> + +#include "stone_common.inc" + +camera { + orthographic + location <0, 0, -50> + look_at <0, 0, 0> + right <1, 0, 0> + up <0, 1/2, 0> +} + +object { + Stone + texture { StoneTexture translate <6,0,0> } +} diff --git a/ksokoban/images/stone_common.inc b/ksokoban/images/stone_common.inc new file mode 100644 index 00000000..3c23a86d --- /dev/null +++ b/ksokoban/images/stone_common.inc @@ -0,0 +1,32 @@ +// Pov-ray image source for ksokoban +// copyright (c) 1998-1999 Anders Widell <[email protected]> + +#include "colors.inc" +#include "stones.inc" + +#declare StoneTexture = T_Stone8 + +background { color rgb <0, 0, 0> } + +light_source { + <-1000000/3, 1000000/3, -1000000> color rgb <0.625, 0.625, 0.625> +} +light_source { + <-1000000/3, 1000000/3, -1000000> color rgb <0.625, 0.625, 0.625> +} + +#declare Stone = object { + superellipsoid { + <1/3, 1/3> + + scale <1/2, 1/4, 1/4> + } +} + +#declare HalfStone = object { + superellipsoid { + <1/2, 1/3> + + scale <1/4, 1/4, 1/4> + } +} diff --git a/ksokoban/images/treasure.png b/ksokoban/images/treasure.png Binary files differnew file mode 100644 index 00000000..2560f1ef --- /dev/null +++ b/ksokoban/images/treasure.png diff --git a/ksokoban/images/treasure.pov b/ksokoban/images/treasure.pov new file mode 100644 index 00000000..2f4ccfe7 --- /dev/null +++ b/ksokoban/images/treasure.pov @@ -0,0 +1,36 @@ +// Pov-ray image source for ksokoban +// copyright (c) 1998-1999 Anders Widell <[email protected]> + +#include "goal.pov" + +object { + intersection { + plane {-z, 0.3 rotate < 30, 0, 0>} + plane {-z, 0.3 rotate < 30, 60, 0>} + plane {-z, 0.3 rotate < 30, 120, 0>} + plane {-z, 0.3 rotate < 30, 180, 0>} + plane {-z, 0.3 rotate < 30, 240, 0>} + plane {-z, 0.3 rotate < 30, 300, 0>} + + plane {-z, 0.3 rotate <-50, 0, 0>} + plane {-z, 0.3 rotate <-50, 60, 0>} + plane {-z, 0.3 rotate <-50, 120, 0>} + plane {-z, 0.3 rotate <-50, 180, 0>} + plane {-z, 0.3 rotate <-50, 240, 0>} + plane {-z, 0.3 rotate <-50, 300, 0>} + } + + finish { + ambient 0.1 + diffuse 0.3 + reflection .25 + specular 1 + roughness 0.02 + } + interior { + ior 2.4 + } + pigment { color rgbf <1, 0.1, 0.2, 0.8>} + + translate <0, -0.1, 0> +} |