Martin Fouilleul 
							
						 
						
							
								bfc7530bcf 
								
							 
						 
						
							
							
								
								[osx, canvas]  
							
							... 
							
							
							
							- Only super sample coverage at 8x rate, and accumulate pixel color in a single color value
- Super sample images at lower 2x rate
- Cull tiles outside clip
- Bypass coverage for fully covered tiles 
							
						 
						
							2023-07-10 17:52:34 +02:00  
				
					
						
							
							
								
								Martin Fouilleul 
							
						 
						
							
								a65b0cc1bb 
								
							 
						 
						
							
							
								
								[osx, surface] Query list of available metal devices, and select a discrete GPU if available. This way we avoid calling MTLCreateSystemDefaultDevice() which messes with Discord's screen sharing, while also being able to take GPU frame captures in XCode (which was broken by  9bfae2c4e8)  
							
							
							
						 
						
							2023-07-10 11:28:49 +02:00  
				
					
						
							
							
								
								Martin Fouilleul 
							
						 
						
							
								7573c40c56 
								
							 
						 
						
							
							
								
								[mtl, canvas] remove unused hull matrix  
							
							
							
						 
						
							2023-07-07 16:44:32 +02:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								59fdc27ac6 
								
							 
						 
						
							
							
								
								[gl, canvas]  
							
							... 
							
							
							
							- Haul path color and texture sampling outside of per-sample loop
