Commit graph

85 commits

Author SHA1 Message Date
d4c5b982df
Fix V-Sync rendering
Turns out I did not need the monitor API for that. Just reading glfwSwapInterval's documentation did the job and fixing my existing code did the job.
2024-07-27 02:28:00 +02:00
935bbaf7ce
Add monitor API and add UUIDs 2024-07-27 02:25:10 +02:00
45307ab842
Move a few exceptions from glfw to graphics subsystem 2024-07-26 13:42:00 +02:00
165e57083b
Move Api*Class to separate 'classes.api' package 2024-07-26 13:23:41 +02:00
9c48c3c756
Move continuous render loop to interface (now class) 2024-07-26 13:22:16 +02:00
7f324090c1
Add some 'final's 2024-07-26 13:20:56 +02:00
b529b7a7af
Make continuous render loop work (except V-Sync)
It works quite good now, but it is broken when V-Sync is turned on as it tries to render at the maximum FPS set and does not respect how fast the monitor renders. I first need to implement a monitor API for it to work.
2024-07-26 13:07:17 +02:00
4f9154f5fc
Make V-Sync global 2024-07-26 13:05:44 +02:00
bbde2e9d2d
Add render loop 2024-07-25 19:46:50 +02:00
0b4502c3ce
Add MouseButtonCallback 2024-07-25 12:19:46 +02:00
6dc0566fed
Add UNKNOWN_MOUSE, rename UNKNOWN -> UNKNOWN_KEY 2024-07-25 12:19:32 +02:00
be144fb71b
Add working key input recieving 2024-07-25 04:14:43 +02:00
24e26e6a82
Move graphics initialization code around in method 2024-07-25 04:14:17 +02:00
f5af9b34a0
Add UNKNOWN and SPACE key 2024-07-25 04:13:44 +02:00
eea7fce13c
Fix updateState, add terminate methods 2024-07-25 04:13:33 +02:00
2d8e896333
Fix (weird) wording 2024-07-23 20:43:08 +02:00
d49d54df3a
Add support for some GLFW init hints 2024-07-23 20:35:24 +02:00
81535ad701
Remove deleted event 2024-07-23 20:35:05 +02:00
5909a948b5
Update init logic of base, graphics and glfw 2024-07-23 20:24:57 +02:00
ae201f8729
Fix no window size limits not working at all 2024-07-23 19:33:01 +02:00
86e85356ba
Optimize startup and fix shutdown logic 2024-07-23 19:32:37 +02:00
2899ba2e8a
Sort methods in GLFW and OpenGL window classes 2024-07-23 17:48:10 +02:00
ec3ecc0113
Combine Mouse and KeyInputEvent 2024-07-23 17:47:21 +02:00
805574f677
Oops forgot to update imports here as well 2024-07-22 15:22:48 +02:00
e754c2c248
Add input event and type classes 2024-07-22 15:22:34 +02:00
48f910e78f
Forgot to update imports 2024-07-22 15:20:45 +02:00
e7e1abc510
Move Window-related classes into separate package 2024-07-22 15:20:26 +02:00
90b6dbcd31
Shrink down getSetting() size in configurations 2024-07-22 15:18:35 +02:00
e695235277
Make OpenGL compatibility test window invisible 2024-07-22 13:40:21 +02:00
42d0feb574
Update Window classes 2024-07-22 13:40:03 +02:00
071534eb1c
Move common GLFW code to new 'glfw' subsystem 2024-07-21 23:19:02 +02:00
bca45488d1
Encapsulate Main#run logic in try-catch block 2024-07-21 23:18:13 +02:00
b277587ec8
Cut down on Vulkan and OpenGL subsystem deps 2024-07-21 23:16:55 +02:00
4dbbee4efa
Add isClosureRequested() method 2024-07-21 22:41:41 +02:00
e8b9642177
Fix Graphics API shutdown logic 2024-07-21 21:19:27 +02:00
9d3397888d
Add OpenGL Core Profile requirement 2024-07-21 21:17:24 +02:00
8b09290c81
Require OpenGL version during window creation 2024-07-21 21:17:06 +02:00
80478e6a69
Improve Graphics API initialization 2024-07-21 21:12:59 +02:00
2469e124bd
Improve event system and reflection 2024-07-21 21:10:49 +02:00
350b18219b
Fix OpenGL Window#getIdentifierAsLong 2024-07-21 17:37:55 +02:00
705f8a0623
Enclose window title in parenthesis 2024-07-21 17:37:17 +02:00
b1a56ea6a4
Update Window class heavily 2024-07-21 16:45:46 +02:00
051f3eaacc
Add ApiInternalClass and OpenGL equivalent 2024-07-21 16:45:28 +02:00
7962a15c12
Sort methods in OpenGlSubsystem 2024-07-21 16:44:57 +02:00
311de39899
Remove createWindow and add mustRunOnMainThread 2024-07-21 16:44:18 +02:00
56743e9bf0
Add HIDDEN window mode 2024-07-21 16:43:13 +02:00
de0d5cb8a8
Add @since tag to VsyncMode javadoc 2024-07-21 16:43:07 +02:00
a3849f1813
Add package information 2024-07-21 16:42:40 +02:00
00a3017c1e
Nuked the Vulkan subsystem 2024-07-21 16:39:02 +02:00
0ce24d677f
Fix jansi build dependency for all projects 2024-07-18 14:14:21 +02:00