17180 Commits

Author SHA1 Message Date
Chinmay Garde
5110652812 WIP on replacing texture contents. 2022-04-27 15:57:33 -07:00
Chinmay Garde
cc57340c5e Create textures from buffers. 2022-04-27 15:57:33 -07:00
Chinmay Garde
a8f9184ffb Add unit-test target stubs. 2022-04-27 15:57:33 -07:00
Chinmay Garde
98ba1675d3 Add support for memory render targets. 2022-04-27 15:57:33 -07:00
Chinmay Garde
ec3d9f6060 Wire up texture creation from buffers. 2022-04-27 15:57:33 -07:00
Chinmay Garde
ffe1fc656e Minor: Better playground title. 2022-04-27 15:57:33 -07:00
Chinmay Garde
f9eaadd207 Minor QOL improvements in the playground. 2022-04-27 15:57:33 -07:00
Chinmay Garde
727acd40ff Fully wire up the box primitive in the playground. 2022-04-27 15:57:33 -07:00
Chinmay Garde
cf598d57d7 Use the pipeline builder for the box primitive. 2022-04-27 15:57:33 -07:00
Chinmay Garde
61dad3b194 A pipeline builder utility to create pipeline state objects from reflected shader information. 2022-04-27 15:57:33 -07:00
Chinmay Garde
d828e0b1db Update render pass default. 2022-04-27 15:57:33 -07:00
Chinmay Garde
d04587c735 Key callbacks to quit from a playground. 2022-04-27 15:57:33 -07:00
Chinmay Garde
f08b91396d Wire up playground WSI. 2022-04-27 15:57:33 -07:00
Chinmay Garde
c3a2afd16d Cleanup test targets. 2022-04-27 15:57:33 -07:00
Chinmay Garde
524ec504bb Note the descriptor set and binding in IO slot. 2022-04-27 15:57:33 -07:00
Chinmay Garde
3173b0d711 Cleanup code-gen template to avoid empty comments. 2022-04-27 15:57:33 -07:00
Chinmay Garde
13c5f46edc Generate reflection info for samplers and images. 2022-04-27 15:57:33 -07:00
Chinmay Garde
f86c10efca Wire up samplers. 2022-04-27 15:57:33 -07:00
Chinmay Garde
135433a0d1 Better labeling in vertex buffer builder. 2022-04-27 15:57:33 -07:00
Chinmay Garde
167150a45f Make device resident vertex buffers easier to use. 2022-04-27 15:57:33 -07:00
Chinmay Garde
703a269481 Make vertex buffer builders templated so they can work with different per vertex types. 2022-04-27 15:57:33 -07:00
Chinmay Garde
59f9d7fb6d Generate struct for per vertex data. 2022-04-27 15:57:33 -07:00
Chinmay Garde
b5ebf6805a Reason about conventions when dealing with NDC. 2022-04-27 15:57:33 -07:00
Chinmay Garde
012eb34307 Work on matrix utils. 2022-04-27 15:57:33 -07:00
Chinmay Garde
e79a7fff79 Shader uniform slots get their own glue type. 2022-04-27 15:57:33 -07:00
Chinmay Garde
5814885863 Reserve a slot for vertex buffer bindings. 2022-04-27 15:57:33 -07:00
Chinmay Garde
943bf33bfd Set stencil and depth defaults. 2022-04-27 15:57:33 -07:00
Chinmay Garde
507037d790 Add default values for blending. 2022-04-27 15:57:33 -07:00
Chinmay Garde
8fb7637115 Better names for device objects. 2022-04-27 15:57:33 -07:00
Chinmay Garde
e968f9a9ee Add support for primitive types. 2022-04-27 15:57:33 -07:00
Chinmay Garde
27a7f7e831 Debug and fix buffer management. 2022-04-27 15:57:33 -07:00
Chinmay Garde
b36aba2dbb Fix uniform alignment on a per platform basis. 2022-04-27 15:57:33 -07:00
Chinmay Garde
fe94b51880 Add FIXME to address removing debug information from generated shaders. 2022-04-27 15:57:33 -07:00
Chinmay Garde
88fed81b83 Embed shader and driver sources in compiled Metal AIR files. 2022-04-27 15:57:33 -07:00
Chinmay Garde
e688849721 Name device buffers. 2022-04-27 15:57:33 -07:00
Chinmay Garde
d4377191ed Add debug markers to render passes. 2022-04-27 15:57:33 -07:00
Chinmay Garde
c23d48d7a5 Wire up vertex buffers. 2022-04-27 15:57:33 -07:00
Chinmay Garde
ca5b3ac286 Minor updates to pass return values. 2022-04-27 15:57:33 -07:00
Chinmay Garde
63e3764ddf Add support for emplace with struct alignments. 2022-04-27 15:57:33 -07:00
Chinmay Garde
7d4462ad1a Tests for host buffers. 2022-04-27 15:57:33 -07:00
Chinmay Garde
37c2842964 Reflect all known struct types. 2022-04-27 15:57:33 -07:00
Chinmay Garde
9800892ac1 Add some sanity checks to generated bindings code. 2022-04-27 15:57:33 -07:00
Chinmay Garde
da597d0321 Remove stringification in impeller/geometry. 2022-04-27 15:57:33 -07:00
Chinmay Garde
2ed5f9fec6 Switch scalar type to float. 2022-04-27 15:57:33 -07:00
Chinmay Garde
7b2346c035 Begin wiring up struct definitions. 2022-04-27 15:57:33 -07:00
Chinmay Garde
54ddf4a05d Start dumping struct offset information. 2022-04-27 15:57:33 -07:00
Chinmay Garde
89c0e06416 Cycle over all struct definitions. 2022-04-27 15:57:33 -07:00
Chinmay Garde
27eaa2af6e Swap JSON handling in code generator. 2022-04-27 15:57:33 -07:00
Chinmay Garde
4b3190494a Refactor reflector. 2022-04-27 15:57:33 -07:00
Chinmay Garde
75eff71fe3 Prep for swapping JSON parser. 2022-04-27 15:57:33 -07:00