From d54995cad9ddf652cd2f7abb128d5d251f9454f1 Mon Sep 17 00:00:00 2001 From: David Thompson Date: Tue, 25 Oct 2022 07:25:01 -0400 Subject: projects: Update chickadee for 0.9.0 release. --- manuals/chickadee/Array-Lists.html | 2 +- manuals/chickadee/Index.html | 15 ++++++++ manuals/chickadee/Invoking-chickadee-play.html | 41 +++++++++++++++++++-- manuals/chickadee/Matrices.html | 51 +++++++++++++++++++++++++- manuals/chickadee/Scripts.html | 5 +++ manuals/chickadee/Sprites.html | 11 +++--- manuals/chickadee/The-Game-Loop.html | 10 ++--- projects.scm | 5 ++- 8 files changed, 120 insertions(+), 20 deletions(-) diff --git a/manuals/chickadee/Array-Lists.html b/manuals/chickadee/Array-Lists.html index 28e1835..0aa5eb4 100644 --- a/manuals/chickadee/Array-Lists.html +++ b/manuals/chickadee/Array-Lists.html @@ -157,7 +157,7 @@ takes linear time in the worst case. If fast? is #t the
Procedure: array-list-for-each proc array-list
-

Apply PROC with each item in array-list. +

Apply proc with each item in array-list.

diff --git a/manuals/chickadee/Index.html b/manuals/chickadee/Index.html index 99a7806..bc184bd 100644 --- a/manuals/chickadee/Index.html +++ b/manuals/chickadee/Index.html @@ -107,6 +107,8 @@ Previous: I   +J +   K   L @@ -380,6 +382,9 @@ Previous: index-buffer?Buffers intShaders
+J +joinScripts +
K key-pressed?Input Devices key-released?Input Devices @@ -487,6 +492,8 @@ Previous: material-texture-4Meshes material?Meshes matrix3*Matrices +matrix3-copyMatrices +matrix3-copy!Matrices matrix3-identity!Matrices matrix3-inverseMatrices matrix3-inverse!Matrices @@ -499,10 +506,15 @@ Previous: matrix3-transform!Matrices matrix3-translateMatrices matrix3-translate!Matrices +matrix3=Matrices matrix3?Matrices matrix4*Matrices matrix4-2d-transform!Matrices +matrix4-copyMatrices +matrix4-copy!Matrices matrix4-identity!Matrices +matrix4-inverseMatrices +matrix4-inverse!Matrices matrix4-mult!Matrices matrix4-rotateMatrices matrix4-rotate!Matrices @@ -513,6 +525,7 @@ Previous: matrix4-transform!Matrices matrix4-translateMatrices matrix4-translate!Matrices +matrix4=Matrices matrix4?Matrices maximize-window!Window Manipulation mesh-nameMeshes @@ -977,6 +990,8 @@ Previous: I   +J +   K   L diff --git a/manuals/chickadee/Invoking-chickadee-play.html b/manuals/chickadee/Invoking-chickadee-play.html index 0c9c065..2841c18 100644 --- a/manuals/chickadee/Invoking-chickadee-play.html +++ b/manuals/chickadee/Invoking-chickadee-play.html @@ -98,8 +98,7 @@ the Chickadee game contained within a Scheme source file. events from the game loop:

diff --git a/manuals/chickadee/Matrices.html b/manuals/chickadee/Matrices.html index 551664d..354a9ef 100644 --- a/manuals/chickadee/Matrices.html +++ b/manuals/chickadee/Matrices.html @@ -131,6 +131,16 @@ equivalent to the following code:

Return #t if obj is a 3x3 matrix.

+
+
Procedure: matrix3= m1 m2
+

Return #t if m1 is the same matrix as m2. +

+ +
+
Procedure: matrix3-copy matrix
+

Return a new 3x3 matrix that is a copy of matrix. +

+
Procedure: matrix3* . matrices

Return a new 3x3 matrix containing the product of multiplying all of @@ -171,6 +181,11 @@ matrix matrix.

The following procedures perform in-place, destructive updates to 3x3 matrix objects:

+
+
Procedure: matrix3-copy! src dest
+

Copy the contents of matrix src to dest. +

+
Procedure: matrix3-identity! matrix

Modify matrix in-place to contain the identity matrix. @@ -246,6 +261,16 @@ equivalent to the following code:

Return #t if obj is a 4x4 matrix.

+
+
Procedure: matrix4= m1 m2
+

Return #t if m1 is the same matrix as m2. +

+ +
+
Procedure: matrix4-copy matrix
+

Return a new 4x4 matrix that is a copy of matrix. +

+
Procedure: matrix4* . matrices

Return a new 4x4 matrix containing the product of multiplying all of @@ -254,6 +279,14 @@ the given matrices.

Note: Remember that matrix multiplication is not commutative!

+
+
Procedure: matrix4-inverse matrix
+

Return the inverse of matrix. +

+

A matrix multiplied by its inverse is the identity matrix, thought not +always exactly due to the nature of floating point numbers. +

+
Procedure: orthographic-projection left right top bottom near far
@@ -297,6 +330,14 @@ axis defined by the quaternion q. theta radians.

