unofficial mirror of guile-user@gnu.org 
 help / color / mirror / Atom feed
* SLAYER announcement and help request for preparing a GNU package
@ 2013-05-04 21:54 Panicz Maciej Godek
  2013-05-05  5:15 ` John Darrington
  2013-05-06  8:06 ` Javier Sancho
  0 siblings, 2 replies; 24+ messages in thread
From: Panicz Maciej Godek @ 2013-05-04 21:54 UTC (permalink / raw)
  To: guile-user@gnu.org

[-- Attachment #1: Type: text/plain, Size: 3147 bytes --]

Hi everyone,
I've developed a piece of software that I named SLAYER, by combining the
letter 's' with the word "layer", or replacing the 'p' letter with 's' in
the word 'player'.

Either way, slayer can be thought of as a simpler alternative for wrapper
libraries such as guile-sdl and guile-opengl, or as a programming
environment that is in a way competetive to Adobe Flash (with standalone
player). But obviously, it is something completely different.

I made this program as a base for research in GUI design, but it also
contains a stub of a 3d game engine that I'm planning to implement -- which
explains native support for OpenGL. I recently thought that it also could
be a great platform for teaching kids to program games, because -- once
compiled and linked -- it could be distributed as a standalone package,
that requires no additional tools.

The program is available through mercurial on bitbucket:

hg clone https://bitbucket.org/panicz/slayer

The repository contains README file, which lists packages that are needed
to build. Except a little mess, there are two demos that show the
possibilities of the system. The first one with the command:

$ ./slayer -e3d

The -e3d option is needed to enable the "3d" extension, which is required
by the demo. It allows to move around in a 3d space using mouse and WSAD
keys. There's also a draggable icon and a simple text-console, which
accepts s-expressions (evaluated using f1 key). It is activated with a
click, but for some reason the cursor isn't always displayed. The source
file is slayer.scm.

The second demo is the classical arcade PONG game (for two players). It's
written in the raw guile+slayer, so it's pretty lengthy (~160 lines), but
it should be easily understandable. PONG can be run using
$ ./slayer -i pong.scm

Both demos use sound, which can be disabled by passing the --nosound option
in the command line. PONG can also receive the -e3d option, which would
force it to use opengl for display.

Other command line options are undocumented, but they can be easily found
in slayer.c. I admit that the lack of any documentation can now be the most
seriously discouraging factor, but I promise to respond to every question
eagerly.

The second most seriously discouraging factor would be the build process,
which could require manual editing of the Makefile, among others. It would
be lovely to use the GNU autotools, but they seem so complicated, and I
thought that since you might have more experience with those, you could
help me to prepare a decent release, and perhaps to reorganize the
structure of the source code.

Perhaps the third most seriously discouraging factor (except some random
crashes that still happen) would be the lack of certain features: I'm
trying to apply the 'lazy implementation' strategy and add SDL/OpenGL
features only as I need them, and also my priority is to keep interfaces
simple, even at the cost of programmer's freedom (so for instance, there's
no option for choosing color index mode in OpenGL, or some other SDL video
mode than the default).

Despite those factors, I'd be happy to hear some feedback from you.

Best regards,
M.

[-- Attachment #2: Type: text/html, Size: 4217 bytes --]

^ permalink raw reply	[flat|nested] 24+ messages in thread

end of thread, other threads:[~2013-05-09  6:50 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-05-04 21:54 SLAYER announcement and help request for preparing a GNU package Panicz Maciej Godek
2013-05-05  5:15 ` John Darrington
2013-05-05  6:55   ` Stjepan Horvat
2013-05-05  6:59   ` Panicz Maciej Godek
2013-05-05 18:48     ` Thien-Thi Nguyen
2013-05-05 19:42       ` Popularity (was Re: SLAYER announcement ...) Mike Gran
2013-05-05 20:04         ` Popularity Frank Terbeck
2013-05-05 22:12         ` Popularity (was Re: SLAYER announcement ...) Chris Vine
2013-05-06  3:25         ` Nala Ginrut
2013-05-07 12:20         ` Ludovic Courtès
2013-05-05 21:37       ` SLAYER announcement and help request for preparing a GNU package Panicz Maciej Godek
2013-05-06  8:06 ` Javier Sancho
2013-05-06 19:36   ` Panicz Maciej Godek
2013-05-06 21:25     ` Thien-Thi Nguyen
2013-05-07 22:50       ` Panicz Maciej Godek
2013-05-08  9:34         ` Thien-Thi Nguyen
2013-05-08 12:51           ` Panicz Maciej Godek
2013-05-08 13:37             ` Mark H Weaver
2013-05-08 15:15               ` Mike Gran
2013-05-08 21:44                 ` Panicz Maciej Godek
2013-05-09  6:50             ` Thien-Thi Nguyen
2013-05-08 21:56           ` Ludovic Courtès
2013-05-07  7:23     ` Javier Sancho
2013-05-07 22:00       ` Panicz Maciej Godek

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).