Patrick Walton
e1bcc11ace
Change the `F32` and `I32` suffixes to `F` and `I` to match the C API.
...
They're shorter and less noisy.
2019-05-29 19:17:16 -07:00
Patrick Walton
acf666b701
Stop using triangle fans for DX12/Vulkan compatibility.
...
Closes #165 .
2019-05-29 16:04:33 -07:00
Luis de Bethencourt
0231542141
Fix unused variable warning
...
Fixing the following warning
warning: unused variable: `resources`
2019-05-27 15:22:27 -04:00
Atul Varma
ea3cdbb2a9
Merge remote-tracking branch 'origin/master' into pathfinder-unity-fun
2019-05-27 13:41:19 -04:00
Atul Varma
a51501791d
Add GLDevice::set_default_framebuffer().
2019-05-27 07:56:36 -04:00
Patrick Walton
bc713a5181
Remove the rustache dependency.
...
1/3 reduction in binary size for `canvas_minimal`.
Closes #158 .
2019-05-26 13:02:52 -07:00
Patrick Walton
e04cc273ee
Add enough C bindings to recreate `canvas_minimal` in C.
...
Closes #12 .
2019-05-25 20:21:38 -07:00
Patrick Walton
7a02b78b3d
Explicitly specify color texture coordinates for alpha and solid tiles.
...
This is groundwork for gradients and images.
This commit also refactors the interface for vertex attributes to use named
parameters (via structs), for clarity.
2019-05-14 15:11:04 -07:00
Patrick Walton
8606cd013e
Replace commented out printlns with proper debug statements
2019-04-29 16:43:24 -07:00
Patrick Walton
6c31e1bc01
In VR mode, render one eye and then reproject to both eyes instead of rendering
...
twice.
This reduces both CPU and GPU time a lot in exchange for a small loss in
quality.
2019-04-26 17:22:54 -07:00
Patrick Walton
62a3fefca4
Reenable the tile and fill counts in the debug display
2019-04-18 15:09:37 -07:00
Patrick Walton
c688d04412
Remove the scene assembly thread, and pipeline only fills instead of alpha
...
tiles.
Removing a thread should make it easier to manually assign threads to CPUs, as
is necessary on devices with poor schedulers like Magic Leap 1.
2019-04-18 13:50:26 -07:00
Patrick Walton
db3851d754
Get subpixel AA and gamma correction working in 2D
2019-03-25 16:20:34 -07:00
Patrick Walton
29cedb96ef
Merge pull request #113 from asajeffrey/gl-nonzero-default-framebuffer
...
Allow a non-zero default framebuffer
2019-03-25 15:13:46 -07:00
Patrick Walton
224c8e85b9
Create separate shaders for monochrome and multicolor tiles.
...
This is preparation for fixing subpixel AA.
2019-03-22 14:28:31 -07:00
Alan Jeffrey
ab3b28f82b
Allow a non-zero default framebuffer
2019-03-21 13:34:59 -05:00
Patrick Walton
0458d9a7f2
Factor out bits of the postprocessing shader into includes
2019-03-18 21:40:10 -07:00
Patrick Walton
bb32777101
Initial work toward VR support
2019-03-14 14:42:22 -07:00
Patrick Walton
9c404dfdc1
Add an Android port
2019-03-12 13:55:26 -07:00
Patrick Walton
e09b447d0d
Move the contents of `gl::device` into `gl`
2019-03-05 14:51:29 -08:00
Patrick Walton
f7a8b573ce
Move the GPU rendering code out of `pathfinder_gl`, since it's now no longer
...
OpenGL-specific
2019-03-05 14:46:18 -08:00
Patrick Walton
bc80490158
Remove raw GL code from the demo
2019-03-05 13:57:28 -08:00
Patrick Walton
6b9adcb6fc
Fix GPU abstraction
2019-03-05 13:22:11 -08:00
Patrick Walton
8b4c06fe2a
Do GL error checks
2019-03-04 19:43:13 -08:00
Patrick Walton
ae450b063e
WIP: Factor out GL code
2019-03-04 14:55:32 -08:00
Patrick Walton
dc69d1197e
Tweak debug UI
2019-02-26 15:24:39 -08:00
Patrick Walton
92777c6346
Make rects rounded and optimize PNGs
2019-02-26 13:48:35 -08:00
Patrick Walton
5c7423d59c
Add more statistics to the performance debug window
2019-02-25 16:12:47 -08:00
Patrick Walton
fc62e9bc71
Subdivide offset curves to an error bound.
2019-02-20 18:27:27 -08:00
Patrick Walton
c7a1d9e960
Use stencil to integrate the vector scene into the 3D environment
2019-02-19 12:03:02 -08:00
Patrick Walton
3b8ecfd74c
WIP before removing barycentric coordinates
2019-02-18 18:13:10 -08:00
Patrick Walton
9af3bac11f
Implement depth interpolation, not working yet
2019-02-18 13:42:30 -08:00
Patrick Walton
661a865508
Fill depth when drawing the ground plane
2019-02-15 19:07:42 -08:00
Patrick Walton
d30743a69c
Begin refactoring the demo into a shared library and a platform-specific
...
entry point.
This will help the upcoming wasm port.
2019-02-15 18:21:46 -08:00
Patrick Walton
e4803cfddf
Add some ground to the 3D scene, no depth buffer yet
2019-02-14 18:53:02 -08:00
Patrick Walton
22fe63503f
Implement 2D rotation
2019-02-12 12:40:24 -08:00
Patrick Walton
dbf880d011
Rename `demo3` to `demo`
2019-02-08 14:53:20 -08:00
Patrick Walton
2a118c3af0
Get all postprocessing filters working
2019-02-08 14:37:30 -08:00
Patrick Walton
ba5a0f987c
Add basic postprocessing support
2019-02-08 13:55:31 -08:00
Patrick Walton
7429821867
Move demo UI to the demo
2019-02-07 15:35:21 -08:00
Patrick Walton
c9a80304dc
Add some more (non-functional) UI widgets to the demo
2019-02-07 14:07:05 -08:00
Patrick Walton
0b662b0660
Draw a settings button, not functional yet
2019-02-06 20:59:29 -08:00
Patrick Walton
a81850a899
Add window resizing support to the demo
2019-02-06 18:09:37 -08:00
Patrick Walton
8771dd6789
wip: dilation not working yet
2019-02-05 20:10:20 -08:00
Patrick Walton
3d0463999c
Add a SIMD integer rect type
2019-02-05 10:55:01 -08:00
Patrick Walton
f25682f0f1
Add a defringing shader for subpixel antialiasing, untested as of yet
2019-02-04 16:04:13 -08:00
Patrick Walton
b0e91369e5
Do scene building just-in-time on a per-outline basis as part of tiling
2019-02-02 11:36:42 -08:00
Patrick Walton
eb9b4a2a06
Work around macOS Radeon driver bug
2019-01-31 19:10:59 -08:00
Patrick Walton
dd480feb52
Factor out the GL rendering code into a separate crate
2019-01-30 19:31:29 -08:00