summaryrefslogtreecommitdiff
path: root/docs/ASSET_LOADING.md
diff options
context:
space:
mode:
authorIndrajith K L2025-11-07 04:44:30 +0530
committerIndrajith K L2025-11-07 04:44:30 +0530
commitf3373d08c74e36b2161e1f4e4eef6aa7197352e0 (patch)
tree37b07d916f921ddb028fbd729fedddb5d310c7d6 /docs/ASSET_LOADING.md
parent8c4b587a2347a911d165f0b4afcce116970ad7e5 (diff)
downloadreilua-enhanced-f3373d08c74e36b2161e1f4e4eef6aa7197352e0.tar.gz
reilua-enhanced-f3373d08c74e36b2161e1f4e4eef6aa7197352e0.tar.bz2
reilua-enhanced-f3373d08c74e36b2161e1f4e4eef6aa7197352e0.zip
docs: Add HTML documentation generator and improve documentation structure
- Add html_docs/ directory with Python-based documentation generator - Include custom CSS styling for modern, clean documentation layout - Update README.md with improved formatting and documentation links - Enhance markdown documentation across all docs/ files: - Improve API documentation with better code examples - Refactor DOCUMENTATION_INDEX.md for clearer navigation - Update EMBEDDING.md, CUSTOMIZATION.md, and other guides - Standardize formatting and improve readability throughout - Fix inconsistent line endings and formatting issues The HTML documentation generator creates a styled, browsable version of the project documentation for easier reading and navigation.
Diffstat (limited to 'docs/ASSET_LOADING.md')
-rw-r--r--docs/ASSET_LOADING.md83
1 files changed, 32 insertions, 51 deletions
diff --git a/docs/ASSET_LOADING.md b/docs/ASSET_LOADING.md
index a38a264..f5c5d8c 100644
--- a/docs/ASSET_LOADING.md
+++ b/docs/ASSET_LOADING.md
@@ -1,29 +1,28 @@
# Asset Loading System
-ReiLua includes a built-in asset loading system with a nice loading screen UI that automatically shows progress while assets are being loaded.
+ReiLua includes a built-in asset loading system with a loading screen UI that shows progress while assets are being loaded.
-## 🎨 Features
+## Features
-- **Automatic Progress Tracking** - Tracks how many assets have been loaded
-- **Beautiful Loading UI** - Modern, minimal loading screen with:
+- Automatic Progress Tracking - Tracks how many assets have been loaded
+- Loading UI with:
- Animated "Loading..." text with dots
- Smooth progress bar with shimmer effect
- Progress percentage (e.g., "3 / 10")
- Current asset name being loaded
- - Dark, clean color scheme
-- **Easy to Use** - Just 3 functions to show loading progress
-- **Works Everywhere** - Development and release builds
+- Easy to Use - Just 3 functions to show loading progress
+- Works in development and release builds
-## 📝 API Functions
+## API Functions
### RL.BeginAssetLoading(totalAssets)
Initialize asset loading progress tracking and show the loading screen.
-**Parameters:**
+Parameters:
- `totalAssets` (integer) - Total number of assets to load
-**Example:**
+Example:
```lua
RL.BeginAssetLoading(10) -- We're loading 10 assets
```
@@ -34,10 +33,10 @@ RL.BeginAssetLoading(10) -- We're loading 10 assets
Update the loading progress and display current asset being loaded.
-**Parameters:**
+Parameters:
- `assetName` (string) - Name of the asset currently being loaded
-**Example:**
+Example:
```lua
RL.UpdateAssetLoading("player.png")
```
@@ -50,12 +49,12 @@ Call this **after** each asset is loaded to update the progress bar.
Finish asset loading and hide the loading screen.
-**Example:**
+Example:
```lua
RL.EndAssetLoading()
```
-## 🚀 Quick Example
+## Quick Example
```lua
function RL.init()
@@ -87,7 +86,7 @@ function RL.init()
end
```
-## 💡 Complete Example
+## Complete Example
```lua
local assets = {}
@@ -146,16 +145,16 @@ function RL.draw()
end
```
-## 🎨 Loading Screen Appearance
+## Loading Screen Appearance
The loading screen features a clean 1-bit pixel art style:
-**Design:**
+Design:
- Pure black and white aesthetic
- Retro pixel art styling
- Minimal and clean design
-**Elements:**
+Elements:
- **Title**: "LOADING" in bold white pixel text
- **Animated Dots**: White pixelated dots (4x4 squares) that cycle
- **Progress Bar**:
@@ -167,52 +166,34 @@ The loading screen features a clean 1-bit pixel art style:
- **Asset Name**: Current loading asset in small white text
- **Corner Decorations**: White pixel art L-shaped corners in all 4 corners
-**Background:**
+Background:
- Pure black background (#000000)
- High contrast for maximum clarity
-**Color Palette:**
+Color Palette:
- White text and UI (#FFFFFF)
- Black background (#000000)
- Pure 1-bit aesthetic (inverted terminal style)
-**Visual Layout:**
-```
-[Black Background]
-
-┌─┐ ┌─┐
-│ │ LOADING □ □ │ │
-│ │ │ │
-│ │ ┌──────────────────┐ │ │
-│ │ │████████░░░░░░░░░░│ 3/10 │ │
-│ │ └──────────────────┘ │ │
-│ │ │ │
-│ │ player.png │ │
-│ │ │ │
-└─┘ └─┘
-
-[All text and UI elements in WHITE]
-```
-
-**Style Inspiration:**
+Style Inspiration:
- Classic terminal / console aesthetic
- MS-DOS loading screens
- 1-bit dithering patterns
- Chunky pixel borders
- Retro computing / CRT monitor style
-## 🔧 Customization
+## Customization
If you want to customize the loading screen appearance, you can modify the colors and sizes in `src/lua_core.c` in the `drawLoadingScreen()` function.
-## ⚡ Performance Tips
+## Performance Tips
1. **Call UpdateAssetLoading AFTER loading** - This ensures the progress updates at the right time
2. **Load assets in order of importance** - Load critical assets first
3. **Group similar assets** - Load all textures, then sounds, etc.
4. **Use descriptive names** - Shows better feedback to users
-## 📋 Example Asset Loading Patterns
+## Example Asset Loading Patterns
### Pattern 1: Simple List
```lua
@@ -260,26 +241,26 @@ end
RL.EndAssetLoading()
```
-## 🎮 When to Use
+## When to Use
-**Use the loading system when:**
+Use the loading system when:
- You have more than 5-10 assets to load
- Assets are large (images, sounds, fonts)
- Loading might take more than 1 second
- You want polished loading feedback
-**You can skip it when:**
+You can skip it when:
- You have very few, small assets
- Loading is nearly instant
- You prefer immediate game start
## ✨ Benefits
-- ✅ Polished user experience
-- ✅ User knows the game is loading, not frozen
-- ✅ Shows progress for large asset sets
-- ✅ Works with embedded assets
-- ✅ Minimal code required
-- ✅ Beautiful default UI
+- Polished user experience
+- User knows the game is loading, not frozen
+- Shows progress for large asset sets
+- Works with embedded assets
+- Minimal code required
+- Beautiful default UI
The loading system makes your game feel polished with just a few lines of code!