17290 Commits

Author SHA1 Message Date
Chinmay Garde
9eaacc6924 Fix broken test. 2022-04-27 15:57:33 -07:00
Chinmay Garde
f57999cdea Add missing availability check for macOS 10.12. 2022-04-27 15:57:33 -07:00
Chinmay Garde
82e7078ca8 Add macOS availability checks. 2022-04-27 15:57:33 -07:00
Chinmay Garde
72e4d8c955 Remove unused and confusing API in TRect. 2022-04-27 15:57:33 -07:00
Chinmay Garde
5678b910a0 Don't let subpass coverage exceed entity coverage. 2022-04-27 15:57:33 -07:00
Chinmay Garde
a07140fa6c Rect union and intersection. 2022-04-27 15:57:33 -07:00
Chinmay Garde
aea8e0293a Minor: Add Canvas::Transform. 2022-04-27 15:57:33 -07:00
Chinmay Garde
4507e4f4ee Implement Canvas::SaveLayer with bounds. 2022-04-27 15:57:33 -07:00
Chinmay Garde
dbc9a8e299 Implement Canvas::Skew. 2022-04-27 15:57:33 -07:00
Chinmay Garde
5f7cf832b9 Add more validation logs instead of FML logs. 2022-04-27 15:57:33 -07:00
Chinmay Garde
f14398821f Allow for the on-demand creation and caching of pipeline variants from the prototype. 2022-04-27 15:57:33 -07:00
Chinmay Garde
5006c2a019 All creation of pipeline variants from a pipeline. 2022-04-27 15:57:33 -07:00
Chinmay Garde
faff08173b Add render pass and pipeline sample count validation. 2022-04-27 15:57:33 -07:00
Chinmay Garde
f9d781df9b Turn on full-screen 4xMSAA by default and additional render target validations. 2022-04-27 15:57:33 -07:00
Chinmay Garde
7ebaf2b1f7 Allow entity passes to be elided based on their contents. 2022-04-27 15:57:33 -07:00
Chinmay Garde
ed27debb52 Setup a paint pass delgate. 2022-04-27 15:57:33 -07:00
Chinmay Garde
eef8ccc51c Move entity pass management to the entity framework. 2022-04-27 15:57:33 -07:00
Chinmay Garde
30b243cdf7 Setup a framework to collapse passes. 2022-04-27 15:57:33 -07:00
Chinmay Garde
5c0de80dd1 Fixup ortho calculations and add ostream printers for geometry utils. 2022-04-27 15:57:33 -07:00
Chinmay Garde
8ac160af41 Fix alpha writes while rendering to texture. 2022-04-27 15:57:33 -07:00
Chinmay Garde
26e45c2c48 Work towards making canvas subpasses configure postprocessing effects. 2022-04-27 15:57:33 -07:00
Chinmay Garde
c694675197 Canvas subpasses rendering into their own command buffers. 2022-04-27 15:57:33 -07:00
Chinmay Garde
b7121c3181 Setup canvas pass hierarchies. 2022-04-27 15:57:33 -07:00
Chinmay Garde
80a7c32a8e Setup aiks for canvas subpasses. 2022-04-27 15:57:33 -07:00
Chinmay Garde
c73218bee1 Fix bug in texture usage mask. 2022-04-27 15:57:33 -07:00
Chinmay Garde
1a1134f72c WIP on creating utils for creating offscreen render targets. 2022-04-27 15:57:33 -07:00
Chinmay Garde
b943a06616 Renderer components no longer need a surface reference to function. 2022-04-27 15:57:33 -07:00
Chinmay Garde
0a855c21f7 Rework canvas passes in prep for subpasses. 2022-04-27 15:57:33 -07:00
Chinmay Garde
2eb6372d9d Implement stencil-only clips. 2022-04-27 15:57:33 -07:00
Chinmay Garde
6223a79f95 Give the default render target a stencil buffer. 2022-04-27 15:57:33 -07:00
Chinmay Garde
9f2632abb2 Add support for typed commands. 2022-04-27 15:57:33 -07:00
Chinmay Garde
b0fbe2252b WIP Add test for clip rendering. 2022-04-27 15:57:33 -07:00
Chinmay Garde
14a3b5e187 Cleanup entity API. 2022-04-27 15:57:33 -07:00
Chinmay Garde
75daec6e7b Rendering of continuous strokes. 2022-04-27 15:57:33 -07:00
Chinmay Garde
76b8ca7ca1 Fix struct padding calculations. 2022-04-27 15:57:33 -07:00
Chinmay Garde
fe98565148 Insert additional padding at the end of the struct if the size of the struct does not satisfy the alignment requirements of all its members. 2022-04-27 15:57:33 -07:00
Chinmay Garde
04fadf5652 WIP on stroke rendering. 2022-04-27 15:57:33 -07:00
Chinmay Garde
6dc7ec06f9 Implement texture mapping. 2022-04-27 15:57:33 -07:00
Chinmay Garde
96fda8f7be Allow shader libraries to look at multiple shader dylibs. 2022-04-27 15:57:33 -07:00
Chinmay Garde
71b41f2636 Start wiring up the entity playground. 2022-04-27 15:57:33 -07:00
Chinmay Garde
d226108835 Separate save layer calls into a canvas pass. 2022-04-27 15:57:33 -07:00
Chinmay Garde
40992281d5 Start consolidating content rendering. 2022-04-27 15:57:33 -07:00
Chinmay Garde
6ab947ca80 Make pipelines store pipeline descriptors. 2022-04-27 15:57:33 -07:00
Chinmay Garde
791a4c34a6 Minor fixups to pipeline creation. 2022-04-27 15:57:33 -07:00
Chinmay Garde
b7cb641d6a Fixup names of pipeline descriptors. 2022-04-27 15:57:33 -07:00
Chinmay Garde
3b5d0de968 Shorten names of the render target attachment descriptors. 2022-04-27 15:57:33 -07:00
Chinmay Garde
4204ad3779 Move entity shaders to their own directory. 2022-04-27 15:57:33 -07:00
Chinmay Garde
6572fa9350 Merge entity renderer impl into the entity renderer. 2022-04-27 15:57:33 -07:00
Chinmay Garde
e8a632c8e5 Minor build fixups. 2022-04-27 15:57:33 -07:00
Chinmay Garde
351bb6d019 More doc updates. 2022-04-27 15:57:33 -07:00