Hajime Hoshi
a36f6210c0
all: use Go 1.20 APIs
...
Closes #2746
2024-09-12 00:22:45 +09:00
Hajime Hoshi
07d29fa729
cmd/ebitenmobile: bug fix: consider EbitenSurfaceView recreation
...
On Android Emulator (Small Desktop API 32), EbitenRenderer can be
easily recreated by resizing the window. Thus, EbitenRenderer should
not have any flags like strictContextRestoration. Also, the flag
onceSurfaceCreated_ doesn't work there.
2024-09-09 16:42:57 +09:00
Hajime Hoshi
6a51e5b003
internal/restorable: optimize WritePixels
...
This adds (*Image).makeStaleIfDependingOnWithRegion to reduce the
possibility of making an image stale.
2024-09-08 22:55:34 +09:00
Hajime Hoshi
af9bd6a282
all: specify src-regions correctly
...
This parameter was not important and actually not used with usual
shaders. However, now this information will be important for the
restorable package optimization later.
There was a performance issue that was caused by srcRegions, but
now this should not happen thanks to FilterUniformVariables.
Updates #1293
2024-09-08 22:24:15 +09:00
Hajime Hoshi
73565034a9
internal/restorable: refactoring
2024-09-08 19:29:41 +09:00
Hajime Hoshi
bbe3cba110
internal/restorable: remove draw-triangles history items at WritePixels
2024-09-08 18:20:40 +09:00
Hajime Hoshi
f32648b144
internal/restorable: skip adding stale regions when the image doesn't need to be restored
2024-09-08 17:51:09 +09:00
Hajime Hoshi
aa8e112414
internal/restorable: restore a stale image at clearing pixels
2024-09-08 17:48:23 +09:00
Hajime Hoshi
26f0479f16
internal/restorable: typo
2024-09-08 17:06:25 +09:00
Hajime Hoshi
9ef9ea0469
internal/restorable: refactoring
2024-09-08 17:03:18 +09:00
Hajime Hoshi
b36160d9e7
internal/restorable: bug fix: make all the images stale correctly
2024-09-08 16:11:57 +09:00
Hajime Hoshi
20f8df7fc1
internal/restorable: refactoring: remove lastTarget
...
This didn't improve performance very much. Rather, this made the code
a little hard to read and could have a potential issue.
2024-09-08 16:08:36 +09:00
Hajime Hoshi
167c3435f7
internal/restorable: refactoring
2024-09-08 16:03:56 +09:00
Hajime Hoshi
4824dc0360
internal/restorable: resolve a stale state when possible
2024-09-08 14:28:16 +09:00
Hajime Hoshi
30a2817ab5
internal/restorable: add Hint to optimize drawImageHistoryItem size
2024-09-08 12:24:20 +09:00
Hajime Hoshi
29ef2c84ef
internal/atlas: add comments
2024-09-08 11:31:52 +09:00
Hajime Hoshi
1488e5e685
internal/graphicscommand: add attributes to images
2024-09-07 23:38:16 +09:00
Hajime Hoshi
4fa8265c58
internal: add comments
2024-09-07 23:24:55 +09:00
Hajime Hoshi
46cf09197b
internal/graphicscommand: enable to show shader names
2024-09-07 22:06:41 +09:00
Hajime Hoshi
393437b8be
internal/graphicscommand: imporve blend log
2024-09-07 21:29:50 +09:00
Hajime Hoshi
1b2a2afbfb
internal/restorable: rename restoring -> restoration
2024-09-07 19:09:00 +09:00
Hajime Hoshi
d50a438c07
internal/restorable: optimize removeDuplicatedRegions
...
Updates #2375
Updates #2626
Updates #3083
2024-09-07 19:01:05 +09:00
Hajime Hoshi
35f4884a74
ebiten: add RunGameOptions.StrictContextRestration
...
This reverts commit a30f075896
.
This change adds a new option StrictContextRestration to make the
restoration optional.
Closes #3083
2024-09-07 18:36:04 +09:00
Hajime Hoshi
935e7a6d5d
Revert "internal/restorable: remove the case when the restoring is needed"
...
This reverts commit c08a2193a9
.
Updates #3083
2024-09-07 16:54:20 +09:00
Hajime Hoshi
5e18f191c1
Revert "internal/restorable: remove drawTrianglesHistoryItem"
...
This reverts commit afe3f7a8ff
.
Updates #3083
2024-09-07 16:54:20 +09:00
Hajime Hoshi
16d2052836
Revert "internal/restorable: remove alwaysReadPixelsFromGPU"
...
This reverts commit f3206721a3
.
Updates #3083
2024-09-07 16:54:20 +09:00
Hajime Hoshi
81d35df33b
Revert "internal/restorable: remove unused functions and variables"
...
This reverts commit 8169253a57
.
Updates #3083
2024-09-07 16:54:20 +09:00
Hajime Hoshi
6453e552f3
Revert "internal/restorable: remove unnecessary functions and variables around shaders"
...
This reverts commit 4f3e00ec3a
.
Updates #3083
2024-09-07 16:54:20 +09:00
Hajime Hoshi
34639d0028
Revert "internal/restorable: remove ImageTypeRestorable"
...
This reverts commit 8c2d4e1408
.
Updates #3083
2024-09-07 16:54:20 +09:00
Hajime Hoshi
169b9fe51e
Revert "internal/restorable: move DumpImages to internal/atlas"
...
This reverts commit 7c9266d8b6
.
Updates #3083
2024-09-07 16:54:20 +09:00
Hajime Hoshi
a9d8f374c8
Revert "internal/restorable: move SwapBuffers to internal/atlas"
...
This reverts commit f610cb5724
.
Updates #3083
2024-09-07 16:54:20 +09:00
Hajime Hoshi
c2c5480878
Revert "internal/atlas: move some functions in internal/restorable to internal/atlas"
...
This reverts commit 3651d73e0b
.
Updates #3083
2024-09-07 16:54:20 +09:00
Hajime Hoshi
a324cfd3b6
Revert "internal/restorable: remove ImageType"
...
This reverts commit 21ef462c37
.
Updates #3083
2024-09-07 16:54:20 +09:00
Hajime Hoshi
62ed5bed4b
Revert "internal/restorable: integrate some functions into internal/atlas"
...
This reverts commit c5d0ec3de7
.
Updates #3803
2024-09-07 16:54:20 +09:00
Hajime Hoshi
d533461936
Revert "internal/restorable: integrate ReadPixels into internal/atlas"
...
This reverts commit e804f9e58c
.
Updates #3083
2024-09-07 16:54:20 +09:00
Hajime Hoshi
becada4afc
Revert "internal/restorable: refactoring"
...
This reverts commit 81e1104613
.
Updates #3083
2024-09-07 16:54:20 +09:00
Hajime Hoshi
19d2009a5f
Revert "internal/restorable: integrate Shader.Dispose into internal/atlas"
...
This reverts commit bfa2c460a2
.
Updates #3083
2024-09-07 16:54:20 +09:00
Hajime Hoshi
17a5488c49
Revert "internal/restorable: integrate Image.DrawTriangles into internal/atlas"
...
This reverts commit 3ee905bc4d
.
Updates #3083
2024-09-07 16:54:20 +09:00
Hajime Hoshi
d733308eb1
Revert "internal/restorable: integrate Image.WritePixels into internal/atlas"
...
This reverts commit 6cc8150185
.
Updates #3083
2024-09-07 16:54:20 +09:00
Hajime Hoshi
104cc18477
Revert "internal/restorable: integrate Image.Extend into internal/atlas"
...
This reverts commit 6151fd313f
.
Updates #3083
2024-09-07 16:54:20 +09:00
Hajime Hoshi
54c117b0de
Revert "internal/restorable: integrate Image functions into internal/atlas"
...
This reverts commit 59896e4447
.
Updates #3083
2024-09-07 16:54:20 +09:00
Hajime Hoshi
5a5feb0401
Revert "internal/restorable: remove Image"
...
This reverts commit 812cd494de
.
Updates #3083
2024-09-07 16:54:20 +09:00
Hajime Hoshi
0b01aeea16
Revert "internal/restorable: integrate the implementation into internal/atlas"
...
This reverts commit c404b448aa
.
Updates #3083
2024-09-07 16:54:20 +09:00
Hajime Hoshi
81c75e1b0a
Revert "internal/atlas: refactoring: remove ImageTypeVolatile"
...
This reverts commit def82fd5d3
.
Updates #3083
2024-09-07 16:54:20 +09:00
Hajime Hoshi
6eb0271f83
internal/graphicscommand: better log for read/write pixels
2024-09-06 18:38:07 +09:00
Hajime Hoshi
0e6702c043
internal/file: update comments
2024-09-06 11:03:39 +09:00
Hajime Hoshi
e43bb3898b
internal/file: bug fix: VirtualFS.Open(".") should always return a new entry
...
Closes #3081
2024-09-06 10:44:08 +09:00
Hajime Hoshi
b34f9977f6
internal/gamepaddb: update the database
...
This uses b4001f8b2d
2024-09-03 02:19:03 +09:00
Hajime Hoshi
3eda0dd387
internal/graphicsdriver/playstation5: add extern C
2024-09-01 20:08:52 +09:00
Hajime Hoshi
ca54ce69c4
internal/graphicsdriver/playstation5: bug fix: compile error
2024-09-01 20:00:41 +09:00
Hajime Hoshi
7f1e6cb538
internal/graphicsdriver/playstation5: add ebitengine_SetVertices
2024-09-01 19:47:21 +09:00
Hajime Hoshi
71370a01bd
internal/beforemaintest: avoid os.Exit(0)
2024-09-01 13:58:39 +09:00
Hajime Hoshi
67441c4823
internal/testing: avoid os.Exit(0)
...
os.Exit(0) might cause test flakiness.
https://github.com/hajimehoshi/ebiten/actions/runs/10650734256/job/29522689113
```
panic: unexpected call to os.Exit(0) during test
goroutine 1 [running]:
os.Exit(0x0)
/opt/hostedtoolcache/go/1.23.0/x64/src/os/proc.go:67 +0x8
github.com/hajimehoshi/ebiten/v2/internal/testing.MainWithRunLoop(0x19b28c0)
/home/runner/work/ebiten/ebiten/internal/testing/testing.go:50 +0xa
github.com/hajimehoshi/ebiten/v2/internal/graphicscommand_test.TestMain(...)
/home/runner/work/ebiten/ebiten/internal/graphicscommand/image_test.go:42
main.main()
_testmain.go:55 +0x5
```
2024-09-01 13:31:40 +09:00
Hajime Hoshi
f98003bcd5
ebiten: add ColorSpace and RunGameOptions.ColorSpace
...
This works only for macOS Metal and WebGL so far.
Closes #2871
2024-08-28 03:03:57 +09:00
Hajime Hoshi
42209606b1
internal/ui: disable IME and enable it only when necessary
...
Closes #2918
2024-08-27 02:22:30 +09:00
Hajime Hoshi
dc68152f17
internal/shader: better error message for the fragment entry point
2024-08-25 19:38:57 +09:00
Hajime Hoshi
9693ce8382
internal/shader: allow less arguments at Fragment
...
Closes #3073
2024-08-25 19:17:41 +09:00
Hajime Hoshi
e2662a8af7
internal/shader: bug fix: wrong indexing
2024-08-25 18:58:05 +09:00
Hajime Hoshi
2cc809516f
ebiten: add Vertex.Custom0 to Custom3
...
Closes #2640
2024-08-25 18:11:39 +09:00
Hajime Hoshi
bff760af01
internal/shader: bug fix: test failures
...
Updates #2640
2024-08-25 17:43:44 +09:00
Hajime Hoshi
fef487e09d
internal/shaderir/hlsl: refactoring: more flexible generation
...
Updates #2640
2024-08-25 17:27:00 +09:00
Hajime Hoshi
ed45843c13
internal/graphicsdriver/opengl: assume custom attributes are vec4
...
Due to HLSL restrictions, all the attributes must have a semantics.
Always assuming custom attributes are vec4 makes things simpler.
Updates #2640
2024-08-25 17:11:28 +09:00
Hajime Hoshi
107189a00d
internal/shader: use strings.TrimPrefix
2024-08-25 15:43:44 +09:00
Hajime Hoshi
7142a3bcd9
internal/graphicsdriver/opengl: bug fix: total must be reset
2024-08-25 15:29:22 +09:00
Hajime Hoshi
a42a8548b1
internal/shader: refactoring
2024-08-25 12:57:11 +09:00
Hajime Hoshi
6db3b11b36
internal/shader: refactoring
2024-08-25 12:29:24 +09:00
Hajime Hoshi
3547d999b1
internal/graphicsdriver/opengl/gl: bug fix: crash when log length is 0
2024-08-25 11:45:54 +09:00
Hajime Hoshi
dd63eef65e
textinput: support every environment even without IME
...
Closes #3072
2024-08-24 01:06:52 +09:00
Hajime Hoshi
9ad7fe5bed
internal/shader: refactoring
2024-08-23 11:05:14 +09:00
Hajime Hoshi
d3d42b3263
internal/shader: refactoring: varying variables
2024-08-23 10:57:59 +09:00
Hajime Hoshi
35f9b1c224
ebiten: add RunGameOptions.DisableHiDPI
...
Closes #2987
2024-08-20 00:02:57 +09:00
Hajime Hoshi
17322c9c3b
all: reduce files for PS5
2024-08-17 23:06:01 +09:00
Hajime Hoshi
26038c2ac1
internal/ui: bug fix: an unexpected scroll bar was shown
...
Closes #3066
2024-08-16 23:57:52 +09:00
Hajime Hoshi
435c8b75eb
internal/graphicsdriver/opengl: automatically adjust the array buffer layout
...
Updates #2640
2024-08-12 04:08:02 +09:00
Hajime Hoshi
9e208eee81
all: use QuadVerticesFromDstAndSrc when possible
2024-08-12 02:42:36 +09:00
Hajime Hoshi
b6ab7a10c1
internal/graphics: unify QuadVertices
...
This is a preparation for adding members to Vertex.
Updates #2640
2024-08-12 00:29:24 +09:00
Hajime Hoshi
6cd00f3b88
internal/graphicsdriver/opengl: exclude playstation5
2024-08-11 22:41:21 +09:00
Hajime Hoshi
9a751d7c26
internal/mipmap: refactoring
2024-08-11 22:33:21 +09:00
Hajime Hoshi
e6807794f2
internal/mipmap: refactoring
2024-08-11 22:29:15 +09:00
Hajime Hoshi
5e820be911
internal/buffered: refactoring
...
This is a preparation for adding members to Vertex.
Updates #2640
2024-08-11 22:25:45 +09:00
Hajime Hoshi
5f80f4b3de
all: refactoring
2024-08-11 21:43:00 +09:00
Hajime Hoshi
89933bf0ab
internal/graphicsdriver/playstation5: bug fix: compile error
2024-08-10 21:52:38 +09:00
Hajime Hoshi
332da38565
internal/graphicsdriver/playstation5: update DrawTriangles
...
A Go pointer in a C struct could cause some troubles.
2024-08-10 21:21:09 +09:00
Hajime Hoshi
a5235eea86
internal/graphicsdriver/opengl/gl: always prefer OpenGL ES to OpenGL
...
Closes #2944
2024-08-10 01:21:35 +09:00
Hajime Hoshi
9c80367f2f
internal/gamepad: ignore EACCES error for /dev/input
...
Updates #3057
2024-08-08 11:35:39 +09:00
Hajime Hoshi
1f03971fa9
internal/debug: reland: rename functions
2024-08-07 23:48:35 +09:00
Hajime Hoshi
fab9482e0e
Revert "internal/debug: rename functions"
...
This reverts commit 74722298a2
.
Reason: This included an unexpected change in internal/gamepad
2024-08-07 23:47:51 +09:00
Hajime Hoshi
74722298a2
internal/debug: rename functions
2024-08-07 23:42:36 +09:00
Hajime Hoshi
2a34d1d47b
internal/graphicsdriver/opengl/gl: use PureGo version for Android again
...
This is basically a revert for 297efea68b
.
This updates PureGo for the Android issue.
Updates #3052
Updates ebitengine/purego#262
2024-08-05 23:34:56 +09:00
Hajime Hoshi
aba652c323
internal/graphicsdriver/playstation5: add DrawTriangles
2024-08-04 19:13:36 +09:00
Hajime Hoshi
9bd17de2d3
internal/graphicsdriver/opengl: remove unused members
2024-08-04 04:26:53 +09:00
Hajime Hoshi
37a6057230
internal/ui: bug fix: increase maxSkipCount
...
Closes #3055
2024-08-04 04:16:01 +09:00
Hajime Hoshi
af6072c1b4
internal/shader: add more tests
...
Updates #3011
2024-08-03 19:08:03 +09:00
Hajime Hoshi
7c4f532b83
internal/shader: bug fix: an index must be a constant for vectors
...
Updates #3011
2024-08-03 19:03:42 +09:00
Hajime Hoshi
719838b7ab
.github/workflows: update wasmbrowsertest to fix timeout issue
...
The issue agnivade/wasmbrowsertest#60 was fixed.
Updates #1313
2024-08-02 23:03:01 +09:00
Hajime Hoshi
297efea68b
internal/graphicsdriver/opengl/gl: use C version for Android
...
Unfortunately PureGo's dlopen didn't work on some Android devices.
Use the Cgo version instead in the same way as v2.7.
Closes #3052
2024-08-01 11:52:07 +09:00
Hajime Hoshi
856b339298
internal/ui: bug fix: show a black dot at the red button when needed
...
When SetWindowClosingHandled(true) is called, a black dot should be
shown at the red button to close the window.
Closes #3020
2024-07-31 23:54:18 +09:00
Hajime Hoshi
3106f98b52
internal/graphicsdriver/opengl/gl: add more error messages to load libraries
2024-07-31 21:35:24 +09:00
Hajime Hoshi
1843f6acc1
internal/ui: bug fix: dropping multiple files didn't work on Firefox and Safari
...
Closes #3045
2024-07-31 11:50:30 +09:00
Hajime Hoshi
95ad1b158c
internal/file: refactoring
...
Updates #3045
2024-07-31 11:21:35 +09:00