Releases: Chukobyte/crescent
Releases · Chukobyte/crescent
v0.17.0
v0.16.0
- Initial particle 2d system implementation.
- Replaced ecs implementation with seika framework's
- Rough tilemap skeleton. Will most likely implement in a patch or the next release.
- Lerping previous frame with current for smoother visuals (especially with fixed time step). Will most likely make more changes later.
- Various bug fixes from previous CPython to pocketpy change.
v0.15.0
v0.14.1
v0.14.0
- Added 'stagger animation start times' property to
AnimatedSprite
nodes. This is useful for when you have multiple instanced of the same animation and you won't them to run at different times so they aren't on the same exact timing. - Can now get and set the Node2D's property
z_index_relative_to_parent
from the python-api. - Abstracting SDL2 references from the engine project.
- Refactored input a bit to prepare to send input events to scripting apis (python-api for now). Also fixed bugs with some inputs overwriting others and right analog and left trigger values being swapped.
- Bug fix: Not including the embeddable python zip for windows export from the editor.
v0.13.0
- Can configure min and mag filter on fonts
- Can get current custom screen shader instance through python api
- Fixed bug with setting text label color's with python api
- Fixed game export issues with read .wav files, parsing shaders, and generating plist files for macos
- Fixed audio manager bug where audio instances would sometimes be NULL
- Python API - Added copy functions to Vector2 and Color classes.
v0.12.0
- Added
TIME
as global shader param to screen and sprite shader types. - Renamed
_physics_update
to_fixed_update
to more accurately describe fixed time step. - Added
set_current_animation_frame
function toAnimatedSprite
nodes. - Added proper python error handling in script context.
- Added python api function
World.get_delta_time()
. - Added
SE_ENSURE
for non-fatal asserts which includeALWAYS
andFMT
variants. Also trigger breakpoints forSE_ASSERT
. - Bug fixes:
- Fixed bug with calling play on
AnimatedSprite
didn't actually play the animation when it was stopped. - Fixed bug with crashing stop function on
AnimatedSprite
. - Fixed issue with setting up initial shader params.
- Fixed issue with shader instances not having separate uniform params and not cleaning up properly.
- Fixed bug with calling play on
v0.11.0
- Added rumble support for gamepads. Python API now has functions
Input.start_gamepad_vibration
andInput.stop_gamepad_vibration
. - Game project config files now include crescent engine version.
- Can now pass in
fontUID
andposition
when callingEngine.set_fps_display_enabled
. Will use default font if nofontUID
is passed in. Also setz_index
to max to draw text over everything. - Bug fixes
- Register components when entity enters scene. Component systems would operate on entities not in the scene.
Camera2D.get_position
now returns the actual camera viewport's position instead ofNone
.
v0.10.0
- Editor now works on macos
- Fixed issue with pixel perfect rendering when the draw source dimensions for a sprite/animated sprite is the same size as the texture.
- Updates to python api
- Added
is_queued_for_deletion
property - Added
get_full_time_dilation_with_physics_delta
function to get a node's time dilation multiplied by physics delta time. Useful outside of_physics_update
.
- Added
v0.9.0
- A game's aspect ratio can be maintained in the game window. Adds horizontal or vertical black bars.
- Can load scene files within scripts as
PackedScene
instances, create node instances from them, and add them to a scene. - Audio source pitch can be updated from scripts.
- Can set
modulate
,flip_h
, andflip_v
forSprite
andAnimatedSprite
nodes. - Bug fixes
- Some node based components wouldn't be ready when calling
Node.new()
. _update
and_physics_update
would sometimes be called before aNode
was added to a scene.
- Some node based components wouldn't be ready when calling