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
|
c5ccd0f6e0
|
Add partial support for transparent background colors.
|
2019-04-10 14:43:36 -07:00 |
Patrick Walton
|
12b3b1cd9a
|
Merge pull request #128 from asajeffrey/demo-handle-events-before-scene-update
In the demo, handle events before updating the scene
|
2019-04-10 08:42:33 -07:00 |
Patrick Walton
|
8cb2ae8918
|
Merge pull request #127 from asajeffrey/pf3-mut-present
Make the demo window present method take a &mut self
|
2019-04-10 08:42:05 -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 |
Alan Jeffrey
|
3337dd897c
|
In the demo, handle events before updating the scene
|
2019-04-08 11:24:41 -05:00 |
Alan Jeffrey
|
c26a443b0d
|
Make the demo window present method take a &mut self
|
2019-04-08 11:16:57 -05:00 |
Patrick Walton
|
d090dd459b
|
Remove the layer of indirection between object indices and shaders
|
2019-04-03 11:58:45 -07:00 |
Patrick Walton
|
2f651ed537
|
Merge pull request #117 from asajeffrey/pf3-options
A couple of features for Options
|
2019-04-02 14:30:43 -07:00 |
Alan Jeffrey
|
dc77a5262f
|
TAB toggles UI visibility in the demo
|
2019-04-02 15:55:38 -05:00 |
Alan Jeffrey
|
0166ff96de
|
Allow demo UI to show just stats
|
2019-04-02 15:48:28 -05:00 |
Alan Jeffrey
|
3fafaff04f
|
Option to disable the UI
|
2019-04-02 15:21:05 -05:00 |
Alan Jeffrey
|
4db3fb6279
|
Allow demo apps to provide default options
|
2019-04-02 15:21:05 -05:00 |
Patrick Walton
|
ace5392701
|
Merge pull request #116 from asajeffrey/gitignore-emacs
Add emacs backup files to .gitignore
|
2019-04-02 11:01:08 -07:00 |
Patrick Walton
|
6b6f24c98d
|
Merge remote-tracking branch 'origin/pf3' into pf3
|
2019-03-28 21:25:53 -07:00 |
Patrick Walton
|
79b26bb9bd
|
Split out the swizzles into separate modules
|
2019-03-28 21:25:33 -07:00 |
Patrick Walton
|
ae192ffee7
|
Add ARM SIMD
|
2019-03-28 19:26:47 -07:00 |
Patrick Walton
|
a987bf0fc1
|
Merge pull request #124 from asajeffrey/pf3-demo-customize-rayon
Allow the Window to customize rayon's thread builder
|
2019-03-28 15:17:23 -07:00 |
Alan Jeffrey
|
c51885a696
|
Renamed customize_rayon to adjust_thread_pool_settings
|
2019-03-28 17:16:47 -05:00 |
Alan Jeffrey
|
52fa494d48
|
Allow the Window to customize rayon's thread builder
|
2019-03-28 14:42:14 -05:00 |
Patrick Walton
|
e4b613c2c8
|
Stroke then transform instead of the reverse.
|
2019-03-26 19:56:59 -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 |
Alan Jeffrey
|
a2db354eda
|
Add emacs backup files to .gitignore
|
2019-03-21 11:44:48 -05:00 |
Patrick Walton
|
26fea26f87
|
Allow construction of a `Transform3DF32` from a quaternion describing a
rotation.
Closes #111.
|
2019-03-20 16:27:28 -07:00 |
Patrick Walton
|
a0aeb124ad
|
Merge pull request #112 from asajeffrey/geometry-perspective-post-mul
Add Perspective::post_mul
|
2019-03-20 14:26:11 -07:00 |
Patrick Walton
|
6ca5dc5f62
|
Add basic barrel distortion support for VR
|
2019-03-20 13:41:04 -07:00 |
Alan Jeffrey
|
1769246e5a
|
Add Perspective::post_mul
|
2019-03-20 13:59:55 -05:00 |
Patrick Walton
|
2819a88060
|
Merge pull request #110 from nical/swizzle
Fix swizzles in scalar.rs
|
2019-03-20 10:21:44 -07:00 |
Nicolas Silva
|
301075ef86
|
Fix swizzles in scalar.rs.
|
2019-03-20 17:19:11 +01:00 |
Patrick Walton
|
0458d9a7f2
|
Factor out bits of the postprocessing shader into includes
|
2019-03-18 21:40:10 -07:00 |
Patrick Walton
|
9025189650
|
Allow opening new SVGs in the Android port
|
2019-03-18 18:13:13 -07:00 |
Patrick Walton
|
49660a6b31
|
Add more Daydream VR support
|
2019-03-15 15:23:37 -07:00 |
Patrick Walton
|
5db7edad0b
|
Add specific rendering methods for each eye
|
2019-03-14 20:15:48 -07:00 |
Patrick Walton
|
e212a839b4
|
Get device orientation changes partially working
|
2019-03-14 19:13:27 -07:00 |
Patrick Walton
|
f02e75edaf
|
Use the gyroscope to look around on Android
|
2019-03-14 15:29:56 -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
|
d5effc35ae
|
Invert control flow.
There's an issue whereby if keys are held down in the 3D mode it doesn't keep
redrawing. This will be fixed in a followup.
|
2019-03-08 12:45:10 -08:00 |
Patrick Walton
|
d1728dfe6d
|
Update the scalar SIMD fallback
|
2019-03-08 12:30:07 -08:00 |
Patrick Walton
|
a74c0abbec
|
Factor the SDL code out in preparation for other ports
|
2019-03-07 16:14:26 -08:00 |
Patrick Walton
|
25558c2177
|
Only emit warnings for non-empty `<defs>` nodes.
Inkscape likes to put empty `<defs>` nodes in the file, which don't do
anything, so we technically support them.
|
2019-03-07 11:24:20 -08:00 |
Patrick Walton
|
640ac61b8d
|
Switch to a light background by default; fix 3D velocity
|
2019-03-07 11:15:43 -08: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
|
40209b6fe8
|
Show a warning when unsupported SVG features are used
|
2019-03-06 18:25:08 -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
|
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
|
64b480fe32
|
Some more work on the site
|
2019-03-01 14:58:02 -08:00 |
Patrick Walton
|
dc69d1197e
|
Tweak debug UI
|
2019-02-26 15:24:39 -08:00 |
Patrick Walton
|
18e0a06df8
|
Update the README for Pathfinder 3
|
2019-02-26 15:24:25 -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
|
19c14da3aa
|
Center the SVG in the 2D demo
|
2019-02-25 15:25:08 -08:00 |
Patrick Walton
|
550c9feb58
|
Move the device code in the demo into its own file
|
2019-02-25 15:14:40 -08:00 |
Patrick Walton
|
ac24b67300
|
Add a simple SVG-subset-to-Skia-code tool, for benchmarking
|
2019-02-25 15:06:33 -08:00 |
Patrick Walton
|
f6af769486
|
Add screenshot functionality.
|
2019-02-25 11:33:26 -08:00 |
Patrick Walton
|
aef7dd1353
|
Allow the background color to be changed in the demo
|
2019-02-22 18:21:03 -08:00 |
Patrick Walton
|
1e3298fdb7
|
Switch to guard-band style clipping to eliminate artefacts
|
2019-02-22 13:15:00 -08:00 |
Patrick Walton
|
e10e2e97d4
|
Tweak the camera transforms in the 3D view
|
2019-02-22 11:54:01 -08:00 |
Patrick Walton
|
0da196aa92
|
Scale the SVG appropriately in the demo
|
2019-02-21 20:19:42 -08:00 |
Patrick Walton
|
b6e334a5bb
|
Fix temporal inconsistency in the demo between transform applied between vector
scene and environment
|
2019-02-21 12:09:02 -08:00 |
Patrick Walton
|
66ee901e43
|
Close the path if necessary when rebuilding it for clipping
|
2019-02-21 11:42:48 -08:00 |
Patrick Walton
|
fc62e9bc71
|
Subdivide offset curves to an error bound.
|
2019-02-20 18:27:27 -08:00 |
Patrick Walton
|
3a8478a048
|
Remove all Lyon dependencies.
We may want to re-merge at a later date, but for now all relevant algorithms
have been appropriately SIMD-ified.
|
2019-02-20 16:46:50 -08:00 |
Patrick Walton
|
23943c7428
|
Add a flag to specify whether contours are closed
|
2019-02-20 16:32:40 -08:00 |
Patrick Walton
|
b9e3952246
|
Reimplement segment offsetting
|
2019-02-20 16:21:58 -08:00 |
Patrick Walton
|
d75ed71af4
|
WIP before moving to a segment basis
|
2019-02-20 12:41:43 -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
|
63b59df375
|
Start a new Web site
|
2019-02-15 17:29:35 -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
|
0983812b90
|
Rotate and scale around the appropriate points in the demo
|
2019-02-13 16:05:28 -08:00 |
Patrick Walton
|
4053b7dd0c
|
Add zoom in and zoom out buttons for input devices without gesture support
|
2019-02-13 10:32:25 -08:00 |
Patrick Walton
|
cb9c14bd59
|
Remove the Pathfinder 2 orientation computation code
|
2019-02-12 19:56:44 -08:00 |
Patrick Walton
|
dbc14a3fc0
|
Remove the `normals` module, as we now dilate outlines directly
|
2019-02-12 19:55:58 -08:00 |
Patrick Walton
|
e3cca6a676
|
Remove the `cubic_to_quadratic` module, as it's unneeded now
|
2019-02-12 19:51:48 -08:00 |
Patrick Walton
|
fb692acf05
|
Open a default SVG if none is supplied on the command line
|
2019-02-12 19:31:29 -08:00 |
Patrick Walton
|
2eccdba360
|
Allow pinch zoom in 2D mode
|
2019-02-12 15:00:33 -08:00 |
Patrick Walton
|
d7f6d9eb3d
|
Allow the canvas to be dragged in 2D mode
|
2019-02-12 14:49:24 -08:00 |
Patrick Walton
|
398718a3c8
|
Allow the rotation slider to be dragged
|
2019-02-12 12:49:35 -08:00 |
Patrick Walton
|
22fe63503f
|
Implement 2D rotation
|
2019-02-12 12:40:24 -08:00 |
Patrick Walton
|
a9ac960862
|
Load a new scene when the user requests it
|
2019-02-12 11:16:49 -08:00 |
Patrick Walton
|
7511b3bd2f
|
Add a `LoadScene` message to the backend thread
|
2019-02-12 11:03:37 -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 |