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
|
58d55c5eaa
|
Allow rendering to non-default framebuffers
|
2019-04-18 19:05:01 -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
|
06439f858f
|
Store the tile rect in only one place in the scene assembly thread
|
2019-04-12 11:55:05 -07:00 |
Patrick Walton
|
21563d9d7f
|
Move the Z-buffer over to the `DenseTileMap` abstraction
|
2019-04-11 19:38:31 -07:00 |
Patrick Walton
|
eef6045ed7
|
Add missing `tile_map.rs` file
|
2019-04-11 19:36:55 -07:00 |
Patrick Walton
|
6a967c19f4
|
Introduce a `DenseTileMap<T>` type for better abstraction and SIMD use
|
2019-04-11 19:25:02 -07:00 |
Patrick Walton
|
9e38da25e1
|
Remove the `TileObjectPrimitive` structure in favor of a flat list of
backdrops.
This reduces memory usage a bit and adds the infrastructure needed to support a
tile map.
|
2019-04-11 18:54:03 -07:00 |
Patrick Walton
|
4e6bbf59ba
|
Stop using `crossbeam-channel`, as it's slower than `std::sync::mpsc` on macOS
at least
|
2019-04-10 20:29:13 -07:00 |
Patrick Walton
|
3d4f8bd008
|
Pipeline between CPU and GPU at a more fine-grained level.
This makes us stop running one frame behind.
|
2019-04-09 17:06:43 -07:00 |
Patrick Walton
|
d090dd459b
|
Remove the layer of indirection between object indices and shaders
|
2019-04-03 11:58:45 -07:00 |
Patrick Walton
|
db3851d754
|
Get subpixel AA and gamma correction working in 2D
|
2019-03-25 16:20:34 -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 |
Patrick Walton
|
6ca5dc5f62
|
Add basic barrel distortion support for VR
|
2019-03-20 13:41:04 -07: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
|
b80ab2ad25
|
Only show the "Text Effects" button when a monochrome SVG is loaded
|
2019-03-06 19:35:57 -08:00 |
Patrick Walton
|
6062676d0e
|
Add tooltips to the buttons in the demo
|
2019-03-06 11:33:59 -08:00 |
Patrick Walton
|
4dff13ef00
|
Use an advancing cursor when laying out UI elements
|
2019-03-06 10:47:52 -08:00 |
Patrick Walton
|
8dc3a84d09
|
Remove `tile-svg` and the serialization code.
They can be added later if needed, but for now they're just bitrotting.
|
2019-03-05 15:38:10 -08:00 |
Patrick Walton
|
33aa6f905d
|
Move UI event code and widgets to the `pathfinder_ui` crate
|
2019-03-05 15:36:07 -08:00 |
Patrick Walton
|
ad0691c146
|
Move the generic UI code in the renderer crate to a separate crate
|
2019-03-05 15:13:55 -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
|
5c7423d59c
|
Add more statistics to the performance debug window
|
2019-02-25 16:12:47 -08:00 |
Patrick Walton
|
1e3298fdb7
|
Switch to guard-band style clipping to eliminate artefacts
|
2019-02-22 13:15:00 -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
|
9af3bac11f
|
Implement depth interpolation, not working yet
|
2019-02-18 13:42:30 -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
|
31f1fae951
|
Add a TODO about monotonic conversion
|
2019-02-12 08:57:49 -08:00 |
Patrick Walton
|
f04c000cae
|
Add a quick check to skip clipping when an outline is entirely inside or
outside the clip area
|
2019-02-09 19:24:30 -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
|
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
|
fe410e066f
|
Add a SIMD rect type
|
2019-02-05 10:03:20 -08:00 |
Patrick Walton
|
63b47f1abe
|
Move basic geometry primitives to the `pathfinder_geometry::basic` module
|
2019-02-04 20:20:32 -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
|
a5234e6695
|
Stop clipping 3D quads over and over
|
2019-02-02 13:53:04 -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
|
df59fd9792
|
Rename `Point4DF32` to `Point3DF32`
|
2019-02-01 17:07:03 -08:00 |
Patrick Walton
|
6a286ab153
|
Remove `Point3DF32`
|
2019-02-01 17:05:35 -08:00 |
Patrick Walton
|
0b0c913332
|
Split out SIMD into a separate crate
|
2019-02-01 11:48:10 -08:00 |
Patrick Walton
|
89244ba6cf
|
Do clipping in 3D homogeneous space
|
2019-01-31 15:29:13 -08:00 |
Patrick Walton
|
4801503dd8
|
Fix curve/edge intersection logic in clipping
|
2019-01-31 10:12:37 -08:00 |
Patrick Walton
|
e105bdb7c9
|
Display timing info in the demo
|
2019-01-30 14:42:06 -08:00 |
Patrick Walton
|
6b8848bb35
|
Fix boundary condition for active edges precisely on tile boundaries
|
2019-01-29 19:29:42 -08:00 |
Patrick Walton
|
e3bf703105
|
Stop using 100% CPU; fix bug when splitting line segments at Y extrema
|
2019-01-29 15:35:07 -08:00 |
Patrick Walton
|
e958363872
|
Allow scenes to be dumped as SVG (untested) and make 3D mode optional in the demo
|
2019-01-29 14:50:15 -08:00 |
Patrick Walton
|
ab93ea1f22
|
Fix bogus thin culling that was causing artefacts
|
2019-01-29 11:27:25 -08:00 |
Patrick Walton
|
d1ca5fe757
|
Use a much better technique for curve flattening
|
2019-01-28 20:36:06 -08:00 |
Patrick Walton
|
a9c1760de5
|
Clipping mostly works now
|
2019-01-28 14:58:57 -08:00 |
Patrick Walton
|
7e3365c481
|
wip
|
2019-01-28 12:57:15 -08:00 |
Patrick Walton
|
80db7155b8
|
wip
|
2019-01-25 17:07:37 -08:00 |
Patrick Walton
|
938bd30a78
|
wip
|
2019-01-25 14:28:53 -08:00 |
Patrick Walton
|
3ce60afb44
|
Fix clipping
|
2019-01-22 11:46:01 -08:00 |
Patrick Walton
|
93ae7d3548
|
Basic perspective support
|
2019-01-16 16:53:10 -08:00 |
Patrick Walton
|
02928f295d
|
Basic rect clipping
|
2019-01-15 13:49:26 -08:00 |
Patrick Walton
|
0097ffab19
|
wip
|
2019-01-15 11:42:25 -08:00 |
Patrick Walton
|
5bbb5a1b74
|
Get the native code demo rendering the tiger
|
2019-01-15 10:52:37 -08:00 |
Patrick Walton
|
a4c2796883
|
Implement a third demo with native code, not working yet
|
2019-01-14 19:32:53 -08:00 |
Patrick Walton
|
821b54b8f4
|
Factor renderer and SVG code out into separate crates
|
2019-01-14 14:20:36 -08:00 |