Commit graph

16 commits

Author SHA1 Message Date
Charlie Malmqvist
b631b96e62 Unfuck linmath 2024-08-03 15:38:42 +02:00
Charlie Malmqvist
71708cfc77 More unused memory locking 2024-07-28 17:17:58 +02:00
bonmas14
3ad5426709 moving vectori to linmath 2024-07-28 10:46:27 +03: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
05fd88472b Fix merge conflicts 2024-07-09 09:13:44 +02:00
Charlie
18f4fc8123 - Text rendering
- Font loading
	- Measuring for formatting & justification
	- Utf8 Glyph walking
	- Commented example in oogabooga/examples/text_rendering.c
- Small 2D renderer refactor
	- Pass 8-bit integers "type" and "sampler_index" to shader
	- Sample texture differently depending on "type" (text or regular quad)
	- Sample with nearest/linear min/mag depending on sampler_index
	- Set min/mag filtering in Draw_Quad
	- Images are now created and deleted directly with gfx calls rather than deferring it for gfx_update.
	- We can now set image sub data with gfx_set_image_data()
	- Images are no longer hard coded to 4 channels
- Utf8 utility:
	- utf8_to_utf32(): convert utf8 bytes to a single u32 codepoint
	- next_utf8(): Convert first utf8 character in a string to a u32 codepoint and advance the passed string to the next unicode
- Renamed m4_multiply -> m4_mul for consistency
- Refactored os window to be DPI aware (scaled_width vs pixel_width)
- in minimal example, renamed hammer_xform -> rect_xform
2024-07-07 20:27:34 +02:00
Charlie
05919248eb - Replace lodepng with stb_image (& add stb_truetype for fonts)
- Fix d3d11 Input assembler not being created correctly bug
- Fix framerate being locked by swap chain present
- Move enable_vsync to window
- sqrt & rsqrt simd
- Add release build & run in vscode tasks & launch
- Cleanup
2024-07-04 20:56:27 +02:00
Charlie
5db73b90e9 Fixy smixy 2024-07-04 12:18:16 +02:00
Charlie
aceadf4aca Fix simd & Vector oopsies + lots of tests 2024-07-03 00:41:52 +02:00
Charlie
e52e1a403e I got very sidetracked.
- cpu.c to query cpu capabilities and intrinsics
- In init, find best available simd instruction sets and assign simd function ptrs accordingly.
- Replace basic vector arithmetic procs with simd implementations
2024-07-03 00:01:11 +02:00
randy
6519955513 v2_normalize 2024-07-02 14:38:17 +07:00
randy
be6c99dfc5 made clear_col a vector4 2024-07-01 17:22:10 +07:00
Charlie
b9503d8d19 - D3D11, Image drawing & Matrix4 xform drawing
- I didn't get rotation going quite right with the xform, but it's 2am goodnight
	- Smashed my head and had bad thoughts about microsoft many times

- stuff
- lotsa example code in entry.c
2024-07-01 02:14:08 +02:00
Charlie
c61f216d37 - Simple rectangle drawing
- We just add to a frame of quads which the renderer deals with in gfx_update
	- draw_quad, draw_rect, draw_rect_rotated
	- Currently just implemented with legacy opengl, so we can't do custom shading
- Added third party code from lodepng so we can load pngs without any other dependencies (no C includes)
- ALLOCATOR_REALLOCATE
- Basic Vector2, Vector3, Vector4 stuff, and some math utilities
- Added <math.h> dependency for now.
- Graphics renderer frontend layer
- Naive get_random() implementation
2024-06-29 13:27:37 +02:00
Charlie
8489421dbf Got a window going 2024-06-29 01:18:22 +02:00