Dominik Pantůček <dominik.pantucek@trustica.cz>
The latest published source code can be found at https://gitlab.com/racketeer/rrll.
1 RRLL: Actor Basic 2.0
1.1 Introduction
1.2 Concepts
1.3 Data Structures
1.3.1 Core Actor State and Reference
1.3.2 Actor State Interaction
1.3.3 Actor Queue Implementation
1.3.4 Actor Events
1.3.5 Actor Message Struct
1.3.6 Actor Steps
1.3.7 Actor Expressions
1.3.8 Actor Space and Time
1.4 Actor Basic Expander
2 RRLL: ANSI Buffers
2.1 Core ANSI Buffers Functions
2.2 ANSI Cells
2.3 Output to Terminal
2.4 ANSI Pictures Drawing
3 RRLL: Abuf Canvas
3.1 Finding Pixel Matrix Representation Character
3.2 Canvas Display to ANSI Buffer
4 RRLL: Canvas
4.1 Core Canvas
4.2 Direct Pixel Access
4.3 Canvas Drawing
4.4 Transformations
4.5 Bitmap Saving and Loading
4.6 Mipmapping
4.6.1 Mipmap Construction
4.7 Advanced Sampling
4.8 Advanced Mipmap Sampling
4.9 Canvas Overlays
4.10 Mipmap Overlays
4.11 Canvas Syntax Definers
4.12 Querying Canvas Properties
5 RRLL: Rendering Canvas
5.1 Rendering Canvas Procedures
6 RRLL: Color Support
6.1 Core Color Functions
6.2 Color Blending
6.3 Color Names
6.4 Flonum Colors
6.5 Color Lighting
6.6 Random Colors
6.7 Color Interpolation
6.8 Fixed-Point Color Light
7 RRLL: Single-Channel Flomaps
7.1 Construction and Access
7.2 Bilinear Sampling
7.3 Querying
7.4 Operations
7.5 Rendering to Canvas
7.6 Single-Channel 3D Flomaps
7.7 Querying the 3D Flonum Map
7.8 Mutating Operations on 3D Flomaps
7.9 Fine-grained Sampling of 3D Flomaps
7.10 2D Cuts of 3D Flomaps
8 RRLL: Futures
9 RRLL: Functional Grids
9.1 Generics
9.2 dtgrid: Deduplicated Tree Based Grid
9.3 vgrid: Vector-Based Grid
9.4 Utilities
9.5 Discrete Differential Analysis
9.6 Visibility Arcs
9.7 Computing Visibility Fans in Grids
10 RRLL: Helpers
10.1 Clipping Helpers
10.2 Sorting Helpers
10.3 Generic Syntax Variant Helpers
11 RRLL: Math
11.1 Basic Math Utilities
11.2 Coordinate Systems
11.2.1 Screen Coordinates
11.2.2 Map Coordinates
11.2.3 Transformations in Map Coordinates
11.2.4 Camera Coordinates
11.2.5 Vector Projection
11.3 Generic Linear Algebra
11.3.1 Generic 2D Vectors
11.3.2 Generic 3D Vectors
11.4 Normalized Projective 3D Linear Algebra
11.4.1 Normalized Projective 3D Vectors
11.4.2 Normalized 3D Transformation Matrices
11.5 Transformations in World/Camera Coordinates
11.6 Angle Manipulation Helpers
11.7 2D Integer Vectors
12 RRLL: Mutable Future Queue
12.1 Mutable Future Queue
13 RRLL: Rasterizer
13.1 Rasterizer
13.2 Usage
13.2.1 Triangle Filled with Single Color
13.2.2 Alpha Blending Triangles Filled with Single Color
13.2.3 Smoothly-Colored Triangles
13.2.4 Alpha Blending Smoothly-Colored Triangles
14 RRLL: Renderer
14.1 Curried Projector
14.2 On-Screen Triangle Geometry
14.3 Renderer Camera
14.4 Positional Lighting
14.5 Renderer
15 RRLL: Terminal I/O
15.1 ANSI Terminal Output
15.2 TTY
15.3 NVT - TELNET
15.4 NVT Options Storage
15.5 Terminal Size and Resize Reporting
15.6 Terminal Base
15.7 Terminal Resources Garbage Collection
15.8 Foreign Function Interface Struct Size Detection
15.9 Low-Level Termios Interface
15.10 TTY Window Size I/O Control
15.11 Queue Input Port
15.12 NVT Input Port
15.13 ANSI Input Port
15.14 Mouse Input
16 RRLL: Ticker
16.1 Introduction
16.2 Ticker Queue
16.3 Ticker Environment Core
16.4 Ticker Environment
16.5 Ticker Scheduler
17 RRLL: Unsafe
17.1 Safe/Unsafe Fixnums
17.1.1 Safe Fixnums
17.1.2 Unsafe Fixnums
17.2 Safe/Unsafe Flonums
17.2.1 Safe Flonums
17.2.2 Unsafe Flonums
17.3 Safe/Unsafe Bytes
17.3.1 Safe Bytes
17.3.2 Unsafe Bytes
17.4 Safe/Unsafe Vectors
17.4.1 Safe Vectors
17.4.2 Unsafe Vectors