Commit Graph

9921 Commits

Author SHA1 Message Date
Hajime Hoshi
c6214fe958 all: update bitmapfont to v3.3.0-alpha.1 2024-11-27 12:41:10 +09:00
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
b24bd93ae5 internal/shaderir: typo 2024-11-24 23:16:04 +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
ee5b6a3680 all: update dependencies 2024-11-23 18:23:07 +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
960189b051 internal/shaderlister: add SourceHash 2024-11-17 15:44:51 +09:00
Hajime Hoshi
53687aafb0 internal/shaderlister: reland: compile shaders
Updates #3157
2024-11-16 19:22:59 +09:00
Hajime Hoshi
ab954c9c6e Revert "internal/shaderlister: compile shaders"
This reverts commit 848e30e0e7.

Reason: test failures
2024-11-16 19:14:02 +09:00
Hajime Hoshi
848e30e0e7 internal/shaderlister: compile shaders
Updates #3157
2024-11-16 19:11:44 +09:00
Hajime Hoshi
de1ef0bec8 internal/builtinshader: refactoring 2024-11-16 15:29:52 +09:00
Hajime Hoshi
d021209d84 internal/builtinshader: add shader constants for shaderlister
Updates #3157
2024-11-16 15:23:49 +09:00
Hajime Hoshi
864f826b3c internal/shaderlister: bug fix: skip tests when Go is not found (e.g. Wasm)
Updates #3157
2024-11-10 23:34:51 +09:00
Hajime Hoshi
75d7a26fcd internal/shaderlister: output [] instead of null when no shaders are found
Updates #3157
2024-11-10 23:27:24 +09:00
Hajime Hoshi
9b849819f3 internal/shaderlister: refactoring: do not use github.com/hajimehoshi/ebiten/v2 command 2024-11-10 23:03:22 +09:00
Hajime Hoshi
1d5a8bc836 all: update dependencies 2024-11-10 22:42:21 +09:00
Hajime Hoshi
99bbe7138c internal: add shaderlister
This adds a new compiler directive `//ebitengine:shader` indicating
a shader source. A new tool internal/shaderlister can iterates all
the shader strings with the directive. The tool might be exposed
in the future.

Updates #3157
2024-11-10 22:21:42 +09:00
Hajime Hoshi
03cbfaca42 internal/vettools: return non-nil value
When executing internal/vettools directly by `go run`, this caused
an error since the return type must match with ResultType.
2024-11-09 22:46:01 +09:00
Hajime Hoshi
db04c37f26 vector: add (*Path).ApplyGeoM
Closes #3150
Closes #3159
2024-11-09 19:06:39 +09:00
Hajime Hoshi
e860747f4c examples/lines: refactoring 2024-11-09 18:37:48 +09:00
Hajime Hoshi
1a4237213c vector: add DrawFilledPath, StrokePath, and FillRule
Updates #3150
2024-11-09 18:18:05 +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
7b5054ca3a audio: bug fix: (*Player).Position is not updated correctly
Update might not be called or delayed when the window is in background
and invisible on macOS. Let's use a distinct groutine to update the
audio player states.

Closes #3154
2024-11-06 22:16:16 +09:00
Hajime Hoshi
20014ad5bc audio: remove locks from (*timeStream).position 2024-11-06 22:13:21 +09:00
Hajime Hoshi
0981355b61 audio: remove locks from (*Player).Position 2024-11-06 21:12:05 +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
Hajime Hoshi
48daae08ef text/v2: cache origin X positions for GoXFace
Closes #3149
2024-10-29 02:16:20 +09:00
Hajime Hoshi
d8348abcc9 text/v2: add comments 2024-10-29 00:37:02 +09:00
Hajime Hoshi
2748f31fc4 text/v2: refactoring: rename receivers of GoXFace 2024-10-27 23:03:31 +09:00
Hajime Hoshi
d19a774316 text/v2: refactoring: unify a cache struct 2024-10-27 22:45:02 +09:00
Hajime Hoshi
41e8d063e8 text/v2: refactoring 2024-10-27 22:45:02 +09:00
Hajime Hoshi
2fab556dd9 internal/affine: refactoring: remove unused types 2024-10-27 22:44:58 +09:00
Hajime Hoshi
17c2b1b325 text/v2: refactoring 2024-10-27 18:39:10 +09:00
Hajime Hoshi
d0db7e1b60 examples/video: put a video file in a separate server
This change also fixes an issue where a file could be closed before
the video play ends.

Closes #3116
2024-10-27 18:07:52 +09:00
Hajime Hoshi
f78025a3e3 text/v2: typo 2024-10-27 05:00:01 +09:00
Hajime Hoshi
0942fbb4d7 inpututil: add comments 2024-10-27 02:45:57 +09:00
Hajime Hoshi
dc41960d3b internal/mipmap: refactoring: add a fast path 2024-10-27 01:06:36 +09:00
Hajime Hoshi
00fade9dcf internal/atlas: reduce the access to (*restorable.Shader).Unit 2024-10-27 00:46:05 +09:00
Hajime Hoshi
2437ad8248 ebiten: improve bulitinShader by reducing locks
old.txt: 04c9a802a7
new.txt: this commit

```
% benchstat old.txt new.txt
goos: darwin
goarch: arm64
pkg: github.com/hajimehoshi/ebiten/v2
cpu: Apple M3 Pro
                 │   old.txt   │               new.txt               │
                 │   sec/op    │   sec/op     vs base                │
BuiltinShader-12   4.226n ± 2%   1.352n ± 2%  -68.00% (p=0.000 n=10)
```
2024-10-27 00:22:52 +09:00
Hajime Hoshi
04c9a802a7 ebiten: add BenchmarkBuiltinShader 2024-10-27 00:12:56 +09:00
Hajime Hoshi
6cf235daef internal/graphicscommand: refactoring 2024-10-26 23:07:03 +09:00
Hajime Hoshi
6fd9044bcf internal/input: refactoring: clean up touch implementations 2024-10-26 22:25:56 +09:00