martinfouilleul 
							
						 
						
							
								9eaa125129 
								
							 
						 
						
							
							
								
								add GLES headers to ext  
							
							
							
						 
						
							2023-02-17 18:57:01 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								333d3e9f9c 
								
							 
						 
						
							
							
								
								[gles, wip] reintroducing egl surface (for win32 at first)  
							
							
							
						 
						
							2023-02-17 18:56:16 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								20e425494f 
								
							 
						 
						
							
							
								
								Use a custom GL loader to allow different versions of GL/GLES APIs to co-exist. The loader fills an api struct with GL functions pointers.  
							
							... 
							
							
							
							We have a per-thread pointer to select which api struct is used, and GL functions are pound-defined to call the versions in that struct.
GL/GLES surfaces can use one of the loader function to load their api, and the prepare proc of the surface sets its api as the current one
before gl calls are issued. 
							
						 
						
							2023-02-16 19:35:01 +01:00  
				
					
						
							
							
								
								Martin Fouilleul 
							
						 
						
							
								54df26232c 
								
							 
						 
						
							
							
								
								[wip, opengl] include gl headers in generated glapi files  
							
							
							
						 
						
							2023-02-16 15:16:51 +01:00  
				
					
						
							
							
								
								Martin Fouilleul 
							
						 
						
							
								a32e2165c7 
								
							 
						 
						
							
							
								
								[wip, opengl] parsing opengl xml spec to auto-generate gl/gles loader  
							
							
							
						 
						
							2023-02-16 13:59:11 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								80ea8db687 
								
							 
						 
						
							
							
								
								[surface/canvas cleanup]  
							
							... 
							
							
							
							- Make build-time and runtime backend selection a bit easier
- Reorganized backend-specific files with slightly more coherent naming scheme 
							
						 
						
							2023-02-10 16:56:10 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								f54f639db5 
								
							 
						 
						
							
							
								
								properly destroying windows and fonts  
							
							
							
						 
						
							2023-02-10 12:05:52 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								08d3521b61 
								
							 
						 
						
							
							
								
								[canvas/surface cleanup]  
							
							... 
							
							
							
							- properly destroy gl canvas backend
- properly destroy gl surface 
							
						 
						
							2023-02-09 18:40:42 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								af7cbae1fa 
								
							 
						 
						
							
							
								
								[canvas cleanup] cleanup canvas resources on creation failure  
							
							
							
						 
						
							2023-02-09 18:18:12 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								35e396e4c4 
								
							 
						 
						
							
							
								
								[canvas cleanup]  
							
							... 
							
							
							
							- Remove attributes/color arguments in functions where we don't need them anymore (since they're defined when calling mg_next_shape())
- Renamed "_with_zindex" functions with "_path" -> these function only fill a path (eg rect), but don't increment the current shape 
							
						 
						
							2023-02-09 17:02:58 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								09a18419e4 
								
							 
						 
						
							
							
								
								[canvas] make shapeIndex implicit in calls to mg_push_vertex  
							
							
							
						 
						
							2023-02-09 16:42:02 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								4e816a838b 
								
							 
						 
						
							
							
								
								[Clean canvas/shaders]  
							
							... 
							
							
							
							- Simplified shader names, prefix embedded strings by "glsl_"
- Extracted shader compilation in common function
- Add shader version string and common structs in canvas code rather than in every shader file
- Renamed zIndex with shapeIndex everywhere 
							
						 
						
							2023-02-09 16:14:15 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								4a8c77f023 
								
							 
						 
						
							
							
								
								- Move and Zoom perf_text example with the mouse  
							
							... 
							
							
							
							- Reverted to using 4 bits of subpixel precision and computing cross products with 32 bits integers, for perf reasons
