Commit Graph

8825 Commits

Author SHA1 Message Date
Hajime Hoshi
81581df2b9 internal/graphicscommand: reland: add graphics.MaxVertexFloatCount and use it instead of IndicesCount
This change is reland of 54e2790a06
but with a fix for WebGL. Also, this changes the logic when len(vertices)
exceeds the maximum: just remove the last part.

Updates #2460
2023-03-23 18:01:09 +09:00
Hajime Hoshi
c59bcbdb5b Revert "internal/graphicscommand: add graphics.MaxVertexFloatCount and use it instead of IndicesCount"
This reverts commit 54e2790a06.

Reason: test failures on browsers:

`GOOS=js GOARCH=wasm go test . -shuffle=1679547510163000000` failed
https://github.com/hajimehoshi/ebiten/actions/runs/4497182906/jobs/7912544699
2023-03-23 14:15:04 +09:00
Hajime Hoshi
54e2790a06 internal/graphicscommand: add graphics.MaxVertexFloatCount and use it instead of IndicesCount
Updates #2460
2023-03-23 13:49:05 +09:00
Hajime Hoshi
3f2ac129d2 internal/graphicscommand: refactoring: remove unnecessary restrictions for indices
Updates #2460
2023-03-23 13:28:11 +09:00
Hajime Hoshi
90723025cc internal/graphicsdriver/directx: reuse vertices/indices buffers whenever possible 2023-03-23 11:34:39 +09:00
Hajime Hoshi
e5525a04d5 internal/graphicsdriver/directx: refactoring: remove usages of graphics.IndicesCount
Updates #2460
2023-03-23 11:25:29 +09:00
Hajime Hoshi
a19ff07130 internal/graphicsdriver/opengl: bug fix: potential infinite loop 2023-03-23 02:47:23 +09:00
Hajime Hoshi
c27d191dd5 update purego to v0.4.0-alpha.1 2023-03-23 00:29:05 +09:00
Hajime Hoshi
ad90ae3475 internal/graphicsdriver/directx: refactoring 2023-03-22 21:52:14 +09:00
Hajime Hoshi
034f9c2db8 internal/graphicsdriver/opengl: reland: refactoring: remove usages of graphics.IndicesCount
Updates #2460
2023-03-22 20:13:29 +09:00
Hajime Hoshi
61ee811579 internal/graphicsdriver: define Resetter 2023-03-22 18:35:46 +09:00
Hajime Hoshi
8cbf545e0f internal/graphicsdriver/opengl: revert commits for graphics.Indices
This change reverts these commits:

* 13d3a0487b
* 4cd98d512e

Reason: this caused crashes on Android.

Updates #2460
Closes #2610
2023-03-22 17:28:45 +09:00
Hajime Hoshi
13d3a0487b internal/graphicsdriver/opengl: refactoring: remove usages of graphics.IndicesCount
Updates #2460
2023-03-22 13:33:34 +09:00
Hajime Hoshi
4cd98d512e internal/graphicsdriver/opengl: refactoring 2023-03-21 23:06:49 +09:00
Hajime Hoshi
23e90b7e39 internal/graphicsdriver/opengl: refactoring 2023-03-20 22:48:20 +09:00
Hajime Hoshi
8b267265ed ebiten: update comments
Updates #2171
2023-03-20 11:04:58 +09:00
Hajime Hoshi
ffef8b433f ebiten: add comments at ColorScale.Scale
Updates #2171
2023-03-20 10:55:53 +09:00
Hajime Hoshi
ae625255f2 ebiten: add TestImageTooManyDrawImage2 2023-03-20 02:03:57 +09:00
Hajime Hoshi
8ae6ea5ff6 internal/graphicsdriver/opengl: update comments 2023-03-20 01:42:54 +09:00
Hajime Hoshi
6a9972b085 ebiten: update documents
Updates #2191
2023-03-19 15:30:23 +09:00
Hajime Hoshi
cbff3555db internal/graphicsdriver/opengl: drop WebGL 1 support
Closes #2191
2023-03-18 22:50:09 +09:00
Hajime Hoshi
280b4ff18a ebiten: update comments for ColorM
Updates #2171
2023-03-18 11:24:16 +09:00
Hajime Hoshi
a9464c7d71 vector: bug fix: compile error for tests 2023-03-18 11:13:21 +09:00
Hajime Hoshi
34b8c5483a ebitenutil: use vector's functions again but with anti-alias false
This is basically a revert for bf63d2310d.

As anti-alias options are added to the vector package's functions, we
should be able to emulate the same thing without performance penalty.

