Commit Graph

20 Commits (0a29e6df6a5ff50d0f9e53c26c96d9f59a8fd0e9)

Author SHA1 Message Date
Yuval Dolev 3f83e67a89 Changed the render target from a property to a regular field, also changed the instance variable names to use Apple's conventions. 2020-01-19 20:19:29 +02:00
Yuval Dolev a6fde84a3c Improved the Metal renderer's texture handling system to handle texture freeing. 2020-01-19 18:17:57 +02:00
Yuval Dolev 63b964f1c5 Fixed wrong trackpad scrolling. 2020-01-19 04:44:52 +02:00
Yuval Dolev 00d8206ad2 Fixed live resizing bug with the layer based view. 2020-01-19 03:05:56 +02:00
Yuval Dolev 0335a1a718 Implemented a texture slot batch allocating system for the Metal renderer. 2020-01-19 02:47:43 +02:00
Yuval Dolev 93494bd398 Cleanup to the macOS platform layer. 2020-01-14 17:25:13 +02:00
Yuval Dolev 1ab40ff5b9 Lowered view sample count to improve the rendering speed on high dpi displays. 2020-01-14 17:21:03 +02:00
Yuval Dolev de9fc34c3e Added a hack to fix DeadLock problem regrading the system_memory_annotation function. Also started working on fixing the performance issues that I discovered in the graphics renderer on retina displays (for now I changed to FCoder_View to be layer backed which is faster for rendering animations, this seems to improve performance by a little margin but rendering on high dpi displays is not closed to being smooth yet...). 2020-01-14 03:22:29 +02:00
Yuval Dolev dbcb05d2d1 Fixed a performance issue regarding timers. Now we can start a single timer per step request. 2020-01-12 23:16:03 +02:00
Yuval Dolev 8e4ec5215f Added KeyStoke and KeyRelease events and fixed TextInput events. 2020-01-11 22:19:43 +02:00
Yuval Dolev 13970744b4 Fixed blending bug in the Metal renderer where the destination alpha was not updated which caused problems while rendering the program in full screen mode. 2020-01-10 18:57:08 +02:00
Yuval Dolev 88c933acd2 Implemented the renderer abstraction for both OpenGL and Metal. 2020-01-09 02:36:37 +02:00
Yuval Dolev 912bcae8a7 Started working on an abstraction for the macOS renderer implementations. 2020-01-09 02:15:25 +02:00
Yuval Dolev 521fb82113 The Metal renderer is now fully functioning. 2020-01-08 21:44:47 +02:00
Yuval Dolev a18ef3197a Implemented my own vertex buffers management, also started working on textures. 2020-01-08 01:45:36 +02:00
Yuval Dolev a34d95b848 Metal renderer is now working (no textures yet). 2020-01-07 02:55:28 +02:00
Yuval Dolev efad772401 Work on metal renderer. Only semi-working for now. 2020-01-06 02:55:07 +02:00
Yuval Dolev 813ba593e3 Fixed flipped projection matrix. 2020-01-05 03:44:16 +02:00
Yuval Dolev b52f1cee24 Metal projection matrix test. 2020-01-05 03:13:47 +02:00
Yuval Dolev 0fceec19a9 Basic metal renderer (only rendering a triangle as of right now). 2020-01-04 03:24:52 +02:00