Releases: Hoshiruna/LuaSTG-Retro
Releases · Hoshiruna/LuaSTG-Retro
Release list
LuaSTG Retro v0.0.2
Full Changelog: v0.0.1...v0.0.2
Custom resource pools, asynchronous loading, Lua hot reloading, and SQLite support.
- Lua API
- NEW:
lstg.ResourceManager.createPool(name:string): ResourcePool - NEW:
lstg.ResourceManager.getPool(name:string): ResourcePool? - NEW:
lstg.ResourceManager.destroyPool(pool:ResourcePool) - NEW:
lstg.ResourceManager.setLookupOrder(pools:ResourcePool[]) - NEW:
lstg.ResourceManager.getLookupOrder(): ResourcePool[] - NEW:
lstg.ResourceManager.getPools(): ResourcePool[] - NEW: Pool loader methods for textures, videos, sprites, animations, particles, audio, fonts, effects, models, and render targets.
- CHANGED:
lstg.Load*andlstg.CreateRenderTargetnow take a pool name orResourcePoolas their first argument. - CHANGED: Resource lookup follows the order set by
lstg.ResourceManager.setLookupOrder. - REMOVED:
lstg.SetResourceStatus,lstg.GetResourceStatus,lstg.RemoveResource,lstg.CheckRes, andlstg.EnumRes.
- NEW:
- Async Lua API
- NEW:
lstg.LoadTextureAsync,LoadVideoAsync,LoadImageAsync, andLoadAnimationAsync. - NEW:
lstg.LoadPSAsync,LoadSoundAsync, andLoadMusicAsync. - NEW:
lstg.LoadFontAsync,LoadTTFAsync, andLoadTrueTypeFontAsync. - NEW:
lstg.LoadFXAsyncandLoadModelAsync. - NEW: Matching
ResourcePoolmethods:loadTextureAsync,loadVideoAsync,createSpriteAsync,createAnimationAsync,loadParticleAsync,loadSoundAsync,loadMusicAsync,loadSpriteFontAsync,loadTTFAsync,loadTrueTypeFontAsync,loadFXAsync, andloadModelAsync. - NEW:
lstg.FileManager.ReadFileAsync(path:string): AsyncResourceJob. - NEW:
AsyncResourceJob:status(): string - NEW:
AsyncResourceJob:isDone(): boolean - NEW:
AsyncResourceJob:error(): string? - NEW:
AsyncResourceJob:read(): boolean|string|nil, string? - NEW:
AsyncResourceJob:cancel(): boolean
- NEW:
- Lua modules
- NEW:
require("luasql.sqlite3")provides SQLite through LuaSQL. - NEW: Lua hot reloading is available from the ImGui debugger.
- NEW:
- Tools and engine
- Added a DAT archive builder and updated DAT archive handling.
- Added resource-pool logging and an ImGui resource status view.
- Improved asynchronous texture, font, shader, audio, and video handling.
- Localized several engine log messages.
- Build
- Added AMD64 Ninja Debug and Release presets.
- Added
windows-ninja-amd64-releaseas a CMake workflow preset. - Updated GitHub Actions dependencies and CI configuration.
- Removed the documentation Git submodule.
- Fixes
- Fixed inconsistent async resource variable names.
What's Changed
- Modify the simple custom SQLite support to use the LuaSQL implementation by @Hoshiruna in #10
- build(deps): bump actions/checkout from 6 to 7 by @dependabot[bot] in #11
- build(deps): bump actions/cache from 5 to 6 by @dependabot[bot] in #12
- feature/custom resource pool by @Hoshiruna in #13
- imgui tweak #1 by @Hoshiruna in #14
- Imgui Resource Pool Status Interface by @Hoshiruna in #15
LuaSTG Retro v0.0.1 Pre-release
Pre-release, includes the following updates:
-
API addition:
lstg.SwapChain.ScalingMode.integer_aspect_ratiohas been added.- This mode preserves the canvas aspect ratio and prefers integer scaling for sharper pixel output.
- If no valid integer scale fits the window, it falls back to normal aspect-ratio scaling.
-
API addition:
lstg.DiscordRPChas been added. -
Support for managing game resources and assets using the DAT archive format is now available.