- Fixed some confusion in tile array size vs number of elements (could still clean-up naming a bit though)
- Fixed bug where triangles on the left or below canvas boundaries where bucketted to the first colum/row of tiles
- Fixed bug in mouse button message handling (was always sending press on left button) 
							
						 
						
							2023-02-09 13:09:41 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								833767d6e2 
								
							 
						 
						
							
							
								
								move text with the mouse in perf_text example  
							
							
							
						 
						
							2023-02-09 09:50:53 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								21c604104f 
								
							 
						 
						
							
							
								
								fix mp_app_get_resource_path()  
							
							
							
						 
						
							2023-02-08 20:40:48 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								c0601961f1 
								
							 
						 
						
							
							
								
								Reposition window when changing dpi  
							
							
							
						 
						
							2023-02-08 20:40:48 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								3f58b2ac3d 
								
							 
						 
						
							
							
								
								glsl canvas shader: do cross products in 64 bits fixed point to avoid overflow  
							
							
							
						 
						
							2023-02-08 20:36:39 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								7cf4c3d925 
								
							 
						 
						
							
							
								
								opengl surface/renderer: set surface scaling according to dpi of first monitor. Use that dpi to scale backing texture of canvas renderer. Note: changing monitor isn't handled yet!  
							
							
							
						 
						
							2023-02-08 18:22:54 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								7fbc4ba270 
								
							 
						 
						
							
							
								
								canvas renderer: Use clip rects to cull tiles/pixels in tiling and drawing passes  
							
							
							
						 
						
							2023-02-08 12:59:31 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								e6e674ee04 
								
							 
						 
						
							
							
								
								Allow setting surface swap interval in opengl surface  
							
							
							
						 
						
							2023-02-08 11:49:00 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								c982b524c0 
								
							 
						 
						
							
							
								
								Merge branch 'gl_canvas' of ssh://git.forkingpaths.dev/martinfouilleul/milepost into gl_canvas  
							
							
							
						 
						
							2023-02-08 10:47:20 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								38c27f21d6 
								
							 
						 
						
							
							
								
								canvas: allow flushing externally built commands with mg_flush_commands()  
							
							
							
						 
						
							2023-02-08 10:46:12 +01:00  
				
					
						
							
							
								
								Martin Fouilleul 
							
						 
						
							
								afaa95fe07 
								
							 
						 
						
							
							
								
								applied canvas changes to metal backend  
							
							
							
						 
						
							2023-02-08 10:42:21 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								2419ab7889 
								
							 
						 
						
							
							
								
								opengl canvas renderer: splitting vertex data and shape data  
							
							
							
						 
						
							2023-02-07 18:59:51 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								f0bc88c4fb 
								
							 
						 
						
							
							
								
								gl canvas renderer with buffer re-specification  
							
							
							
						 
						
							2023-02-07 17:00:59 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								5788cdbcda 
								
							 
						 
						
							
							
								
								Desktop opengl 4.3 canvas  
							
							
							
						 
						
							2023-02-07 13:24:14 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								91780b12c7 
								
							 
						 
						
							
							
								
								reorder fields in glsl vertex struct to be less wasteful  
							
							
							
						 
						
							2023-02-06 17:01:32 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								5754fc1ad2 
								
							 
						 
						
							
							
								
								using temporary buffer to build canvas verex data and use glBufferData with exact number of vertices to submit buffer to gpu  
							
							
							
						 
						
							2023-02-06 16:14:43 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								3dfaea1bba 
								
							 
						 
						
							
							
								
								temporarily reducing vertex buffer size to test perf impact  
							
							
							
						 
						
							2023-02-06 09:20:52 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								fd836c00dd 
								
							 
						 
						
							
							
								
								canvas renderer: parallel tiling pass and sorting pass  
							
							
							
						 
						
							2023-02-05 21:03:16 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								e59f2b152b 
								
							 
						 
						
							
							
								
								simple gles tiled renderer  
							
							
							
						 
						
							2023-02-03 18:44:28 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								8faf588bee 
								
							 
						 
						
							
							
								
								Added text rendering in win_canvas test app and confirm it's slow as is...  
							
							
							
						 
						
							2023-02-02 20:36:03 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								68810d8bf0 
								
							 
						 
						
							
							
								
								updated todo  
							
							
							
						 
						
							2023-02-02 19:15:20 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								19988d045e 
								
							 
						 
						
							
							
								
								breaking triangle buffer into batches each time the current image changes  
							
							
							
						 
						
							2023-02-02 18:57:57 +01:00  
				
					
						
							
							
								
								Martin Fouilleul 
							
						 
						
							
								9cadc2f23f 
								
							 
						 
						
							
							
								
								added notes on bindless textures indexing  
							
							
							
						 
						
							2023-02-02 17:02:55 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								28e2a3648e 
								
							 
						 
						
							
							
								
								Multisampling in gles canvas shader  
							
							
							
						 
						
							2023-02-02 13:34:06 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								f73241e4a6 
								
							 
						 
						
							
							
								
								set background clear color correctly  
							
							
							
						 
						
							2023-02-02 12:08:04 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								0796b2cbcd 
								
							 
						 
						
							
							
								
								Switched to fixed point in gles triangle rasterization, and fixed wrong offset curve check collapsing the internal control points  
							
							
							
						 
						
							2023-02-02 11:40:22 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								e0300e9e3c 
								
							 
						 
						
							
							
								
								Fixed indexing in gles_canvas_fragment shaders and fixed native keys buffer  
							
							
							
						 
						
							2023-02-01 16:23:51 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								8e87837fcc 
								
							 
						 
						
							
							
								
								working on gles 3.1 canvas on windows  
							
							
							
						 
						
							2023-01-31 15:51:50 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								c5ae556f22 
								
							 
						 
						
							
							
								
								[wip] win32 gles surface using angle  
							
							
							
						 
						
							2023-01-29 01:04:24 +01:00  
				
					
						
							
							
								
								Martin Fouilleul 
							
						 
						
							
								bd7e1a15f1 
								
							 
						 
						
							
							
								
								- Conflating mp_views and surfaces  
							
							... 
							
							
							
							- Implicit canvas context in canvas API
