Hajime Hoshi
2a9fd5ef13
mipmap: Avoid using the vertex backend when GopherJS is not used
...
The backend logic is especially for GopherJS. As the backend logic
tends to consume a lot of memory, let's avoid this when possible.
Updates #797
2020-07-14 12:16:37 +09:00
Hajime Hoshi
cec32d4f72
ebiten: Add tests to modify pixels after ReplacePixels
...
Updates #1222
2020-07-03 03:25:47 +09:00
Hajime Hoshi
36515eb1f5
Revert "ebiten: Make ebiten.Image and buffered.Image 1:1"
...
This reverts commit 620981a09a
.
Fixes #1218
Updates #896
2020-06-28 01:01:39 +09:00
Hajime Hoshi
006b518929
ebiten: Skip test failing on macOS
2020-06-27 20:24:32 +09:00
Hajime Hoshi
5c4740c294
ebiten: Improve TestImageColorMCopy to test copying actually works
2020-06-25 22:49:37 +09:00
Hajime Hoshi
198621404f
buffered: Bug fix: Pixel data was not invalidated after DrawImage/Triangles
2020-06-25 13:11:19 +09:00
Hajime Hoshi
20b5be0886
graphicsdriver: Bug fix: Tie-breaking when picking a texel
...
When a texel is picked on texel-borders of a texture, the behavior
(tie-breaking) depends on GPU and unexpected. This change fixes this
issue by shifting 1/512 [texel] when picking a texel up.
Updates #1212
2020-06-24 20:51:16 +09:00
Hajime Hoshi
484473b6d9
graphicscommand: Span to 1/3 pixels
...
The center of pixels is problematic as the behavior depends on GPU.
In order to avoid this, align the vertices with about 1/3 pixels.
Updates #929
Fixes #1171
2020-06-16 03:56:53 +09:00
Hajime Hoshi
0b94e2e036
ebiten: Updates the tests
...
The tests are still disabled as they don't pass yet.
Updates #1171
2020-06-15 02:51:21 +09:00
Hajime Hoshi
6d25f7eaeb
ebiten: Disable TestImageFloatTranslate
...
It looks like the behavior depends on GPU.
Updates #1171
2020-06-14 18:22:28 +09:00
Hajime Hoshi
d74f7d3a77
shareable: Add gaps between images
...
After this change, each image on the texture atlases has a
transparent border around it.
This change removes the hack to round texels not to violate the
source regions.
Fixes #1194
Updates #1171
2020-06-14 18:05:41 +09:00
Hajime Hoshi
96fa0565e4
buffered: Remove mutex and use sync/atomic for performance
...
This change also enables to remove the optimization at
(*buffered.Image).ReplacePixels.
// This commit w/ the optimization
BenchmarkImageDrawOver-8 60225 19241 ns/op
// This commit w/o the optimization
BenchmarkImageDrawOver-8 66567 17700 ns/op
// The previous w/ the optimization
BenchmarkImageDrawOver-8 62355 19580 ns/op
// The previous w/o the optimization
BenchmarkImageDrawOver-8 54460 22768 ns/op
Updates #1137
2020-06-14 01:16:23 +09:00
Hajime Hoshi
5db4a55a07
ebiten: Check the source images are not disposed at DrawTriangles and DrawTrianglesWithShader
2020-06-13 18:12:21 +09:00
Hajime Hoshi
81159b8538
ebiten: Skip some slow tests on GopherJS
...
Fixes #1138
2020-04-19 02:09:02 +09:00
Hajime Hoshi
1d701577d6
buffered: Use the pending pixels when possible at At
...
(*Image).At can be unnecessarily slow since this tries to get
pixels from GPU. This change reduces the chance to read GPU by
using its pending pixels when possible.
Fixes #1137
2020-04-17 21:34:49 +09:00
Hajime Hoshi
19333c51e4
ebiten: Use internal/testing for tests
2020-04-01 18:35:12 +09:00
Hajime Hoshi
c36d4678a3
mipmap: Bug fix: DrawTriangles with a scale-only color matrix should be optimized
...
Fixes #1101
2020-03-17 02:48:29 +09:00
Hajime Hoshi
875a529708
graphics: Allow ReplacePixels on a sub-image
...
Fixes #980
2020-02-16 22:18:07 +09:00
Hajime Hoshi
aa6fc67736
Revert "graphics: Avoid all copying pixels"
...
This reverts commit c60a32a479
.
Reason: This breaks backward comptibility and it was not obvious how to fix examples.
2019-11-16 02:04:46 +09:00
Hajime Hoshi
c60a32a479
graphics: Avoid all copying pixels
...
This is a breaking change: ReplacePixels now takes the ownership
of the given pixels.
Fixes #983
2019-11-16 01:51:36 +09:00
Hajime Hoshi
1b011e3864
graphics: Bug fix: unexpected panic at Set with an out-of-range position
2019-10-12 02:28:55 +09:00
Hajime Hoshi
2621681a2a
graphics: Add TestImageDrawTrianglesAndMutateArgs
2019-09-18 23:52:11 +09:00
Hajime Hoshi
e434869dd7
graphics: More precise enlarging
...
Before this change, enlarging a 1px image with x4095 scale was not
accurate and edges were missing. This change fixes this issue.
Updates #611
2019-07-31 22:02:39 +09:00
Hajime Hoshi
b210339786
graphics: Use 'negative' mipmap when enlarging a too small image
...
This is a hack to render edges correctly.
This works only when the filter is nearest.
Fixes #611
2019-07-30 23:03:55 +09:00
Hajime Hoshi
d25d184ed7
graphics: Bug fix: wrong for loops in TestImageMipmap*
2019-07-30 19:19:30 +09:00
Hajime Hoshi
db1030a6d4
graphics: Add TestImageMipmapNegativeDet
2019-07-30 14:11:04 +09:00
Hajime Hoshi
0793d35c40
graphicscommand: Improve debug messages
...
Fixes #900
2019-07-19 23:35:13 +09:00
Hajime Hoshi
66b00c6f87
graphics: Remove println
2019-07-15 03:12:53 +09:00
Hajime Hoshi
a7e7e007ca
restorable: Bug fix: PutQuadVertices should take the source image
...
Fixes #898
2019-07-15 03:10:03 +09:00
Hajime Hoshi
4ab97ad250
graphics: Add TestImageZeroSizedMipmap
2019-04-25 10:51:59 +09:00
Hajime Hoshi
3cb9d18fc4
graphics: Bug fix: Too small mipmap
...
Bug: #839
2019-04-07 05:29:46 +09:00
Hajime Hoshi
5ed6565d1d
graphics: Bug fix: SubImage's SubImage's bounds was wrong
2019-02-21 23:44:57 +09:00
Hajime Hoshi
8934f8296f
graphics: Bug fix: Don't touch pixelsToSet when disposing a subimage
...
This change also removes finalizer for subimages since this is not
necessary.
Fixes #823
2019-02-21 23:07:11 +09:00
Hajime Hoshi
cbb0a1da95
graphicsdriver: Refactoring
...
This improved FPS on mobiles a little bit. Maybe now texture2D is
called only when necessary, but not sure.
2019-02-17 17:37:11 +09:00
Hajime Hoshi
1c3113e763
graphics: Add TestImageDrawTrianglesWithSubImage
2019-02-16 22:37:44 +09:00
Hajime Hoshi
fd250c8d8c
graphics: Rename NextPowerOf2Int -> InternalImageSize and add image size adjustment
...
There is a minimum internal image size on some system like old iOS
devices. This change adds adjustment of the size.
Issue: #810
2019-02-14 23:06:01 +09:00
Hajime Hoshi
5ccd240a35
graphics: Add TestImageAlphaOnBlack
2019-01-27 21:45:18 +09:00
Hajime Hoshi
128e99b6af
graphics: Implement (*Image).Set
2019-01-14 02:25:36 +09:00
Hajime Hoshi
6783aaae56
graphics: Better test for a crash
2019-01-11 00:31:32 +09:00
Hajime Hoshi
f1582c2d73
graphics: Add Address representing a sampler address mode
...
Fixes #761
2018-12-24 17:29:31 +09:00
Hajime Hoshi
189b8a17e9
graphics: Use source-border check even at DrawTriangles
...
DrawTriangles can now take a sub-image.
2018-12-23 03:24:39 +09:00
Hajime Hoshi
cae5f6bf4b
graphics: Add a test for #669 and #759
2018-12-21 04:08:44 +09:00
Hajime Hoshi
968e137cc5
graphics: Add TestImageLinearGradation
2018-12-03 01:53:12 +01:00
Hajime Hoshi
e537cb2c27
graphics: Bug fix: render source might not be initialized
2018-12-01 21:36:51 +01:00
Hajime Hoshi
962a11468b
restorable: Fix clearing logic
...
Fixes #740
2018-11-28 23:00:24 +01:00
Hajime Hoshi
1a54ff34e6
graphics: Forbid nil at ReplacePixels explicitly
2018-11-28 22:26:34 +01:00
Hajime Hoshi
14f5a03a79
Merge math and graphics packages
2018-11-17 20:23:12 +09:00
Hajime Hoshi
959c6511dd
graphics: Fix test names
2018-11-09 01:58:41 +09:00
Hajime Hoshi
03c800cb9b
graphics: Bug fix: wrong region on a subimage
2018-11-09 01:40:02 +09:00
Hajime Hoshi
9f0d14dd05
graphics: Add tests for #732
2018-11-09 00:48:21 +09:00
Hajime Hoshi
f54bdfa159
Reland: graphics: Bug fix: a sub image's Size was wrong
...
Size() usages are also fixed.
Fixes #732
2018-11-08 12:58:14 +09:00
Hajime Hoshi
27331024af
Revert "graphics: Bug fix: a sub image's Size was wrong"
...
This reverts commit 76ac850f6b
.
Reason: This breaks many examples
2018-11-08 12:19:38 +09:00
Hajime Hoshi
76ac850f6b
graphics: Bug fix: a sub image's Size was wrong
...
Fixes #732
2018-11-08 04:22:19 +09:00
Hajime Hoshi
710f56531f
graphics: Experimental: (*image.Image).SubImage
...
Fixes #722
2018-10-28 02:19:14 +09:00
Hajime Hoshi
d3bd858aba
graphics: Bug fix: Mipmap was not invalidated at DrawTriangle
...
Fixes #725
2018-10-26 02:08:18 +09:00
Hajime Hoshi
8b82667df1
graphics: Bug fix: Violating edge pixels with linear filter
...
Fixes #724
2018-10-26 00:48:51 +09:00
Hajime Hoshi
b9328bf14d
graphics: Add tests for #710
2018-10-11 02:44:51 +09:00
Hajime Hoshi
1a703ae34b
graphics: Extend the range to 4000 in TestImageStretch ( #611 )
2018-09-28 01:13:25 +09:00
Hajime Hoshi
bac0431c9f
graphics: Simplify mipmap calculation
2018-08-03 00:02:49 +09:00
Hajime Hoshi
d17a6dde9b
graphics: Remove unnecessary converts
2018-08-02 01:10:06 +09:00
Hajime Hoshi
972eea89db
affine: Fix some functions in GeoM test
...
Fixes #657
2018-08-02 01:06:54 +09:00
Hajime Hoshi
351c048e2f
graphics: Add TestSprites
2018-05-29 02:20:50 +09:00
Hajime Hoshi
b9cd7afff5
graphics: Add TestImageStretch ( #611 )
2018-05-13 23:47:59 +09:00
Hajime Hoshi
d7d892f2d6
graphics: Allow a little margin for edge pixels
2018-05-13 23:00:06 +09:00
Hajime Hoshi
63c33b24df
graphics: Refactoring
2018-04-16 01:51:32 +09:00
Hajime Hoshi
9902497e3d
test: Use flock to make tests exclusive
...
Fixes #575
2018-04-07 00:59:52 +09:00
Hajime Hoshi
f92a2748a4
graphics: Fix TestImageCompositeModeLighter
2018-03-21 03:42:58 +09:00
Hajime Hoshi
dbdae667f8
graphics: Temporary hack to pass tests on TravisCI
2018-03-21 03:10:15 +09:00
Hajime Hoshi
0a5deab0a2
graphics: Reland Bug fix: More strict calculation for the nearest filter ( #558 )
...
Better version of bae8f9d874
2018-03-21 02:40:26 +09:00
Hajime Hoshi
b157f2d6d0
Revert "graphics: Bug fix: More strict calculation for the nearest filter ( #558 )"
...
This reverts commit bae8f9d874
.
Reason: TravisCI failed
2018-03-20 04:16:37 +09:00
Hajime Hoshi
bae8f9d874
graphics: Bug fix: More strict calculation for the nearest filter ( #558 )
2018-03-20 04:05:03 +09:00
Hajime Hoshi
1b35bbec9a
test: Simplify code to get a test image
2018-03-15 03:48:32 +09:00
Hajime Hoshi
efea65ee58
graphics: Bug fix: wrong texels were used ( #546 )
2018-03-11 04:11:49 +09:00
Hajime Hoshi
dbe5c9c0ab
graphics: Add comments
2018-03-11 00:40:37 +09:00
Hajime Hoshi
48408cba11
shareable: Bug fix: Protect critical sections
2018-03-11 00:38:49 +09:00
Hajime Hoshi
c5872c6640
graphics: Misspelling
2018-03-03 20:42:16 +09:00
Hajime Hoshi
caf4e9504f
graphics: ReplacePixels should work on shared textures
2018-03-03 20:35:44 +09:00
Hajime Hoshi
d5bca2d499
graphics: Bug fix: (*Image).At must return color.RGBA type value
2018-03-03 18:51:52 +09:00
Hajime Hoshi
ecf4757809
graphics: Add TestImageSize
2018-03-02 02:57:12 +09:00
Hajime Hoshi
94c4cc35ab
graphics: Forbid copying Image objects
2018-02-25 21:55:46 +09:00
Hajime Hoshi
f1bb0f1a70
gofmt
2018-02-03 20:41:06 +09:00
Hajime Hoshi
331e46a6ce
graphics: Improve TestImageTooManyFill
2018-02-03 20:35:32 +09:00
Hajime Hoshi
a99c632cb7
graphics: Add TestImageSize1
2018-02-03 17:20:07 +09:00
Hajime Hoshi
e1640f5ae0
graphics: Allow errors in TestImageLinear ( #492 )
2018-02-03 17:01:19 +09:00
Hajime Hoshi
2014822f12
graphics: Fix TestImage4096
2018-02-03 15:39:17 +09:00
Hajime Hoshi
fe140c2caf
graphics: Add TestImage4096
2018-02-03 03:52:47 +09:00
Hajime Hoshi
06853be1a5
graphics: Remove error checks from image_test.go
2018-02-03 02:33:43 +09:00
Hajime Hoshi
654a88c140
graphics: Add TestImageOutsideUpperLeft
2017-12-16 01:20:58 +09:00
Hajime Hoshi
4744b461df
graphics: Handle non-well-formatted rectangle at DrawImageOptions
2017-12-14 11:52:19 +09:00
Hajime Hoshi
7378192fc2
graphics: Fix TestImageOutside
2017-12-14 00:49:53 +09:00
Hajime Hoshi
98532d8983
graphics: Add TestImageOutside
2017-12-14 00:25:35 +09:00
Hajime Hoshi
723d153800
Reland(2): graphics: Appropriate rendering of edges on linear filter
2017-12-12 00:03:01 +09:00
Hajime Hoshi
362d1c417f
Revert 'graphics: Appropriate rendering of edges on linear filter (Reland)' ( #458 )
2017-12-11 20:30:54 +09:00
Hajime Hoshi
1152439e65
graphics: Appropriate rendering of edges on linear filter (Reland)
...
Fixes #456
2017-12-07 02:26:16 +09:00
Hajime Hoshi
8091aa5190
Revert 'graphics: Appropriate rendering of edges on linear filter' #456
2017-12-06 23:40:29 +09:00
Hajime Hoshi
bc0432f310
graphics: Appropriate rendering of edges on linear filter
...
Fixes #315
2017-12-06 21:40:24 +09:00
Hajime Hoshi
e206c16fc6
graphics: Improve TestImageTooManyFill
2017-12-06 20:53:02 +09:00
Hajime Hoshi
8e7e960b56
graphics: Limit source-rectangle range
...
Remove texture adjustment introduced due to #317
2017-12-02 23:13:44 +09:00
Hajime Hoshi
c2fab6cca3
graphics: Bug fix: glClear doesn't treat 0 or 1 correctly
...
Fixes #452
2017-12-02 22:25:02 +09:00
Hajime Hoshi
12c24215b1
graphics: Bug fix: Flush after filling ( #419 )
2017-08-24 00:11:08 +09:00