The cl-tetris3d Reference Manual
Table of Contents
The cl-tetris3d Reference Manual
This is the cl-tetris3d Reference Manual, version 0.0.1,
generated automatically by Declt version 3.0 "Montgomery Scott"
on Thu Mar 11 12:39:22 2021 GMT+0.
1 Introduction
cl-tetris3d
Yet another 3D tetris.

How to run:
> (ql:quickload :cl-tetris3d)
> (cl-tetris3d:run)
Enjoy!
Controls:
-
A - move figure left
-
D - move figure right
-
S - move figure down
-
space - immediately land figure
-
Q - rotate figure counterclockwise
-
E - rotate figure clockwise
-
P - pause/unpause
-
Esc - quit
-
left, right, up, down, page up, page down -- rotate and zoom camera
Make executable (SBCL Only!):
There are two ways to do it:
- Run interpeter from shell (it doesn't work within Slime),
and run the following commands from REPL:
> (ql:quickload :cl-tetris3d)
> (cl-tetris3d:make-executable)
- Run
./sbcl-make-executable.run
script
After that you should get the ./cl-tetris3d
binary.
2 Systems
The main system appears first, followed by any subsystem dependency.
2.1 cl-tetris3d
- Maintainer
Nedokushev Michael <michael.nedokushev@gmail.com>
- Author
Nedokushev Michael <michael.nedokushev@gmail.com>
- License
MIT (also see COPYING file for details)
- Description
Yet another 3D Tetris clone
- Version
0.0.1
- Dependencies
- cl-opengl
- lispbuilder-sdl
- cl-glu
- iterate
- Source
cl-tetris3d.asd (file)
- Components
-
3 Files
Files are sorted by type and then listed depth-first from the systems
components trees.
3.1 Lisp
3.1.1 cl-tetris3d.asd
- Location
cl-tetris3d.asd
- Systems
cl-tetris3d (system)
- Packages
cl-tetris3d-asd
3.1.2 cl-tetris3d/package.lisp
- Parent
cl-tetris3d (system)
- Location
package.lisp
- Packages
cl-tetris3d
3.1.3 cl-tetris3d/tetris.lisp
- Dependency
package.lisp (file)
- Parent
cl-tetris3d (system)
- Location
tetris.lisp
- Exported Definitions
-
- Internal Definitions
-
4 Packages
Packages are listed by definition order.
4.1 cl-tetris3d-asd
- Source
cl-tetris3d.asd
- Use List
- asdf/interface
- common-lisp
4.2 cl-tetris3d
- Source
package.lisp (file)
- Use List
-
- Exported Definitions
-
- Internal Definitions
-
5 Definitions
Definitions are sorted by export status, category, package, and then by
lexicographic order.
5.1 Exported definitions
5.1.1 Functions
- Function: make-executable ()
-
- Package
cl-tetris3d
- Source
tetris.lisp (file)
- Function: run &key WIDTH HEIGHT BPP
-
- Package
cl-tetris3d
- Source
tetris.lisp (file)
5.2 Internal definitions
5.2.1 Special variables
- Special Variable: *figures*
-
- Package
cl-tetris3d
- Source
tetris.lisp (file)
5.2.2 Macros
- Macro: do-dotimes-twice (H W) &body BODY
-
- Package
cl-tetris3d
- Source
tetris.lisp (file)
5.2.3 Functions
- Function: build-cube HEIGHT WIDTH
-
- Package
cl-tetris3d
- Source
tetris.lisp (file)
- Function: gl-init WIDTH HEIGHT
-
- Package
cl-tetris3d
- Source
tetris.lisp (file)
- Function: random-color ()
-
- Package
cl-tetris3d
- Source
tetris.lisp (file)
5.2.4 Generic functions
- Generic Function: body OBJECT
-
- Generic Function: (setf body) NEW-VALUE OBJECT
-
- Package
cl-tetris3d
- Methods
- Method: body (FIGURE figure)
-
automatically generated reader method
- Source
tetris.lisp (file)
- Method: (setf body) NEW-VALUE (FIGURE figure)
-
automatically generated writer method
- Source
tetris.lisp (file)
- Generic Function: choose-figure FIGURE ARENA
-
- Package
cl-tetris3d
- Source
tetris.lisp (file)
- Methods
- Method: choose-figure (FIGURE figure) (ARENA arena)
-
- Generic Function: color OBJECT
-
- Generic Function: (setf color) NEW-VALUE OBJECT
-
- Package
cl-tetris3d
- Methods
- Method: color (FIGURE figure)
-
automatically generated reader method
- Source
tetris.lisp (file)
- Method: (setf color) NEW-VALUE (FIGURE figure)
-
automatically generated writer method
- Source
tetris.lisp (file)
- Generic Function: draw-arena ARENA
-
- Package
cl-tetris3d
- Source
tetris.lisp (file)
- Methods
- Method: draw-arena (ARENA arena)
-
- Generic Function: draw-figure FIGURE ARENA
-
- Package
cl-tetris3d
- Source
tetris.lisp (file)
- Methods
- Method: draw-figure (FIGURE figure) (ARENA arena)
-
- Generic Function: draw-world ARENA FIGURE &key X Y Z
-
- Package
cl-tetris3d
- Source
tetris.lisp (file)
- Methods
- Method: draw-world (ARENA arena) (FIGURE figure) &key X Y Z
-
- Generic Function: field OBJECT
-
- Generic Function: (setf field) NEW-VALUE OBJECT
-
- Package
cl-tetris3d
- Methods
- Method: field (ARENA arena)
-
automatically generated reader method
- Source
tetris.lisp (file)
- Method: (setf field) NEW-VALUE (ARENA arena)
-
automatically generated writer method
- Source
tetris.lisp (file)
- Generic Function: figure->arena FIGURE ARENA
-
- Package
cl-tetris3d
- Source
tetris.lisp (file)
- Methods
- Method: figure->arena (FIGURE figure) (ARENA arena)
-
- Generic Function: height OBJECT
-
- Generic Function: (setf height) NEW-VALUE OBJECT
-
- Package
cl-tetris3d
- Methods
- Method: height (ARENA arena)
-
automatically generated reader method
- Source
tetris.lisp (file)
- Method: (setf height) NEW-VALUE (ARENA arena)
-
automatically generated writer method
- Source
tetris.lisp (file)
- Generic Function: move-figure FIGURE ARENA &key MOVE-SIDEWAYS
-
- Package
cl-tetris3d
- Source
tetris.lisp (file)
- Methods
- Method: move-figure (FIGURE figure) (ARENA arena) &key MOVE-SIDEWAYS
-
- Generic Function: rotate-collision-p FIGURE ARENA
-
- Package
cl-tetris3d
- Source
tetris.lisp (file)
- Methods
- Method: rotate-collision-p (FIGURE figure) (ARENA arena)
-
- Generic Function: rotate-figure-clockwise FIGURE
-
- Package
cl-tetris3d
- Source
tetris.lisp (file)
- Methods
- Method: rotate-figure-clockwise (FIGURE figure)
-
- Generic Function: rotate-figure-counterclockwise FIGURE
-
- Package
cl-tetris3d
- Source
tetris.lisp (file)
- Methods
- Method: rotate-figure-counterclockwise (FIGURE figure)
-
- Generic Function: vanish-lines ARENA
-
- Package
cl-tetris3d
- Source
tetris.lisp (file)
- Methods
- Method: vanish-lines (ARENA arena)
-
- Generic Function: width OBJECT
-
- Generic Function: (setf width) NEW-VALUE OBJECT
-
- Package
cl-tetris3d
- Methods
- Method: width (ARENA arena)
-
automatically generated reader method
- Source
tetris.lisp (file)
- Method: (setf width) NEW-VALUE (ARENA arena)
-
automatically generated writer method
- Source
tetris.lisp (file)
- Generic Function: x OBJECT
-
- Generic Function: (setf x) NEW-VALUE OBJECT
-
- Package
cl-tetris3d
- Methods
- Method: x (FIGURE figure)
-
automatically generated reader method
- Source
tetris.lisp (file)
- Method: (setf x) NEW-VALUE (FIGURE figure)
-
automatically generated writer method
- Source
tetris.lisp (file)
- Generic Function: x-d OBJECT
-
- Generic Function: (setf x-d) NEW-VALUE OBJECT
-
- Package
cl-tetris3d
- Methods
- Method: x-d (FIGURE figure)
-
automatically generated reader method
- Source
tetris.lisp (file)
- Method: (setf x-d) NEW-VALUE (FIGURE figure)
-
automatically generated writer method
- Source
tetris.lisp (file)
- Generic Function: y OBJECT
-
- Generic Function: (setf y) NEW-VALUE OBJECT
-
- Package
cl-tetris3d
- Methods
- Method: y (FIGURE figure)
-
automatically generated reader method
- Source
tetris.lisp (file)
- Method: (setf y) NEW-VALUE (FIGURE figure)
-
automatically generated writer method
- Source
tetris.lisp (file)
5.2.5 Classes
- Class: arena ()
-
- Package
cl-tetris3d
- Source
tetris.lisp (file)
- Direct superclasses
standard-object (class)
- Direct methods
-
- Direct slots
- Slot: width
-
- Initargs
:width
- Initform
8
- Readers
width (generic function)
- Writers
(setf width) (generic function)
- Slot: height
-
- Initargs
:height
- Initform
12
- Readers
height (generic function)
- Writers
(setf height) (generic function)
- Slot: field
-
- Initargs
:field
- Initform
(make-array (quote (12 8)) :initial-element nil)
- Readers
field (generic function)
- Writers
(setf field) (generic function)
- Class: figure ()
-
- Package
cl-tetris3d
- Source
tetris.lisp (file)
- Direct superclasses
standard-object (class)
- Direct methods
-
- Direct slots
- Slot: x
-
- Initargs
:x
- Initform
0
- Readers
x (generic function)
- Writers
(setf x) (generic function)
- Slot: y
-
- Initargs
:y
- Initform
0
- Readers
y (generic function)
- Writers
(setf y) (generic function)
- Slot: x-d
-
- Initargs
:x-d
- Initform
0
- Readers
x-d (generic function)
- Writers
(setf x-d) (generic function)
- Slot: color
-
- Initargs
:color
- Initform
(cl-tetris3d::random-color)
- Readers
color (generic function)
- Writers
(setf color) (generic function)
- Slot: body
-
- Initargs
:body
- Readers
body (generic function)
- Writers
(setf body) (generic function)
Appendix A Indexes
A.1 Concepts
A.2 Functions
| Index Entry | | Section |
|
( | | |
| (setf body) : | | Internal generic functions |
| (setf body) : | | Internal generic functions |
| (setf color) : | | Internal generic functions |
| (setf color) : | | Internal generic functions |
| (setf field) : | | Internal generic functions |
| (setf field) : | | Internal generic functions |
| (setf height) : | | Internal generic functions |
| (setf height) : | | Internal generic functions |
| (setf width) : | | Internal generic functions |
| (setf width) : | | Internal generic functions |
| (setf x) : | | Internal generic functions |
| (setf x) : | | Internal generic functions |
| (setf x-d) : | | Internal generic functions |
| (setf x-d) : | | Internal generic functions |
| (setf y) : | | Internal generic functions |
| (setf y) : | | Internal generic functions |
|
B | | |
| body : | | Internal generic functions |
| body : | | Internal generic functions |
| build-cube : | | Internal functions |
|
C | | |
| choose-figure : | | Internal generic functions |
| choose-figure : | | Internal generic functions |
| color : | | Internal generic functions |
| color : | | Internal generic functions |
|
D | | |
| do-dotimes-twice : | | Internal macros |
| draw-arena : | | Internal generic functions |
| draw-arena : | | Internal generic functions |
| draw-figure : | | Internal generic functions |
| draw-figure : | | Internal generic functions |
| draw-world : | | Internal generic functions |
| draw-world : | | Internal generic functions |
|
F | | |
| field : | | Internal generic functions |
| field : | | Internal generic functions |
| figure->arena : | | Internal generic functions |
| figure->arena : | | Internal generic functions |
| Function, build-cube : | | Internal functions |
| Function, gl-init : | | Internal functions |
| Function, make-executable : | | Exported functions |
| Function, random-color : | | Internal functions |
| Function, run : | | Exported functions |
|
G | | |
| Generic Function, (setf body) : | | Internal generic functions |
| Generic Function, (setf color) : | | Internal generic functions |
| Generic Function, (setf field) : | | Internal generic functions |
| Generic Function, (setf height) : | | Internal generic functions |
| Generic Function, (setf width) : | | Internal generic functions |
| Generic Function, (setf x) : | | Internal generic functions |
| Generic Function, (setf x-d) : | | Internal generic functions |
| Generic Function, (setf y) : | | Internal generic functions |
| Generic Function, body : | | Internal generic functions |
| Generic Function, choose-figure : | | Internal generic functions |
| Generic Function, color : | | Internal generic functions |
| Generic Function, draw-arena : | | Internal generic functions |
| Generic Function, draw-figure : | | Internal generic functions |
| Generic Function, draw-world : | | Internal generic functions |
| Generic Function, field : | | Internal generic functions |
| Generic Function, figure->arena : | | Internal generic functions |
| Generic Function, height : | | Internal generic functions |
| Generic Function, move-figure : | | Internal generic functions |
| Generic Function, rotate-collision-p : | | Internal generic functions |
| Generic Function, rotate-figure-clockwise : | | Internal generic functions |
| Generic Function, rotate-figure-counterclockwise : | | Internal generic functions |
| Generic Function, vanish-lines : | | Internal generic functions |
| Generic Function, width : | | Internal generic functions |
| Generic Function, x : | | Internal generic functions |
| Generic Function, x-d : | | Internal generic functions |
| Generic Function, y : | | Internal generic functions |
| gl-init : | | Internal functions |
|
H | | |
| height : | | Internal generic functions |
| height : | | Internal generic functions |
|
M | | |
| Macro, do-dotimes-twice : | | Internal macros |
| make-executable : | | Exported functions |
| Method, (setf body) : | | Internal generic functions |
| Method, (setf color) : | | Internal generic functions |
| Method, (setf field) : | | Internal generic functions |
| Method, (setf height) : | | Internal generic functions |
| Method, (setf width) : | | Internal generic functions |
| Method, (setf x) : | | Internal generic functions |
| Method, (setf x-d) : | | Internal generic functions |
| Method, (setf y) : | | Internal generic functions |
| Method, body : | | Internal generic functions |
| Method, choose-figure : | | Internal generic functions |
| Method, color : | | Internal generic functions |
| Method, draw-arena : | | Internal generic functions |
| Method, draw-figure : | | Internal generic functions |
| Method, draw-world : | | Internal generic functions |
| Method, field : | | Internal generic functions |
| Method, figure->arena : | | Internal generic functions |
| Method, height : | | Internal generic functions |
| Method, move-figure : | | Internal generic functions |
| Method, rotate-collision-p : | | Internal generic functions |
| Method, rotate-figure-clockwise : | | Internal generic functions |
| Method, rotate-figure-counterclockwise : | | Internal generic functions |
| Method, vanish-lines : | | Internal generic functions |
| Method, width : | | Internal generic functions |
| Method, x : | | Internal generic functions |
| Method, x-d : | | Internal generic functions |
| Method, y : | | Internal generic functions |
| move-figure : | | Internal generic functions |
| move-figure : | | Internal generic functions |
|
R | | |
| random-color : | | Internal functions |
| rotate-collision-p : | | Internal generic functions |
| rotate-collision-p : | | Internal generic functions |
| rotate-figure-clockwise : | | Internal generic functions |
| rotate-figure-clockwise : | | Internal generic functions |
| rotate-figure-counterclockwise : | | Internal generic functions |
| rotate-figure-counterclockwise : | | Internal generic functions |
| run : | | Exported functions |
|
V | | |
| vanish-lines : | | Internal generic functions |
| vanish-lines : | | Internal generic functions |
|
W | | |
| width : | | Internal generic functions |
| width : | | Internal generic functions |
|
X | | |
| x : | | Internal generic functions |
| x : | | Internal generic functions |
| x-d : | | Internal generic functions |
| x-d : | | Internal generic functions |
|
Y | | |
| y : | | Internal generic functions |
| y : | | Internal generic functions |
|
A.3 Variables
A.4 Data types