Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Low-glycemic OpenGL hacking for R6RS Scheme
Scheme
tree: 3bc1bbe16c

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
color
demos
geometry
glamour
glu
misc
processing
README.org

README.org

Quick start

Setup

:$ cd ~/scheme # Where ‘~/scheme’ is the path to your Scheme libraries :$ bzr branch lp:~scheme-libraries-team/scheme-libraries/srfi :$ bzr branch lp:~derick-eddington/scheme-libraries/xitomatl :$ git clone git://github.com/dharmatech/dharmalab.git :$ git clone git://github.com/dharmatech/agave.git

Run a demo in Ypsilon

:$ ypsilon ~/scheme/agave/demos/flexi-line.scm

Run a demo in Ikarus

:$ ikarus –r6rs-script ~/scheme/agave/demos/flexi-line.scm

Make a demo load faster in Ikarus

:$ ikarus –compile-dependencies ~/scheme/agave/demos/flexi-line.scm

Introduction

Agave started out as a collection of OpenGL demos written for R6RS Scheme. Eventually it grew to include libraries which support basic OpenGL programming idioms.

All of the demos run in Ikarus and Ypsilon.

Libraries

Some of the libraries are:

librarynotes
(agave glamour window)
(agave glamour mouse)
(agave glamour misc)
(agave glamour frames-per-second)
(agave color rgba)
(agave color hsva)
(agave color conversion)
(agave geometry pt)
(agave geometry pt-3d)

The rest of the libraries are mostly support for the demos.

Demos

A couple of demo highlights. Browse the rest.

springies

Long before Sodaplay existed, Doug DeCarlo wrote xspringies. Springies is an implementation of the engine in xspringies. Note that this is not a binding to any C library; this is an honest to goodness mass and spring simulation written in pure Scheme. To me, this is a demonstration that Scheme can be a high-performance language.

http://dharmatech.github.com/images/springies-belt-tire.png

cfdg

An implementation of the Context Free Art semantics. It also renders the models. :-) Only a subset of the full ContextFree language is supported, but I picked a subset which allows for some nice pieces to be rendered.

Screenshot:

http://dharmatech.github.com/images/cfdg-game1-turn6.png

flexi-line

A port of a demo I found on Open Processing.

empathy

A port of a demo by Kyle McDonald I found on Open Processing.

ca

Simulator for the generations family of cellular automata.

Something went wrong with that request. Please try again.