fix broken nullptr handling in asc_shader_use() - fixes #696

clean up the messy shader code specification

vastly deduplicate shader creation code

slightly improve error handling

resolve several minor TODOs

remove outdated TODO comments

add more vector arithmetic functions

improve snap-to-grid-movement

snap the movement to the grid

use new point-of-origin for 2d primitives

remove global active font and color (also fixes #693)

add a tiled game field

fix wrong allocation sizes when allocating the shader info structs

fix that empty nodes fail to recalculate world transforms in the scene graph

improve asc_scene_node_allocate_data()

fix accidental overwrite of the update flag when creating text

improve OpenGL error handling

add asc_scene_node_init() - fixes #695

complete basic movement

hack a quick example for both rotation directions

rework how transformations work to allow rotations around a point of origin

add function to apply a matrix to a vector

fix wrong row/column access in asc_mat4f_mul()

add functions for sin() and cos() with increased precision when the return value is supposed to be zero

add rotation functions, but rotation with special point of origin is still broken

add conversion functions between degrees and radians

remove ui subdir in includes

add log message when removing a behavior

remove dependency to AscSprite from AscText

improve signature of asc_sprite_set_size()

improve signatures of other text functions and make them linkable symbols

improves signature of asc_text_printf() and adds documentation

rename asc_memcmp() to asc_memcmpc() to avoid confusion with regular memcmp()

optimize asc_memcmp() by enabling the compiler to use SIMD instructions

remove functions that construct a transform from position/rotation/scale

remove separate vectors for position, rotation, scale from scene node

enclose GCC attribute with an ifdef

make asc_clamp() generic and support all common types

rename asc_recti to just asc_rect (there won't be an asc_rectu)

fix make dependencies for behavior.o

add asc_recti_center()

remove test behavior for score counter

add asc_behavior_get_name()

remove unnecessary second parameter from asc_util_gen_name()

add names to behaviors

fix formatting of generated names of scene nodes

create utility to generate names - resolves #694

fix typo in ASC_FLAG_INITIALIZED

add asc_behavior_remove()

improve macros in datatypes.h - fixes #692

resolve TODOs regarding input.h

add ellipsis shader - resolves #385

fix typo in struct name

create prototype for creating ellipsis

optimize asc_col_itof()

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

(0) -100 -64 tip

mercurial