Hajime Hoshi
b4491ab94d
internal/graphicsdriver/directx: unify the naming convention with glfwwin
2022-05-29 21:18:23 +09:00
Hajime Hoshi
0081fa7a47
internal/graphicsdriver/directx: add a comment
2022-05-29 20:05:37 +09:00
Hajime Hoshi
ad380a32f4
internal/glfwwin: split GDK part to a new package internal/microsoftgdk
...
Updates #1162
2022-05-29 19:25:26 +09:00
Hajime Hoshi
7f46938ff7
internal/glfwwin: return an error at initWGL on Xbox
...
Updates #1162
2022-05-29 17:37:06 +09:00
Hajime Hoshi
59e6d4578b
internal/glfw: skip some Win32APIs for Xbox
...
Updates #1162
2022-05-29 17:04:47 +09:00
Hajime Hoshi
ce147a7e38
internal/glfwwin: refactoring: remove Monitor.currentMode
2022-05-29 16:00:18 +09:00
Hajime Hoshi
2efbb819e0
internal/glfw: skip some Win32APIs for Xbox
...
Updates #1162
2022-05-29 15:54:37 +09:00
Hajime Hoshi
05d49c5a52
internal/glfwwin: create a pseudo monitor for Xbox
...
Updates #1162
2022-05-29 15:38:17 +09:00
Hajime Hoshi
f8163f93c0
internal/glfwwin: refactoring
2022-05-29 14:22:22 +09:00
Hajime Hoshi
ef7d10a36e
internal/glfwwin: add a build tag microsoftgdk
...
Updates #1162
2022-05-29 01:31:42 +09:00
Hajime Hoshi
5c63c4a4aa
internal/graphicsdriver/metal: support macOS 10.12 by removing packed types
...
From the Metal shading language specification [1] Table 2.2.3, attribute
variables in Ebitengine's vertices don't have to be packed. Then, we can
remove `packed` types.
[1] https://developer.apple.com/metal/Metal-Shading-Language-Specification.pdf
Closes #2107
2022-05-28 23:57:59 +09:00
Hajime Hoshi
ac922742bf
internal/glfw: use shorter copyright comments
2022-05-27 20:38:45 +09:00
Hajime Hoshi
f7d1a43e98
internal/glfwwin: remove GammaRamp
2022-05-27 20:19:12 +09:00
Hajime Hoshi
df0208ec79
internal/glfwwin: remove unused exported functions
2022-05-27 20:15:36 +09:00
Hajime Hoshi
3a6b707b29
internal/glfwwin: remove unused members (a monitor size)
2022-05-27 20:12:43 +09:00
Hajime Hoshi
d577cc5e7d
internal/graphicsdriver/opengl/gl: rename files
...
Updates #1162
2022-05-27 18:31:40 +09:00
TotallyGamerJet
726e88e520
internal/graphics/opengl/gl: remove CGO in openGL on macOS ( #2104 )
...
Updates #1162
2022-05-27 18:26:53 +09:00
Hajime Hoshi
f7172f41c8
internal/glfwwin: skip detecting monitors for Xbox
...
Updates #2084
2022-05-27 15:55:23 +09:00
Hajime Hoshi
c379873a1f
rename Ebiten -> Ebitengine
2022-05-25 22:48:19 +09:00
Hajime Hoshi
1202e66114
internal/gamepad: bug fix: out of range at hatState on Windows
...
Closes #2103
2022-05-25 11:44:46 +09:00
Hajime Hoshi
7030840efa
internal/graphicsdriver/opengl/gl: refactoring
2022-05-25 02:24:40 +09:00
Hajime Hoshi
604f14d2d4
internal/glfwwin: refactoring: reduce risky unsafe.Pointer usages
2022-05-25 02:21:30 +09:00
Hajime Hoshi
0d7062335e
internal/glfwwin: remove GetProp and SetProp
...
GetProp and SetProp forced a risky usage of pointers.
2022-05-25 02:11:00 +09:00
Hajime Hoshi
ec2df98c70
internal/glfwwin: skip functions for Xbox
...
Updates #2084
2022-05-25 02:00:59 +09:00
Hajime Hoshi
847357c3ea
internal/glfwwin: remove an unused function GetKeyName
...
MapVirtualKeyW is not available on Xbox.
Updates #2084
2022-05-25 01:00:32 +09:00
Hajime Hoshi
ffc9a0876a
internal/glfwwin: remove changing the foreground lock timeout
...
See 58b48a3a00
Updates #2084
2022-05-25 00:34:54 +09:00
Hajime Hoshi
55657e72ae
internal/ui: skip hideConsoleWindowOnWindows in Xbox
...
Updates #2084
2022-05-25 00:13:28 +09:00
Hajime Hoshi
3745c0a2e0
internal/graphicsdriver/opengl/gl: remove an unused function GetBufferSubData
...
This is basically a revert of 86a0c7aa82
2022-05-24 20:45:45 +09:00
Hajime Hoshi
a1370a4791
internal/graphicsdriver/opengl: remove an unused member gl.getBufferSubData
2022-05-24 20:40:53 +09:00
Hajime Hoshi
f888b7868b
internal/graphicsdriver/opengl: fix the error message when GenFramebufferEXT fails
2022-05-23 22:25:40 +09:00
Hajime Hoshi
6cd655b5ce
internal/glfwwin: bug fix: error values were not returned
2022-05-22 22:05:48 +09:00
Hajime Hoshi
0577a28aed
all: add struct members for go-vet
...
Updates #1306
2022-05-22 22:05:40 +09:00
Hajime Hoshi
ad5ebae3cc
internal/ui: refactoring
2022-05-22 21:53:42 +09:00
Hajime Hoshi
4396785829
Revert "internal/graphicsdriver/opengl: remove CGO in opengl for macOS ( #2091 )"
...
This reverts commit f7e21983cf
.
Reason: test failures (#2102 )
Closes #2102
2022-05-22 01:24:48 +09:00
TotallyGamerJet
f7e21983cf
internal/graphicsdriver/opengl: remove CGO in opengl for macOS ( #2091 )
...
Updates #1162
2022-05-22 00:58:45 +09:00
Hajime Hoshi
7eeef3ae0f
internal/glfwwin: bug fix: WGL extension functions didn't work
...
Closes #2101
2022-05-22 00:40:50 +09:00
Hajime Hoshi
8d3de6207b
internal/gamepad: add a warning message when getGamepads is not available
...
Updates #2100
2022-05-21 23:25:56 +09:00
Hajime Hoshi
8d318fc4de
internal/gamepad: bug fix: getGamepads might not be available under a non-secure context
...
Closes #2100
2022-05-21 23:22:50 +09:00
Hajime Hoshi
6fa39d5e73
internal/glfw: make panic messages consistent
2022-05-21 13:19:11 +09:00
Hajime Hoshi
9a1eb0b124
internal/glfwwin: bug fix: wrong type casts (TlsGetValue)
2022-05-21 00:59:14 +09:00
Hajime Hoshi
93731673ad
internal/glfwwin: bug fix: wrong type casts
2022-05-21 00:56:22 +09:00
Hajime Hoshi
374f1cf8e6
internal/glfwwin: fix typo
2022-05-21 00:18:36 +09:00
Hajime Hoshi
bd2a31bdd8
internal/glfwwin: remove unnecessary comments
2022-05-20 23:17:03 +09:00
Hajime Hoshi
8c467aaa1b
internal/glfwwin: update GLFW to 3.3.7
...
Reference: 597ae79a86
2022-05-20 23:09:16 +09:00
Hajime Hoshi
f67b4cc1d6
internal/glfw: use a pure Go implementation of GLFW
...
This change removes internal/glfw/glfw, that is a DLL loader, and
replaces the usages with internal/glfwwin, that is a pure Go
implementation of GLFW for Windows.
The build tag `ebitenexternaldll` is also removed.
Closes #1764
2022-05-20 22:10:00 +09:00
Hajime Hoshi
edd617f80e
internal: add a new package glfwwin
...
internal/glfwwin is a pure Go implementation of GLFW for Windows.
Updates #1764
2022-05-20 21:36:13 +09:00
Hajime Hoshi
eec5ea00ec
internal/glfw: refactoring: use pointers or functions for callbacks
2022-05-20 17:49:46 +09:00
Hajime Hoshi
8d2b08dd14
internal/glfw: refactoring: make callback handlers consistent
2022-05-19 01:49:21 +09:00
Hajime Hoshi
7189c7f649
internal/glfw: refactoring: remove unused APIs
...
Ebiten doesn't rely on GLFW for gamepads.
2022-05-19 01:04:23 +09:00
Hajime Hoshi
fef79f4d3e
internal/graphicsdriver/metal: update the minimum version of macOS
...
Updates #2095
2022-05-18 00:09:04 +09:00
Hajime Hoshi
3d00bb1fa2
internal/gamepad, internal/ui: type-cast returning values from Win32APIs just in case
2022-05-11 00:48:44 +09:00
Hajime Hoshi
812607cdfc
internal/processtest/testdata: add a test case for #2089
...
Updates #2089
2022-05-08 23:45:21 +09:00
Hajime Hoshi
faf1e7350d
internal/atlas: bug fix: wrong logic to create a new mask with edges
...
* Fixed wrong operator orders
* Cleared an allocated region explicitlly
Closes #2089
2022-05-08 23:06:10 +09:00
Hajime Hoshi
7409f01b17
internal/graphicsdriver/metal/mtl: bug fix: specify the language version explicitly
...
Updates #2086
2022-05-05 23:50:48 +09:00
Hajime Hoshi
a0e1d08123
internal/graphicsdriver/directx: update comments
...
Updates #2081
2022-04-26 11:20:48 +09:00
Hajime Hoshi
7321e86a6b
internal/graphicsdriver/directx: bug fix: the screen image can be nil when resizing the window
...
Closes #2081
2022-04-26 11:19:48 +09:00
Hajime Hoshi
38a2aa11fd
internal/ui: bug fix: deadlock at Layout with Ebiten's image functions called
...
Closes #2079
2022-04-26 01:12:57 +09:00
Hajime Hoshi
dc811f9329
internal/gamepaddb: bug fix: crash at addAndroidDefaultMappings
...
Closes #2076
2022-04-19 23:36:02 +09:00
Hajime Hoshi
928d82c685
internal/atlas: potential bug fix: restore images before other image manipulations
...
From the reported stack trace, there could be a potential issue in
atlas.BeginFrame: images were manipulated before the images are restored.
Restoring images assumes that all images are not stale, but manipulating
images like putOnAtlas might cause other images stale in ReplacePixels.
Though we failed to reproduce the case, this fix should make sense.
Updates #2075
2022-04-18 02:19:46 +09:00
Hajime Hoshi
2fc691f661
internal/clock: rename CurrentFPS/TPS -> ActualFPS/TPS
2022-04-14 00:57:47 +09:00
Hajime Hoshi
f25dda1318
internal/clock: force to sync the timer when TPS is updated
2022-04-14 00:56:37 +09:00
Hajime Hoshi
2a5b5b4823
internal/ui: avoid a busy loop in restoreWindow
...
Updates #1826
2022-04-10 17:55:39 +09:00
Hajime Hoshi
3fe1df8b3b
internal/ui: bug fix: ebiten.WindowSize() returned (1,1) when iconified
2022-04-10 16:50:47 +09:00
Hajime Hoshi
aae866350a
internal/ui: bug fix: (*glfw.Window).GetSize() returns (0,0) when iconified
...
Closes #2066
2022-04-10 16:43:03 +09:00
Hajime Hoshi
d3b83dd4ea
internal/ui: refactoring
2022-04-09 18:23:56 +09:00
Hajime Hoshi
fcb7df0a59
internal/ui: bug fix: checking fullscreen on Safari was wrong
2022-04-09 17:25:19 +09:00
Hajime Hoshi
a69be34001
internal/ui: update the error message for fullscreen
2022-04-09 16:55:09 +09:00
Hajime Hoshi
853d94c3ef
internal/shader: implement strict type checks when calling a function
...
Closes #2032
2022-04-09 00:32:27 +09:00
Hajime Hoshi
15fe7158fd
internal/shader: implement strict type checks in assignments
...
Closes #1972
2022-04-09 00:02:20 +09:00
Hajime Hoshi
93b4c0d9b1
internal/ui: add comments
...
Updates #1590
2022-04-08 18:40:13 +09:00
Hajime Hoshi
2008916261
internal/ui: bug fix: use the native unit for origWindowPosByOS
2022-04-08 16:43:13 +09:00
Hajime Hoshi
90070c09fe
internal/ui: rename origPos -> origWindowPos
2022-04-08 15:59:16 +09:00
Hajime Hoshi
352d332097
internal/ui: remove redundant comments
2022-04-08 15:51:56 +09:00
Hajime Hoshi
ee124baf60
internal/ui: bug fix: WindowSize returned a wrong value on fullscreen on macOS
...
Closes #2062
2022-04-08 14:57:51 +09:00
Hajime Hoshi
ad66c3d90b
internal/png: clean up files before generating
2022-04-06 11:48:46 +09:00
Hajime Hoshi
20beb9d2b8
internal/gamepaddb: update the database
...
Updates #1902
2022-04-06 11:41:05 +09:00
Hajime Hoshi
6e19c793f6
internal/png: update for Go 1.18
2022-04-06 11:32:48 +09:00
Hajime Hoshi
32de5ec2d0
internal/graphics: refactoring
2022-04-05 11:12:25 +09:00
Hajime Hoshi
c6e5582c56
Revert "internal/graphics: refactoring"
...
This reverts commit b6cc164e96
.
Reason: wrong shader program
2022-04-04 14:31:37 +09:00
Hajime Hoshi
b6cc164e96
internal/graphics: refactoring
2022-04-04 14:30:51 +09:00
Hajime Hoshi
c56665b23c
internal/processtest: bug fix: shadernomain is no longer a valid test
...
Updates #2035
2022-04-04 03:12:34 +09:00
Hajime Hoshi
736d77e0d2
internal/graphicsdriver: remove Graphics.NDCYDirection
2022-04-04 03:03:44 +09:00
Hajime Hoshi
6710808cd1
ebiten: compile shaders at NewShader
...
Closes #2035
2022-04-04 02:52:57 +09:00
Hajime Hoshi
02db3bad53
internal/graphicscommand: remove the dependency on a graphics driver from compileShader
...
Updates #2035
2022-04-04 02:09:08 +09:00
Hajime Hoshi
4b0967be42
internal/ui: gofmt
2022-04-04 01:48:15 +09:00
Hajime Hoshi
f756be3d22
internal/devicescale: bug fix: glfw.Monitor.GetContentScale might return 0
...
Retrying to call GetContentScale solved this.
Closes #2051
2022-04-03 19:32:01 +09:00
Hajime Hoshi
f1f9f74e5c
internal/ui: bug fix: force to refresh the framebuffer by resizing the window very quickly
...
Closes #2050
2022-04-03 18:43:22 +09:00
Hajime Hoshi
65094c61b1
internal/graphicscommand: reland: merge adjacent commands if the same shader and uniform variables are used
...
Closes #1846
2022-04-03 03:57:49 +09:00
Hajime Hoshi
f75a70dc40
internal/graphicscommand: treat []float32 instead of interface{} for uniform variables
2022-04-03 03:51:52 +09:00
Hajime Hoshi
990228e216
internal/graphicscommand: cache uniform name locations and types
2022-04-03 03:28:11 +09:00
Hajime Hoshi
9be454ef25
internal/graphicsdriver: remove an old comment
2022-04-03 02:53:43 +09:00
Hajime Hoshi
9f3f9e64cc
internal/graphicscommand: add panic at convertUniforms
2022-04-03 00:39:05 +09:00
Hajime Hoshi
b52a02a178
internal/ui: bug fix: crash when Image.MarkDisposed is called multiple times
...
Closes #2048
2022-04-03 00:21:26 +09:00
Hajime Hoshi
651c5693c6
Revert "internal/graphicscommand: merge adjacent commands if the same shader and uniform variables are used"
...
This reverts commit 425ce27976
.
Reason: test failures
2022-04-03 00:11:15 +09:00
Hajime Hoshi
425ce27976
internal/graphicscommand: merge adjacent commands if the same shader and uniform variables are used
...
Closes #1846
2022-04-02 23:55:14 +09:00
Hajime Hoshi
33078c764c
internal/gamepaddb: make Update atomic
...
Closes #1978
2022-04-02 20:19:04 +09:00
Hajime Hoshi
3fafc05411
internal/graphicsdriver: remove Graphics.HasHighPrecisionFloat
...
Updates #879
2022-04-02 05:19:30 +09:00
Hajime Hoshi
351ef9fbb7
internal/atlas, internal/graphicsdriver: move the adjusting-pixel logic to atlas
...
Now pixels are adjusted even when the graphics driver doesn't have
high-precision floats, but this should not be problematic. This was
introduced at 9bff33472a
, but the
adjusting way is much different from the current way.
Updates #879
Closes #1820
2022-04-02 05:15:29 +09:00
Hajime Hoshi
34e23f5256
internal/restorable: treat texels instead of pixels
...
Updates #1820
2022-04-02 04:25:27 +09:00
Hajime Hoshi
0c6362c93a
internal/atlas: move the color scaling from internal/atlas to ebiten
...
Updates #1820
2022-04-02 02:47:56 +09:00