forked from libgdx/libgdx
-
Notifications
You must be signed in to change notification settings - Fork 0
/
CHANGES
266 lines (254 loc) · 21 KB
/
CHANGES
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
[1.4.2]
- API Addition: Added ability to save PixmapPackers to atlas files. See PixmapPackerIO.
- API Addition: Added HttpRequestHeader and HttpResponseHeader with constants for HTTP headers.
- API Addition: HttpRequest is now poolable.
- New PNG encoder that supports compression, more efficient vertical flipping, and minimal allocation when encoding multiple PNGs.
- API Change: Label#setEllipse -> Label#setEllipsis.
- API Change: BatchTiledMapRenderer *SpriteBatch fields and methods renamed to *Batch
[1.4.1]
- Update to the Gradle Integration plugin nightly build if you are on Eclipse 4.4.x!
- Update Intellij IDEA to 13.1.5+, because Gradle!
- Updated to Gradle 2.1 and Android build tools 20, default Android version to 20. You need to install the latest Android build tools via the SDK manager
- API Change: deprecation of bounding box methods, see https://github.com/libgdx/libgdx/pull/2408
- Added non-continuous rendering to iOS backend, thanks Dominik!
- Setup now uses Gradle 2.1 with default Android API level 20, build tools 20.0.0
- Non-continuous renderering implemented for iOS
- Added color markup support for scene2d label and window title.
- API Change: removed default constructor of DecalBatch, removed DefaultGroupStrategy
- Updated to latests RoboVM release, 1.0.0-alpha-04, please update your RoboVM plugins/installations
- Reduced I18NBundle loading times on Android and bypassed unclosed stream on iOS.
- Removed the gdx-ai extension from the libGDX repository. Now it lives in its own repository under the libGDX umbrella, see https://github.com/libgdx/gdx-ai
- API Addition: Added randomSign and randomTriangular methods to MathUtils.
- API Addition: Decal has now a getter for the Color.
- API Addition: now I18NBundle can be set so that no exception is thrown when the key can not be found.
- API Addition: added annotation support in reflection layer, thanks code-disaster! https://github.com/libgdx/libgdx/pull/2215
- API Addition: shapes like Rect, Circle etc. now implement Shape2D interface so you can put them all into a single collection https://github.com/libgdx/libgdx/pull/2178
- API Addition: bitmap fonts can now be loaded from an atlas via AssetManager/BitmapFontLoader, see https://github.com/libgdx/libgdx/pull/2110
- API Change: updated to RoboVM 1.0.0-SNAPSHOT for now until the next alpha is released.
- API Change: Table now uses padding from its background drawable by default. https://github.com/libgdx/libgdx/issues/2322
- Drawables now know their names, making debugging easier.
- API Change: Table fill now respects the widget's minimum size.
- Texture packer, fixed image size written to atlas file.
- API Change: Cell no longer uses primitive wrappers in public API and boxing is minimized.
- API Addition: TextureAttribute now supports uv transform (texture regions).
- API Change: Added parameters to Elastic Interpolation.
- API Change: Removed Actor#setCenterPosition, added setPosition(x,y,align).
- API Change: JsonReader, forward slash added to characters an unquoted strings cannot start with.
- API Change: Stage#cancelTouchFocus(EventListener,Actor) changed to cancelTouchFocusExcept.
- API Change: Json/JsonWriter.setQuoteLongValues() quotes Long, BigDecimal and BigInteger types to prevent truncation in languages like JavaScript and PHP.
[1.3.1]
- API change: Viewport refactoring. https://github.com/libgdx/libgdx/pull/2220
- Fixed GWT issues
[1.3.0]
- Added Input.isKeyJustPressed.
- API Addition: multiple recipients are now supported by MessageDispatcher, see https://github.com/libgdx/libgdx/wiki/Message-Handling#multiple-recipients
- API Change: State#onMessage now takes the message receiver as argument.
- API Addition: added StackStateMachine to the gdx-ai extension.
- API change: ShapeRenderer: rect methods accept scale, more methods can work under both line and fill types, auto shape type changing.
- API change: Built-in ShapeRenderer debugging for Stage, see https://github.com/libgdx/libgdx/pull/2011
- Files#getLocalStoragePath now returns the actual path instead of the empty string synonym on desktop (LWJGL and JGLFW).
- Fixed and improved xorshift128+ PRNG implementation.
- Added support for Tiled's animated tiles, and varying frame duration tile animations.
- Fixed an issue with time granularity in MessageDispatcher.
- Updated to Android API level 19 and build tools 19.1.0 which will require the latest Eclipse ADT 23.02, see http://stackoverflow.com/questions/24437564/update-eclipse-with-android-development-tools-23 for how things are broken this time...
- Updated to RoboVM 0.0.14 and RoboVM Gradle plugin version 0.0.10
- API Addition: added FreeTypeFontLoader so you can transparently load BitmapFonts generated through gdx-freetype via AssetManager, see https://github.com/libgdx/libgdx/blob/master/tests/gdx-tests/src/com/badlogic/gdx/tests/FreeTypeFontLoaderTest.java
- Preferences put methods now return "this" for chaining
- Fixed issue 2048 where MessageDispatcher was dispatching delayed messages immediately.
- API Addition: 3d particle system and accompanying editor, contributed by lordjone, see https://github.com/libgdx/libgdx/pull/2005
- API Addition: extended shape classes like Circle, Ellipse etc. with hashcode/equals and other helper methods, see https://github.com/libgdx/libgdx/pull/2018
- minor API change (will not increase minor revision number): fixed a bug in handling of atlasPrefixes, https://github.com/libgdx/libgdx/pull/2023
- Bullet: btManifoldPoint member getters/setters changed from btVector3 to Vector3, also it is no longer pooled, instead static instances are used for callback methods
- Added Intersector#intersectRayRay to detect if two 2D rays intersect, see https://github.com/libgdx/libgdx/pull/2132
- Bullet: ClosestRayResultCallback, AllHitsRayResultCallback, LocalConvexResult, ClosestConvexResultCallback and subclasses now use getter/setters taking a Vector3 instead of btVector3, see https://github.com/libgdx/libgdx/pull/2176
- 2d particle system supports pre-multiplied alpha.
- Bullet: btIDebugDrawer/DebugDrawer now use pooled Vector3 instances instead of btVector3, see https://github.com/libgdx/libgdx/issues/2174
[1.2.0]
- API Addition: Some OpenGL profiling utilities have been added, see https://github.com/libgdx/libgdx/wiki/Profiling
- API Addition: A FreeTypeFontGeneratorLoader has been added to the gdx-freetype extension
- API change: Animation#frameDuration and #animationDuration are now hidden behind a getter/setter and dynamic
- API Addition: Vector#setZero
- API Addition: gdx-ai, extension for AI algorithms. Currently supports FSMs, see https://github.com/libgdx/libgdx/wiki/Artificial-Intelligence
- API change: TableLayout has been forked and integrated into libgdx more tightly, see http://www.badlogicgames.com/wordpress/?p=3458
- API Addition: added equals/hashCode methods to Rectangle, may break old code (very, very unlikely)
- API Addition: scene2D Actors now have a setCenterPosition method, see https://github.com/libgdx/libgdx/pull/2000
[1.1.0]
- Updated to RoboVM 0.0.13 and RoboVM Gradle plugin 0.0.9
- Big improvements to setup-ui and build times in Intellij IDEA https://github.com/libgdx/libgdx/pull/1865
- Setup now uses android build tools version: 19.1.0
- BitmapFontCache now supports in-string colored text through a simple markup language, see https://github.com/libgdx/libgdx/wiki/Color-Markup-Language
- Added i18n localization/internationalization support, thanks davebaol, see https://github.com/libgdx/libgdx/wiki/Internationalization-and-Localization
- Possibility to override density on desktop to simulate mobile devices, see https://github.com/libgdx/libgdx/pull/1825
- Progressive JPEG support through JPGD (https://code.google.com/p/jpeg-compressor/).
- Mavenized JGLFW backend
- Box2D: Added MotorJoint and ghost vertices on EdgeShape
- Updated GWT Box2D to latest version
- Updated native Box2D to latest version 2.3.1, no API changes
- API change: Matrix4.set(x,y,z, translation) changed, z axis is no more flipped
- API addition: Matrix4.avg(Matrix4[],float[]) that lets weighted averaging multiple matrices, Quaternion.slerp(Quaternion[],float[]) that lets weighted slerping multiple Quaternions
- fixed the long standing issue of the alpha=1 not actually being fully opaque, thanks kalle! https://github.com/libgdx/libgdx/issues/1815
- down to 25 issues on the tracker, 8 bugs, 17 enhancement requests :)
[1.0.1]
- updated to RoboVM 0.12 (and so should you!)
- fixed GC issues on iOS with regards to touch (thanks Niklas!), see https://github.com/libgdx/libgdx/pull/1758
- updated gwt gradle plugin to 0.4, android build tools to 0.10, gradle version to 1.11
- Tiled maps are now always y-up
- Tiled maps now support drawing offsets for tiles
- FileHandle#list is now supported in GWT!
- FileHandle#list now supports FileFilters
- Controllers now reinitialize on the desktop when switching between windowed/fullscreen
- added a Texture unpacker that will extract all images from a texture atlas, see https://github.com/libgdx/libgdx/pull/1774
- updates to gdx-setup
- CustomCollisionDispatcher in bullet, see https://github.com/libgdx/libgdx/commit/916fc85cecf433c3461b458e00f8afc516ad21e3
[1.0.0]
- Box2D is no longer in the core, it has been moved to an extension. See http://www.badlogicgames.com/wordpress/?p=3404
- Merged gdx-openal project into gdx-backend-lwjgl
- Now LoadedCallback in AssetLoaderParameters is always called after loading an asset from AssetManager, even if the asset is already loaded
- Added Payload as a new parameter to Source.dragStop, see https://github.com/libgdx/libgdx/pull/1666
- You can now load PolygonRegions via AssetLoader, see https://github.com/libgdx/libgdx/pull/1602
- implemented software keyboard support in RoboVM iOS backend
- Fixed an issue where key event timestamp is not set by the android backend.
- scene2d.ui, added to TextArea the preferred number of rows used to calculate the preferred height.
- scene2d.actions, fixed infinite recursion for event listener's handle(event).
- Various Quaternion changes.
- scene2d.ui, fixed a drawing issue with knobBefore when there's no knob (typical progress bar).
- Various MeshBuilder fixes and additions.
- Math package: added cumulative distribution.
- Fixed Music isPlaying() on iOS when is paused.
- Added support for C-style comments to JsonReader (mainly used for json skin files).
- Support for resource removal from Skin objects.
- Added fling gesture to generate fling in scrollpane.
- Vector classes now have mulAdd method for adding pre-multiplied values
- Vector implementations no longer use squared value for margin comparisons, see: isZero(float margin), isUnit(float margin).
- Vector2 now has isUnit and isZero methods (copied from Vector3)
- Removed deprecated methods from Vector classes.
- Added new headless backend for server applications
- Support 'scaledSize' as a json skin data value for BitmapFont
- Added setAlpha(float a) method to Sprite class
- Added Input.Keys.toString(int keycode) and Input.Keys.valueOf(String keyname) methods
- Added Immersive Mode support to Android backend
- Added userObject to Actor in scene2d, allowing for custom data storage
- Altered Android's hide status bar behavior
- Changed the way wakelocks are implemented. You no longer need any special permissions for the libgdx wakelock
- BitmapFontCache setColor changes to match SpriteBatch and friends. http://www.badlogicgames.com/forum/viewtopic.php?f=23&t=12112
- Changed ParticleEffect: the ParticleEffect.save method now takes a Writer instead of a File
- TexturePacker2 renamed to TexturePacker, added grid and scaling settings.
- Added support for custom prefrences on the desktop backends.
- Fixed double resume calls on iOS.
- Android Music no longer throws exceptions if MediaPlayer is null.
- PolygonSpriteBatch implements Batch.
- New scene2d actions: EventAction, CountdownEventAction.
- Adds cancelHttpRequest() method to Net interface
- Updated GWT/HTML5 Backend to GWT 2.6.0
- Minimal Android version is 2.2, see http://www.badlogicgames.com/wordpress/?p=3297
- Updated to LWJGL 2.9.1
- Can now embed your libgdx app as a fragment, more info on the wiki
- scene2d.ui, renamed Actor methods translate, rotate, scale, size to moveBy, rotateBy, scaleBy, sizeBy. May have conflicts with Actions static import, eg you'll need to use "Actions.moveBy"
- scene2d.ui, Table background is now drawn usign the table's transform
- scene2d.ui, added Container which is similar to a Table with one cell, but more lightweight
- Added texture filters and mip map generation to BitMapFontLoader and FreeTypeFontGenerator
- scene2d.ui, VerticalGroup and HorizontalGroup got pad, fill and an API similar to Table/Container
- Removed OpenGL ES 1.0, 1.1 support; see http://www.badlogicgames.com/wordpress/?p=3311
- Added OpenGL ES 3 support
- Updated Android backend, demos, tests to 4.4
- Added Viewport, changed Stage to have a Viewport instead of a Camera (API change, see http://www.badlogicgames.com/wordpress/?p=3322 ).
- Changed play mode constants of Animation class to enumeration, see http://www.badlogicgames.com/wordpress/?p=3330
- Updated to RoboVM 0.0.11 and RoboVM Gradle plugin 0.0.6, see http://www.badlogicgames.com/wordpress/?p=3351
- Updated to Swig 3.0 for Bullet, disabled SIMD on Mac OS X as alignements are broken in Bullet, see https://github.com/libgdx/libgdx/pull/1595
- TextureData can only be Custom or Pixmap; compressed image files are considered custom
[0.9.9]
- added setCursorImage method to Input interface to support custom mouse cursors on the desktop
- removed Xamarin backend, see http://www.badlogicgames.com/wordpress/?p=3213
- added Select class for selecting kth ordered statistic from arrays (see Array.selectRanked() method)
- refactored Box2D to use badlogic Arrays instead of java.util.ArrayLists
- MipMapGenerator methods now don't take disposePixmap argument anymore
- added GLTexture, base class for all textures, encapsulates target (2d, cubemap, ...)
- added CubeMap, 6 sided texture
- changed TextureData#consumeCompressedData, takes target now
- added RoboVM backend jar and native libs (libObjectAL, libgdx, in ios/ folder of distribution)
- added RoboVM backend to build
- changed Bullet wrapper API, see http://www.badlogicgames.com/wordpress/?p=3150
- changed MusicLoader and SoundLoader to be asynchronous loaders
- changed behaviour of Net#sendHttpRequest() so HttpResponseListener#handleHttpResponse() callback is executed in worker thread instead of main thread
- added Bresenham2, for drawing lines on an integer 2D grid
- added GridPoint2 and GridPoint3, representing integer points in a 2D or 3D grid
- added attribute location caching for VertexData/Mesh. Hand vertex attribs to a ShaderProgram, get back int[], pass that to Mesh
- added Android x86 builds, removed libandroidgl20.so, it's now build as part of gdx-core for Android
- changed method signature on Box2D World#getBodies and World#getJoints, pass in an Array to fill
- removed glGetShaderSource from GL20, use ShaderProgram#getVertexShaderSource/getFragmentShaderSource instead
- added reflection api
- added AsynchExecutor, execute tasks asynchronously. Used for GWT mainly.
- removed FileHandle#file(), has no business in there.
- removed box2deditor
- removed custom typedarrays in gwt backend
- added classpath files support for gwt backend (limited)
- moved AndroidWallpaperListener to Android Backend
- added new VertexAttribute Usage flags, bone weight, tangent, binormal. previously encoded as Usage.Generic. Also
added field "unit" to VertexAttribute, used by texture coordinates and bone weights to specify index/unit.
- setup-ui template for iOS disables pngcrush, also updated wiki iOS article
- add Pixmap#fillTriangle via jni gdx2d_fill_triangle() to fill a triangle based on its vertices.
- add asynchronous download with continuous progress feedback to GWT asset preloader, see https://github.com/libgdx/libgdx/pull/409?w=1
- add capability to add/exclude package/classes GWT Reflection system, see https://github.com/libgdx/libgdx/pull/409?w=1
- add updated gdx-tiled-preprocessor, generate one single TextureAtlas for all the specified Tiled maps, see http://www.badlogicgames.com/forum/viewtopic.php?f=17&t=8911
- maps API, add new AtlasTiledMapLoader for loading maps produced by the tiled preprocessor tool
- ImageProcessor, TexturePacker2 now accepts BufferedImage objects as input
- TexturePacker2 now avoids duplicated aliases
- Updated to LWJGL 2.9.0
- refactored JSON API, see http://www.badlogicgames.com/wordpress/?p=2993
- Updated Box2D to the latest trunk. Body#applyXXX methods now take an additional boolean parameter.
- TmxMapLoader has a flag in Parameters that lets you specify whether to generate mipmaps
- Animation#isAnimationFinished was fixed to behave as per javadocs (ignores looping)
- remove GLU interface and implementations. Use Matrix4 et al instead. see http://www.badlogicgames.com/wordpress/?p=2886
- new maps API, see http://www.badlogicgames.com/wordpress/?p=2870
- removed static public tmp Vector2 instances, manage such temporary vars yourself, see http://www.badlogicgames.com/wordpress/?p=2840
- changed Scene2D Group#clear(), see http://www.badlogicgames.com/wordpress/?p=2837
- changed the build system, natives are now fetched from the build server, see http://www.badlogicgames.com/wordpress/?p=2821
- freetype extension supported on iOS, see http://www.badlogicgames.com/wordpress/?p=2819
- changed ShapeRenderer API, see http://www.badlogicgames.com/wordpress/?p=2809
- changed Actions.add to addAction, changed parameter order, and added removeAction, addListener, removeListener
- Box2d joints now allow for user data
- Changes to Intersector, Circle, Rectangle and BoundingBox for consistency in #overlap, #intersect and #contains methods, see https://github.com/libgdx/libgdx/pull/312
- Removed LwjglApplicationConfiguration CPU sync. Added foreground and background target framerate.
- scene2d, no longer use getters/setters internally for Actor x, y, width, height, scalex, scaley and rotation.
- Array, detect nested iterator usage and throw exception.
- Added getVolume to Music class and Android, IOS and GWT backends
- 1381, fixed JSON parsing of longs. In addition to Float, it now parses Long if no decimal point is found.
- Changed Array constructors that took an array to have offset and count
- scene2d, Actor parentToLocalCoordinates and localToParentCoordinates refactoring, see http://www.badlogicgames.com/forum/viewtopic.php?p=40441#p40441
- scene2d, Action#setActor no longer calls reset if the Action has no pool. This allows non-pooled actions to be add and removed from actors, restarted, and reused.
- ScrollBar#setForceOverscroll renamed to setForceScroll, as it affects more than just overscroll.
- ArrayMap#addAll renamed to putAll to match the other maps.
- Added ObjectSet and IntSet.
- Added completion listener to Music.
- Added Music#setPan.
- Sound#play and Sound#loop on Android now return -1 on failure, to match other backends.
- DelegateAction subclasses need to implement delegate() instead of act(). http://www.badlogicgames.com/forum/viewtopic.php?p=43576#p43576
- Added pause and resume methods to Sound.
- Changed AssetErrorListener#error to have AssetDescriptor to enable access to parameters of failed asset.
- Changed SelectBoxStyle to have ScrollPaneStyle and ListStyle for fully customizing the drop down list. http://www.badlogicgames.com/wordpress/?p=3110
- AssetLoader now takes a FileHandle that is the resolved file name. The AssetLoader no longer has to resolve the file name, so we can prevent it from being resolved twice.
- Rewrote EarClippingTriangulator to not allocate (no more Vector2s).
- Added ParticleEffectLoader to make AssetManager load ParticleEffects
- Added GeometryUtils, more Intersector functions, DelaunayTriangulator, ConvexHull.
- Added getBoundingBox to ParticleEffect
- EarClippingTriangulator changed to return triangle indices.
- PolygonSpriteBatch and friends refactored to use triangle indices.
- Added add(T, float), remove(int), remove(T) and clear() methods to BinaryHeap
- Bitmap Font changes:
- FreeTypeFontGenerator allows you to specify the PixmapPacker now, to create an atlas with many different fonts (see FreeTypePackTest)
- BitmapFont, BitmapFontCache and FreeTypeFontGenerator now support fonts with multiple texture pages. (see BitmapFontTest and FreeTypePackTest)
- BitmapFontData.imagePath and getImagePath() is depreacted, use imagePaths[] and getImagePath(int) instead
- Added two BitmapFont constructors for convenience; no need to specify flip boolean
- Added getCache() to BitmapFont, for expert users who wish to use the BitmapFontCache (see BitmapFontTest)
- FreeTypeFontGenerator now includes setMaxTextureSize and getMaxTextureSize to cap the generated glyph atlas size (default 1024)
- added render-hooks beginRender() and endRender() to BatchTiledMapRenderer
- Added panStop to GestureListener interface.
- ScissorStack#calculateScissors changed to take viewport, enabling it to work with glViewport.
- Added Bits#getAndClear, Bits#getAndSet and Bits#containsAll
- Added setX and setY to TextureAtlas.AtlasSprite so it matches expected behavior
[0.9.8]
- see http://www.badlogicgames.com/wordpress/?p=2791
[0.9.7]
- see http://www.badlogicgames.com/wordpress/?p=2664
[0.9.6]
- see http://www.badlogicgames.com/wordpress/?p=2513