10 KiB
Executable File
10 KiB
Executable File
22.3.0.0-alpha.1
[PlutoComponent]
Removing components using a token should have the same semantics as removing individual components[PlutoComponent]
Made the addition and removal of components hookable before mount events are fired
22.3.0.0-alpha.0
[SDK]
CombinedPlutoFramebuffer
,PlutoMesher
,PlutoShader
andPlutoTexture
intoPlutoRender
- Unified the package structure
[SDK]
Added the license text to all source files to conform with the MIT license requirementsplutoengine-demos/jsr-clone
Added a proper license file for the music
22.2.0.0-alpha.2
[SDK]
The libraries now always reference natives for all architectures[SDK]
ReplacedNEXT_RELEASE_DRAFT.md
with an issue tracker[PlutoAudio]
Partial rewrite and support for managed sound effectsplutoengine-demos/
Added thejsr-clone
demo[PlutoSpritesheet]
RenamedTemporalSprite#getSideCount
togetFrameCount
22.2.0.0-alpha.1
[PlutoGUI]
Added support for bitmap fonts[PlutoGUI]
Generalized the font renderer APIplutoengine-demos/
Removed third-party fonts[PlutoRuntime]
TheModLoader
component is now opaque, pre-added mods are now specified when creating the token[PlutoRuntime]
Added a linting annotation toLogger#logf
[PlutoRuntime]
Fixed a bug where creating relative resource paths from URIs was not possible[PlutoLib]
FixedtoRGBA
inHSB
andHSBA
[PlutoLib]
AddedBasicInterpolation
[PlutoSpritesheet]
Addedrecolor(IRGBA)
toRectangleRenderer2D
andRenderer2D
[PlutoSpritesheet]
AddedTemporalSprite
andOrientedSprite
22.2.0.0-alpha.0
[PlutoComponent]
Added support for dependencies and strengtened type checks[PlutoComponent]
RemovedIComponent
as it was redundant toAbstractComponent
[Pluto*]
Removed JSR 305 annotations in favor of JetBrains annotations[Pluto*]
Removed theConstantExpression
annotation in favor ofContract
[PlutoRuntime]
MovedThreadSensitive
toorg.plutoengine.address
[PlutoAudio]
Transformed into a PlutoLocalComponent[PlutoAudio]
IAudioStream
is nowAutoCloseable
[PlutoCore]
InputBus
is now tied to a specificDisplay
instead of searching for one in the Local[PlutoCore]
SeparatedMouse
andKeyboard
fromInputBus
into child components[PlutoCore]
Added aninit()
method that gets called before entering the main loop
22.1.0.0-alpha.1
plutoengine-demos/basic-application
Made the gradient in the fragment font shader rotatable
22.1.0.0-alpha.0
[PlutoMesher]
Partial rewrite- Removed
VecArray
- Reduced pointless abstraction
- Creation and destruction no longer logged
- Removed
[PlutoGUI]
Complete rewrite of the GUI library[Pluto*]
Unified the cleanup methods of all OpenGL object classes toclose
[PlutoLib]
New dependency:joml-primitives
[PlutoLib]
Now has amodule-info.java
[PlutoLib]
Now uses JetBrains annotations instead of JSR 305[PlutoDisplay]
Removed theflipped
word from all buffer functions[PlutoRuntime]
Fixed opening .zip filesystems[PlutoShader]
AddedUniformArrayFloat
,UniformArrayRGBA
,UniformArrayVec2
,UniformArrayVec3
,UniformArrayVec4
[PlutoRuntime]
SmartSeverity.MODULE_CHECK
now correctly uses the standard output instead ofstderr
.
22.0.0.0-alpha.7
[PlutoRuntime]
Fixed several resource filesystem bugs
22.0.0.0-alpha.6
[PlutoSpritesheet]
Added a constructor toPartialTextureSprite
that initializes the spritesheet tonull
22.0.0.0-alpha.5
[PlutoRuntime]
Fixed module load ordering
22.0.0.0-alpha.4
[PlutoRuntime]
Implemented optionalResourceFileSystem
features
22.0.0.0-alpha.3
[SDK]
Extensions are now published via GitHub actions
22.0.0.0-alpha.2
[SDK]
Created a new extension project category[PlutoUSS2]
Now an extensionPlutoLib
no longer depends onPlutoUSS2
[PlutoGameObject]
ReimplementedRAID
as a Pluto extension
22.0.0.0-alpha.1
[SDK]
Jar sources and JavaDoc are now published[PlutoRuntime]
Mod
objects now properly contain the version number
22.0.0.0-alpha.0
- Version bumped to 2022
[SDK]
Maven version is now properly set again
20.2.0.0-alpha.3
[SDK]
Restructured the repository- All build scripts are now written in Kotlin
- Added runnable examples
- Upgraded to Java 17 to take advantage of new language features and a more efficient JVM
- The repostiory now contains examples
- Moved all classes to the
org.plutoengine
package - Removed the prepackaged JVM wrapper introduced in the previous alpha
as it caused numerous issues
- In the future, JDKs will be packaged with the SDK
[PlutoComponent]
Added PlutoComponent as a new module[PlutoLib]
PlutoLib
now depends onPlutoComponent
[PlutoUSS2]
Added USS2 as a new module[PlutoLib]
PlutoLib
now depends onPlutoUSS2
[PlutoLib]
Greatly simplified the API and moved PlutoEngine specific classes toPlutoRuntime
- Moved the module system to
PlutoRuntime
- Removed
ResourceSubscriber
,
- Removed
- Removed
cz.tefek.pluto.io.pluto.pp
- Removed
RAID
- Moved
Logger
,OutputSplitStream
toPlutoRuntime
- Removed
Severity
, useSmartSeverity
instead - Removed
TextIn
,TextOut
,ResourceImage
andResourceInputStream
- Use Java's NIO instead
- Removed
StaticPlutoEventManager
as the implementation was too obscure- The module system now uses its own event management
- Removed the
EventData
class
- Moved the module system to
[PlutoRuntime]
Added PlutoRuntime as a new module- Completely rewrote the module system
- Removed support for external mods as the feature needs a complete overhaul
- Revamped resource system now based on NIO
- Moved the logging system from
PlutoLib
toPlutoRuntime
- Made
OutputSplitStream
public as it is now reusable - Added the Version API
- Added the
IVersion
interface- Added support for version objects
- As a result, all fields in
Pluto
except the version string are no longer compile-time constants
- Added the
- Added the
@ConstantExpression
annotation
- Completely rewrote the module system
[PlutoDisplay]
RenamedPlutoStatic
toPlutoDisplay
- Added the
ModGLFW
virtual module DisplayErrorCallback
and simplified the callbacks inDisplay
- Added the
[PlutoCommandParser]
Module discontinued as a part of PlutoEngine, it will still be developed seprately[PlutoTexturing]
Renamed toPlutoTexture
- Removed
Texture#load(String)
andTexture#load(String, MagFilter, MinFilter, WrapMode...)
- Removed
[PlutoLib]
The transitive dependency JOML is now provided byPlutoLib
instead ofPlutoStatic
[PlutoLib]
Created a simple Color API[PlutoLib]
Added the 8-bit RGBAColor
class as a counterpart to AWT'sColor
class[PlutoLib]
Added theRGBA
andRGB
single precision float color objects[PlutoLib]
Added the respectiveIRGBA
andIRGB
read-only interfaces[PlutoLib]
Added theHSBA
andHSB
single precision float color objects[PlutoLib]
Added methods to convert between HSBA, RGBA, HSB and RGB[PlutoShader]
Added theUniformRGBA
andUniformRGB
shader uniform types
[PlutoCore]
MadePlutoApplication
's constructor protected[PlutoLib]
MiniTimeParseException
no longer contains a hardcoded String message
20.2.0.0-alpha.2
build.gradle
Extracted the version numbers into separate variablesbuild.gradle
[experimental]gradlew
should now automatically download JDK11 when neededbuild.gradle
Updated the build scripts and added source Maven publication[PlutoLib]
Renamed thecz.tefek.pluto.eventsystem
package tocz.tefek.pluto.event
- Moved all subpackages
[PlutoLib]
Minor code cleanup incz.tefek.pluto.modloader.event
[Pluto]
MovedTPL
fromcz.tefek.pluto.tpl
tocz.tefek.pluto.io.tpl
[PlutoMesher]
Renamed all occurrences ofattrib
toattribute
- Renamed
VertexArray#createArrayAttrib
toVertexArray#createArrayAttribute
- Renamed
VertexArray#getVertexAttribs
toVertexArray#getVertexAttributes
- Renamed
[PlutoCore]
MadePlutoApplication.StartupConfig
fields private, options can now only be modified only through public setters[PlutoLib]
Added theThreadSensitive
annotation[PlutoLib]
RenamedMiniTimeCouldNotBeParsedException
toMiniTimeParseException
[PlutoCore]
RefactoredInputBus
and added several convenience methods[PlutoCore]
Refactored input callbacks
[PlutoStatic]
Slight cleanup in theDisplay
andDisplayBuilder
classes
20.2.0.0-alpha.1
[PlutoLib#cz.tefek.pluto.io.logger]
Refactored the Logger subsystem- Renamed
Logger#logException
toLogger#log
to match the rest of log methods and updated references to this method accordingly - Streamlined
StdOutSplitStream
andStdErrSplitStream
into a more generalizedOutputSplitStream
Logger
's output filenames now look cleaner withlog--YYYY-MM-DD--HH-MM-SS.txt
[Logger#setup]
can now throwIOException
[PlutoCore]
As a result,[PlutoApplication#run]
can now throwException
- Renamed
[PlutoLib]
Updated JavaDoc inResourceAddress
,TPL
,TPNImage
[PlutoLib]
Code cleanup inMiniTime
,TPL
[PlutoLib]
DeprecatedTPL#load(String)
in favor ofTPL#load(ResourceAddress)
,TPL#load(File)
andTPL#load(Path)
[PlutoTexturing]
Deprecated theString
variant ofTexture#load
to reflect this change[PlutoSpritesheet]
Removed the usage of this method inDisposablePlaceholderSprite
[PlutoLib]
Added an option to flip loaded images withTPL#loadImageSpecial
and added respectiveTPL#loadSpecial
for everyTPL#load
[PlutoLib]
RemovedTPJImage
[PlutoLib]
RemovedTPL#loadPixels
[PlutoCore]
UpdatedGLFWImageUtil
to remove the usage ofTPJImage
[PlutoCore]
[PlutoApplication]
now properly closes theLogger
on exit[PlutoLib]
Various typo fixes[Pluto*]
DeprecatedSeverity
forSmartSeverity
and replaced all usages[Pluto*]
ReplacedCRLF
withLF
in all Java source files