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
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
6b6f24c98d
Merge remote-tracking branch 'origin/pf3' into pf3
2019-03-28 21:25:53 -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
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
6ca5dc5f62
Add basic barrel distortion support for VR
2019-03-20 13:41:04 -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
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
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
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
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
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
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
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
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
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
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
92421943fc
Open a file dialog when the user clicks on the open file
2019-02-08 21:08:03 -08:00
Patrick Walton
6afbafcb43
Split out the demo UI code into a separate module
2019-02-08 20:58:54 -08:00
Patrick Walton
dbce7e3ad1
Fix dirty tracking to stop using 100% CPU
2019-02-08 20:51:34 -08:00
Patrick Walton
3cc8f7a11f
Refactor the demo some
2019-02-08 15:39:47 -08:00
Patrick Walton
725834285b
Refactor the demo a bit
2019-02-08 15:16:53 -08:00
Patrick Walton
dbf880d011
Rename `demo3` to `demo`
2019-02-08 14:53:20 -08:00
Patrick Walton
4062f824fd
Remove the Pathfinder 2 demo
2019-02-08 14:39:35 -08:00
Patrick Walton
3165a4a1b0
Remove old demo server; remove `SegmentFlags`
2019-01-10 20:43:03 -08:00
Patrick Walton
adf49ab932
Rename `path-utils` to `geometry`
2019-01-10 10:01:21 -08:00
Patrick Walton
a2522e3845
wip
2018-11-14 10:33:53 -08:00
Patrick Walton
883ccceb2d
Update various dependencies
2018-09-19 20:03:33 -07:00
Patrick Walton
81c3f08a5c
Make macOS-only code conditionally compiled; update dependencies
2018-08-22 13:34:50 -07:00
Patrick Walton
c6cc6e6fd8
Remove `pathfinder_font_renderer` in favor of `font-kit`.
...
Closes #69 .
Closes #84 .
2018-08-02 15:07:25 -07:00
Bastien Orivel
9d19454c36
Update app_units 0.7
...
See ya num-traits 0.1 o/
2018-07-31 20:16:44 +02:00
Bastien Orivel
3cfd0a3126
Update image to 0.19
2018-07-31 20:16:00 +02:00
Paul Rouget
6d7dd604f8
Euclid and lyon updates
2018-07-27 11:40:45 +02:00
Nicolas Silva
46d1878ef5
Update lyon and euclid dependencies.
2018-07-11 00:27:42 +02:00
Patrick Walton
fcfd157c70
Remove `F32ArrayToMat4` in favor of `glmatrix.mat4.clone()`
2018-04-04 17:56:01 -07:00
Patrick Walton
2fde232982
Factor the text paragraph rendering code out into a separate class so it
...
can be reused
2018-04-03 13:57:46 -07:00
Patrick Walton
6ba87277c2
Remove the explicit WebVR API dependency; it seems to be upstream now
2018-04-03 12:42:33 -07:00
Patrick Walton
881be4967d
Fix TypeScript build errors
2018-04-03 12:40:02 -07:00
Manish Goregaokar
8ed4e96ff9
Various review cleanups
2018-04-02 19:10:19 -07:00
Manish Goregaokar
3d223c1a4a
Match screen size as much as possible
2018-04-02 19:10:11 -07:00
Manish Goregaokar
0751da81a4
Move VR stuff to ThreeDView
2018-04-02 19:10:11 -07:00
Manish Goregaokar
2b0b699fa0
Turn off lighting for VR
2018-04-02 19:10:11 -07:00
Manish Goregaokar
3af3635eea
Use correct viewport and clear correctly
2018-04-02 19:10:11 -07:00
Manish Goregaokar
148e77d995
Use correct projection and view matrices
2018-04-02 19:10:11 -07:00
Manish Goregaokar
975685c23b
Make it possible to enter VR mode
2018-04-02 19:10:11 -07:00
Patrick Walton
d66a5b6c54
Update to `env-logger` 0.5
2018-03-30 14:25:52 -07:00
Patrick Walton
dcc3a0fc94
Update to bincode 1.0
2018-03-22 15:03:25 -07:00
Patrick Walton
5e5148df54
Fix on Chrome, which doesn't support WebGL queries
2018-03-20 19:40:28 -07:00
Patrick Walton
6e13fb171c
Use a lookup table to do area calculations instead of Loop-Blinn-style
...
distance-to-edge for stencil analytic antialiasing.
This improves the rendering quality of stencil AAA significantly.
Additionally, this adds an approximation of Core Graphics' (macOS')
defringing filter.
Closes #73 .
2018-03-19 14:35:36 -07:00
Patrick Walton
64c818e530
Construct meshes independently of mesh libraries (renamed to "mesh
...
packs").
This fits in better with the way WebRender does things. It simplifies
the code too.
2018-03-08 15:10:29 -08:00