1.9 KiB
1.9 KiB
Place your game assets here
Recommended Structure
assets/
├── images/
│ ├── player.png
│ ├── enemy.png
│ └── background.png
├── sounds/
│ ├── jump.wav
│ └── shoot.wav
├── music/
│ └── theme.ogg
└── fonts/
└── game_font.ttf
Sprite Sheet Guidelines
Grid-Based Animations
- Use equal-sized frames arranged in a grid
- Frames are read left-to-right, top-to-bottom
- Example: 32x32 pixel frames
Example Layout
Frame 1 Frame 2 Frame 3 Frame 4
Frame 5 Frame 6 Frame 7 Frame 8
Recommended Sizes
- Player: 32x32 or 64x64
- Enemies: 32x32
- Effects: 16x16, 32x32, or 64x64
- Backgrounds: Match your game resolution
Audio Guidelines
Sound Effects
- Format: WAV (uncompressed) or OGG (compressed)
- Short sounds (< 2 seconds): Use WAV
- Length: Keep under 5 seconds for quick loading
Music
- Format: OGG (recommended for size)
- Use streaming (LoadMusicStream) for music
- Sample rate: 44100 Hz recommended
Loading Assets
In Lua
-- Images
local playerImg = RL.LoadTexture("assets/images/player.png")
-- Sounds
local jumpSound = RL.LoadSound("assets/sounds/jump.wav")
-- Music (streaming)
local music = RL.LoadMusicStream("assets/music/theme.ogg")
-- Fonts
local font = RL.LoadFont("assets/fonts/game_font.ttf")
With Loading Screen
local assetsToLoad = {
"assets/images/player.png",
"assets/sounds/jump.wav",
"assets/music/theme.ogg"
}
RL.BeginAssetLoading(#assetsToLoad)
for _, asset in ipairs(assetsToLoad) do
RL.UpdateAssetLoading(asset)
-- Load the asset...
end
RL.EndAssetLoading()
Tips
- Keep asset sizes reasonable (< 2MB per file for quick loading)
- Use PNG for images with transparency
- Use JPG for photos/backgrounds (smaller size)
- Optimize images before adding to game
- Test loading times during development