Commit Graph

2669 Commits

Author SHA1 Message Date
Hajime Hoshi
fda421c5fe internal/uidriver/glfw: Bug fix: SEGV at setWindowSize
u.window can be a different value before and after the function
setWindowSize.

Closes #1522
2021-03-03 23:04:35 +09:00
Hajime Hoshi
c8b98f13fb internal/graphics: Always use the vertex backend to reduce GC
Closes #1521
2021-03-03 22:23:15 +09:00
Hajime Hoshi
cb3fc3c51c Revert "shareable: Limit the texture size to 8192"
This reverts commit c92ccfff79.

Reason: This should no longer be needed after #1517 is fixed.
2021-02-27 13:55:13 +09:00
Hajime Hoshi
77b198211c internal/graphicsdriver/metal: Add a comment 2021-02-27 04:04:25 +09:00
Hajime Hoshi
53352cf2b3 internal/graphicsdriver/metal: Use the smallest temporary texture
Updates #1517
2021-02-27 03:45:19 +09:00
Hajime Hoshi
673627c4d4 internal/graphicsdriver/metal: Optimization 2021-02-27 02:30:20 +09:00
Hajime Hoshi
6b3c51921c internal/driver: Remove Image.Sync
Syncing is no longer needed for Metal, and additionally, OpenGL's sync
implementation was mock.

