Commit graph

13 commits

Author SHA1 Message Date
e5931e3910
config: configure downsampling; remove config generator
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I43c5821edc0e121962bee76e39cb32816a6a6964
2026-01-31 15:15:11 +03:00
3d4974a128
core: optimize VBO
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Ic29424c13a4b2fbf6d74e6ec4c2bedde6a6a6964
2026-01-31 15:15:10 +03:00
46ea940242
image: initial downsampling implementation
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Icec8c434ecf480c644a6f6e6a3b8cd5b6a6a6964
2026-01-31 15:15:09 +03:00
ec628eb1af
render: fix filtering; optimize VBO management
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I2f30f77e0f29437cac57a1064ca1f6796a6a6964
2026-01-31 15:15:08 +03:00
c9d32e14ab
render: handle mipmaps properly
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I43de088ca17559648d67e728db1179cf6a6a6964
2026-01-31 15:14:55 +03:00
amr
1f9050b69e fix: this solves the warning during compilation
This not only solves the warning/error brought up during compilation, it's also just a sort of belt'n'braces approach to make absolutely sure the timestamp length is correct and didn't get truncated or some other error. This was a new warning/error introduced back in gcc 7.1, and it's one of those "you *should* do it this way because it's technically the correct way" things that most developers roll their eyes at but, logically, they're technically correct.
2025-11-02 08:31:16 +00:00
5fd2e5660f
config: handle transform opts; make implementation futureproof
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Ic67d4485d08114f605a6dc2535224b276a6a6964
2025-11-02 01:19:58 +03:00
1a366d2445
core: store old config values per-monitor
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Ieb3a272935892c874339b13e63b998fd6a6a6964
2025-11-02 01:19:57 +03:00
e7f107a8fe
render: calculate texture coordinates based on scaling mode
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Ie4e44a0cea68cbbee8122576c41aa4486a6a6964
2025-11-02 01:19:56 +03:00
74fed80a26
config: fix tilde expansion for wallpaper paths
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I45b7a520f1959886793ded62f1ed2cd96a6a6964
2025-11-02 01:19:53 +03:00
bc77b887ad
various: log memory events
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6a6a69643b6d00277bb9bcfeb4cd01dc78d7cd3d
2025-10-02 21:52:08 +03:00
d1116e7721
render: add OpenGL resource caching; optimize texture handling
Mildly improves rendering performance by caching OpenGL resources.
Namely:

- Cache shader program, VBO/EBO, and textures per output
- Automatically free image data after GPU upload
- Force RGBA format for consistent texture handling
- Track texture state across output changes
- Add texture invalidation on image changes

This reduces the memory usage by a solid 30MB, but it's still not quite
enough. I expect (or rather, hope) that we can cut it by half.

Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6a6a6964eebc783c5bc07b1fef7548a8d49f529c
2025-09-30 20:11:47 +03:00
fcc080871a
initial commit
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6a6a6964ee9e6ebe436ca8328c6e4a7ec7c9d8d4
2025-09-30 20:11:40 +03:00