Commit Graph

975 Commits

Author SHA1 Message Date
Hajime Hoshi
e4efbfd1f1 internal/graphicsdriver/directx: refactoring 2024-11-26 12:56:54 +09:00
Hajime Hoshi
800be4f772 ebiten: add test for matrix indices 2024-11-26 12:24:39 +09:00
Hajime Hoshi
1ea14d5076 internal/graphicsdriver/metal, internal/shaderir/msl: use one integrated struct for uniforms
Closes #3164
2024-11-26 00:40:58 +09:00
Hajime Hoshi
81bb5044ea internal/shaderir: revert the refactoring to generalize the memory layout logic
Unfortunately, the memory layout was not so universal. For example,
the memory layout for mat2 is different between Metal and DirectX.
2024-11-24 23:57:30 +09:00
Hajime Hoshi
4aad9d37e9 internal/shaderir: cache offset calculations for HLSL 2024-11-24 21:59:45 +09:00
Hajime Hoshi
c5d664ccf7 internal/shaderir/hlsl: refactoring 2024-11-24 18:47:49 +09:00
Hajime Hoshi
fab511e96b internal/graphicsdriver/playstation5: bug fix: compile error 2024-11-17 19:13:46 +09:00
Hajime Hoshi
2d1e286e87 internal/graphicsdriver/playstation5: avoid a Go pointer to a Go pointer 2024-11-17 18:48:11 +09:00
Hajime Hoshi
b6d539d8e8 internal/graphicsdriver/opengl: refactoring 2024-11-07 13:25:26 +09:00
Hajime Hoshi
4be626f707 internal/graphicsdriver/opengl: bug fix: use GLX when possible for ES
Use GLX when possible. EGL with an X window might not work well on
Wayland unfortunately.

Closes #3152
2024-11-07 02:07:13 +09:00
Hajime Hoshi
1014e45365 internal/graphicsdriver/playstation5: bug fix: compilation error 2024-11-03 19:47:18 +09:00
Hajime Hoshi
72e2941e95 internal/graphicsdriver/playstation5: update NewShader 2024-11-03 19:09:38 +09:00
Hajime Hoshi
c13e4fea7d internal/graphicsdriver/playstation5: update 2024-11-02 22:18:23 +09:00
TotallyGamerJet
6452cbc895
internal/cocoa: bring back NSInvocation for CopyFromTexture (#3136)
This is a partial revert of c3ea539 but keeps the change for removal of NSInvocation in SetScissorRect, GetBytes,
and ReplaceRegion.

Closes #3135
2024-10-19 23:59:45 +09:00
Hajime Hoshi
c3ea539cdb internal/cocoa: remove NSInvocation
Closes #2950
2024-10-19 13:32:14 +09:00
TotallyGamerJet
5dee21dc7d
internal/cocoa, internal/graphicsdriver/metal/*: minimize allocations (#3133)
Cache the result of objc.RegisterName at program startup. Use NSInvocation less
to avoid multiple C calls.
2024-10-18 11:44:37 +09:00
Hajime Hoshi
7f87ecaddc internal/graphicscommand: better debug info for blending 2024-10-15 18:26:27 +09:00
Hajime Hoshi
8c84be54b5 internal/graphicsdriver/playstation5: add kBlend* consts 2024-10-14 00:12:27 +09:00
Hajime Hoshi
02e87d027c internal/glfw: reduce TLS usages 2024-10-12 23:11:20 +09:00
Hajime Hoshi
201bb36822 internal/graphicsdriver/opengl: refactoring: separate graphcis_*.go
Updates #2714
2024-10-12 14:56:42 +09:00
Hajime Hoshi
027ef33fe2 all: rename files
This change makes the file name convention consistent. A file for macOS,
not for iOS should have a suffix '_macos.go' rather than '_macos_darwin.go'
and/or '_darwin.go'.
2024-10-12 14:10:42 +09:00
Hajime Hoshi
87e412cd39 internal/graphicsdriver/opengl: refactoring: separate graphcis_*.go for macOS
Updates #2714
2024-10-12 13:58:57 +09:00
LoparPanda
5245537e21
internal/graphicsdriver/opengl/gl: fixes DeleteVertexArrays removing entry from textures instead of vertexArrays value store in webgl driver (#3125)
This is just what appears to be a typo in the WebGL driver that is deleting the mapping between a uint32 ID and a
JavaScript value for vertexArrays from the value store for the textures instead. This seems like it would potentially
cause a crash if the numbers aligned.
2024-10-08 15:42:50 +09:00
Hajime Hoshi
5bcfdee75f internal/graphicsdriver/playstation5: bug fix: need to adjust image size 2024-10-06 16:29:59 +09:00
Hajime Hoshi
1c475eff78 internal/graphicsdriver/playstation5: bug fix: Cgo bans to pass a Go pointer to a Go pointer 2024-09-29 18:22:17 +09:00
Hajime Hoshi
1b6a615adb internal/graphicsdriver/playstation5: add Shader 2024-09-29 17:46:52 +09:00
Hajime Hoshi
a38395a48a internal/graphicsdriver/playstation5: add PixelsArgs 2024-09-29 17:46:26 +09:00
Hajime Hoshi
a499a976f7 internal/graphicsdriver/playstation5: change the name convention 2024-09-23 23:22:22 +09:00
Hajime Hoshi
508922250a internal/graphpicsdriver/playstation5: add consts 2024-09-23 23:06:02 +09:00
Hajime Hoshi
043164e17c internal/graphicsdriver/playstation5: bug fix: call C Begin/End functions 2024-09-23 17:59:28 +09:00
Hajime Hoshi
4d3f357f81 internal/graphicsdriver/playstation5: add Begin and End 2024-09-23 17:30:53 +09:00
Hajime Hoshi
9a511fecb5 internal/jsutil: move to internal/graphicsdriver/opengl/gl 2024-09-14 16:10:49 +09:00
Hajime Hoshi
a36f6210c0 all: use Go 1.20 APIs
Closes #2746
2024-09-12 00:22:45 +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
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
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
7142a3bcd9 internal/graphicsdriver/opengl: bug fix: total must be reset 2024-08-25 15:29:22 +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
17322c9c3b all: reduce files for PS5 2024-08-17 23:06:01 +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
6cd00f3b88 internal/graphicsdriver/opengl: exclude playstation5 2024-08-11 22:41:21 +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
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