Difference between revisions of "0.10.0"
m (→Renamed APIs) |
m (Updated changelog) |
||
Line 17: | Line 17: | ||
* Added optional x/y/width/height arguments to [[love.keyboard.setTextInput]]. They tell the system where text will show up so on-screen keyboards can avoid that area. | * Added optional x/y/width/height arguments to [[love.keyboard.setTextInput]]. They tell the system where text will show up so on-screen keyboards can avoid that area. | ||
* Added [[Source:getType]] (replaces [[Source:isStatic]].) | * Added [[Source:getType]] (replaces [[Source:isStatic]].) | ||
+ | * Added [[love.graphics.ellipse]]. | ||
+ | * Added rounded-rectangle support to [[love.graphics.rectangle]]. | ||
* Added [[love.graphics.getSupported]] (replaces [[love.graphics.isSupported]].) | * Added [[love.graphics.getSupported]] (replaces [[love.graphics.isSupported]].) | ||
* Added [[love.graphics.getSystemLimits]] (replaces [[love.graphics.getSystemLimit]].) | * Added [[love.graphics.getSystemLimits]] (replaces [[love.graphics.getSystemLimit]].) | ||
Line 37: | Line 39: | ||
* Added an optional font hinting argument to [[love.graphics.newFont]] when loading TrueType fonts. | * Added an optional font hinting argument to [[love.graphics.newFont]] when loading TrueType fonts. | ||
* Added an optional spacing argument to [[love.graphics.newImageFont]], which applies additional spacing to all rendered glyphs. | * Added an optional spacing argument to [[love.graphics.newImageFont]], which applies additional spacing to all rendered glyphs. | ||
+ | * Added [[Font:setFallbacks]]. | ||
* Added [[love.window.maximize]]. | * Added [[love.window.maximize]]. | ||
* Added [[BezierCurve:renderSegment]] and [[BezierCurve:removePoint]]. | * Added [[BezierCurve:renderSegment]] and [[BezierCurve:removePoint]]. | ||
* Added [[BezierCurve:getSegment]]. | * Added [[BezierCurve:getSegment]]. | ||
* Added [[love.math.compress]] and [[love.math.decompress]]. | * Added [[love.math.compress]] and [[love.math.decompress]]. | ||
+ | * Added [[Channel:performAtomic]]. | ||
=== Removals === | === Removals === | ||
* Removed [[love.filesystem.exists]] (use [[love.filesystem.isFile]] or [[love.filesystem.isDirectory]] instead.) | * Removed [[love.filesystem.exists]] (use [[love.filesystem.isFile]] or [[love.filesystem.isDirectory]] instead.) | ||
+ | * Removed the callback argument from [[love.filesystem.getDirectoryItems]]. | ||
* Removed callback variant of [[love.filesystem.getDirectoryItems]] | * Removed callback variant of [[love.filesystem.getDirectoryItems]] | ||
* Removed the "wu" and "wd" constants for [[love.mousepressed]] (replaced by [[love.wheelmoved]].) | * Removed the "wu" and "wd" constants for [[love.mousepressed]] (replaced by [[love.wheelmoved]].) | ||
Line 49: | Line 54: | ||
* Removed [[Source:isStatic]] (replaced by [[Source:getType]].) | * Removed [[Source:isStatic]] (replaced by [[Source:getType]].) | ||
* Removed image loading support for all (non-compressed texture) file formats except for PNG, JPEG, TGA, and BMP. | * Removed image loading support for all (non-compressed texture) file formats except for PNG, JPEG, TGA, and BMP. | ||
+ | * Removed JPEG encoding support from [[ImageData:encode]]. | ||
* Removed [[love.graphics.setPointStyle]] and [[love.graphics.getPointStyle]]. | * Removed [[love.graphics.setPointStyle]] and [[love.graphics.getPointStyle]]. | ||
* Removed [[love.graphics.isSupported]] (replaced by [[love.graphics.getSupported]].) | * Removed [[love.graphics.isSupported]] (replaced by [[love.graphics.getSupported]].) | ||
Line 79: | Line 85: | ||
=== Bugfixes === | === Bugfixes === | ||
* Fixed [[utf8.char]]. | * Fixed [[utf8.char]]. | ||
+ | * Fixed detection of fused executables. | ||
* Fixed [[love.keyboard.getKeyFromScancode]] crashing when an invalid scancode is given. | * Fixed [[love.keyboard.getKeyFromScancode]] crashing when an invalid scancode is given. | ||
+ | * Fixed decoding of 8-bit WAV files. | ||
+ | * Fixed [[love.audio.stop]]() not rewinding streaming Sources. | ||
* Fixed the stencil buffer in [[Canvas]]es when an unsupported MSAA value is used to create the Canvas. | * Fixed the stencil buffer in [[Canvas]]es when an unsupported MSAA value is used to create the Canvas. | ||
* Fixed [[love.graphics.getColorMask]]. | * Fixed [[love.graphics.getColorMask]]. | ||
Line 91: | Line 100: | ||
* Updated [[love.keyreleased]] to be [[love.keyreleased]](key, scancode). | * Updated [[love.keyreleased]] to be [[love.keyreleased]](key, scancode). | ||
* Updated [[love.mousepressed]], [[love.mousereleased]], and [[love.mouse.isDown]] to use button numbers instead of named button constants. | * Updated [[love.mousepressed]], [[love.mousereleased]], and [[love.mouse.isDown]] to use button numbers instead of named button constants. | ||
+ | * Updated [[World:setCallbacks]], [[World:setContactFilter]], [[World:queryBoundingBox]], and [[World:rayCast]] to have improved argument type checking. | ||
+ | * Updated threads to load [[love.filesystem]] automatically. | ||
* Updated [[love.math.setRandomSeed]] and [[RandomGenerator:setSeed]] to produce better results for the first few random() calls. | * Updated [[love.math.setRandomSeed]] and [[RandomGenerator:setSeed]] to produce better results for the first few random() calls. | ||
* Updated [[Source]] methods that deal with spatial audio to error rather than failing silently if the Source isn't mono. | * Updated [[Source]] methods that deal with spatial audio to error rather than failing silently if the Source isn't mono. | ||
+ | * Updated the 3D and 4D variants of [[love.math.noise]] to use Perlin noise rather than Simplex noise, to avoid patent issues. | ||
* Updated [[love.graphics.newImageFont]] to no longer treat separator pixels as spacing. | * Updated [[love.graphics.newImageFont]] to no longer treat separator pixels as spacing. | ||
* Updated the default font to use less memory. | * Updated the default font to use less memory. | ||
Line 103: | Line 115: | ||
* Updated [[Image]]s to allow mipmaps for non-power-of-two sizes. | * Updated [[Image]]s to allow mipmaps for non-power-of-two sizes. | ||
* Updated the arguments for the standard variants of [[love.graphics.newMesh]]. They're now [[love.graphics.newMesh]](vertices [, drawmode, usage]) and [[love.graphics.newMesh]](vertexcount [, drawmode, usage]). | * Updated the arguments for the standard variants of [[love.graphics.newMesh]]. They're now [[love.graphics.newMesh]](vertices [, drawmode, usage]) and [[love.graphics.newMesh]](vertexcount [, drawmode, usage]). | ||
− | * Updated [[Mesh:setVertex]] to | + | * Updated [[Mesh:setVertex]] to require every component of every attribute in the vertex, instead of having default values. |
[[Category:Versions]] | [[Category:Versions]] |
Revision as of 14:30, 30 May 2015
The information on this page may not be accurate or up to date due to the information pertaining to a version that is currently in development. |
The codename for LÖVE 0.10.0 is not yet announced. It is currently not released.
Contents
Changes from 0.9.2
Additions
- Added an iOS port.
- Added the flag t.accelerometerjoystick to love.conf. Disables accelerometer-as-joystick functionality on mobile devices when false.
- Added love.touch module. Note that it has important differences from the touch implementation in the LÖVE 0.9.2 Android and iOS ports.
- Added love.touchpressed, love.touchreleased, and love.touchmoved.
- Added love.filesystem.setRequirePath and love.filesystem.getRequirePath.
- Added love.filedropped and love.directorydropped event callback functions.
- Added love.lowmemory event callback function, called when the app is running out of memory on mobile operating systems.
- Added love.wheelmoved event callback function (replaces "wu" and "wd" constants for love.mousepressed.)
- Added love.mouse.hasCursor.
- Added a boolean argument to love.mousepressed and love.mousereleased indicating whether the button event originated from a touch press.
- Added optional x/y/width/height arguments to love.keyboard.setTextInput. They tell the system where text will show up so on-screen keyboards can avoid that area.
- Added Source:getType (replaces Source:isStatic.)
- Added love.graphics.ellipse.
- Added rounded-rectangle support to love.graphics.rectangle.
- Added love.graphics.getSupported (replaces love.graphics.isSupported.)
- Added love.graphics.getSystemLimits (replaces love.graphics.getSystemLimit.)
- Added love.graphics.stencil and love.graphics.setStencilTest (replaces love.graphics.setStencil.)
- Added love.graphics.isActive.
- Added color arguments to love.graphics.clear. It no longer always uses the background color value.
- Added love.graphics.discard.
- Added optional x/y/width/height arguments to Image:refresh and Canvas:newImageData.
- Added Image:getFlags.
- Added one- and two-channel Canvas formats: r8, rg8, r16f, rg16f, r32f, and rg32f.
- Added support for different formats in each Canvas when using multi-canvas rendering. Added the "multicanvasformats" GraphicsFeature constant.
- Added support for OpenGL ES 2 and 3.
- Added support for loading ETC1/2, EAC, and PVRTC1 compressed textures.
- Added custom vertex attribute support for Meshes via new variants of love.graphics.newMesh.
- Added Mesh:setVertexAttribute and Mesh:getVertexAttribute, Mesh:getVertexFormat, and Mesh:flush.
- Added Mesh:setAttributeEnabled and Mesh:isAttributeEnabled.
- Added Mesh:attachAttribute.
- Added Text objects and love.graphics.newText.
- Added BMFont bitmap font file support to love.graphics.newFont and love.font.
- Added an optional font hinting argument to love.graphics.newFont when loading TrueType fonts.
- Added an optional spacing argument to love.graphics.newImageFont, which applies additional spacing to all rendered glyphs.
- Added Font:setFallbacks.
- Added love.window.maximize.
- Added BezierCurve:renderSegment and BezierCurve:removePoint.
- Added BezierCurve:getSegment.
- Added love.math.compress and love.math.decompress.
- Added Channel:performAtomic.
Removals
- Removed love.filesystem.exists (use love.filesystem.isFile or love.filesystem.isDirectory instead.)
- Removed the callback argument from love.filesystem.getDirectoryItems.
- Removed callback variant of love.filesystem.getDirectoryItems
- Removed the "wu" and "wd" constants for love.mousepressed (replaced by love.wheelmoved.)
- Removed the named mouse button constants (replaced by button numbers.)
- Removed Source:isStatic (replaced by Source:getType.)
- Removed image loading support for all (non-compressed texture) file formats except for PNG, JPEG, TGA, and BMP.
- Removed JPEG encoding support from ImageData:encode.
- Removed love.graphics.setPointStyle and love.graphics.getPointStyle.
- Removed love.graphics.isSupported (replaced by love.graphics.getSupported.)
- Removed love.graphics.getSystemLimit (replaced by love.graphics.getSystemLimits.)
- Removed love.graphics.setStencil (replaced by love.graphics.stencil and love.graphics.setStencilTest.)
- Removed the "canvas", "shader", "npot", "subtractive", and "mipmap" GraphicsFeature constants (the features always have guaranteed support now.)
- Removed Canvas:getPixel (use Canvas:newImageData instead.)
- Removed Canvas:clear (use love.graphics.clear instead.)
- Removed Mesh:getVertices.
- Removed Mesh:setVertexColors and Mesh:hasVertexColors (use Mesh:setAttributeEnabled("VertexColor", enable) instead.)
- Removed functions deprecated in LOVE 0.9.x:
- Removed love.graphics.getMaxImageSize (replaced by love.graphics.getSystemLimits.)
- Removed love.graphics.getMaxPointSize (replaced by love.graphics.getSystemLimits.)
- Removed Mesh:setImage, Mesh:getImage, SpriteBatch:setImage, SpriteBatch:getImage, ParticleSystem:setImage, and ParticleSystem:getImage (replaced by set/getTexture.)
- Removed SpriteBatch:bind and SpriteBatch:unbind.
- Removed Canvas:getFSAA and the "fsaa" flag in love.conf and love.window.setMode (replaced by Canvas:getMSAA and the "msaa" flag.)
- Removed the "dxt" and "bc5" GraphicsFeature constants (replaced by love.graphics.getCompressedImageFormats.)
- Removed the "hdrcanvas" GraphicsFeature constant (replaced by love.graphics.getCanvasFormats.)
- Removed love.window.getWidth and love.window.getHeight (use love.graphics.getWidth and love.graphics.getHeight or love.window.getMode instead.)
Renamed APIs
- Renamed the fullscreen type "normal" to "exclusive".
- Renamed the DistanceModel constants "inverse clamped", "linear clamped", and "exponent clamped" to "inverseclamped", "linearclamped", and "exponentclamped".
- Renamed blend modes "additive", "subtractive", and "multiplicative" to "add", "subtract", and "multiply".
- Renamed the key constant and Scancode representing the spacebar from " " to "space".
- Renamed File:eof to File:isEOF.
- Renamed Canvas:getImageData to Canvas:newImageData.
- Renamed love.image's CompressedData type to CompressedImageData.
Bugfixes
- Fixed utf8.char.
- Fixed detection of fused executables.
- Fixed love.keyboard.getKeyFromScancode crashing when an invalid scancode is given.
- Fixed decoding of 8-bit WAV files.
- Fixed love.audio.stop() not rewinding streaming Sources.
- Fixed the stencil buffer in Canvases when an unsupported MSAA value is used to create the Canvas.
- Fixed love.graphics.getColorMask.
- Fixed the default offset for particles when ParticleSystem:setQuads or ParticleSystem:setTexture is used.
- Fixed love.graphics.shear resetting all love.graphics transformations.
Other changes
- Updated the compatibility warning notice to use a message box.
- Updated the compatibility warning notice to display before main.lua is loaded.
- Updated love.keypressed to be love.keypressed(key, scancode, isrepeat).
- Updated love.keyreleased to be love.keyreleased(key, scancode).
- Updated love.mousepressed, love.mousereleased, and love.mouse.isDown to use button numbers instead of named button constants.
- Updated World:setCallbacks, World:setContactFilter, World:queryBoundingBox, and World:rayCast to have improved argument type checking.
- Updated threads to load love.filesystem automatically.
- Updated love.math.setRandomSeed and RandomGenerator:setSeed to produce better results for the first few random() calls.
- Updated Source methods that deal with spatial audio to error rather than failing silently if the Source isn't mono.
- Updated the 3D and 4D variants of love.math.noise to use Perlin noise rather than Simplex noise, to avoid patent issues.
- Updated love.graphics.newImageFont to no longer treat separator pixels as spacing.
- Updated the default font to use less memory.
- Updated Font:getWrap's second return value to be a table containing the text split into lines.
- Updated the default fullscreen type to be "desktop" rather than "exclusive".
- Updated the minimum runtime system requirements of LOVE to require OpenGL 2.1 or OpenGL ES 2 support.
- Updated the pixel shader effect function so screen_coords.y is 0 at the top of the screen instead of the bottom.
- Updated love.graphics.newImage's optional second argument to be a table of flags (flags are "mipmaps" and "srgb".)
- Updated Images to require setting the mipmaps flag to true on creation in order to use mipmaps.
- Updated Images to allow mipmaps for non-power-of-two sizes.
- Updated the arguments for the standard variants of love.graphics.newMesh. They're now love.graphics.newMesh(vertices [, drawmode, usage]) and love.graphics.newMesh(vertexcount [, drawmode, usage]).
- Updated Mesh:setVertex to require every component of every attribute in the vertex, instead of having default values.