Commit graph

1112 commits

Author SHA1 Message Date
Andre von Houck
2f746876b6
Merge pull request #480 from treeform/postmask2
more image simd
2022-07-26 20:55:46 -07:00
Ryan Oldenburg
fd1b02dd24 tmp jpeg fix 2022-07-26 22:37:13 -05:00
Ryan Oldenburg
e5c4ba1605 minifyBy2 magnifyBy2 simd 2022-07-26 22:06:10 -05:00
Ryan Oldenburg
cc37dd9d54 simd stuff 2022-07-26 22:06:10 -05:00
Ryan Oldenburg
f8e8de9c5f faster 2022-07-26 22:06:10 -05:00
Ryan Oldenburg
c50cc6babf fix context masking 2022-07-26 20:28:32 -05:00
Ryan Oldenburg
b4cc7cdefc fix trapezoid + MaskBlend aa 2022-07-26 01:31:13 -05:00
Ryan Oldenburg
3d13292806 delete mask ref object type 2022-07-26 00:19:43 -05:00
Ryan Oldenburg
f78b573074 image ceil, bugfix path fill mask blend 2022-07-25 16:35:47 -05:00
treeform
b1e1e0c095 rename test_iamges_draw_correct 2022-07-24 16:01:58 -07:00
treeform
e48a191174 Blit strategy 2022-07-24 15:59:40 -07:00
Andre von Houck
41ec280864
Merge pull request #473 from treeform/guzba
image.fill(paint)
2022-07-23 18:44:57 -07:00
Ryan Oldenburg
b1bd568015 rm 2022-07-23 20:07:48 -05:00
Ryan Oldenburg
684be27a1a image.fill(paint) 2022-07-23 19:54:16 -05:00
Ryan Oldenburg
4f60e87ef4 copy proc consistent 2022-07-23 19:13:23 -05:00
Ryan Oldenburg
7cf81a6d9a update macro procSignature 2022-07-23 12:57:23 -05:00
Ryan Oldenburg
8670e0edec neon procs 2022-07-23 00:13:19 -05:00
Ryan Oldenburg
0f93769ef1 avx2 image applyOpacity 2022-07-22 22:49:51 -05:00
Ryan Oldenburg
d9cdb0ef95 image invertAvx2 2022-07-22 22:40:39 -05:00
Ryan Oldenburg
3b47831710 f 2022-07-22 22:34:55 -05:00
Ryan Oldenburg
2ace8e5e9f simd macro works on signature not just name, split applyOpacity + invert 2022-07-22 22:27:18 -05:00
treeform
21ac6af59a f 2022-07-22 11:04:18 -07:00
treeform
ac5271600d Fix non simd magnifyBy2 2022-07-22 11:02:16 -07:00
Ryan Oldenburg
6e2786a22f simpler 2022-07-21 22:10:46 -05:00
Ryan Oldenburg
1a660ab8ec toPremultipliedAlpha rounds, + neon version 2022-07-21 20:36:36 -05:00
Ryan Oldenburg
1ed9afb2b9 path.commands is seq[float32] 2022-07-21 17:40:17 -05:00
Ryan Oldenburg
f36a162e9b fix newImageNeon 2022-07-10 19:19:48 -05:00
Ryan Oldenburg
7f62ac5810 start on neon 2022-07-10 18:40:51 -05:00
Ryan Oldenburg
316bf1ce4f rm 2022-07-07 21:40:02 -05:00
Ryan Oldenburg
0b8d8029f3 restore expected procs/types 2022-07-07 20:16:39 -05:00
Ryan Oldenburg
9099df4715 treeform better macro 2022-07-07 20:10:14 -05:00
Ryan Oldenburg
abc2dd653f rm todo 2022-07-07 19:52:22 -05:00
Ryan Oldenburg
902dda2a2e simpler 2022-07-07 19:39:39 -05:00
Ryan Oldenburg
83c7527474 rm 2022-07-07 19:11:21 -05:00
Ryan Oldenburg
8bb6957fe9 simd, hasSimd pragmas 2022-07-07 19:09:43 -05:00
Ryan Oldenburg
fd52dfecb4 unused now that mask type is in common 2022-07-07 19:09:43 -05:00
Ryan Oldenburg
138d88a9bc rename 2022-07-07 19:09:43 -05:00
Ryan Oldenburg
8ca1400699 rm unimportant simd for now 2022-07-07 19:09:43 -05:00
Ryan Oldenburg
dabe456af9 move image, mask to common 2022-07-07 19:09:43 -05:00
Ryan Oldenburg
06005de85c bugfix 2022-07-07 19:09:43 -05:00
Ryan Oldenburg
5d27c93f68 newImageFromMaskSimd newMaskFromImageSimd 2022-06-30 13:04:06 -05:00
Ryan Oldenburg
c4eadf31ed isOneColorSimd isTransparentSimd 2022-06-30 13:04:06 -05:00
Ryan Oldenburg
3a41ff8e64 applyOpacitySimd 2022-06-30 13:04:06 -05:00
Ryan Oldenburg
f5825daf10 ceilMaskSimd 2022-06-30 13:04:06 -05:00
Ryan Oldenburg
1c6fa86ac0 isOpaqueSimd 2022-06-30 13:04:06 -05:00
Ryan Oldenburg
d76550052e toPremultipliedAlphaSimd 2022-06-30 13:04:06 -05:00
Ryan Oldenburg
af5045ccb8 invertImageSimd invertMaskSimd 2022-06-30 13:04:06 -05:00
Ryan Oldenburg
9644894903 fillUnsafeSimd 2022-06-30 13:04:06 -05:00
Ryan Oldenburg
aaead7ed84 f 2022-06-30 13:04:06 -05:00
treeform
ba5681e452 Cleanup. 2022-06-30 10:59:38 -07:00
treeform
dffad18641 Quantize each vertex only once. 2022-06-30 10:38:55 -07:00
Ryan Oldenburg
01254d2398 bugfix, make sure they actually span 2022-06-30 01:57:05 -05:00
Ryan Oldenburg
0abafbca6f use trapezoid method more 2022-06-30 01:57:05 -05:00
treeform
af84081817 Quadratic speedup. 2022-06-29 23:48:07 -07:00
treeform
04abf707fa Cleanup. 2022-06-29 23:14:34 -07:00
treeform
de0600e1e2 Cubic tangent error. 2022-06-29 22:49:28 -07:00
Ryan Oldenburg
17cfd9643d morepretty 2022-06-29 17:17:53 -05:00
Ryan Oldenburg
bf1caf1c9b move applyOpacity simd out 2022-06-29 17:17:53 -05:00
Ryan Oldenburg
ba8fac4e85 checks off 2022-06-29 17:17:53 -05:00
Ryan Oldenburg
b706f93ee5 move mask ceil simd out 2022-06-29 17:17:53 -05:00
Ryan Oldenburg
8a07e3cf9b move mask invert out 2022-06-29 17:17:53 -05:00
Ryan Oldenburg
cf81556100 rename 2022-06-29 17:17:53 -05:00
Ryan Oldenburg
e56ad9e403 move newImage(mask) and newMask(image) simd out 2022-06-29 17:17:53 -05:00
Ryan Oldenburg
e2a966288d move invert simd out 2022-06-29 17:17:53 -05:00
Ryan Oldenburg
9f2c018c9e new simd approach 2022-06-29 17:17:53 -05:00
Ryan Oldenburg
28a880b2b7 move toward more flexible trapezoid approach 2022-06-29 17:17:53 -05:00
Ryan Oldenburg
f41f895e24 simpler 2022-06-28 20:10:22 -05:00
Ryan Oldenburg
0affa5284b simpler 2022-06-28 19:53:12 -05:00
Ryan Oldenburg
fe488708cd use return as progress marker 2022-06-28 18:42:06 -05:00
Ryan Oldenburg
e0ac7dc7a2 toPremultipliedAlphaAvx2 2022-06-28 18:21:37 -05:00
Ryan Oldenburg
ffc2b5b4d5 aligned sse2 + avx2 versions isOneColor isOpaque isTransparent 2022-06-28 18:00:37 -05:00
Ryan Oldenburg
c244b8cb81 std/ 2022-06-28 15:16:22 -05:00
Ryan Oldenburg
d80df8f958 f 2022-06-27 00:36:45 -05:00
Ryan Oldenburg
741234786c rename 2022-06-27 00:35:09 -05:00
Ryan Oldenburg
ce062a5949 morepretty 2022-06-26 21:58:50 -05:00
Ryan Oldenburg
3a289a6172 rm 2022-06-26 21:53:54 -05:00
Ryan Oldenburg
e44211346e rm old 2022-06-25 22:18:15 -05:00
Ryan Oldenburg
1713b64697 faster apply float32 opacity / coverage to rgbx 2022-06-25 14:37:24 -05:00
Ryan Oldenburg
7225883aa9 better shortcut detection, improves polygon test 2022-06-25 13:47:51 -05:00
Ryan Oldenburg
f82918c307 best shortcut ever 2022-06-25 02:01:39 -05:00
Ryan Oldenburg
9a9f8d114f f 2022-06-23 21:26:44 -05:00
Ryan Oldenburg
bec700d6b9 2 vertical pixel-aligned lines shortcut 2022-06-23 20:58:51 -05:00
Ryan Oldenburg
48c7db719e handle partition index differently 2022-06-23 20:50:22 -05:00
Ryan Oldenburg
1cfaea9357 avx fill 2022-06-22 15:24:02 -05:00
Ryan Oldenburg
3bdc6c3266 faster partitioning by pre-sizing partition entries 2022-06-22 13:48:16 -05:00
Ryan Oldenburg
f93da30d08 simpler 2022-06-22 13:48:16 -05:00
Ryan Oldenburg
23deffc761 simplify 2022-06-22 02:12:15 -05:00
Ryan Oldenburg
a4fbb5365e partition heights can now vary 2022-06-22 02:02:08 -05:00
Ryan Oldenburg
82c7c8b864 faster 2022-06-22 01:03:32 -05:00
treeform
c9adc6dff7 Update dep and comment. 2022-06-21 08:45:09 -07:00
Ryan Oldenburg
1821c8ea93 f 2022-06-21 00:00:15 -05:00
Ryan Oldenburg
67938a0597 f 2022-06-20 22:28:15 -05:00
Ryan Oldenburg
b302c9b38e simpler 2022-06-20 22:24:31 -05:00
Ryan Oldenburg
4870c8f283 simpler 2022-06-20 22:21:49 -05:00
Ryan Oldenburg
82881ae75b simpler, faster 2022-06-20 22:19:11 -05:00
Ryan Oldenburg
3c769291af faster 2022-06-20 22:00:20 -05:00
Ryan Oldenburg
14576fcd27 much simpler 2022-06-20 21:57:25 -05:00
Ryan Oldenburg
432dce4902 less instructions 2022-06-20 21:48:18 -05:00
Ryan Oldenburg
7cfb124c2e simpler + bugfix + test 2022-06-20 21:40:20 -05:00
Ryan Oldenburg
37041d6790 f 2022-06-20 21:31:12 -05:00