+

The following procedures perform in-place, destructive updates to 4x4 +matrix objects: +

+
+
Procedure: matrix4-copy! src dest
+

Copy the contents of matrix src to dest. +

+
Procedure: matrix4-identity! matrix

Modify matrix in-place to contain the identity matrix. @@ -308,6 +349,12 @@ axis defined by the quaternion q. the result in the 4x4 matrix dest.

+
+
Procedure: matrix4-inverse! matrix target
+

Compute the inverse of matrix and store the result in +target. +

+
Procedure: matrix4-translate! matrix x

Modify matrix in-place to contain a translation by x, a 2D @@ -334,12 +381,12 @@ axis defined by the quaternion q.

-
Procedure: matrix4-2d-transform! matrix [#:origin] [#:position] [#:rotation] [#:scale] [#:skew]
+
Procedure: matrix4-2d-transform! matrix [#:origin] [#:position] [#:rotation] [#:scale] [#:shear]

Modify matrix in-place to contain the transformation described by position, a 2D vector or rectangle, rotation, a scalar representing a rotation about the Z axis, scale, a 2D vector, -and skew, a 2D vector. The transformation happens with respect +and shear, a 2D vector. The transformation happens with respect to origin, a 2D vector. If an argument is not provided, that particular transformation will not be included in the result.

diff --git a/manuals/chickadee/Scripts.html b/manuals/chickadee/Scripts.html index d9b0b32..bc82c5f 100644 --- a/manuals/chickadee/Scripts.html +++ b/manuals/chickadee/Scripts.html @@ -173,6 +173,11 @@ cancelled. procedure handler.

+
+
Procedure: join script
+

Suspend the current script until script has terminated. +

+
Procedure: sleep duration

Wait duration before resuming the current script. diff --git a/manuals/chickadee/Sprites.html b/manuals/chickadee/Sprites.html index 2575e87..6069f8f 100644 --- a/manuals/chickadee/Sprites.html +++ b/manuals/chickadee/Sprites.html @@ -98,15 +98,16 @@ interface for working with sprites. Bitmaps are stored in textures draw-sprite procedure.

-
Procedure: draw-sprite texture position [#:tint white] [#:origin] [#:scale] [#:rotation] [#:blend-mode] [#:rect]
+
Procedure: draw-sprite texture position [#:blend-mode] [#:origin] [#:rect] [#:rotation] [#:scale] [#:shear] [#:tint white]

Draw texture at position.

Optionally, other transformations may be applied to the sprite. rotation specifies the angle to rotate the sprite, in radians. -scale specifies the scaling factor as a 2D vector. All -transformations are applied relative to origin, a 2D vector, -which defaults to the lower-left corner. +scale specifies the scaling factor as a 2D vector. shear +specifies the shearing factor as a 2D vector. All transformations are +applied relative to origin, a 2D vector, which defaults to the +lower-left corner.

tint specifies the color to multiply against all the sprite’s pixels. By default white is used, which does no tinting at all. @@ -159,7 +160,7 @@ are full to accomodate as many sprites as necessary.

-
Procedure: sprite-batch-add! batch position [#:origin] [#:scale] [:rotation] [#:tint white] [#:texture-region]
+
Procedure: sprite-batch-add! batch position [#:origin] [:rotation] [#:scale] [#:shear] [#:texture-region] [#:tint white]

Add sprite located at position to batch.

diff --git a/manuals/chickadee/The-Game-Loop.html b/manuals/chickadee/The-Game-Loop.html index d18ad0d..7d7acfb 100644 --- a/manuals/chickadee/The-Game-Loop.html +++ b/manuals/chickadee/The-Game-Loop.html @@ -277,18 +277,16 @@ values are: -
  • error: Called with three arguments when an error occurs: +
  • error: Called with two arguments when an error occurs:
      -
    1. stack: The call stack at the point of error. +
    2. exception: The exception object. -
    3. key: The exception key. - -
    4. args: The arguments thrown with the exception. +
    5. stack: The call stack at the point of the exception.
    -

    The default behavior is to re-throw the error. +

    If no error handler is specified, exceptions will simply be re-raised.

  • diff --git a/projects.scm b/projects.scm index 4abb262..9054feb 100644 --- a/projects.scm +++ b/projects.scm @@ -317,7 +317,7 @@ Scheme.") (p (small ,(anchor "chickadee sprite by Refuzzle, CC0" "http://opengameart.org/content/winter-birds")))) #:requirements '("GNU Guile >= 3.0.0" - "Guile-SDL2 >= 0.7.0" + "Guile-SDL2 >= 0.8.0" "Guile-OpenGL >= 0.1.0" "OpenAL" "Vorbis" @@ -326,7 +326,8 @@ Scheme.") "GNU Readline") #:license "GNU GPLv3+" #:releases - `(("0.8.0" ,(date 2021 10 07)) + `(("0.9.0" ,(date 2022 10 25)) + ("0.8.0" ,(date 2021 10 07)) ("0.7.0" ,(date 2021 04 13)) ("0.6.0" ,(date 2020 11 19)) ("0.5.0" ,(date 2020 04 08)) -- cgit v1.2.3