Updates #2605
Updates #2606
2023-03-18 11:09:37 +09:00
Hajime Hoshi
8bd7ce5c20 vector: add anti-alias options to the utility functions
Closes #2606
2023-03-18 11:01:48 +09:00
Hajime Hoshi
f66ed646bd ebitenutil: add comments and use ColorScale
Updates #2605
2023-03-18 10:42:44 +09:00
Hajime Hoshi
bf63d2310d ebitenutil: revert the implementation of Draw* functions
Using vector functions caused unexpected increase of draw calls.
Revert the Draw* functions to use regular DrawImage/DrawTriangles.

Closes #2605
2023-03-18 10:27:26 +09:00
Hajime Hoshi
22dfdfc418 internal/gamepad: bug fix: possible crash at iterating gamepads
Closes #2603
2023-03-17 11:40:24 +09:00
Hajime Hoshi
c77673d96d release v2.6.0-alpha 2023-03-15 12:56:27 +09:00
Hajime Hoshi
faca493fbc go generate 2023-03-15 03:18:28 +09:00
Hajime Hoshi
e4aace6c40 examples/blend: shrink the window for small displays 2023-03-14 22:21:35 +09:00
Hajime Hoshi
3951df05c8 examples/audiopanning: fix the initial panning 2023-03-14 21:30:55 +09:00
Hajime Hoshi
84a86c86e4 examples/blend: disable resizing the window 2023-03-14 21:22:27 +09:00
Hajime Hoshi
ac370d3678 update Oto
Updates hajimehoshi/oto#207
2023-03-14 20:59:49 +09:00
Hajime Hoshi
39aaf7fe37 ebiten: update comments
Updates #2601
2023-03-14 13:07:40 +09:00
Hajime Hoshi
b1048025d9 ebiten: separate graphics.go into compositemode.go and it 2023-03-14 00:45:10 +09:00
Hajime Hoshi
1656c47abf internal/ui: bug fix: hiding a window decoration at initialization doesn't work on macOS
Closes #2600
2023-03-14 00:27:57 +09:00
Hajime Hoshi
3bcac70d1c internal/graphicsdriver/metal: add comments 2023-03-13 22:21:55 +09:00
Hajime Hoshi
e93bcd9e55 internal/ui: bug fix: needed to wait for swapping buffers before entering fullscreen
Closes #2599
2023-03-13 21:40:40 +09:00
Hajime Hoshi
65fb9d56ba internal/graphicsdriver/metal: refactoring
Updates #2599
2023-03-13 21:29:42 +09:00
Hajime Hoshi
903b5ab046 examples/blend: clean up 2023-03-13 02:11:05 +09:00
Hajime Hoshi
80cbf7cbae examples: bug fix: wrong sample rate 2023-03-13 00:23:57 +09:00
Hajime Hoshi
597fe171a4 examples/additive: remove examples/additive
This is duplicated with examples/blend.
2023-03-12 23:44:53 +09:00
divVerent
10c1b56e62
cmd/ebitenmobile: fix Xbox-ish gamepad axis assignment (#2596)
This commit mirrors https://github.com/libsdl-org/SDL/pull/7405
(6f1f586086).

Note that for SDL, this code is used a lot less than for Ebitengine, as SDL
mostly migrated to HIDAPI and direct USB device access rather than using
Android's APIs. For Bluetooth devices, however, the Java APIs are used the
same way.

This was the remaining problem to be solved to automatically support standard
layout on most standard gamepads (this should cover most Xbox-ish and PS-ish
gamepads on the market).

In particular this covers gamepads with the following assignment:

- Left stick = X/Y, right stick = Z/RZ, triggers = LEFTTRIGGER/RIGHTTRIGGER
  (which basically is what Android docs say and some PS gamepads do)

- Left stick = X/Y, right stick = RX/RY, triggers = Z/RZ
  (Xbox gamepad style, apparently)

- Left stick = X/Y, right stick = RX/RY, triggers = LEFTTRIGGER/RIGHTTRIGGER
  (Not sure if this exists, but it's conceivable)

As we found on the SDL pull request discussion, gamepads that offer flight
controls (e.g. THROTTLE and RUDDER) will likely not work well, before and
after this change.

Closes #2557
2023-03-12 22:32:30 +09:00
Hajime Hoshi
36e2d0ec40 internal/graphicsdriver/metal: bug fix: a path for CoreGraphics.framework didn't work
Closes #2595
2023-03-10 23:24:06 +09:00
Hajime Hoshi
f9f1736a4b update dependencies 2023-03-10 22:37:55 +09:00
Hajime Hoshi
84146510ce internal/restorable: refactoring 2023-03-10 22:29:59 +09:00
Hajime Hoshi
46173ffec6 internal/restorable: refactoring 2023-03-10 01:57:07 +09:00
Hajime Hoshi
8f2097d55e internal/restorable: reduce more duplicated regions 2023-03-09 23:17:02 +09:00
Hajime Hoshi
f3b49e6543 internal/restorable: reduce more duplicated regions 2023-03-09 22:57:57 +09:00