optimize asc_col_itof() default tip

improve "polymorphic" typing of shaders

add abstractions that allow removing dependencies to glew.h

add functions to upload common uniforms

update make dependencies

add frame_rate and frame_factor to context

add TODO for reducing size of AscInput

change NULL-safety for shaders s.t. errors are reported only once per shader

improve NULL-safety - fixes #690

fix segfault when a shader does not compile

improve the combination of shader preprocessor flags

add combination of filled rectangle with a border

implement rounded corners

use functions instead of Boolean logic

change order of members in asc_behavior_create_args so that you can just specify the func without designators

add new ui.c where several UI functions are now moved to

add auto-scaling of UI depending on screen resolution - resolves #682

since we cannot pass NULL strings anyway, we do not need cxstring

fix that some drivers fail to compile a shader when a code line is NULL with length zero

adds first basic rectangle shader

make draw function dynamic

resolve east-west conflict

implement interval for behaviors - fixes #383

compute frame time before syncing to avoid div-by-zero in first frame

fix micro fail

consistent naming of structs and their typedefs

do not try to use one distinct render group for each different shader

prepare implementation of primitives

fix includes in glcontext.c

implement edge-triggered key press/release

add dynamic reload of all shaders

refactor shader management - resolves #684

add option to enable ASan

remove pre-defined dummy textures by introducing conditional compilation for shaders

fix incorrect flip of viewport y-axis

remove the need for a second pair of texture coordinates

rename parameters of asc_set_rotation()

add possibility to modify the node's transformation matrix

move flag macros to datatypes.h

remove outdated functions

add 2D affine transformations

add functions to scale vectors

add UI scaling

remove unused context variable

update to most recent ucx 3.2 preview

remove GCC attributes which are rarely helpful - resolves #663

add TODO for fixing color type conversion

make FPS counter readable

replace all stdlib malloc/free with UCX allocator

add viewport_clear flag to camera settings

replace backdrop with an incomplete idea of what it should be some day

fix texture scaling

apply texture scaling

implement texture scaling

replace scaling with correct mesh sizes

refactor rendering 1/3 - create new mesh structs

give them nodes names

change node's free function to a destroy function

extract execution of behaviors from draw function

change naming convention for functions that are hidden behind macros

replace mempool with custom cleanup functions

use new UCX 3.2 cxListEmplace()

add AscBehavior - prepares resolution of issue #646

remove stdio include from error.h

bring back error.h to reduce compile dependencies

improve datatypes

fix wrong flags in toolchain.mk files after updating uwproj + add gcc config with extra warnings

update uwproj

remove separate depth attribute and use the z-coordinate instead

add backdrop scene

change asc_scene_init() to also request parameters for camera initialization

add aspect-ration independent rendering

add deploy target for the demo program

fix missing update_transform() call when creating a sprite

add scenes, but they don't draw yet

in preparation of more scenes, bring back AscScene struct

fix scene node flags defined in incorrect header

add memory pool to gl context

apply new logging macros

improve error.c functions

fix probably incorrect array access of struct members

use refcounted objects for textures instead of pass-by-value int structs

add support for 2d textures in sprite shader - fixes #386

skip sprite rendering when there are no sprites in the scene

make asset paths configurable

fix debug output

put snake test program into separate directory

implement view matrix in sprite shader

add generic mesh draw function and move sprite draw function to separate unit

create catch-all util for GL errors + refactors mesh creation

some minor improvements

auto-extend buffer when loading shader code

go back to reading shader code from files

prepare code for embedding shader sources with c23 #embed

update to newest versions of uwproj and ucx

revert introduction of high level ucx trees and stick to the low level API

(0) -100 -96 tip

mercurial