summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/audio.texi98
-rw-r--r--doc/graphics.texi23
-rw-r--r--doc/graphics/animation.texi84
-rw-r--r--doc/graphics/color.texi64
-rw-r--r--doc/graphics/font.texi70
-rw-r--r--doc/graphics/sprite.texi121
-rw-r--r--doc/graphics/texture.texi65
-rw-r--r--doc/graphics/tileset.texi41
-rw-r--r--doc/math.texi17
-rw-r--r--doc/scripting.texi21
10 files changed, 0 insertions, 604 deletions
diff --git a/doc/audio.texi b/doc/audio.texi
deleted file mode 100644
index 20d3085..0000000
--- a/doc/audio.texi
+++ /dev/null
@@ -1,98 +0,0 @@
-@node Audio
-@chapter Audio
-
-Sly provides a simple wrapper over SDL's mixer API for working
-with music and sound effects.
-
-@menu
-* Music::
-* Samples::
-@end menu
-
-@node Music
-@section Music
-
-Music objects are used for a game's background music. Only one music
-object is playing at any given time.
-
-@anchor{2d audio make-music}@defspec make-music
-@end defspec
-
-@anchor{2d audio load-music}@defun load-music filename
-Load music from FILENAME. Return #f on failure.
-
-@end defun
-
-@anchor{2d audio music?}@defspec music?
-@end defspec
-
-@anchor{2d audio music-audio}@defspec music-audio
-@end defspec
-
-@anchor{2d audio music-pause}@defun music-pause
-@end defun
-
-@anchor{2d audio music-paused?}@defun music-paused?
-@end defun
-
-@anchor{2d audio music-play}@defun music-play music
-Play MUSIC.
-
-@end defun
-
-@anchor{2d audio music-playing?}@defun music-playing?
-@end defun
-
-@anchor{2d audio music-resume}@defun music-resume
-@end defun
-
-@anchor{2d audio music-rewind}@defun music-rewind
-@end defun
-
-@anchor{2d audio music-stop}@defun music-stop
-@end defun
-
-@anchor{2d audio music-volume}@defun music-volume
-Return the volume that music is played at.
-
-@end defun
-
-@node Samples
-@section Samples
-
-Samples are short audio clips, typically sound effects. Many samples
-can be played at the same time.
-
-@anchor{2d audio make-sample}@defspec make-sample
-@end defspec
-
-@anchor{2d audio load-sample}@defun load-sample filename
-Load audio sample from FILENAME. Return #f on failure.
-
-@end defun
-
-@anchor{2d audio sample?}@defspec sample?
-@end defspec
-
-@anchor{2d audio sample-audio}@defspec sample-audio
-@end defspec
-
-@anchor{2d audio sample-play}@defun sample-play sample
-Play audio SAMPLE.
-
-@end defun
-
-@anchor{2d audio sample-volume}@defun sample-volume
-Return volume that samples are played at.
-
-@end defun
-
-@anchor{2d audio set-music-volume}@defun set-music-volume volume
-Set the volume that music is played at.
-
-@end defun
-
-@anchor{2d audio set-sample-volume}@defun set-sample-volume volume
-Set the volume that samples are played at to VOLUME.
-
-@end defun
diff --git a/doc/graphics.texi b/doc/graphics.texi
deleted file mode 100644
index 671754b..0000000
--- a/doc/graphics.texi
+++ /dev/null
@@ -1,23 +0,0 @@
-@node Graphics
-@chapter Graphics
-
-Graphics are a fundamental part of most computer games. Sly makes
-it easy to make sprite-based games by providing all of the necessary
-primitives. Graphics are rendered via OpenGL to take advantage of
-hardware acceleration.
-
-@menu
-* Sprites::
-* Textures::
-* Animations::
-* Colors::
-* Tilesets::
-* Fonts::
-@end menu
-
-@include graphics/sprite.texi
-@include graphics/texture.texi
-@include graphics/animation.texi
-@include graphics/color.texi
-@include graphics/tileset.texi
-@include graphics/font.texi
diff --git a/doc/graphics/animation.texi b/doc/graphics/animation.texi
deleted file mode 100644
index c872263..0000000
--- a/doc/graphics/animation.texi
+++ /dev/null
@@ -1,84 +0,0 @@
-@node Animations
-@section Animations
-
-Animations are sequences of textures and/or texture regions. Common
-uses for animations are to give the illusion that a character is
-walking across the screen or swinging their sword at a
-monster. Animator objects are used to control the playback of an
-animation.
-
-@anchor{2d animation animation-frame-duration}@defspec animation-frame-duration
-@end defspec
-
-@anchor{2d animation animation-frames}@defspec animation-frames
-@end defspec
-
-@anchor{2d animation animation-loop?}@defspec animation-loop?
-@end defspec
-
-@anchor{2d animation animation?}@defspec animation?
-@end defspec
-
-@anchor{2d animation animator-animation}@defspec animator-animation
-@end defspec
-
-@anchor{2d animation animator-frame}@defspec animator-frame
-@end defspec
-
-@anchor{2d animation animator-playing?}@defspec animator-playing?
-@end defspec
-
-@anchor{2d animation animator-time}@defspec animator-time
-@end defspec
-
-@anchor{2d animation animator?}@defspec animator?
-@end defspec
-
-@anchor{2d animation make-animation}@defspec make-animation
-@end defspec
-
-@anchor{2d animation animation-duration}@defun animation-duration animation
-Return the total duration of ANIMATION in ticks.
-
-@end defun
-
-@anchor{2d animation animation-frame}@defun animation-frame animation index
-Return the texture for the given frame INDEX of ANIMATION.
-
-@end defun
-
-@anchor{2d animation animation-length}@defun animation-length animation
-Return the number of frames in ANIMATION.
-
-@end defun
-
-@anchor{2d animation animator-frame-complete?}@defun animator-frame-complete? animator
-Return #t when ANIMATOR is done displaying the current frame.
-
-@end defun
-
-@anchor{2d animation animator-next!}@defun animator-next! animator
-Advance ANIMATOR to the next frame of its animation.
-
-@end defun
-
-@anchor{2d animation animator-next-frame}@defun animator-next-frame animator
-Return the next frame index for ANIMATOR.
-
-@end defun
-
-@anchor{2d animation animator-texture}@defun animator-texture animator
-Return a texture for the ANIMATOR's current frame.
-
-@end defun
-
-@anchor{2d animation animator-update!}@defun animator-update! animator
-Increment the frame time for the ANIMATOR and advance to the next frame
-when necessary.
-
-@end defun
-
-@anchor{2d animation make-animator}@defun make-animator animation
-Create a new animator for ANIMATION.
-
-@end defun
diff --git a/doc/graphics/color.texi b/doc/graphics/color.texi
deleted file mode 100644
index 99e69ba..0000000
--- a/doc/graphics/color.texi
+++ /dev/null
@@ -1,64 +0,0 @@
-@node Colors
-@section Colors
-
-Colors store RGBA data in OpenGL format. Each color channel has a
-value in the range [0, 1].
-
-@anchor{2d color make-color}@defspec make-color
-@end defspec
-
-@anchor{2d color color?}@defspec color?
-@end defspec
-
-@anchor{2d color color-r}@defspec color-r
-@end defspec
-
-@anchor{2d color color-g}@defspec color-g
-@end defspec
-
-@anchor{2d color color-b}@defspec color-b
-@end defspec
-
-@anchor{2d color color-a}@defspec color-a
-@end defspec
-
-@anchor{2d color use-color}@defun use-color color
-Set the current OpenGL color state to the contents of COLOR.
-
-@end defun
-
-A lot of people are used to working with colors as hexadecimal values,
-so the following procedures are provided to convert hexadecimal color
-codes into color objects.
-
-@anchor{2d color rgba}@defun rgba color-code
-Translate an RGBA format string COLOR-CODE into a color object. For
-example: #xffffffff will return a color with RGBA values 1, 1, 1, 1.
-
-@end defun
-
-@anchor{2d color rgb}@defun rgb color-code
-Translate an RGB format string COLOR-CODE into a color object. For
-example: #xffffff will return a color with RGBA values 1, 1, 1, 1.
-
-@end defun
-
-Commonly used colors are predefined for convenience.
-
-@anchor{2d color white}@defvar white
-@end defvar
-
-@anchor{2d color black}@defvar black
-@end defvar
-
-@anchor{2d color red}@defvar red
-@end defvar
-
-@anchor{2d color green}@defvar green
-@end defvar
-
-@anchor{2d color blue}@defvar blue
-@end defvar
-
-@anchor{2d color magenta}@defvar magenta
-@end defvar
diff --git a/doc/graphics/font.texi b/doc/graphics/font.texi
deleted file mode 100644
index 150a74e..0000000
--- a/doc/graphics/font.texi
+++ /dev/null
@@ -1,70 +0,0 @@
-@node Fonts
-@section Fonts
-
-Sly can render TTF fonts via the FTGL library.
-
-@anchor{2d font font-ftgl-font}@defspec font-ftgl-font
-@end defspec
-
-@anchor{2d font font-size}@defspec font-size
-@end defspec
-
-@anchor{2d font font?}@defspec font?
-@end defspec
-
-@anchor{2d font make-font}@defspec make-font
-@end defspec
-
-@anchor{2d font set-textbox-color!}@defspec set-textbox-color!
-@end defspec
-
-@anchor{2d font set-textbox-position!}@defspec set-textbox-position!
-@end defspec
-
-@anchor{2d font set-textbox-text!}@defspec set-textbox-text!
-@end defspec
-
-@anchor{2d font textbox-alignment}@defspec textbox-alignment
-@end defspec
-
-@anchor{2d font textbox-color}@defspec textbox-color
-@end defspec
-
-@anchor{2d font textbox-font}@defspec textbox-font
-@end defspec
-
-@anchor{2d font textbox-layout}@defspec textbox-layout
-@end defspec
-
-@anchor{2d font textbox-line-length}@defspec textbox-line-length
-@end defspec
-
-@anchor{2d font textbox-position}@defspec textbox-position
-@end defspec
-
-@anchor{2d font textbox-text}@defspec textbox-text
-@end defspec
-
-@anchor{2d font textbox?}@defspec textbox?
-@end defspec
-
-@anchor{2d font draw-font}@defun draw-font font text
-Renders the string text using the given font.
-
-@end defun
-
-@anchor{2d font draw-textbox}@defun draw-textbox textbox
-Draw TEXTBOX.
-
-@end defun
-
-@anchor{2d font load-font}@defun load-font filename size
-Load a font from FILENAME with the given SIZE in points.
-
-@end defun
-
-@anchor{2d font make-textbox}@defun make-textbox font text position color alignment line-length
-Create a textbox that will draw TEXT with the given FONT, at vector
-POSITION, with ALIGNMENT, and a maximum LINE-LENGTH.
-
-@end defun
diff --git a/doc/graphics/sprite.texi b/doc/graphics/sprite.texi
deleted file mode 100644
index 9b20e3f..0000000
--- a/doc/graphics/sprite.texi
+++ /dev/null
@@ -1,121 +0,0 @@
-@node Sprites
-@section Sprites
-
-Sprites are typically the most important part of a 2D game. Sprites
-represent a texture with a specific color, position, rotation and
-scale. Sprites can render texture objects or animations.
-
-@anchor{2d sprite set-sprite-batch-size!}@defspec set-sprite-batch-size!
-@end defspec
-
-@anchor{2d sprite set-sprite-batch-texture!}@defspec set-sprite-batch-texture!
-@end defspec
-
-@anchor{2d sprite set-sprite-drawable!}@defspec set-sprite-drawable!
-@end defspec
-
-@anchor{2d sprite set-sprite-vertices!}@defspec set-sprite-vertices!
-@end defspec
-
-@anchor{2d sprite sprite-anchor}@defspec sprite-anchor
-@end defspec
-
-@anchor{2d sprite sprite-batch-max-size}@defspec sprite-batch-max-size
-@end defspec
-
-@anchor{2d sprite sprite-batch-size}@defspec sprite-batch-size
-@end defspec
-
-@anchor{2d sprite sprite-batch-texture}@defspec sprite-batch-texture
-@end defspec
-
-@anchor{2d sprite sprite-batch-vertices}@defspec sprite-batch-vertices
-@end defspec
-
-@anchor{2d sprite sprite-batch?}@defspec sprite-batch?
-@end defspec
-
-@anchor{2d sprite sprite-color}@defspec sprite-color
-@end defspec
-
-@anchor{2d sprite sprite-drawable}@defspec sprite-drawable
-@end defspec
-
-@anchor{2d sprite sprite-position}@defspec sprite-position
-@end defspec
-
-@anchor{2d sprite sprite-rotation}@defspec sprite-rotation
-@end defspec
-
-@anchor{2d sprite sprite-scale}@defspec sprite-scale
-@end defspec
-
-@anchor{2d sprite sprite-vertices}@defspec sprite-vertices
-@end defspec
-
-@anchor{2d sprite sprite?}@defspec sprite?
-@end defspec
-
-@anchor{2d sprite with-sprite-batch}@defspec with-sprite-batch batch body ...
-@end defspec
-
-@anchor{2d sprite animated-sprite?}@defun animated-sprite? sprite
-Return #t if SPRITE has an animation as its drawable object.
-
-@end defun
-
-@anchor{2d sprite draw-sprite}@defun draw-sprite sprite
-Render SPRITE to the screen. A sprite batch will be used if one is
-currently bound.
-
-@end defun
-
-@anchor{2d sprite load-sprite}@defun load-sprite filename [#:position] [#:scale] [#:rotation] [#:color] [#:anchor]
-Load a sprite from the file at FILENAME. See make-sprite for optional
-keyword arguments.
-
-@end defun
-
-@anchor{2d sprite make-sprite}@defun make-sprite drawable [#:position] [#:scale] [#:rotation] [#:color] [#:anchor]
-Create a new sprite object. DRAWABLE is either a texture or animation
-object. All keyword arguments are optional. POSITION is a vector2
-object with a default of (0, 0). SCALE is a vector2 object that
-describes how much DRAWABLE should be strected on the x and y axes, with
-a default of 1x scale. ROTATION is an angle in degrees with a default
-of 0. COLOR is a color object with a default of white. ANCHOR is
-either a vector2 that represents the center point of the sprite, or
-'center which will place the anchor at the center of DRAWABLE. Sprites
-are centered by default.
-
-@end defun
-
-@anchor{2d sprite make-sprite-batch}@defun make-sprite-batch [max-size]
-Creates a new sprite batch. The default max-size is 1000.
-
-@end defun
-
-@anchor{2d sprite set-sprite-anchor!}@defun set-sprite-anchor! sprite value
-@end defun
-
-@anchor{2d sprite set-sprite-color!}@defun set-sprite-color! sprite value
-@end defun
-
-@anchor{2d sprite set-sprite-position!}@defun set-sprite-position! sprite value
-@end defun
-
-@anchor{2d sprite set-sprite-rotation!}@defun set-sprite-rotation! sprite value
-@end defun
-
-@anchor{2d sprite set-sprite-scale!}@defun set-sprite-scale! sprite value
-@end defun
-
-@anchor{2d sprite sprite-batch-draw}@defun sprite-batch-draw . args
-Add a textured quad to the current sprite batch. X, Y, WIDTH, and
-HEIGHT represent the quad in pixels. ORIGIN-X and ORIGIN-Y represent
-the center point of the quad which is used for rotation. SCALE-X and
-SCALE-Y are the scaling factors for the x and y axis, respectively.
-ROTATION is the angle in degrees to rotate the quad. U, V, U2, and V2
-represent the texture coordinate region to texture the quad with. COLOR
-is a color object.
-
-@end defun
diff --git a/doc/graphics/texture.texi b/doc/graphics/texture.texi
deleted file mode 100644
index b7da0f8..0000000
--- a/doc/graphics/texture.texi
+++ /dev/null
@@ -1,65 +0,0 @@
-@node Textures
-@section Textures
-
-Textures are images loaded in graphics memory. Sly supports many
-texture formats via the FreeImage library. A texture object can
-describe a full image or a rectangular section of an image.
-
-@anchor{2d texture make-texture}@defun make-texture id parent width height s1 t1 s2 t2
-Create a new texture object. ID is the OpenGL texture id. PARENT is a
-texture object (if this texture only represents a region of another
-texture) or #f. WIDTH and HEIGHT are the texture dimensions in pixels.
-S1, T1, S2, and T2 are the OpenGL texture coordinates representing the
-area of the texture that will be rendered.
-
-@end defun
-
-@anchor{2d texture make-texture-region}@defun make-texture-region texture x y width height
-Creates new texture region object. TEXTURE is the region's parent
-texture. X, Y, WIDTH, and HEIGHT represent the region of the texture
-that will be rendered, in pixels.
-
-@end defun
-
-@anchor{2d texture load-texture}@defun load-texture filename
-Load a texture from an image file at FILENAME.
-
-@end defun
-
-@anchor{2d texture texture?}@defspec texture?
-@end defspec
-
-@anchor{2d texture texture-region?}@defun texture-region? texture
-Return #t if TEXTURE has a parent texture.
-
-@end defun
-
-@anchor{2d texture texture-id}@defspec texture-id
-@end defspec
-
-@anchor{2d texture texture-width}@defspec texture-width
-@end defspec
-
-@anchor{2d texture texture-height}@defspec texture-height
-@end defspec
-
-@anchor{2d texture texture-s1}@defspec texture-s1
-@end defspec
-
-@anchor{2d texture texture-t1}@defspec texture-t1
-@end defspec
-
-@anchor{2d texture texture-s2}@defspec texture-s2
-@end defspec
-
-@anchor{2d texture texture-t2}@defspec texture-t2
-@end defspec
-
-@anchor{2d texture surface->texture}@defvar surface->texture
-[unbound!]
-@end defvar
-
-@anchor{2d texture draw-texture}@defun draw-texture texture x y [color]
-Render a textured quad in GL immediate mode.
-
-@end defun
diff --git a/doc/graphics/tileset.texi b/doc/graphics/tileset.texi
deleted file mode 100644
index 96aab67..0000000
--- a/doc/graphics/tileset.texi
+++ /dev/null
@@ -1,41 +0,0 @@
-@node Tilesets
-@section Tilesets
-
-In most 2D games, the game world is composed of many small,
-rectangular pieces called tiles. In Sly, tilesets are used to
-encapsulate a group of uniformly sized texture regions that come from
-a single parent texture.
-
-@anchor{2d tileset make-tileset}@defun make-tileset texture width height [#:margin] [#:spacing]
-Return a new tileset that is built by splitting TEXTURE into tiles.
-
-@end defun
-
-@anchor{2d tileset load-tileset}@defun load-tileset filename width height [#:margin] [#:spacing]
-Return a new tileset that is built by loading the texture at FILENAME
-and splitting the texture into tiles.
-
-@end defun
-
-@anchor{2d tileset tileset?}@defspec tileset?
-@end defspec
-
-@anchor{2d tileset tileset-tiles}@defspec tileset-tiles
-@end defspec
-
-@anchor{2d tileset tileset-width}@defspec tileset-width
-@end defspec
-
-@anchor{2d tileset tileset-height}@defspec tileset-height
-@end defspec
-
-@anchor{2d tileset tileset-margin}@defspec tileset-margin
-@end defspec
-
-@anchor{2d tileset tileset-spacing}@defspec tileset-spacing
-@end defspec
-
-@anchor{2d tileset tileset-ref}@defun tileset-ref tileset i
-Return the tile texture of TILESET at index I.
-
-@end defun
diff --git a/doc/math.texi b/doc/math.texi
deleted file mode 100644
index 6e92cc0..0000000
--- a/doc/math.texi
+++ /dev/null
@@ -1,17 +0,0 @@
-@node Math
-@chapter Math
-
-Games typically require a lot of linear algebra and trigonometry in
-order to function. Sly provides modules to perform 2D vector
-math, degree to/from radian conversions, and axis-aligned bounding box
-collision tests.
-
-@menu
-* Vectors::
-* Rectangles::
-* Miscellaneous::
-@end menu
-
-@include math/vector2.texi
-@include math/rect.texi
-@include math/math.texi
diff --git a/doc/scripting.texi b/doc/scripting.texi
deleted file mode 100644
index be748c5..0000000
--- a/doc/scripting.texi
+++ /dev/null
@@ -1,21 +0,0 @@
-@node Scripting
-@chapter Scripting
-
-The ability to write scripts is very important for most games. Scripts
-are short programs that modify game state. In an RPG, one might want
-to write a script that causes an NPC to walk up to the player and
-begin a conversation with them. Sly allows for easy, linear
-script writing by using cooperative multitasking, also known as
-coroutines. Agendas are used to schedule scripts to be run at distinct
-points in game time, and actions provide an API to describe
-transformations that happen over a period of game time.
-
-@menu
-* Coroutines::
-* Agendas::
-* Actions::
-@end menu
-
-@include scripting/coroutine.texi
-@include scripting/agenda.texi
-@include scripting/actions.texi