15565 Commits

Author SHA1 Message Date
damios
f403a1b13a
Update CHANGES
See #7533, #7603, #7640,#7650, #7652, #7653, #7657, #7658,  #7659, #7662, #7664, #7667, #7673, #7682, #7700, #7706, #7711, e5b8029.
2025-10-20 14:15:46 +02:00
Tom Wojciechowski
ab12f99349 increment version 2025-10-19 22:19:37 +01:00
Tom Wojciechowski
528108a22d sync Version 1.14.0 2025-10-19 16:21:08 +01:00
Berstanio
ee1db7cfd1
fix: Make missing actions registration more verbose (#7714) 2025-10-17 20:20:27 +02:00
Tom Wojciechowski
61cc0eca15 update changes to reflect release version 2025-10-16 12:06:28 +01:00
Tom Wojciechowski
25e4721a08 increment to 1.14.0 2025-10-16 11:42:57 +01:00
Berstanio
a729bf1f0d
Nuke Pools class (#7678)
* feat: Nuke pools

* feat: Make poolmanager in actor static and some javadocs

* Apply formatter

* feat: Add clear method

* --

* fix: Address comments

---------

Co-authored-by: GitHub Action <action@github.com>
Co-authored-by: Tommy Ettinger <tommy.ettinger@gmail.com>
2025-10-16 11:38:56 +01:00
Michael
65a9978557
Add Lwjgl3ApplicationConfiguration.useGlfwAsync option (#7659)
* Add Lwjgl3ApplicationConfiguration.useGlfwAsync option

* Apply formatter

* Add mac-os check to useGlfwAsync

* Apply formatter

* Remove os check at AwtTestLWJGL

* Apply formatter

---------

Co-authored-by: GitHub Action <action@github.com>
2025-10-03 18:43:08 +02:00
Tommy Ettinger
28a15bab58
Clean-up in CharArray. (#7711)
* Clean up docs in CharArray.

Dangling comment here, typo there. The only substantive changes here are avoiding a duplicate check for equal size in equals() and avoiding an explicit call to Long.toString() that I don't think is required (it's already being appended to a String).

* Dubious? Avoid heap pollution in appendAll().

This requires making `appendAll(T...)` final, because the JVM can apparently get "heap pollution" when generic-typed varargs are used by a method that isn't at least one of private, static, and/or final. I haven't found any documentation on what "heap pollution" entails, so this might not be needed. I chose not to apply the SafeVarargs annotation because it isn't used anywhere else in libGDX, even though it is a valid compiler warning to omit it. The check for non-zero length before wasn't really... helpful, I think, since the loop just wouldn't run if array was empty. But, the parameter could be null in some situations, and iterating over that would crash with an NPE, so now it checks that the parameter is not null.

* The method is writer(), not asWriter().

* CharArray shouldn't behave differently from...

... every other Array type here; none of the others throw Exceptions when the Array is empty.
2025-10-03 18:41:48 +02:00
Nathan Sweet
7863b2383a JsonValue javadoc typo. 2025-10-02 20:59:20 -10:00
obigu
9173b1cb3a
Upgrade Gradle to 8.14.3 properly (#7710) 2025-10-01 22:20:53 +01:00
obigu
fef2c8a829
Update Gradle to 8.14.3 (#7708)
* Update Gradle to 8.14.3

* Update Gradle Validation action to 4.4.4
2025-10-01 15:57:53 +01:00
Tom Wojciechowski
fec0d5210e Fix TiledMapGWTAtlasAssetManagerTest for new params 2025-09-27 23:26:19 +01:00
BoBIsHere86
ef38b0d9ae
Feature Added: A Universal Tiled Map Loader (#7640)
* Added initial prototype for a Universal Tiled Map Loader.
 This will seamlessly handle any map type passed into it. Passing it along to the appropriate loader based on file type and properties.
 The way properties will be handled not decided yet. There are 2 potential methods. But it's ugly.
 Might refactor and consolidate atlas param instead.

 Added

* Finalized version of the new universal tiled map loader.

Cleaned up a mismatch in the TmjMapLoader, so it uses its own parameters the same way as all the other maploaders do.

* Added a test which loads an assorted pick of maps from other tests. All using the TiledMapLoader.

* Apply formatter

* Refactored the tiledmap parameters. Removed the parameter subclasses from the loaders. All Parameters should live in BaseTiledMapLoader.Parameters (which they already were anyway).

Changed any test which was using the AtlasTmxMapLoader.AtlasTiledMapLoaderParameters to use
BaseTiledMapLoader.Parameters instead.

* Apply formatter

---------

Co-authored-by: GitHub Action <action@github.com>
Co-authored-by: Tomski <tomwojciechowski@asidik.com>
2025-09-27 22:45:36 +01:00
BoBIsHere86
442808e870
Duplicate code cleanup in Tiled Map Loaders. Replacement for PR(#7136) (#7635)
* Updated a the getTileSetDependencyFileHandle method inside the TmxMapLoader to reflect PR #7136's code duplication fix.
Did the same for the TmjMapLoader as well.

* Apply formatter

---------

Co-authored-by: GitHub Action <action@github.com>
2025-09-27 22:40:52 +01:00
BoBIsHere86
9341abc041
Changed the root.get("tileSets") to root.get("tilesets") in TmjMapLoader.java (#7698)
Originally JsonValue.get() ignored case. So it worked accidentally. But recently it was changed. Checking against "tileSets" was a mistake to begin with so it needs to be fixed. The TMX map loader IS case-sensitive, so it should match. Which is why I am not suggesting to use the getIgnoreCase() method that was added.
2025-09-27 22:38:28 +01:00
BoBIsHere86
4259008cf8
Allow Creation of HexagonTiledMapRenderer with empty TiledMap. BugFix - Fixes Issue #7024 (#7700)
* For issue #7024

You can now create HexagonalTiledMapRenderer objects when passing in new empty TiledMap objects. This will no longer result in a crash and allows similar functionality to all the other TiledMapRenderers.
Also added getters and setters for the necessary fields which would be needed for a user to set it up manually.

* Apply formatter

---------

Co-authored-by: GitHub Action <action@github.com>
2025-09-27 22:38:05 +01:00
Simon
729a462585
[Tiled] Optimization for #7653 (#7658)
* #7651: add default value loading for tiles with a class

* #7651: add test for tile with a nested class

* #7651: add test for object with a class

* make renderMapLayer public

* Apply formatter

* add a proper warning message instead of throwing a NullpointerException when projectFilePath is not passed for a map with class properties/classes

* Apply formatter

---------

Co-authored-by: GitHub Action <action@github.com>
2025-09-27 22:37:50 +01:00
BoBIsHere86
a23594da87
Fixed a GWT compatability issue in the AtlasTmxMapLoader and AtlasTmjMapLoader. (#7657)
Added 3 new uncompressed base64 tiledmaps which we can use in GWT. As those maps could not be loaded in GWT so the original test was useless.

Created a specific test FOR Testing the AtlasTmxMapLoader stuff in GWT to replicate the normal non-gwt test.
2025-09-27 22:37:04 +01:00
armingensler
ea02a3928e
Add a constructor taking a TextureData array to FileTextureArrayData (#7706)
* Add a constructor taking a TextureData array to FileTextureArrayData

* Support already prepared texture data in FileTextureArrayData
2025-09-24 13:34:16 +01:00
willie-deev
7fcc42c12f
fix wrong x, y layer offset in HexagonalTiledMapRenderer (#7652) 2025-09-07 10:56:03 +02:00
BoBIsHere86
c9e20437cb
Added Template Object Support for TiledMaps. Replacement for PR (#5938) (#7533)
* Added TemplateObject loading feature into BaseTmxMapLoader class.

* Added a new test for Template Objects. Test is an exact replica of the TiledMapObjectLoadingTest except using template objects. We should compare results to that test, should look exactly the same.
Since template objects don't support embedded tilesets, I created a new tileset to use based on the old one for this new map.

* Updates to Tmj template loading.

* Added new map files and modified the Test for Template map objects. This test can swap between both TMJ and TMX map types for comparison to show proper parsing of object properties between formats.

* Modified Test to better show which loader you were currently using.
Added missing import for gwt test.
Small fix in tmj loader

* Updated TestMaps, fixed typo in property name.

* Rebased and Updated the Tiled Template functionality to support PointMapObjects and TextMapObjects.

Refactored some duplicate functionality after coming across some unique issue's with TextMapObjects.

Updated Tests to include the 2 new map objects and templates.

* Apply formatter

* Rebased against latest Master.

Updated some comments because of broken formatting.
Refactored a section of code. And updated a text string to look for proper lowercase "tilesets" because get is no longer case-insensitive.

* Apply formatter

---------

Co-authored-by: GitHub Action <action@github.com>
2025-09-06 20:48:24 -07:00
Alexander Winter
cc3678a655
Support for integer arrays glUniform_iv functions in ShaderProgram (#7694)
* Support array glUniform functions in ShaderProgram

* Updated CHANGES
2025-08-27 20:50:58 +01:00
Tom Wojciechowski
17da502a20 Use macos15 GHA runner for building 2025-08-21 09:51:16 +01:00
Nathan Sweet
d467095609 JsonMatcher, very minor updates. 2025-08-17 11:17:48 -04:00
Berstanio
d95a70ce23
chore: Update MetalANGLEKit to 1.2.1 (#7677) 2025-08-10 14:49:47 +01:00
Nathan Sweet
b7d79713c0 JsonMatcher debug. 2025-08-06 21:03:52 -04:00
Nathan Sweet
67e8509577 JsonMatcher adjustments.
* parseRoot -> parseValue, makes it useful in more situations.
* Fixed multiple patterns doing capture all at the same time.
* Fixed capture all not setting the root value name.
* Fixed patterns matching a single value not using the first when other patterns prevent parsing from stopping.
2025-08-06 21:01:42 -04:00
Nathan Sweet
fac659adb1
JsonWriter/String/Matcher improvements (#7684)
* JsonWriter/String improvements.
* Avoid boxing.
* Use stack only for depths < current.
* Avoid comma check after name for set().

* JsonMatcher, added parseRoot(), start(), patterns constructor, no patterns captures whole document, javadoc.
parseRoot is ugly, but it's otherwise inconvenient to obtain the root JsonValue.
2025-08-06 08:19:49 +02:00
MORIMORI0317
96852061e1
Added glBlendFuncSeparate support in RenderContext (#7673)
* Added support for glBlendFuncSeparate to RenderContext

* Remove unnecessary differences

* Fix format violation
2025-08-06 02:31:38 +01:00
ZCHawk
69e23c7829
VAO byte cal support int and uint; (#7682) 2025-08-06 02:24:38 +01:00
Alexander Winter
dbff518ece
Multisample FBO to support OpenGL ES 3.0 (#7679)
* Multisample FBO to support OpenGL ES 3.0

* Exposed members of GLFrameBuffer's internal classes

* Moved unit tests from GL31 to GL30, updated CHANGES

* Added frame buffer tests to GWT

* Adjust test, make sure shader is gles 3.0 compliant, webgl complained.

Webgl also doesn't like non sequential glDrawBuffer arguments.

Changed the MRT test slightly so its a bit easier to debug whats going on.

* Apply formatter

* Fix the masking of transfer.
Clear re-used fbo in MRT to ensures transfer is corrrect

* restore transfer

* Apply formatter

---------

Co-authored-by: Tom Wojciechowski <tomwojciechowski@asidik.com>
Co-authored-by: GitHub Action <action@github.com>
2025-08-06 02:24:04 +01:00
Nathan Sweet
d65426274e JsonMatcher javadoc, allow keeping references at end of parsing. 2025-08-04 22:42:30 -04:00
Nathan Sweet
7c9a2564d5
JsonValue#last added for O(1) append. (#7683)
Also JsonWriter and JsonString are ~1.25x faster.
2025-08-05 04:11:17 +02:00
Nathan Sweet
9808afe98e
Added JsonMatcher, extracts values with pattern matching (#7675) 2025-08-05 03:20:21 +02:00
Berstanio
8fe6d34477
fix: Fix accidental API breakage in https://github.com/libgdx/libgdx/pull/7605 (#7680) 2025-08-03 17:04:10 +02:00
Nathan Sweet
ff659249e2
Moved gdx.util.StringBuilder functionality into CharArray. (#7674) 2025-08-02 17:49:13 +02:00
Frosty-J
3e015ac8e6
Add dark version of libGDX logo (#7669)
* Dark README logo

* Update README.md
2025-07-19 18:36:16 +01:00
Nathan Sweet
f6c7af553b Fixed Pools logging for internal classes.
Bandaids until Pools is removed. clinit order was causing logging.

ref #7648
2025-07-17 15:49:46 -04:00
Rustam Zigandarov
96194bd5a1
fix misspellings in AsyncExecutor.java (#7667)
* fix misspellings in AsyncExecutor.java

asnynchronous

* missed misspelling xd
2025-07-11 22:42:51 +02:00
Rustam Zigandarov
4086fc2eea
Add Vector.One static fields for convenience (#7662)
* Update Vector2.java

* Update Vector3.java

* Update Vector4.java
2025-07-11 22:42:26 +02:00
lucas-viva
f1c6ca32bf
Extract createGraphics method so a custom AndroidGraphics can be created. (#7664)
* Extract createGraphics method so a custom AndroidGraphics can be created.

* Format changes.

---------

Co-authored-by: Lucas <lucas@vivagames.online>
2025-07-10 16:57:33 +02:00
PokeMMO
a0fe656819
fix: Modify Pools api to prevent android/desugar issues. (#7648)
* fix: Modify Pools api to prevent android/desugar issues.

* chore: update CHANGES
2025-07-07 10:47:40 +02:00
Christoph Aschwanden
364461b494
BUGFIX: Prevents crashes when calculating soft buttons bar height. (#7661)
Co-authored-by: noblemaster <contact@noblemaster.com>
2025-06-30 21:47:51 +02:00
Tomski
dbc851af9c
Bump next version 2025-06-17 14:18:14 +01:00
Simon
def1ddf10f
[Tiled] Class support (#7653)
* #7651: add default value loading for tiles with a class

* #7651: add test for tile with a nested class

* #7651: add test for object with a class

* make renderMapLayer public

* Apply formatter

---------

Co-authored-by: GitHub Action <action@github.com>
2025-06-16 18:13:42 +01:00
PokeMMO
e063c6dc2c
Update freetype to v2.13.3 (#7650)
* chore: update freetype to v2.13.3

* Apply formatter

---------

Co-authored-by: GitHub Action <action@github.com>
2025-05-31 09:56:22 +01:00
obigu
4eede71f5b
Replace deprecated methods on AndroidAudioDevice and AndroidCursor (#7603) 2025-05-29 08:51:55 +02:00
Nathan Sweet
e5b8029f83 Fixed JsonValue#setChild failing when child is null.
* Clear prev/next/parent for replaced node in setChild.
* Simpler addChild.
2025-05-26 22:12:03 -04:00
Nathan Sweet
4560c2ac8c Use Arrays.fill in SnapshotArray. 2025-05-26 15:35:04 -04:00