|
a0ea657eb9
|
twn_audio: settle down on float32 2-channel sampling only, format enums to style used elsewhere
|
2024-10-01 12:59:01 +03:00 |
|
|
57fe5e8946
|
implement game configuration file
this integrates https://github.com/cktan/tomlc99 into the repo as a dependency
|
2024-10-01 12:48:42 +03:00 |
|
|
078e68387b
|
replace per-tick allocations in push_text with an arena/bump allocator
|
2024-09-27 15:02:24 -03:00 |
|
|
0481962859
|
twn_audio.c: no push api for stb_vorbis.h
|
2024-09-27 18:04:16 +03:00 |
|
|
90361d1caf
|
twn_util.c: fix redundant and erroneous NULL placement in expand_asterisk()
|
2024-09-27 17:55:33 +03:00 |
|
|
2b25ac8c21
|
twn_util.c: add twn_util_c.h include for definitions
|
2024-09-27 17:50:24 +03:00 |
|
|
f4b52b5450
|
make textures_dump_atlases work again and expose it as a utility function
|
2024-09-26 21:32:08 -03:00 |
|
|
0e68ecbc88
|
twn_loop.c: add --debug and --release overrides, fix incorrect argv iteration
|
2024-09-26 20:48:42 -03:00 |
|
|
64d1c20b4a
|
twn_util.c: make alloc failure death message clearer
|
2024-09-26 19:37:46 -03:00 |
|
|
5d6a3a5aec
|
remove/replace unused includes
|
2024-09-26 21:38:24 +03:00 |
|
|
c0dcdf8c0a
|
twn_skybox.c
|
2024-09-26 21:02:56 +03:00 |
|
|
0fe1023667
|
use SDL stdlib where possible
|
2024-09-25 19:42:34 -03:00 |
|
|
65425f5b2e
|
twn_textures.c: stream-based texture load
|
2024-09-25 18:01:50 +03:00 |
|
|
1430a13832
|
twn_textures.c: use SDL memory allocation, use SDL_LoadFileRW in texture file loading
|
2024-09-25 17:41:15 +03:00 |
|
|
34a081fccd
|
rename get_text_width() to text_get_width()
|
2024-09-23 15:06:58 -03:00 |
|
|
73bf92e706
|
typedef & PascalCase for ALL structs and enums
|
2024-09-23 14:43:16 -03:00 |
|
|
e093a6d492
|
twn_textures.c: handle RGB image files
|
2024-09-23 14:35:46 +03:00 |
|
|
c8469e9416
|
twn_textures.c: actually fix srcrect updating lol
|
2024-09-23 14:07:02 +03:00 |
|
|
ce582d8a80
|
twn_textures.c: support for .so rodata inference
|
2024-09-23 12:50:44 +03:00 |
|
|
0ef8a6233f
|
twn_textures.c: fix srcrect setting on atlas rebuild
|
2024-09-23 11:51:18 +03:00 |
|
|
535d5d8d36
|
twn_textures.c: little pieces
|
2024-09-23 09:50:48 +03:00 |
|
|
66678a27cf
|
twn_textures.c: add debug hints about unportable texture dimensions
|
2024-09-23 09:35:46 +03:00 |
|
|
5caf736370
|
twn_rendering: m_sprite texture_origin changed for texture_region, stretched subregion work now
|
2024-09-21 20:07:05 +03:00 |
|
|
ddf0ef6a0c
|
twn_util.c: use more appropriate SDL functions for intersect_(f)rect
|
2024-09-20 22:57:55 -03:00 |
|
|
999cb78358
|
rename intersect_(f)rect to overlap_(f)rect and add simplified functions with the old names
|
2024-09-20 13:39:37 -03:00 |
|
|
5cc36ab46c
|
twn_input.c: fix scancode unbinding (ie make it actually work lol)
|
2024-09-20 12:39:37 -03:00 |
|
veclavtalica
|
8effcc0421
|
make baby windows work again
|
2024-09-18 20:36:00 +03:00 |
|
|
691d781827
|
text rendering over vertex arrays, rework fully done, finally
|
2024-09-18 19:01:43 +03:00 |
|
|
16c96010dc
|
finally compiling and running, text still needs rework
|
2024-09-16 16:17:00 +03:00 |
|
|
551d60ef85
|
partially done work on total source tree rework, separation of engine context and game context, generalization of renderer for different backends as well as web platform target
|
2024-09-16 09:07:01 +03:00 |
|
veclavtalica
|
e74cc6bf94
|
remove symlink as windows is shit, src to townengine
|
2024-07-30 22:31:18 +03:00 |
|
|
222b68c0a3
|
flickering fixed !
|
2024-07-31 01:12:45 +03:00 |
|
|
967ed0ea9b
|
no mouse change when not captured
|
2024-07-31 00:18:01 +03:00 |
|
|
7f1efce310
|
get the flycam going already
|
2024-07-30 18:05:28 -03:00 |
|
|
f00bae7cfc
|
use alpha test instead of blend for 3d
|
2024-07-30 23:57:39 +03:00 |
|
|
8a66bc43e4
|
bypass of near/far planes for 2d case, hints for perspective correction, flat shading for 2d
|
2024-07-30 23:37:34 +03:00 |
|
|
b12c5e31c3
|
fix dot product
|
2024-07-30 21:56:23 +03:00 |
|
|
ea664944bb
|
set depth range for 3d, flush 3d before starting with 2d
|
2024-07-30 21:43:08 +03:00 |
|
|
81015b1079
|
limit framebuffer, no error context on release, catching init errors
|
2024-07-30 20:29:00 +03:00 |
|
|
94ce701dae
|
perlin2d, sample terrain render
|
2024-07-30 19:36:59 +03:00 |
|
|
a4cb50687e
|
private the texture.c/.h, remove vestigial circle hash table from ctx
|
2024-07-30 18:31:38 +03:00 |
|
|
2a8f4b1bdc
|
clean the t_ctx a bit
|
2024-07-30 18:19:04 +03:00 |
|
|
7bfcb26352
|
move applcation callback declarations to game_api.h to ease warnings
|
2024-07-30 18:15:31 +03:00 |
|
|
0b215acbdf
|
use t_frect for texture dimentions
|
2024-07-30 18:09:21 +03:00 |
|
|
ea29f2c5f0
|
working camera
|
2024-07-30 18:05:05 +03:00 |
|
|
4a924cb2a9
|
new option-based api for sprite issue
|
2024-07-30 15:30:35 +03:00 |
|
|
06ce0eb13a
|
option macros
|
2024-07-30 15:22:07 +03:00 |
|
|
142321d458
|
fix indentation
|
2024-07-30 03:16:46 +03:00 |
|
|
e93d5eb863
|
move and rename private/audio.h to audio/internal_api.h
|
2024-07-30 03:16:46 +03:00 |
|
|
c702bd5002
|
audio.h: fix a volume blunder
|
2024-07-30 01:31:05 +03:00 |
|
|
a99cb340d8
|
application separation
|
2024-07-30 01:22:04 +03:00 |
|
|
922e521867
|
better access to townengine headers from any point in source tree
|
2024-07-29 23:40:15 +03:00 |
|
|
ff077c5d0d
|
separation to vec.h, generic vector ops, camera class and its usage for spatial rendering
|
2024-07-29 15:21:39 +03:00 |
|
|
86d135281e
|
proper getting of window size on resize
|
2024-07-29 14:01:46 +03:00 |
|
|
0697f845dd
|
move and rename private/rendering.h to rendering/internal_api.h
|
2024-07-29 13:20:11 +03:00 |
|
|
9181e43fcc
|
rename to townengine
|
2024-07-29 13:06:23 +03:00 |
|
|
cbd567c4cb
|
move and rename private/textures.h to textures/internal_api.h
|
2024-07-29 12:53:03 +03:00 |
|
|
e8ff04b3e6
|
rendering.c: non-square rotating sprites
|
2024-07-29 12:43:46 +03:00 |
|
|
8a0f767002
|
disable depth wirte for blended, less or equal depth func for seethrough
|
2024-07-29 00:08:53 +03:00 |
|
|
3edd692771
|
automatic detenction of texture mode and batching based on it
|
2024-07-28 23:59:23 +03:00 |
|
|
945b1d21fe
|
add const qualifiers on color puns
|
2024-07-28 22:23:28 +03:00 |
|
|
8846e788b2
|
aligned for vectorization commor primitives, uint32_t cast for color comparison in batch collection
|
2024-07-28 22:17:53 +03:00 |
|
|
b9188d8d8a
|
rendering.c: sprite constant color that isn't just white only
|
2024-07-28 16:25:25 +03:00 |
|
|
20e33fe30d
|
rendering.c: sprite batches with no color information when appropriate
|
2024-07-28 16:06:47 +03:00 |
|
|
ea4d12212c
|
rendering.c: fast cos from sin calculation, with lossy fast_sqrt()
|
2024-07-28 14:39:23 +03:00 |
|
|
5ddf0eb879
|
elf.c: section limit inference for linux, fixes for stb_ds.h hashing, more compilation flags
|
2024-07-28 01:44:39 +03:00 |
|
|
36dcf14db7
|
resize viewport of window maximization/minimization
|
2024-07-27 18:01:45 +03:00 |
|
|
910e45a44b
|
rendering.c: fix sprite uv in batches, fix alpha blending of texture atlas
|
2024-07-27 17:55:57 +03:00 |
|
|
f5ba4a75bd
|
rendering.c: only update opengl viewport once it's actually changed
|
2024-07-27 17:10:08 +03:00 |
|
|
79bc261ccd
|
rendering.c: sprite rotation
|
2024-07-27 16:55:38 +03:00 |
|
|
687e42ddfd
|
rendering.c: sprite texture flipping
|
2024-07-27 15:44:34 +03:00 |
|
|
c529e6ee4e
|
rendering.c: correct-er order and settings of of 2d and 3d
|
2024-07-27 15:35:49 +03:00 |
|
|
dfde000a3a
|
rendering.c: batching for sprites (blended vs unblended), separation of rendering submodules; textures.c: textures_get_atlas_id()
|
2024-07-27 15:10:49 +03:00 |
|
|
32b83d68ac
|
demo: proper uvs!
|
2024-07-20 00:48:30 +03:00 |
|
|
875af2a758
|
experimental: textures_get_key() caching for embedded in binary path strings
|
2024-07-19 23:44:29 +03:00 |
|
|
867dea1958
|
textures.c: remove by one offsetiing, use macro for validity checking
|
2024-07-19 23:38:10 +03:00 |
|
|
bdf2a54107
|
replace categorized, sorted render queues with a single ordered 2d queue
|
2024-07-15 23:31:54 -03:00 |
|
|
5ae59b51d3
|
textures.h: cleanup, writeup for unfurl_billboard()
|
2024-07-14 19:18:10 +03:00 |
|
|
7218acb40b
|
textures.c: fix regressions for loner textures
|
2024-07-14 18:36:48 +03:00 |
|
|
bd53a931c0
|
rework of textures, finalization of basic opengl rendering
|
2024-07-14 16:04:12 +03:00 |
|
|
55d85399e9
|
full removal of SDL_Renderer usage, working spatial triangle rendering, temporary(?) regression of HDPI
|
2024-07-12 21:16:21 +03:00 |
|
|
34cf504b2b
|
rename *_pair to *_item, as it's the convention used before
|
2024-07-10 19:16:39 +03:00 |
|
|
b280243d30
|
work-in-progress for 3d triangle rendering
|
2024-07-10 19:15:28 +03:00 |
|
|
31167047a7
|
util.c: rename tick_ftimer_repeat to repeat_ftimer
|
2024-07-09 15:37:03 +03:00 |
|
|
f98f9e1300
|
creation of opengl 1.5 context, mixing of gl calls with sdl renderer
|
2024-07-09 15:36:13 +03:00 |
|
|
96d1f5b7a2
|
Merge branch 'main' of https://git.poto.cafe/wanp/salesman
|
2024-07-08 23:50:01 +03:00 |
|
|
194bf0e266
|
util.c: floating point timers for game loop
|
2024-07-08 23:47:22 +03:00 |
|
|
98467831d1
|
audio.c: use xm_repeat on play reenty
|
2024-07-08 23:46:47 +03:00 |
|
|
17d7bcd330
|
remove the broken variable timestep
|
2024-07-08 17:16:24 -03:00 |
|
|
5738870147
|
remove unused includes
|
2024-07-08 22:58:57 +03:00 |
|
|
26a89dfe4f
|
audio.c: fix memset error
|
2024-07-08 22:37:58 +03:00 |
|
|
f6330bfaa6
|
M_PI shenanigans
|
2024-07-08 22:20:26 +03:00 |
|
veclavtalica
|
eba3f0a2d5
|
audio.c: sanity checking with warnings
|
2024-07-08 18:22:40 +03:00 |
|
veclavtalica
|
6cb8736fc1
|
audio.c: get_audio_args()
|
2024-07-08 18:13:33 +03:00 |
|
veclavtalica
|
c07aa3c9a8
|
implement repeat in libxm
|
2024-07-08 18:00:38 +03:00 |
|
veclavtalica
|
0eb851e7bf
|
.xm playback
|
2024-07-08 16:58:23 +03:00 |
|
veclavtalica
|
febe3310aa
|
refactor of panning calculations
|
2024-07-08 09:57:29 +03:00 |
|
veclavtalica
|
3bd25b2067
|
handling of end of .ogg file
|
2024-07-08 09:57:04 +03:00 |
|
veclavtalica
|
8a8f62dc25
|
.ogg playback
|
2024-07-08 09:55:28 +03:00 |
|
veclavtalica
|
206a5b7cad
|
awesome!!!
|
2024-07-08 03:44:20 +03:00 |
|