Updates #1508
2021-02-26 23:16:28 +09:00
Hajime Hoshi
9341d21614
internal/shareable: Call DrawTriangles instead of ReplacePixels at makeShared (#1513)
When context losts never happen, reading pixels and call replace-pixels command are not needed.

Closes #1508
2021-02-26 12:56:22 +09:00
Hajime Hoshi
d913e66cd9 Revert "uidriver/glfw: Bug fix: Do not iconify the fullscreen window automatically"
This reverts commit 61bf10e73e.

Reason: This prevents the app from iconifying when toggling apps.

Updates #1405
Closes #1504
2021-02-23 20:13:21 +09:00
Hajime Hoshi
18d526c2d3 internal/uidriver/glfw: Bug fix: Crash when returning from fullscreen
ForceUpdate was called unexpectedly inside Update. This caused the
race condition.

Closes #1505
2021-02-23 16:52:12 +09:00
Hajime Hoshi
969964cb46 internal/graphicsdriver/opengl/gl: Bug fix: Remove unsafe reflect usage
Closes #1495
2021-02-14 21:27:30 +09:00
Hajime Hoshi
1517f80430 internal/uidriver/glfw: Refactoring 2021-02-11 04:02:18 +09:00
Hajime Hoshi
ec912e5cad internal/uidriver/glfw: Remove the dirty hack creating a temporary UI instance
Updates #1122
2021-02-11 03:45:39 +09:00
Hajime Hoshi
fea802b39d internal/uidriver: Replace mutex usages with atomic
Updates #1073
2021-02-11 02:38:15 +09:00
Hajime Hoshi
ec843ce92c internal/web: Consider the case when navigator exists but userAgent doesn't
This can happen on go2cpp.
2021-02-09 23:59:39 +09:00
Hajime Hoshi
9400efa9a5 internal/uidriver/glfw: Update the screen on resizing
Closes #1204
2021-02-07 23:03:56 +09:00
Hajime Hoshi
5f81065d78 internal/shader: Make function duplications error
Closes #1430
2021-02-07 22:24:23 +09:00
Hajime Hoshi
d999b4dc8e internal/uidriver/glfw: Bug fix: Enable to specify ebiten.Image to SetWindowIcon
Closes #1468
2021-02-07 21:18:30 +09:00
Hajime Hoshi
acb8bcae38 cmd/ebitenmobile, internal/devicescale: Experimental fix of the display density
Closes #1481
2021-02-07 14:07:06 +09:00
Hajime Hoshi
44bb004cb7 internal/restorable: Avoid allocating new slices for drawTrianglesHistory 2021-01-30 19:13:03 +09:00
Hajime Hoshi
87c8625692 Remove internal/colormcache 2021-01-28 03:28:29 +09:00
Hajime Hoshi
256adfff9d internal/affine: Add tests
Updates #1474
2021-01-28 02:24:24 +09:00
Hajime Hoshi
a6dd6196b4 internal/affine: Cache scaling ColorM for heuristic optimization
Closes #1474
2021-01-28 02:23:22 +09:00
Hajime Hoshi
14abc28d3a internal/color: Remove Add 2021-01-27 02:37:56 +09:00
Hajime Hoshi
599b3501fd internal/uidriver/js: Bug fix: GamepadName and GamepadSDLID could return wrong values
Updates #1472
2021-01-26 10:35:40 +09:00
Hajime Hoshi
b9a0906537 internal/uidriver/js: Bug fix: nil map 2021-01-26 10:26:52 +09:00
Hajime Hoshi
2dadfdb88e internal/uidriver: Optimization 2021-01-26 01:02:24 +09:00
Hajime Hoshi
b8694aa66a internal/graphicsdriver/opengl: Optimization 2021-01-26 00:45:17 +09:00
Hajime Hoshi
e60e6ca5ac internal/shareable: Optimization 2021-01-26 00:43:45 +09:00
Hajime Hoshi
f1848a6d46 internal/uidriver/js: Optimization: Avoid creating new maps for initialization 2021-01-26 00:12:18 +09:00
Hajime Hoshi
e844c257f7 internal/uidriver/js: Bug fix: Compile error 2021-01-25 22:49:45 +09:00
Hajime Hoshi
10e5e9e633 internal/uidriver: Prepare the slice capacities 2021-01-25 22:47:44 +09:00
Hajime Hoshi
40e662d672 internal/uidriver: Optimization 2021-01-24 23:59:44 +09:00
Hajime Hoshi
a0a8d41ff6 uidriver/js: Force to update the screen when resizing
Updates #1204
2021-01-18 01:17:58 +09:00
Hajime Hoshi
34695dc845 shareable: Refactoring 2021-01-18 00:35:09 +09:00
Hajime Hoshi
0c578f1670 shareable: Rename notUpdatedCount -> usedAsSourceCount and modify implementation
Before this change, the image automatically becomes on a shareable
texture again when the image is not modified for a while. This was
problematic when an offscreen is not updated for a while, but used
as a render target again, as an independent image for the image is
created every time when the image is used as a render target.

After this change, the count is updated only when the image is used
as a rendering source.

Closes #1465
2021-01-17 19:00:16 +09:00
Hajime Hoshi
f77c514598 graphicsdriver/opengl: Refactoring 2021-01-05 02:07:30 +09:00
Hajime Hoshi
b7abde7f00 graphicsdriver/opengl: Bug fix: getBufferSubData did not work correctly on JS 2021-01-03 19:44:29 +09:00
Hajime Hoshi
dd15927710 uidriver/js: Bug fix: IsFocused crashes on go2cpp 2021-01-03 17:53:21 +09:00
Hajime Hoshi
fcbde8d124 uidriver/mobile: Do not use %q at the mobile error message
Closes #1447
2021-01-02 02:08:36 +09:00
Hajime Hoshi
c92ccfff79 shareable: Limit the texture size to 8192
Closes #1453
2020-12-31 17:52:18 +09:00
Hajime Hoshi
b6bc683991 packing: Bug fix: Extend could create a too big page
Closes #1454
2020-12-31 17:33:27 +09:00
Hajime Hoshi
2ea360b921 Revert "driver: Increase gamepad buttons to 64"
This reverts commit 62b199f9eb.

Reason: This seems my misunderstanding.
2020-12-29 02:49:58 +09:00
Hajime Hoshi
62b199f9eb driver: Increase gamepad buttons to 64
e.g. Nintendo Switch controller can have more than 32 buttons.
2020-12-27 21:56:08 +09:00
Hajime Hoshi
bb20c9719e uidriver/js: Implement gamepads for go2cpp
Updates #744
2020-12-27 20:10:45 +09:00
Hajime Hoshi
601fd5eb22 uidriver/js: Update go2cpp touch API 2020-12-27 19:56:24 +09:00
Hajime Hoshi
8e6792ca23 uidriver/js: Refactoring: Use a map for gamepad states
This change improves the consistency with touches.
2020-12-27 18:44:16 +09:00
Hajime Hoshi
3d48922d8c jsutil: Bug fix: byteLenght must be accessed every time to get the latest value 2020-12-26 17:04:12 +09:00
Hajime Hoshi
e95cccad21 jsutil: Reduce calls of (js.Value).Get
(js.Value).Get invokes the string conversion from UTF-8 to UTF-16.
This is related to #1438, though this is not a fix in the OpenGL
driver.

Updates #1438
2020-12-26 05:12:04 +09:00
Hajime Hoshi
a6ade8f5cd uidriver/js: Update touch APIs for go2cpp 2020-12-21 23:01:12 +09:00