Updated plans for alpha 2

This commit is contained in:
Tefek 2020-09-10 00:46:19 +02:00
parent dd5992ab5e
commit 817ef9e6f8
4 changed files with 46 additions and 1 deletions

29
NEXT_RELEASE_DRAFT.md Normal file
View File

@ -0,0 +1,29 @@
## Features targeted for 20.2.0.0-alpha.2
* The stage subsystem
* A "stage", in this context, is a set of assets bound together
by programming logic, not necessarily a game level.
Stage switching and asset management are handled by the engine.
* Upon stage switch
1. Unload unused assets
2. Load new assets
* Provide multiple means of stage switching
* Three modes with the initial release
1. Instant switch
* Assets will be loaded and unloaded synchronously
* The stage switch will happen in one frame
2. Deferred switch
* The stage will continue running until all assets load
* Assets will load synchronously, but at a slower pace
to avoid frame stutter
3. Asynchronous switch
* Assets will be loaded in asynchronously, where applicable
* Falls back to deferred switching for synchronous loading,
such as OpenGL texture upload
* Automated asset loading
* All asset management will eventually be handled by `PlutoCore`
* This includes audio clips, textures, sprites
* Add a common interface for all assets
* Let the stage system handle audio playback
* This API should be as neutral as possible and avoid steering towards
game-only use

View File

@ -42,6 +42,7 @@ version numbers.*
### Very high priority
* Finishing PlutoAudio
* Depends on the stage system
* Further engine restructure
### High priority

View File

@ -1,3 +1,6 @@
## 20.2.0.0-alpha.2
* `build.gradle` Extracted the version numbers into separate variables
## 20.2.0.0-alpha.1
* `[PlutoLib#cz.tefek.pluto.io.logger]` Refactored the Logger subsystem
* Renamed `Logger#logException` to `Logger#log` to match the rest

View File

@ -4,11 +4,23 @@ wrapper {
distributionType = Wrapper.DistributionType.ALL
}
project.ext.versionYear = 20
project.ext.versionMajor = 2
project.ext.versionMinor = 0
project.ext.versionPatch = 0
project.ext.isPrerelease = true
project.ext.prereleaseName = "alpha"
project.ext.prerealeaseUpdate = 2
allprojects {
apply plugin: 'java'
group = "cz.tefek"
version = "20.2.0.0-alpha.1"
version = isPrerelease ?
"${versionYear}.${versionMajor}.${versionMinor}.${versionPatch}-${prereleaseName}.${prerealeaseUpdate}"
:
"${versionYear}.${versionMajor}.${versionMinor}.${versionPatch}"
tasks.withType(JavaCompile) {
options.encoding = "UTF-8"