Mitchell Hashimoto
22ed65a818
really hacked in emoji support, time to clean it up
2022-08-20 10:37:11 -07:00
Mitchell Hashimoto
4ca45936f7
Only reallocate the GPU buffer if our CPU capacity changes
...
Previously, every single render was re-allocating a fairly large (~1MB)
buffer on the GPU. The recommended best practice is to allocate once and
then use `glBufferSubData` to update the memory in-place on the GPU.
We now track the last size we sent to the GPU, compare it to our copy on
the CPU, and if it _grows_ then we reallocate the GPU buffer. If it
shrinks we leave the GPU as-is for now. After this, we use the sub-data
routines to update the data in place.
2022-08-19 10:26:23 -07:00
Mitchell Hashimoto
e5c583ccf5
get rid of gb_math and create matrices from scratch
2022-08-18 11:33:28 -07:00
Mitchell Hashimoto
bb0b95732e
opengl: support extension iteration, list in debug mode
2022-08-04 11:13:56 -07:00
Mitchell Hashimoto
6e86afba17
update the font atlas if there are changes
2022-05-19 20:24:28 -07:00
Mitchell Hashimoto
d250bcda65
fix the baseline for font rendering
2022-04-19 19:30:30 -07:00
Mitchell Hashimoto
e2ed1ed745
shader modes, draw a jank cursor
2022-04-19 13:54:50 -07:00
Mitchell Hashimoto
c43c1d38f1
add background pass
2022-04-19 08:54:39 -07:00
Mitchell Hashimoto
4d9b67fa65
model direct gpu cell
2022-04-15 09:10:32 -07:00
Mitchell Hashimoto
544286509f
grid render a few cells
2022-04-14 17:14:49 -07:00
Mitchell Hashimoto
263c9e4aac
opengl: unbind programs
2022-04-06 08:42:39 -07:00
Mitchell Hashimoto
14e510fe4f
draw text using ebo, some work to be done to clean that up
2022-04-05 08:57:44 -07:00
Mitchell Hashimoto
6ba0a13a9b
opengl: simplify vertex attribute setting
2022-04-05 08:25:36 -07:00
Mitchell Hashimoto
684fb64705
use a font atlas!
2022-04-04 22:24:02 -07:00
Mitchell Hashimoto
530fecee4a
opengl: glad helpers
2022-04-04 15:11:26 -07:00
Mitchell Hashimoto
c6f1be3343
move from epoxy to glad
2022-04-04 14:35:19 -07:00
Mitchell Hashimoto
d1a24ce89c
opengl: for an array, size is just the size of the type
2022-04-04 13:10:46 -07:00
Mitchell Hashimoto
b4fdfcc264
opengl: a lot more enums
2022-04-04 13:09:39 -07:00
Mitchell Hashimoto
8734dac2ad
opengl: adding pixelStorei
2022-04-04 12:44:28 -07:00
Mitchell Hashimoto
c8a73d60a9
less dumb
2022-04-04 11:53:09 -07:00
Mitchell Hashimoto
6f2be8e44b
awful text rendering
2022-04-04 11:24:21 -07:00
Mitchell Hashimoto
fc28b8c032
busted text rendering
2022-04-04 09:43:46 -07:00
Mitchell Hashimoto
049004e6de
opengl: more funcs
2022-04-02 20:35:39 -07:00
Mitchell Hashimoto
63ce7114a4
opengl: draw functions
2022-04-02 20:17:53 -07:00
Mitchell Hashimoto
9f9357d21b
textures
2022-04-01 20:05:59 -07:00
Mitchell Hashimoto
80d064ed51
opengl: uniforms
2022-04-01 19:05:16 -07:00
Mitchell Hashimoto
045dd704ec
opengl: more bindings
2022-04-01 18:44:18 -07:00
Mitchell Hashimoto
a5a2196d52
opengl: bound buffers
2022-04-01 18:00:15 -07:00
Mitchell Hashimoto
63673287f6
opengl: more generic setData for buffer
2022-04-01 17:52:36 -07:00
Mitchell Hashimoto
f1cffea944
opengl: buffers
2022-04-01 17:44:54 -07:00
Mitchell Hashimoto
10369f5643
opengl: VertexArray
2022-04-01 15:52:40 -07:00
Mitchell Hashimoto
91cb86395b
opengl: extract into folder
2022-04-01 15:38:47 -07:00