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
Hajime Hoshi
0281ac7bd2
all: use bufio.NewWriter to improve writing speed
2024-07-29 16:29:57 +09:00
Hajime Hoshi
ef5ac4175d
all: use bufio.Reader to improve reading speed
2024-07-29 02:28:37 +09:00