Important
As of August 2025, this tutorial series is a work in progress. New chapters will be added and corrected as my personal time allows. The Chapters as they are now may be changed as the tutorials are being written.
Introduction to SRL
- Anatomy of a SRL project
- Introduction to
SRL::Debug
- 2D Screen Coordinates primer
- Screen Coordinates
SRL::Scene2D- A simple line
- A simple quad
- File System Primer
- Sprite constraints
- Sprite Loading
- Sprite Drawing
- The Simplest Way
SRL::Math::Types::AngleIntroduction- Sprite Rotation
- Working with Degrees and Radians
- Scaling the sprites
- The ZoomPoint
SRL::Input::Digitalclass- Is is Connected ?
- Is a Button being pressed ?
- Multiple buttons at the same time
- Modularize code
- Distorted sprites
- Half Transparency
- Screen doors
- Combining Effects
- Flip
- Clipping
- Gouraud
- High Speed Shrink
- Enable End-code-Disable
- Screen Formats
- Bitmap Format
- Translate
- Scale
- Cell Format
- Notes on SEGA's Editor
- Using
SRL::Tilemap::Interfaces::Bmp2TileInterface - Using buhan's saturn-aseprite Aseprite python script
- Bitmap Format
- Caveats
- Description of the use of the tools for 3d mesh importing
- Obtaining the converter tool
- Preparing the our first model
- Getting the model into our saturn project
- Basic lightning
- Transforms
- Rotation
- Scaling
- Translation
- Be mindful of Transform order
- Fixing the clipping issue
- The matrix stack
- Textures and UV maps
- Face Properties
- A Primer on VDP2 Rotation Scroll Screen
- Differences between rotation scroll screen and normal scroll screens
- Filling the scroll screen
- Rotation axis
- OneAxis Rotation
- Rotations on non-perpendicular axis
- Rotation no X axis
- Rotation on Y axis
- Rotation on both axis
- Two Axis Rotation
- Applying transforms
- Rotation effects
- A note on translations
- Scaling
- Rotations on non-perpendicular axis
- Three Axis Rotation
- A note on interaction with images from VDP1
- Final Example code
- T.B.D.
- Peripheral management.
- Analogue Gamepad
- Light Pistol