Patrick Walton
b886c157c1
Use 2-lane instead of 4-lane SIMD types for 2D vectors.
...
Also, this commit rewrites the `add_fill()` method to stop using shuffle
instructions, which can be slow and make the code overly complicated. The
shuffle instructions have been removed from the various SIMD backends.
2019-06-26 16:38:37 -07:00
Luis de Bethencourt
70e9adc0da
Add more tests for F32x4
2019-06-05 17:30:31 -04:00
Patrick Walton
dc45dc459e
Remove unused `LineSegment2F::cross` and vector cross product functions
2019-06-03 15:50:39 -07:00
Patrick Walton
a1b0df0a42
Rename `Point2DF` to `Vector2F`, `Point3DF` to `Vector4F`, and `LineSegmentF`
...
to `LineSegment2F`.
Straw poll on Twitter suggested that these names were preferred.
2019-06-03 12:39:29 -07:00
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
5dd9e8b67d
Merge pull request #173 from luisbg/scalar
...
Start adding tests for scalar::F32x4
2019-05-29 14:21:33 -07:00
Luis de Bethencourt
9f4bcd8c42
Start adding tests for scalar::F32x4
2019-05-29 17:04:28 -04:00
Patrick Walton
5133bbfe1a
Use unit vectors instead of angles for arcs.
...
This makes things faster and will also simplify the implementation of round
joins.
2019-05-29 12:14:47 -07:00
luisbg
16813b9ebe
Test I32x4 swizzles
2019-05-28 16:50:22 -04:00
luisbg
b887690b73
Complete I32x4 swizzles
2019-05-28 16:50:17 -04:00
Luis de Bethencourt
7240dafb05
Add test_i32x4_swizzles
2019-05-28 13:24:41 -04:00
Luis de Bethencourt
3ccd1fce20
Complete test_f32x4_swizzles
2019-05-27 21:43:25 -04:00
Luis de Bethencourt
8c0415c9b9
Remove cross method from F32x4
...
Silencing the following rustc warning:
warning: unused variable: `other`
Followup to Pull Request #152 .
Instead of marking `other` unused (`_other`) we can remove the method
entirely.
2019-05-24 12:19:13 -04:00
Patrick Walton
639a8f39e8
Add Moiré demo
2019-05-11 11:53:50 -07:00
Patrick Walton
328e804378
Run `rustfmt` on the SIMD crate
2019-04-29 16:57:21 -07:00
Patrick Walton
cb9fe3edf2
Bounds check SIMD on ARM.
...
Closes #126 .
2019-04-18 14:05:30 -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
6ca5dc5f62
Add basic barrel distortion support for VR
2019-03-20 13:41:04 -07:00
Nicolas Silva
301075ef86
Fix swizzles in scalar.rs.
2019-03-20 17:19:11 +01:00
Patrick Walton
9c404dfdc1
Add an Android port
2019-03-12 13:55:26 -07:00
Patrick Walton
d1728dfe6d
Update the scalar SIMD fallback
2019-03-08 12:30:07 -08:00
Patrick Walton
4dff13ef00
Use an advancing cursor when laying out UI elements
2019-03-06 10:47:52 -08:00
Patrick Walton
ae450b063e
WIP: Factor out GL code
2019-03-04 14:55:32 -08:00
Patrick Walton
1e3298fdb7
Switch to guard-band style clipping to eliminate artefacts
2019-02-22 13:15:00 -08:00
Patrick Walton
d7f6d9eb3d
Allow the canvas to be dragged in 2D mode
2019-02-12 14:49:24 -08:00
Patrick Walton
a8cc87bfd7
Make the effects window togglable
2019-02-07 16:38:24 -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
df59fd9792
Rename `Point4DF32` to `Point3DF32`
2019-02-01 17:07:03 -08:00
Patrick Walton
42bb7acddb
Add some tests for SIMD
2019-02-01 16:58:35 -08:00
Patrick Walton
f9aed5b077
Add some more SIMD stuff
2019-02-01 15:19:44 -08:00
Patrick Walton
2487d71879
Add more shuffles and rename combines for clarity
2019-02-01 12:16:42 -08:00
Patrick Walton
0b0c913332
Split out SIMD into a separate crate
2019-02-01 11:48:10 -08:00