Hajime Hoshi
9cb631e30f
Reland: graphics: Reuse vertices backend and reduce allocating
...
This is a reland of 74f1e5519f
.
The vertex slice is now copied before saving as the drawing
history items.
2019-09-29 01:36:00 +09:00
Hajime Hoshi
492149c463
Revert "graphics: Reuse vertices backend and reduce allocating"
...
This reverts commit 74f1e5519f
.
Reason: The vertex slice is used at restorable package without
copying.
2019-09-29 01:20:55 +09:00
Hajime Hoshi
df9458510d
graphics: Speed optimization at maxf32 and minf32
2019-09-29 00:55:24 +09:00
Hajime Hoshi
74f1e5519f
graphics: Reuse vertices backend and reduce allocating
2019-09-28 22:53:13 +09:00
Hajime Hoshi
79b32c7601
graphics: Add buffered package
...
Moved the command queue to the package.
2019-09-21 22:34:37 +09:00
Hajime Hoshi
0a872b342a
shareable: Change the argument to color.RGBA at Fill
...
The argument will be copied explicitly.
2019-09-21 21:16:46 +09:00
Hajime Hoshi
9d867850dc
shareable: Rename Dispose -> MarkDisposed
...
Before this change, it was not clear that shareable's Dispose can
be called from finalizers since finalizers must not be blocked by
a mutex. Actually Dispose could be locked and must not be called
from finalizers.
This change renames the function to avoid confusion of the API,
and make the function available from finalizers.
2019-09-21 20:05:21 +09:00
Hajime Hoshi
1c2c932c6c
graphics: Remove MakeVolatile/IsVolatile
2019-09-21 14:53:52 +09:00
Hajime Hoshi
bc4d092710
shareable: Remove (*Image).Size()
2019-09-21 05:56:34 +09:00
Hajime Hoshi
6095cd965b
shareable: Remove (*Image).PutVertex
2019-09-21 04:01:44 +09:00
Hajime Hoshi
52b52e7d92
grpahics: Move DrawImage implementation to mipmap and remove (*mipmap).original()
2019-09-19 11:25:33 +09:00
Hajime Hoshi
e585fda253
grpahics: Move DrawTriangles implementation to mipmap
2019-09-19 11:15:14 +09:00
Hajime Hoshi
504a433540
graphics: Reduce original() usage
2019-09-19 02:27:20 +09:00
Hajime Hoshi
95bc445fea
graphics: Refactoring: Remove imports
2019-09-19 02:17:35 +09:00
Hajime Hoshi
b8eeded538
graphics: Remove 'resetRestoringState'
...
This is basically a revert of 2d079b123f
As filling can happen on a part of a shared image, resetting the
restoring state was wrong.
2019-08-25 02:18:51 +09:00
Hajime Hoshi
2003b7d292
Fix misspellings
2019-08-01 01:07:23 +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
ab0a6f4ff7
graphics: Fix small issues in mipmap
...
* Create images for negative mipmap from its next image so that
the scale is not too big.
* Some variables usages were not correct.
2019-07-31 09:20:57 +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
69ef9eb184
graphics: Refactoring: Use map in mipmap
2019-07-30 19:43:50 +09:00
Hajime Hoshi
2d079b123f
restorable: Add ResetRestoringState to reset the state
...
After Fill command, the image doesn't have to keep the restoring
information. Now Fill command is as same as DrawTriangles, there
is no way for restorable.Image to know whether it can reset the
state or not. ResetRestoringState clears the state explicitly.
2019-07-20 14:04:02 +09:00
Hajime Hoshi
e499535728
graphics: Move functions to the package ebiten
2019-06-26 22:23:09 +09:00