Hajime Hoshi
338b8957e8
internal/graphicscommand: add Terminate
...
This change reduces a render thread usage in internal/ui.
Updates #2714
2023-12-27 02:28:55 +09:00
Hajime Hoshi
22715cd2d5
internal/gamepaddb: refactoring
2023-12-24 23:41:44 +09:00
Hajime Hoshi
4a2c8212fb
internal/shaderir: fix comments
2023-12-24 23:10:41 +09:00
Hajime Hoshi
c48fc05132
internal/graphicsdriver/metal: use %w instead of %v for errors
2023-12-24 22:29:53 +09:00
Hajime Hoshi
2e363cc19b
internal/thread: fix comments
2023-12-23 23:23:52 +09:00
Hajime Hoshi
4895ae7f93
internal/graphicsdriver/opengl: refactoring: move some functions from internal/ui
...
Updates #2714
2023-12-23 22:30:13 +09:00
Hajime Hoshi
ee2ca6d20c
internal/graphicsdriver/opengl: refactoring
2023-12-23 19:28:41 +09:00
Hajime Hoshi
01a4e29c5b
internal/graphicsdriver/opengl/gl: add a build tag for PS5
2023-12-23 19:01:36 +09:00
Hajime Hoshi
b73d63da29
internal/glfw: change the default client API to No-API
2023-12-21 04:05:13 +09:00
Hajime Hoshi
037a818601
internal/graphicsdriver/opengl: bug fix: go-vet failed
2023-12-20 03:06:58 +09:00
Hajime Hoshi
4ef7b5c166
internal/graphicsdriver/opengl: refactoring: hide SetGLFWClientAPI
...
Updates #2714
2023-12-20 02:47:19 +09:00
Hajime Hoshi
f6f0cf05e6
internal/ui: refactoring: move updateVsyncOnRenderThread to the OpenGL driver
...
Updates #2714
2023-12-20 02:38:20 +09:00
Hajime Hoshi
12ae411d15
internal/graphicsdriver/opengl, internal/graphicsdriver/opengl/gl: refactoring
2023-12-20 02:19:33 +09:00
Hajime Hoshi
6fd18150d8
internal/graphicsdriver/opengl: move egl
to the package opengl
...
Updates #2714
2023-12-19 23:41:14 +09:00
Hajime Hoshi
425b4dd99a
internal/graphicsdriver/opengl: fix a wrong comment
...
Updates #2517
2023-12-18 01:44:27 +09:00
bsski
b8df1217c3
all: fix typos ( #2864 )
2023-12-17 22:42:34 +09:00
Hajime Hoshi
d7ebc19d04
internal/ui: refactoring: reduce usages of renderThread
...
Updates #2714
2023-12-17 16:21:07 +09:00
Hajime Hoshi
3b1684978b
internal/ui: typo
2023-12-06 23:00:58 +09:00
Hajime Hoshi
d91455c0a7
internal/graphicscommand: add Shader.id
2023-12-01 21:31:50 +09:00
Hajime Hoshi
c45e9d0c00
internal/processtest: remove an empty line
2023-11-19 17:01:00 +09:00
Hajime Hoshi
af6b8dcd1c
internal/processtest: use text/v2
...
Updates #2454
2023-11-19 16:55:03 +09:00
Hajime Hoshi
9b9384baa0
internal/shader: bug fix: variables in an index should be marked as used
...
Closes #2848
2023-11-19 14:50:43 +09:00
Hajime Hoshi
acd317bf91
internal/ui: bug fix: wrong for-loop condition
...
Closes #2847
2023-11-18 20:01:24 +09:00
Hajime Hoshi
1e78c2e6b0
internal/shaderir: bug fix: constants must be truncated correctly in an array
...
Closes #2840
2023-11-15 00:40:20 +09:00
Hajime Hoshi
3ca6184294
ebiten: add a new FillRule: NonZero
...
Closes #2782
2023-11-06 12:11:38 +09:00
Hajime Hoshi
358106bdc0
internal/graphicsdriver/playstation5: bug fix: compile failure
2023-11-05 21:45:40 +09:00
Hajime Hoshi
95fcbb1e51
internal/graphicsdriver/playstation5: add a binding
...
Updates #2799
2023-11-05 21:27:30 +09:00
Hajime Hoshi
3df2ffebd1
internal/ui: refactoring: integrate Run except for mobiles
2023-11-05 00:49:53 +09:00
Hajime Hoshi
563bbda615
internal/ui: bug fix: build failure on mobiles
2023-11-05 00:43:02 +09:00
Hajime Hoshi
2db10b1e9c
ebiten: add RunGameOptions.SingleThread and deprecate ebitenginesinglethread
build tag
...
Closes #2830
2023-11-05 00:01:44 +09:00
Hajime Hoshi
4d8bb1a5dd
internal/graphicsdriver/playstation5: bug fix: build failure
2023-11-04 19:45:45 +09:00
Hajime Hoshi
4e93efa5ac
internal/graphicsdriver: reland: add FillRule and replace boolean values with this
...
Updates #2782
2023-11-04 19:09:50 +09:00
Hajime Hoshi
f695df5924
Revert "internal/graphicsdriver: add FillRule and replace boolean values with this"
...
This reverts commit 38cf964a3b
.
Reason: build failure on Windows
2023-11-04 19:02:40 +09:00
Hajime Hoshi
38cf964a3b
internal/graphicsdriver: add FillRule and replace boolean values with this
...
Updates #2782
2023-11-04 18:57:31 +09:00
Hajime Hoshi
0cbcf7e493
internal/atlas: refactoring: remove unused arguments
2023-11-04 18:31:22 +09:00
Hajime Hoshi
3fa8e6ac52
internal/graphics: refactoring: move some constants to internal/graphicscommand
2023-11-04 16:33:30 +09:00
Hajime Hoshi
d862a75fb3
internal/graphics: rename constants
...
Closes #2828
2023-11-04 16:06:35 +09:00
Hajime Hoshi
1f95c98969
internal/graphics: reland: change the definition of MaxVerticesCount
...
Updates #2612
2023-11-04 16:02:22 +09:00
Hajime Hoshi
3a632be0c7
Revert "internal/graphics: change the definition of MaxVerticesCount"
...
This reverts commit 3047ad202a
.
Reason: Failed to build for 32bit architectures
Updates #2612
2023-11-04 15:10:31 +09:00
Hajime Hoshi
3047ad202a
internal/graphics: change the definition of MaxVerticesCount
...
Updates #2612
2023-11-04 14:38:34 +09:00
Hajime Hoshi
f2544a1bd9
internal/graphicsdriver: use []uint32 instead of []uint16 for indices
...
Updates #2612
2023-11-04 04:39:17 +09:00
Hajime Hoshi
ba93794a72
internal/atlas: images were not collected by GC
2023-11-04 04:37:40 +09:00
Hajime Hoshi
c01ceeaa6a
ebiten: replace (*Image).Dispose with Deallocate
...
Closes #2808
2023-11-03 17:45:39 +09:00
Hajime Hoshi
8a44ef4f6c
internal/atlas: bug fix: (*Image).Deallocate (*Shader).Deallocate were not concurrent-safe
...
Updates #2162
2023-11-03 17:12:04 +09:00
Hajime Hoshi
bdd8916bb1
ebiten: replace (*ebiten.Shader).Dispose with Deallocate
...
Updates #2808
2023-11-03 16:25:18 +09:00
Hajime Hoshi
97d1e073e2
internal/atlas: refactoring
2023-11-03 14:52:19 +09:00
Hajime Hoshi
258f0fd941
internal/atlas: remvoe 'disposed' state
...
Updates #2808
2023-11-03 14:35:57 +09:00
Hajime Hoshi
d72c4ec90b
internal/atlas: refactoring
2023-11-03 14:19:59 +09:00
Hajime Hoshi
4a00891960
internal/glfw: refactoring
2023-10-31 22:43:40 +09:00
Hajime Hoshi
5da80ef3a7
internal/graphicsdriver: add playstation5
...
Updates #2799
2023-10-29 22:16:58 +09:00
Hajime Hoshi
27bc3e2487
internal/ui: refactoring: remove duplicated member variables
2023-10-29 19:25:02 +09:00
Hajime Hoshi
accb777f51
internal/ui: refactoring: remove unused functions
2023-10-29 19:16:11 +09:00
Hajime Hoshi
ae1ea3ba05
internal/ui: bug fix: compile failure
2023-10-29 19:14:24 +09:00
Hajime Hoshi
c4ce1b3503
internal/ui: start implementing UserInterface for PS5
...
Updates #2799
2023-10-29 19:13:08 +09:00
Hajime Hoshi
5fe8c29b4c
internal/ui: refactoring: integrate (*UserInterface).run
2023-10-29 18:57:10 +09:00
Hajime Hoshi
ea842495cf
internal/ui: refactoring
2023-10-29 18:29:41 +09:00
Hajime Hoshi
1db0abc4ee
internal/graphicsdriver/directx: add comments
2023-10-29 00:19:36 +09:00
Hajime Hoshi
6339872da8
internal/graphicscommand: disable asynchronous rendering when vsync is on
...
Asynchronouse rendering was introduced at #2664 , but apparently this
caused a delay between a game's update and its rendering.
Disable this when vsync is on. When vsync is off, we should not have
to care the delay since new renderings keep to come. Rather,
asynchronous renderings improves FPS.
Updates #2664
Updates #2822
2023-10-28 14:59:25 +09:00
Hajime Hoshi
98f2798b07
internal/ui: call a graphics driver's SetFPSMode only when necessary
...
It was odd to call this in the swapBufferForGL function.
2023-10-28 14:50:40 +09:00
Hajime Hoshi
61498e899a
internal/graphicsdriver/metal: typo
2023-10-28 02:43:57 +09:00
Hajime Hoshi
d91f328083
internal/graphicsdriver/metal: bug fix: use 3 for drawable count when vsync is off
...
Updates #2822
2023-10-28 02:39:47 +09:00
Hajime Hoshi
80301eb29e
internal/graphicsdriver/metal: change the maximum drawable count to 2
...
Updates #2822
2023-10-28 02:15:02 +09:00
Hajime Hoshi
457f6bb964
Revert "internal/ui: bug fix: panic at ReadPixels before running"
...
This reverts commit 2f6df3d4d6
.
Reason: regression by calling (*ebiten.Image).At from a different goroutine
Updates #2820
2023-10-27 14:29:41 +09:00
Hajime Hoshi
2f6df3d4d6
internal/ui: bug fix: panic at ReadPixels before running
...
Closes #2820
2023-10-27 12:18:34 +09:00
Hajime Hoshi
4eb9b3a152
internal/ui: remove unused members
2023-10-27 10:49:45 +09:00
Hajime Hoshi
55702a7c28
internal/atlas: refactoring: ensure ReadPixels to be processed in a frame
...
This enables to call (*Image).At from HandleInput, which might be
called outside of a frame.
Updates #1704
2023-10-25 00:48:09 +09:00
Hajime Hoshi
a3ba83c5da
internal/ui: bug fix: an error was ignored
2023-10-24 14:44:53 +09:00
Hajime Hoshi
f2acc3d9f7
internal/ui: refactoring
2023-10-24 14:38:23 +09:00
Hajime Hoshi
2eca476054
internal/ui: bug fix: EndFrame was not called when layoutGame returned 0s
2023-10-24 02:31:05 +09:00
Hajime Hoshi
b94c3fa9bb
internal/atlas: split EndFrame into EndFrame and SwapBuffers
...
This enables to do something asynchronously while executing SwapBuffers
in a different goroutine.
This is a preparation for HandleInput.
Updates #1704
2023-10-24 00:22:04 +09:00
Hajime Hoshi
c2ad36bdce
internal/ui: use BlendSourceOver at Fill when possible
...
Closes #2817
2023-10-21 01:24:49 +09:00
Hajime Hoshi
39688dd27d
internal/processtest: improve test issue2815
...
WritePixels for 1x1 image is optimized at internal/ui, and Ebitengine
doesn't read pixels from GPU in this case. Enlarge the tested image,
and use DrawImage to ensure to invalidate the internal cache.
Updates #2815
2023-10-20 02:48:21 +09:00
Hajime Hoshi
e80e981bf5
internal/atlas: let callers retry ReadPixels instead of blocking
...
This is a preparation to implement HandleInput, which might call
(*Image).At in its callback.
Updates #1704
2023-10-20 02:30:32 +09:00
Hajime Hoshi
913824beba
internal/atlas: close channels on the sender side just in case
2023-10-19 12:14:54 +09:00
Hajime Hoshi
ad51e22252
internal/atlas: bug fix: ReadPixels crashed when inFrame was false
...
This change fixes the issue by letting ReadPixels return a channel
and executing this asynchronously when needed.
Closes #2815
2023-10-19 03:56:54 +09:00
Hajime Hoshi
7a921e03da
internal/atlas: bug fix: inFrame was not correctly updated
...
Updates #2814
2023-10-19 02:08:28 +09:00
Hajime Hoshi
7d517bfb63
internal/buffered: move buffering to internal/atlas
...
Closes #2814
2023-10-19 01:56:18 +09:00
Hajime Hoshi
da979a3ab2
internal/buffer, internal/mipmap: remove Shader
2023-10-19 00:52:32 +09:00
Hajime Hoshi
19ee79e2cb
internal/buffered: remove unnecessary deferred functions for shaders
2023-10-18 23:36:41 +09:00
Hajime Hoshi
3f1b7e78b8
internal/buffered: remove unnecessary deferred functions
2023-10-18 23:20:02 +09:00
Hajime Hoshi
58847e023d
internal/buffered: refactoring
2023-10-18 23:03:05 +09:00
Hajime Hoshi
b0f88bce7d
internal/buffered: remove unnecessary deferred functions
2023-10-18 22:30:01 +09:00
Hajime Hoshi
315450474a
internal/atlas: add comments
2023-10-18 01:01:21 +09:00
Hajime Hoshi
630789757f
all: add files for PlayStation 5
...
The implementation is WIP.
Updates #2799
2023-10-16 00:54:08 +09:00
Hajime Hoshi
bdd68ca01a
internal/ui: reland: use errors.New instead of fmt.Errorf
2023-10-16 00:25:51 +09:00
Hajime Hoshi
565e944691
Revert "internal/ui: use errors.New instead of fmt.Errorf"
...
This reverts commit ed49d8cc9a
.
Reason: compile error
2023-10-16 00:24:41 +09:00
Hajime Hoshi
ed49d8cc9a
internal/ui: use errors.New instead of fmt.Errorf
2023-10-16 00:23:37 +09:00
Hajime Hoshi
e1f18b53f5
internal/ui: refactoring
2023-10-16 00:02:25 +09:00
Hajime Hoshi
47e70f2544
internal/ui: use errors.New instead of fmt.Errorf
2023-10-15 23:27:04 +09:00
Hajime Hoshi
742f3a6dac
internal/ui: refactoring: reduce functions
2023-10-15 20:14:23 +09:00
Hajime Hoshi
18714e22a1
internal/ui: reland: return errors when getting a graphics driver fails
2023-10-15 18:34:08 +09:00
Hajime Hoshi
bd10f19567
Revert "internal/ui: return errors when getting a graphics driver fails"
...
This reverts commit d4e31aedd6
.
Reason: compile error with -tags=nintendosdk
2023-10-15 18:32:47 +09:00
Hajime Hoshi
d4e31aedd6
internal/ui: return errors when getting a graphics driver fails
2023-10-15 18:26:13 +09:00
Hajime Hoshi
8274b32301
internal/graphicslibrary: refactoring: remove IsGL and IsDirectX
2023-10-15 17:30:16 +09:00
Hajime Hoshi
0378230b3e
internal/ui: refactoring: reduce theUI
2023-10-15 17:02:15 +09:00
Hajime Hoshi
83a4133577
internal/ui: refactoring: remove globalState
2023-10-15 16:51:16 +09:00
Hajime Hoshi
a16a03c9db
internal/ui: refactoring
2023-10-15 16:38:05 +09:00
Hajime Hoshi
a89aaa0756
internal/ui: refactoring: remove fpsMode from globalState
2023-10-15 16:19:41 +09:00
Hajime Hoshi
beabe9c6ee
internal/ui: bug fix: compile failure with -tags=nintendosdk
2023-10-15 03:58:29 +09:00
Hajime Hoshi
27fd10595b
internal/ui: refactoring: reduce global functions and prefer Get()
2023-10-15 03:40:48 +09:00