Commit graph

33 commits

Author SHA1 Message Date
Charlie Malmqvist
e651487469 v0.01.005 - Arenas, Monitors query, fullscreen 2024-08-23 21:05:14 +02:00
Charlie Malmqvist
a296f2c660 Sprite sheet animation and window woopsie fix 2024-08-23 18:13:02 +02:00
Charlie Malmqvist
1b200bd162 gfx_read_image_data() 2024-08-23 15:57:35 +02:00
Charlie Malmqvist
884d28add0 window.fullscreen, window.allow_resize 2024-08-23 14:09:45 +02:00
Charlie Malmqvist
b7921693c4 Os monitors query 2024-08-21 20:17:05 +02:00
Charlie Malmqvist
f2b81a0621 v0.01.004 - Gamepad input, text wrapping, bug fixes 2024-08-19 16:37:21 +02:00
Charlie Malmqvist
9664530935 Text wrapping, string & utf8 helpers, linmath constants 2024-08-19 16:19:46 +02:00
Charlie Malmqvist
a2b65c0eaf os_get_elapsed_seconds() & some unecessary refactoring 2024-08-18 12:51:33 +02:00
Charlie Malmqvist
d89ef01fa6 v0.01.003 - Mouse pointers, Audio improvement & features, bug fixes 2024-08-03 16:40:41 +02:00
Charlie Malmqvist
71708cfc77 More unused memory locking 2024-07-28 17:17:58 +02:00
Charlie Malmqvist
f9788b2e74 Some memory rework, concurrency improvements, cleanups 2024-07-28 15:08:36 +02:00
Charlie Malmqvist
e60be463d1 Did nothing 2024-07-27 21:07:52 +02:00
Charlie Malmqvist
234e3ed440 Mouse pointers & text rendering bug 2024-07-26 21:33:47 +02:00
Charlie Malmqvist
ee097a3329 v0.01.002 - Flexible build options, Hotloading, growing array 2024-07-23 23:29:05 +02:00
Charlie Malmqvist
4aa832a822 Refactor more to be able to build as dll and link a single global oogabooga instance, and made an example for a hot loaded game 2024-07-23 17:33:11 +02:00
Charlie Malmqvist
9f5d20d3de Cleanup 2024-07-22 16:49:10 +02:00
Charlie Malmqvist
88053ab14a v0.01.001 - Spacial audio, custom shading, scissor boxing 2024-07-20 16:10:55 +02:00
Charlie Malmqvist
2aba15b429 Custom shaders 2024-07-19 16:45:58 +02:00
Charlie
fa36beaef3 Volume control 2024-07-16 13:31:33 +02:00
Charlie
c6bf5bc8bb Spacial audio, draw_line, vector procs 2024-07-16 10:00:04 +02:00
Charlie
c39902d6b1 v0.01.000 - AUDIO! 2024-07-15 21:40:27 +02:00
Charlie
2b335aee35 Sold my soul to play monlight sonata
Audio sources & decoding are pretty much done and working well.

Playback is not really implemented yet, I'm just hacking in a way to output an audio source.

- Seriously microsoft wtf
2024-07-12 21:11:47 +02:00
Charlie
2a843fe7aa - Fixed crashing when D3D11 DEBUG flag fails in ID3D11CreateDevice, and instead log a descriptive error then continue as usual
- Stuff
2024-07-11 20:35:35 +02:00
Charlie
c92b6fd4b7 - Z Layers
- Sorting
- Contiguous quad buffer
2024-07-10 17:10:38 +02:00
Charlie
cc74dc68e4 ???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? 2024-07-09 18:51:15 +02:00
Charlie
b37652e1ce v0.00.004 - Custom logging, more concurrency & bugfixing
Concurrency:
	- Refactored spinlock out of OS api (deprecated old procs)
	- Concurrency utilites:
		void spinlock_init(Spinlock *l);
		void spinlock_acquire_or_wait(Spinlock* l);
		bool spinlock_acquire_or_wait_timeout(Spinlock* l, f64 timeout_seconds);
		void spinlock_release(Spinlock* l);
		void mutex_init(Mutex *m);
		void mutex_destroy(Mutex *m);
		void mutex_acquire_or_wait(Mutex *m);
		void mutex_release(Mutex *m);
		void binary_semaphore_init(Binary_Semaphore *sem, bool initial_state);
		void binary_semaphore_destroy(Binary_Semaphore *sem);
		void binary_semaphore_wait(Binary_Semaphore *sem);
		void binary_semaphore_signal(Binary_Semaphore *sem);
		Macro MEMORY_BARRIER
	- Concurrency tests

Docs:
	- custom_logger.c example to show how one can make a custom logger and have logs displayed in-game

Utility:
	- draw_text_and_measure() which is just an overload of draw_text but it also does a measure and returns it

Misc:
	- Added u64 thread_id to global context. This is set in main() for main thread and in thread startup when you dispatch a Thread
	- Fixed a bug where plain rects would be drawn with the incorrect color
	- Fixed a bug where quads from earlier frames would be drawn
2024-07-09 18:38:06 +02:00
Charlie
9842834065 - Portable DEPRECATED macro
- Deprecate os_compare_and_swap and replace with more portable compare_and_swap
- Fixed a bug where the wrong image would be drawn
2024-07-09 09:16:09 +02:00
Charlie
e54897432b Fixed memory bug & window placement
- Improved assert messages to be more clear about what might be happening if they fail
- Added more checks in debug to detect heap corruption and what not
- Fixed a bug where the program would crash because a heap block was perfectly full
- Fixed Y placement of window when changing the window rect
- Fixed window sizing when setting scaled_width or scaled_height
- Updated readme
2024-07-09 09:15:35 +02:00
Charlie
05fd88472b Fix merge conflicts 2024-07-09 09:13:44 +02:00
Charlie
cc8d186dc3 - Portable DEPRECATED macro
- Deprecate os_compare_and_swap and replace with more portable compare_and_swap
- Fixed a bug where the wrong image would be drawn
2024-07-09 09:07:30 +02:00
Charlie
a805557a76 Fixed memory bug & window placement
- Improved assert messages to be more clear about what might be happening if they fail
- Added more checks in debug to detect heap corruption and what not
- Fixed a bug where the program would crash because a heap block was perfectly full
- Fixed Y placement of window when changing the window rect
- Fixed window sizing when setting scaled_width or scaled_height
- Updated readme
2024-07-08 17:57:23 +02:00
Charlie
aee3f78bd5 Add minimal libraries for decoding audio 2024-07-08 15:33:01 +02:00
Charlie
3d781e0bd1 v0.00.002 - Text rendering, image manipulation, hash tables 2024-07-07 20:44:40 +02:00