Commit Graph

8625 Commits

Author SHA1 Message Date
Hajime Hoshi
1514749041 examples/text: remove a dependency on math/rand 2023-06-25 01:33:25 +09:00
divVerent
1a9bff390d
mobile/ebitenmobileview: Android: include keypress runes even for unmapped keys. (#2685)
Note that this is a theoretical bug - I do not have a keyboard I can
reproduce this. However, if I remove a key from genkeys.go, pressing
that key will, after this change, still emit its character to
AppendInputChars.

Thus, this better supports "odd" international keyboards.

Also, make the updateInput calls more consistent - always one call per
event. This should change no behavior, but should be more debuggable.

Closes #2684
2023-06-24 21:33:17 +09:00
divVerent
ede787c228
mobile/ebitenmobileview: make runes a parameter. (#2683)
This prevents duplicate input characters due to concurrent touch events.

Closes #2682
2023-06-24 13:40:29 +09:00
divVerent
1789f509e1
mobile/ebitenmobileview: add iOS Keyboard support. (#2678)
Closes #1090
2023-06-24 05:00:13 +09:00
divVerent
b96aea70f1
internal/ui: compute antialias region size correctly. (#2681)
Closes #2679
2023-06-24 02:25:19 +09:00
Hajime Hoshi
6813c7d5e2 ebiten: update a URL 2023-06-24 00:44:15 +09:00
Hajime Hoshi
569f472475 examples: replace BoundString with MeasureString and Metrics 2023-06-11 04:26:16 +09:00
Hajime Hoshi
7791ae3029 examples/text: bug fix: go-vet error 2023-06-10 19:29:14 +09:00
Hajime Hoshi
911cf0c48c text: deprecate BoundString
After we found a correct definition of the term 'dot', BoundString seems
less useful than expected. In order to adjust the position of a text, we
should use a face's Metrics and a string's advance (font.MeasureString).
2023-06-10 19:21:04 +09:00
Hajime Hoshi
585e929f9f .github/workflows: update Go versions 2023-06-07 11:49:59 +09:00
Hajime Hoshi
90735b52a9 update bitmapfont to v3.0.0 2023-06-02 02:36:25 +09:00
Hajime Hoshi
41906115f4 examples/blend: use the face's metrics to calculate the position
For centering, using bounds is slightly inaccurate as the bounds
don't consider left/right-side bearings. Also, using bounds for
heights is slightly inaccurate as baselines for texts on the same
line would not be the same.

Updates #2143
2023-06-02 01:58:21 +09:00
Hajime Hoshi
0918877344 text: update comments 2023-06-02 00:46:07 +09:00
Hajime Hoshi
2a10a75774 update gomobile 2023-06-01 11:07:13 +09:00
Hajime Hoshi
11e79f3b51 text: update comments 2023-05-30 17:50:08 +09:00
Hajime Hoshi
f446288e0c update bitmapfont to v3 2023-05-30 11:17:36 +09:00
Hajime Hoshi
af767c5d8d .github/workflows: reenable 32bit Linux building
Closes #2667
2023-05-29 00:46:22 +09:00
Hajime Hoshi
baea6d47ee text: cache Kern values
Closes #2673
2023-05-28 23:23:43 +09:00
Hajime Hoshi
e374ca0ac3 text: refactoring: introduce faceWithCache 2023-05-28 22:54:07 +09:00
Hajime Hoshi
8de08295e9 internal/restorable: refactoring 2023-05-26 01:44:13 +09:00
Hajime Hoshi
0f4066e7ac internal/restorable: remove clearIfOverlapped
We found clearIfOverlapped could be a heavy task in some actual applications.
Instead of clearing existing data in the pixels records, add a new record
with a nil slice which indicates a cleared region.
2023-05-25 21:26:53 +09:00
Hajime Hoshi
47f19da710 internal/restorable: early return for an empty rectangle 2023-05-25 19:17:22 +09:00
Hajime Hoshi
90562ee84b internal/goglfw: enable to build for GOOS=darwin
Updates #2546
2023-05-21 21:29:40 +09:00
Hajime Hoshi
556ec7053a .github/workflows: disable Linux i386 tests temporarily
Updates #2667
2023-05-16 03:04:00 +09:00
Hajime Hoshi
0ab214b018 internal/goglfw: move updateWindowStyles call to win32window_windows.go
updateWindowStyles is originally a Windows-specific function in GLFW,
so this should be in win32window_windows.go.
2023-05-14 02:56:32 +09:00
Hajime Hoshi
e3ab7b979f vector: update comments 2023-05-10 16:10:38 +09:00
the-goodies
12a179aab9
internal/goglfw: fix _GET_X_LPARAM and _GET_Y_LPARAM from api_windows.go (#2665)
Negative values should not disappear. For example, if _HIWORD returns 63000,
then _GET_Y_LPARAM should return -2536, but now it returns 63000.

This fixes that.
2023-05-10 09:27:40 +09:00
Hajime Hoshi
50b68a0427 internal/goglfw: refactoring: use unsafe.Add 2023-05-10 00:41:57 +09:00
Hajime Hoshi
1035b1d182 internal/shader: bug fix: wrong issue number
Updates #2590
Updates #2648
2023-05-09 01:40:33 +09:00
Hajime Hoshi
ad23ae81c1 internal/shader: bug fix: forbide assigning to a uniform variable
Closes #2648
2023-05-09 01:38:41 +09:00
Hajime Hoshi
0785502be3 internal/ui: refactoring 2023-05-09 00:35:54 +09:00
Hajime Hoshi
20edb04e5e internal/restorable: refactoring: add EndFrame 2023-05-08 01:09:25 +09:00
Hajime Hoshi
befe990562 internal/shaderir: refactoring 2023-05-05 14:24:48 +09:00
Hajime Hoshi
ceb2bfc89c internal/shaderir: refactoring: use the append pattern 2023-05-04 14:34:22 +09:00
Hajime Hoshi
e4c9d6705c internal/shaderir: refactoring 2023-05-04 14:26:08 +09:00
Hajime Hoshi
ecf07ad09e internal/graphicscommand: speed optimization: reduce boundary checks
Co-authored-by: Egon Elbre <egonelbre@gmail.com>
2023-05-04 12:55:53 +09:00
Hajime Hoshi
89e38041f2 .github/workflows: update 2023-05-03 11:55:19 +09:00
Hajime Hoshi
d16b591a35 internal/graphicsdriver/directx: bug fix: use an associated IDXGIFactory
In DirectX 11, if a device and a factory are independently created,
some functions like MakeWindowAssociation doe't work well.

This change fixes the issue by getting a factory from a device and
using it.

Closes #2661
2023-05-01 19:17:08 +09:00
Hajime Hoshi
b32258ab8c internal/atlas: refactoring 2023-04-29 13:41:39 +09:00
Hajime Hoshi
e98acd3dc7 internal/graphicsdriver: refactoring: use image.Rectangle 2023-04-29 01:12:05 +09:00
Hajime Hoshi
d2c991b774 all: refactoring: use image.Rectangle 2023-04-28 01:03:38 +09:00
Hajime Hoshi
cdcffd7d4f internal/restorable: refactoring: use image.Rectangle 2023-04-28 00:42:40 +09:00
Hajime Hoshi
d9a2b0922d internal/atlas: refactoring: remove unnecessary calculations 2023-04-28 00:26:09 +09:00
Hajime Hoshi
9e61b52a70 internal/atlas: refactoring: use image.Rectangle 2023-04-27 23:55:11 +09:00
Hajime Hoshi
82c7436be5 internal/packing: refactoring: use image.Rectangle 2023-04-27 23:45:57 +09:00
Hajime Hoshi
6c5477adea internal/atlas: remove borders at the upper and the left sides
Updates #2657
2023-04-27 09:06:05 +09:00
Hajime Hoshi
2a1d23d926 internal/shader: bug fix: panic when an assignment mismatch happens
Closes #2654
2023-04-26 22:09:25 +09:00
Hajime Hoshi
56b4cdc3c4 internal/graphics: use pixels for offsets 2023-04-26 00:38:23 +09:00
Hajime Hoshi
9d2178cf71 internal/shaderir: rename the built-in func to get a texel to __texelAt 2023-04-23 22:57:30 +09:00
Hajime Hoshi
49582519c1 all: add a compiler directive kage:unit
This change adds a new compiler directive 'kage:unit' to Kage. This
takes one of these two values: 'pixel' and 'texel'. The default value
is 'texel'.

With the pixel-unit mode, all the built-in functions treats pixels
instead of texels, and the texCoord argument of Fragment is in pixels.
This simplifies shader programs as programs no longer have the notion
of texels.

With the texel-unit mode, the behavior is the same as the current
behavior.

Closes #1431
2023-04-23 22:11:57 +09:00