- Pack gl input structs a bit
- Set correct hint flags for glBufferData() 
							
						 
						
							2023-07-07 15:45:06 +02:00  
				
					
						
							
							
								
								Martin Fouilleul 
							
						 
						
							
								9bfae2c4e8 
								
							 
						 
						
							
							
								
								[osx, metal] Set metal layer's device to layer.preferredDevice instead of calling MTLCreateDefaultSystemDevice(). This fixes issue 15 so we can use Discord's screen sharing while using Orca. This will need to be revisited when we want to actually use a different metal device.  
							
							
							
						 
						
							2023-07-07 10:41:17 +02:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								806f00417e 
								
							 
						 
						
							
							
								
								[win32, canvas] Fix random crash by correctly setting wgl_surface deselect function pointer to mg_wgl_deselect(). Forgot to do it in  18c793db, dumb me.  
							
							
							
						 
						
							2023-07-06 11:29:57 +02:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								1e34c3406f 
								
							 
						 
						
							
							
								
								fixing conflict in gl_canvas  
							
							
							
						 
						
							2023-07-05 18:07:37 +02:00  
				
					
						
							
							
								 
						
							
								ff5a57fb92 
								
							 
						 
						
							
							
								
								Add some convenient rectangle accessors  
							
							
							
						 
						
							2023-07-04 16:13:28 -05:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								bdb9ddf888 
								
							 
						 
						
							
							
								
								[win32, canvas] added back texture atlasing and fixed incorrect culling of solid tiles when using a source texture  
							
							
							
						 
						
							2023-07-04 17:24:41 +02:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								5c4c8ce505 
								
							 
						 
						
							
							
								
								[wip, win32, canvas] adding back textures  
							
							
							
						 
						
							2023-07-04 15:59:45 +02:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								311cef65e8 
								
							 
						 
						
							
							
								
								[wip, win32, canvas] dispatch path setup, segment setup and backprop in batches of GL_MAX_COMPUTE_WORK_GROUP_COUNT elements  
							
							
							
						 
						
							2023-07-03 16:16:39 +02:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								e24a872fad 
								
							 
						 
						
							
							
								
								[wip, win32, canvas] encode strokes  
							
							
							
						 
						
							2023-07-03 15:16:27 +02:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								d00024b515 
								
							 
						 
						
							
							
								
								[wip, win32, canvas] added MSAA to new canvas renderer  
							
							
							
						 
						
							2023-07-03 15:00:40 +02:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								0e6d67f636 
								
							 
						 
						
							
							
								
								[wip, win32, canvas] Cubics segment setup  
							
							
							
						 
						
							2023-07-03 14:21:53 +02:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								01aa4f838f 
								
							 
						 
						
							
							
								
								[wip, win32, canvas] quadratics  
							
							
							
						 
						
							2023-07-03 12:14:21 +02:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								899ad4c030 
								
							 
						 
						
							
							
								
								[wip, win32, canvas] Correctly setup path index in segment_setup.glsl  
							
							
							
						 
						
							2023-07-03 11:02:04 +02:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								36c75a55dd 
								
							 
						 
						
							
							
								
								[win32] Fix first image not being rendered in win32 canvas renderer  
							
							
							
						 
						
							2023-07-02 12:49:45 +02:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								b61d8868d3 
								
							 
						 
						
							
							
								
								[wip, win32, canvas] wip trying to fix multiple shapes  
							
							
							
						 
						
							2023-07-02 12:26:54 +02:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								7628138cee 
								
							 
						 
						
							
							
								
								[wip, win32, canvas] tiling in per-path tile queues, then merge (no backprop for now)  
							
							
							
						 
						
							2023-06-30 16:53:36 +02:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								f0b7cf32a9 
								
							 
						 
						
							
							
								
								[wip, win32, canvas] winding backprop and right crossing segments  
							
							
							
						 
						
							2023-06-30 15:30:05 +02:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								0870097262 
								
							 
						 
						
							
							
								
								[wip, win32, canvas] bin segments to screen tile queues  
							
							
							
						 
						
							2023-06-30 15:18:37 +02:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								15c54b9385 
								
							 
						 
						
							
							
								
								[wip, win32, canvas] segment setup, non tiled  
							
							
							
						 
						
							2023-06-29 16:43:38 +02:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								f76ff94c28 
								
							 
						 
						
							
							
								
								[wip, win32, canvas] raster elements directly per pixel  
							
							
							
						 
						
							2023-06-29 15:48:52 +02:00  
				
					
						
							
							
								 
						
							
								23984e8370 
								
							 
						 
						
							
							
								
								Enable font stuff in Orca  
							
							
							
						 
						
							2023-06-28 20:44:13 -05:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								b797f187dc 
								
							 
						 
						
							
							
								
								[wip, win32, canvas] porting new canvas renderer to opengl  
							
							
							
						 
						
							2023-06-27 18:53:09 +02:00  
				
					
						
							
							
								
								Martin Fouilleul 
							
						 
						
							
								21aa1bef68 
								
							 
						 
						
							
							
								
								[win32] honor timeout value in mp_pump_events  
							
							
							
						 
						
							2023-06-26 19:59:34 +02:00  
				
					
						
							
							
								
								Martin Fouilleul 
							
						 
						
							
								0d65d19436 
								
							 
						 
						
							
							
								
								str8_to_cstring forwards to str8_push_copy(), which null-terminates the copy  
							
							
							
						 
						
							2023-06-26 16:24:12 +02:00  
				
					
						
							
							
								
								Martin Fouilleul 
							
						 
						
							
								ffb900d872 
								
							 
						 
						
							
							
								
								String functions that return str8/16/32 allocated on an arena implicitly zero-terminate strings, so we can avoid one copy when passing to C stdlib APIs  
							
							
							
						 
						
							2023-06-26 16:06:26 +02:00  
				
					
						
							
							
								
								Martin Fouilleul 
							
						 
						
							
								4b491ee94a 
								
							 
						 
						
							
							
								
								- Defined mp_thread_local to nothing for Orca platforms (since this requires atomics, which we don't have yet). This allows use to enable bulk-memory without getting clang backend errors about missing tls and atomics.  
							
							... 
							
							
							
							- Replaced memory copy/fill routines with builtins 
							
						 
						
							2023-06-25 20:29:50 +02:00  
				
					
						
							
							
								
								Martin Fouilleul 
							
						 
						
							
								98a67cef72 
								
							 
						 
						
							
							
								
								#define MORECORE to orca_mem_grow. Removed builtin memory routine that don't seem to be supported by wasm3 (TODO: investigate that later)  
							
							
							
						 
						
							2023-06-25 20:29:50 +02:00  
				
					
						
							
							
								 
						
							
								bcf84e0b80 
								
							 
						 
						
							
							
								
								Graphics and memory stuff for stb_image  
							
							
							
						 
						
							2023-06-25 20:29:50 +02:00  
				
					
						
							
							
								
								Martin Fouilleul 
							
						 
						
							
								bc03887148 
								
							 
						 
						
							
							
								
								Added ORCA_IMPORT to mark symbols imported from the runtime  
							
							
							
						 
						
							2023-06-25 20:17:01 +02:00  
				
					
						
							
							
								
								Martin Fouilleul 
							
						 
						
							
								28e0a6c88e 
								
							 
						 
						
							
							
								
								Add tag to io_op enum, for debugging convenience  
							
							
							
						 
						
							2023-06-23 17:24:18 +02:00  
				
					
						
							
							
								
								Martin Fouilleul 
							
						 
						
							
								18c793dbb4 
								
							 
						 
						
							
							
								
								When we call mg_surface_prepare() on a surface, select it in a per-thread handle. Automatically call deselect on the selected handle when preparing another surface. Also have a way to deselect whichever surface is currently selected. This is needed for some backend that explicitly need to be 'unbound' before using them from another thread  
							
							
							
						 
						
							2023-06-23 15:32:32 +02:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								83f128fb55 
								
							 
						 
						
							
							
								
								[win32, graphics] adding example to test rendering in a secondary thread  
							
							
							
						 
						
							2023-06-21 19:14:56 +02:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								0366e3d724 
								
							 
						 
						
							
							
								
								[win32, graphics] experiments with multisurface with transparent top-level windows  
							
							
							
						 
						
							2023-06-21 15:48:26 +02:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								ae7a60b942 
								
							 
						 
						
							
							
								
								[win32, graphics, wip] working on multi surface, currently using top-level transparent window and moving them to cover the 'parent' window area...  
							
							
							
						 
						
							2023-06-21 12:36:05 +02:00  
				
					
						
							
							
								
								Martin Fouilleul 
							
						 
						
							
								c357da97f6 
								
							 
						 
						
							
							
								
								add multi surface skeleton example  
							
							
							
						 
						
							2023-06-20 11:47:02 +02:00  
				
					
						
							
							
								
								Martin Fouilleul 
							
						 
						
							
								26a1af344c 
								
							 
						 
						
							
							
								
								Fix rpath in examples  
							
							
							
						 
						
							2023-06-20 11:45:59 +02:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								d9a9215fa8 
								
							 
						 
						
							
							
								
								Fixed bug in mem_arena_alloc when selecting chunk from which to allocate  
							
							
							
						 
						
							2023-06-19 17:09:31 +02:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								2fe683b79d 
								
							 
						 
						
							
							
								
								fixed include directives to avoid having to pass to much include paths in usage scripts  
							
							
							
						 
						
							2023-06-19 16:16:54 +02:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								d2c4acf6e2 
								
							 
						 
						
							
							
								
								[wip] adding missing impl for win32 version of orca  
							
							
							
						 
						
							2023-06-17 20:09:25 +02:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								e93bf76adc 
								
							 
						 
						
							
							
								
								[win32] silence warning about WIN32_LEAN_AND_MEAN redefinitions  
							
							
							
						 
						
							2023-06-16 20:06:02 +02:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								6499bcd2a2 
								
							 
						 
						
							
							
								
								[win32] fixing include directives to avoid having to pass all include dirs to compiler  
							
							
							
						 
						
							2023-06-16 19:48:33 +02:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								debcffce2a 
								
							 
						 
						
							
							
								
								[win32, io] win32 passes files io test with new common io_open_at implementation  
							
							
							
						 
						
							2023-06-16 15:30:48 +02:00  
				
					
						
							
							
								
								Martin Fouilleul 
							
						 
						
							
								a64c86ca4e 
								
							 
						 
						
							
							
								
								[io, test] Added more file io tests  
							
							
							
						 
						
							2023-06-16 11:57:53 +02:00  
				
					
						
							
							
								
								Martin Fouilleul 
							
						 
						
							
								ec53cd5416 
								
							 
						 
						
							
							
								
								[io, osx] Reorganize  to first compute flags/do checks etc., then enter next path element at a single callsite  
							
							
							
						 
						
							2023-06-15 20:01:52 +02:00  
				
					
						
							
							
								
								Martin Fouilleul 
							
						 
						
							
								d363c8b607 
								
							 
						 
						
							
							
								
								[wip, osx, io] reorganizing io_open_restrict, fix opening last element with the correct flags  
							
							
							
						 
						
							2023-06-15 18:27:33 +02:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								c71da9e761 
								
							 
						 
						
							
							
								
								[io, win32] separate 'raw io' primitives from the io_open_restrict() implementation  
							
							
							
						 
						
							2023-06-14 19:41:51 +02:00  
				
					
						
							
							
								
								martinfouilleul 
							
						 
						
							
								49643520ee 
								
							 
						 
						
							
							
								
								[win32, io] adding context struct for use in io_open_path_restrict()  
							
							
							
						 
						
							2023-06-14 18:35:33 +02:00