- GLES window surface on mac 
							
						 
						
							2023-01-28 17:24:43 +01:00  
				
					
						
							
							
								
								Martin Fouilleul 
							
						 
						
							
								9bf62d2218 
								
							 
						 
						
							
							
								
								re-working graphics surfaces  
							
							
							
						 
						
							2022-12-26 18:33:31 +01:00  
				
					
						
							
							
								
								Martin Fouilleul 
							
						 
						
							
								db5b4966e9 
								
							 
						 
						
							
							
								
								- Restructure osx version to use mp_app_internal.h/mp_app.c  
							
							... 
							
							
							
							- test new run loop structure on osx 
							
						 
						
							2022-12-24 15:33:32 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								72338b1a25 
								
							 
						 
						
							
							
								
								Extracted commonalities from platform specific app backends  
							
							
							
						 
						
							2022-12-23 20:46:42 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								30bd704af2 
								
							 
						 
						
							
							
								
								win32 opengl loader nonsense  
							
							
							
						 
						
							2022-12-22 18:24:43 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								a696c2ba2b 
								
							 
						 
						
							
							
								
								Added platform detection macros and atomic/thread_local abstraction  
							
							
							
						 
						
							2022-12-22 15:29:07 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								c57e16db5a 
								
							 
						 
						
							
							
								
								[win32 port] Hello triangle in OpenGL 4.3  
							
							
							
						 
						
							2022-12-21 19:43:31 +01:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								2421871c3e 
								
							 
						 
						
							
							
								
								windows port initial commit: simple window with GL 4.3 context  
							
							
							
						 
						
							2022-12-21 12:03:55 +01:00  
				
					
						
							
							
								
								Martin Fouilleul 
							
						 
						
							
								7f62938f84 
								
							 
						 
						
							
							
								
								directory create/remove  
							
							
							
						 
						
							2022-08-28 13:49:40 +02:00