Commit Graph

579 Commits

Author SHA1 Message Date
Martin Fouilleul 3769b70753 [wip] changing backend enum to api enum, and adding canvas api in here 2023-04-25 14:54:52 +02:00
Martin Fouilleul 58effcb413 fixed using wrong length when copying debug entries function name 2023-04-21 10:02:17 +02:00
Martin Fouilleul 28a4fe0579 First draft of in-app debug console 2023-04-20 15:47:18 +02:00
Martin Fouilleul 7c273f494b [ui, logging]
- Changed workings of ui_panel() and scrolling to make it easier for usage code to control scrolling.
- Renamed logging functions
2023-04-20 15:40:00 +02:00
Martin Fouilleul eb09d73fa8 [milepost] changes to event system that allows using events with payloads (eg file paths) across threads 2023-04-19 16:19:13 +02:00
Martin Fouilleul bb6b68ad73 [event system] allocate events and additional payload (e.g. file paths) directly in ring buffer, and copy them to user-supplied arena in mp_next_event() 2023-04-19 16:16:36 +02:00
Martin Fouilleul 81ead1ba91 [in-app console]
- splitting input state from app structures in milepost, so that it can be used from another thread than main event thread.
- Adding a collapsable debug overlay to orca window (wip)
2023-04-19 11:28:53 +02:00
Martin Fouilleul ab150f94f2 separating input state from app, so that it can be used in different threads that main thread. E.g. ui context uses its own input state that can be fed events in a second thread 2023-04-19 11:28:20 +02:00
Martin Fouilleul 47722e99ca pull utf8 from milepost into orca 2023-04-18 18:43:06 +02:00
Martin Fouilleul f1d6e0f15c remove unnecessary platform headers from utf8 files 2023-04-18 18:42:48 +02:00
Martin Fouilleul b3c9e0822b moved asserts to platform layer 2023-04-18 18:36:21 +02:00
Martin Fouilleul ff4dddc0b7 moved assert to platform layer 2023-04-18 18:36:06 +02:00
Martin Fouilleul 7884ddd339 puling logging functionality from milepost into orca 2023-04-18 18:06:47 +02:00
Martin Fouilleul 794f47b141 abstracting logging for orca 2023-04-18 18:05:54 +02:00
Martin Fouilleul a1c69fc5f9 [wip] logging system 2023-04-18 14:33:47 +02:00
Martin Fouilleul 86a16d3775 modifications to log system to support orca env where stdio is not defined 2023-04-18 14:33:27 +02:00
Martin Fouilleul caa454f1ca Adding printing functions and asserts 2023-04-18 10:46:02 +02:00
Martin Fouilleul 0d6fb197fb adding vargs and asserts for orca 2023-04-18 10:43:52 +02:00
Martin Fouilleul d43afa2ac0 memory arena and mem copy/compare functions for orca 2023-04-17 18:13:07 +02:00
Martin Fouilleul e9e9ab68c2 base memory allocator and chunked arenas for orca 2023-04-17 18:12:21 +02:00
Martin Fouilleul 4f90efbb22 start integrating milepost components into orca 2023-04-17 10:56:38 +02:00
Martin Fouilleul f36e144bc0 start integrating milepost components to orca 2023-04-17 10:55:19 +02:00
Martin Fouilleul db7fe504bb HMN viz jam 2023-04-14 11:48:36 +02:00
Martin Fouilleul 17c0f02962 orca runtime initial commit 2023-04-12 16:21:03 +02:00
Martin Fouilleul c347e10577 Put all dependency libraries and shaders in bin directory 2023-04-12 16:12:26 +02:00
Martin Fouilleul f35e91a38c [mtl renderer] fixed clipping 2023-04-11 14:51:58 +02:00
Martin Fouilleul b7f5b84123 [mtl canvas] remove old metal canvas stuff 2023-04-11 11:19:29 +02:00
Martin Fouilleul 03b5802529 [canvas] replace simple shape helpers with normal paths operations instead of having dedicated primitives for rounded rects/ellipses and so on 2023-04-11 11:16:23 +02:00
Martin Fouilleul c6e89c1869 [wip] adding smooth live-resizing example 2023-04-11 10:50:14 +02:00
Martin Fouilleul 551d5e084e [mtl renderer] re-introduced texturing 2023-04-09 19:24:32 +02:00
Martin Fouilleul ee3e55dadd [mtl renderer] fix msaa sample positions 2023-04-08 12:11:38 +02:00
Martin Fouilleul effd8f1dd0 [mtl canvas] use same ccw test for testing against diagonal and testing against hull 2023-04-08 10:04:17 +02:00
Martin Fouilleul 2b7aadf180 [mtl canvas] multi-sampling 2023-04-07 18:18:50 +02:00
Martin Fouilleul 65b5a4b52a [mtl renderer] Fixed curve slicing which used matrix operation and re-parameterization, which could create gaps in path. Now use blossoms, which ensure endpoints of subcurves match 2023-04-07 17:17:55 +02:00
Martin Fouilleul d1fab449bc [mtl canvas] Fixed loop implicit matrix 2023-04-07 10:15:37 +02:00
Martin Fouilleul c4e866d9d4 [mtl canvas] Fix shader contents scaling 2023-04-05 10:31:50 +02:00
Martin Fouilleul 4c4f27066b [mtl renderer] re-introduced end caps 2023-04-05 10:25:48 +02:00
Martin Fouilleul e999af6bd3 [mtl canvas] make diagonal checks inclusive in mtl_side_of_segment() 2023-04-05 10:19:25 +02:00
Martin Fouilleul 53946a5710 [mtl canvas] fix end joint not generated for paths with only 2 elements 2023-04-05 09:52:12 +02:00
Martin Fouilleul 2484cdf7b3 [mtl canvas, wip] re-introducing joints 2023-04-04 20:35:48 +02:00
Martin Fouilleul 8d7fdf3b1a [mtl canvas, wip] Fixing inclusive/exclusive bound checks during curve side tests / shortcut / rasterization 2023-04-04 19:02:53 +02:00
Martin Fouilleul 9322db8201 [mtl canvas, wip] cubic bézier implicitization 2023-04-01 19:46:35 +02:00
Martin Fouilleul 767841f9c6 [mtl canvas, wip] Fixed wrong backdrop when segment ended right on tile's bottom boundary 2023-03-30 16:41:41 +02:00
Martin Fouilleul 93998852bb [mtl canvas, wip] Re-introducing quadratics implicitization 2023-03-30 15:58:46 +02:00
Martin Fouilleul eee158ff85 [mtl canvas] tmp fix of clear color (revisit one we re-introduce texturing) 2023-03-29 16:30:16 +02:00
Martin Fouilleul 8af4e4eddc [mtl canvas, wip] Collate queues in a per-tile op list and prune occluded shapes 2023-03-29 16:21:28 +02:00
Martin Fouilleul a6c53649bd [mtl canvas, wip] implemented backprop 2023-03-29 14:27:05 +02:00
Martin Fouilleul c4415aaeea [mtl canvas, wip] binning segments to tile queues 2023-03-28 17:58:23 +02:00
Martin Fouilleul c71bc5be98 [mtl canvas] segment setup pass 2023-03-28 15:10:05 +02:00
Martin Fouilleul f6a992e5f4 [mtl canvas] very first draft of new canvas backend based on edge-counting instead of triangle overlap 2023-03-28 13:09:48 +02:00