Difference between revisions of "0.9.2"

(Updated changelog)
m (category)
 
(21 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{notice|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.}}
+
[[File:0.9.0_no-game.png|thumb|no-game screen]]
The codename for LÖVE 0.9.2 is '''Baby Inspector'''. It is currently '''<span style="color:#ff0000;">not released</span>'''.
+
 
 +
The codename for LÖVE 0.9.2 is '''Baby Inspector'''. It is currently '''<span style="color:#0000ff;">released</span>'''.
  
 
== Changes from [[0.9.1]] ==
 
== Changes from [[0.9.1]] ==
 
===Additions ===
 
===Additions ===
 +
* Added Lua 5.3's [http://www.lua.org/manual/5.3/manual.html#6.5 UTF-8 module], via <code>utf8 = require("utf8")</code>.
 
* Added [[Shader:getExternVariable]].
 
* Added [[Shader:getExternVariable]].
 
* Added several new [[CanvasFormat|Canvas texture formats]].
 
* Added several new [[CanvasFormat|Canvas texture formats]].
Line 9: Line 11:
 
* Added [[love.graphics.getCompressedImageFormats]].
 
* Added [[love.graphics.getCompressedImageFormats]].
 
* Added [[ParticleSystem:setQuads]].
 
* Added [[ParticleSystem:setQuads]].
 +
* Added [[ParticleSystem:setLinearDamping]].
 +
* Added [[ParticleSystem:getLinearDamping]].
 
* Added [[SpriteBatch:flush]].
 
* Added [[SpriteBatch:flush]].
 +
* Added [[love.graphics.getStats]].
 +
* Added <code>mirroredrepeat</code> [[WrapMode]].
 +
* Added [[love.audio.setDopplerScale]] and [[love.audio.getDopplerScale]].
 
* Added optional duration argument to [[Joystick:setVibration]].
 
* Added optional duration argument to [[Joystick:setVibration]].
 
* Added [[love.joystick.loadGamepadMappings]] and [[love.joystick.saveGamepadMappings]].
 
* Added [[love.joystick.loadGamepadMappings]] and [[love.joystick.saveGamepadMappings]].
 
* Added [[Joint:setUserData]] and [[Joint:getUserData]].
 
* Added [[Joint:setUserData]] and [[Joint:getUserData]].
 +
* Added [[Joint:getBodies]].
 +
* Added [[GearJoint:getJoints]].
 
* Added [[Body:getWorld]].
 
* Added [[Body:getWorld]].
* Added [[Contact:getFixtures]] and [[Body:getContactList]].  
+
* Added [[Body:getJointList]].
 +
* Added [[Contact:getFixtures]] and [[Body:getContactList]].
 +
* Added [[Body:isDestroyed]], [[Fixture:isDestroyed]], [[Joint:isDestroyed]], and [[World:isDestroyed]].
 +
* Added [[love.mousemoved]] event callback.
 +
* Added [[love.mouse.setRelativeMode]] and [[love.mouse.getRelativeMode]].
 +
* Added [[love.keyboard.getKeyFromScancode]] and [[love.keyboard.getScancodeFromKey]].
 
* Added [[love.window.getDisplayName]].
 
* Added [[love.window.getDisplayName]].
 
* Added [[love.window.minimize]].
 
* Added [[love.window.minimize]].
 
* Added [[love.window.showMessageBox]].
 
* Added [[love.window.showMessageBox]].
 +
* Added [[love.window.toPixels]] and [[love.window.fromPixels]].
 +
* Added [[love.window.setPosition]] and [[love.window.getPosition]].
 +
* Added <code>x</code> and <code>y</code> fields to the <code>flags</code> table in [[love.window.setMode]] and [[love.window.getMode]], and to the <code>t.window</code> table in [[love.conf]].
 +
* Added <code>refreshrate</code> field to the table returned by [[love.window.getMode]].
 
* Added [[love.filesystem.isSymlink]], [[love.filesystem.setSymlinksEnabled]], and [[love.filesystem.areSymlinksEnabled]].
 
* Added [[love.filesystem.isSymlink]], [[love.filesystem.setSymlinksEnabled]], and [[love.filesystem.areSymlinksEnabled]].
 +
* Added [[love.filesystem.getRealDirectory]].
  
 
=== Deprecations ===
 
=== Deprecations ===
 
* Deprecated [[SpriteBatch:bind]] and [[SpriteBatch:unbind]].
 
* Deprecated [[SpriteBatch:bind]] and [[SpriteBatch:unbind]].
 
* Deprecated all uses of the name 'FSAA' in favor of 'MSAA'.
 
* Deprecated all uses of the name 'FSAA' in favor of 'MSAA'.
* Deprecated the 'hdrcanvas' graphics feature enum in favor of [[love.graphics.getCanvasFormats]].
+
* Deprecated the <code>hdrcanvas</code> [[GraphicsFeature]] constant in favor of [[love.graphics.getCanvasFormats]].
* Deprecated the 'dxt' and 'bc5' graphics feature enums in favor of [[love.graphics.getCompressedImageFormats]].
+
* Deprecated the <code>dxt</code> and <code>bc5</code> [[GraphicsFeature]] constants in favor of [[love.graphics.getCompressedImageFormats]].
 +
* Deprecated [[love.window.getWidth]], [[love.window.getHeight]], and [[love.window.getDimensions]] in favor of the [[love.graphics]] equivalents or [[love.window.getMode]].
 +
 
 +
=== Renamed APIs ===
 +
* Renamed all cases of FSAA to MSAA. The FSAA names still exist for backward-compatibility.
  
 
=== Fixes ===
 
=== Fixes ===
* Fixed [[shader:getWarnings]] returning unnecessary information.
+
* Fixed crashes when LÖVE objects are garbage-collected in multiple threads simultaneously.
 
* Fixed [[love.filesystem.setIdentity]] breaking in some situations when called multiple times.
 
* Fixed [[love.filesystem.setIdentity]] breaking in some situations when called multiple times.
 +
* Fixed the default [[love.filesystem]] identity when in Fused mode in Windows.
 +
* Fixed [[love.system.openURL]] sometimes blocking indefinitely on Linux.
 +
* Fixed [[love.joystick.setGamepadMapping]].
 +
* Fixed the order of vertices in [[ChainShape]]s.
 +
* Fixed [[love.mouse.getPosition]] returning outdated values if [[love.mouse.setPosition]] was used in the same frame.
 +
* Fixed [[love.graphics.newFont]] to error when given an invalid size argument.
 +
* Fixed the file name, line number, and backtrace given if [[love.graphics.print]] errors.
 +
* Fixed a small memory leak if [[love.graphics.newCanvas]] errors.
 +
* Fixed [[Shader:getWarnings]] returning unnecessary information.
 
* Fixed a potential crash when [[Shader]] objects are garbage collected.
 
* Fixed a potential crash when [[Shader]] objects are garbage collected.
 +
* Fixed a potential small memory leak triggered when [[love.graphics.newShader]] errors.
 
* Fixed [[love.graphics.newMesh]](vertexcount, ...) causing the Mesh to do instanced rendering.
 
* Fixed [[love.graphics.newMesh]](vertexcount, ...) causing the Mesh to do instanced rendering.
 
* Fixed [[Mesh:getVertexMap]].
 
* Fixed [[Mesh:getVertexMap]].
* Fixed [[Image:refresh]] generating mipmaps multiple times if mipmap filtering is enabled.
+
* Fixed [[(Image):refresh|Image:refresh]] generating mipmaps multiple times if mipmap filtering is enabled.
 +
* Fixed [[(Image):setMipmapFilter|Image:setMipmapFilter]] to not keep bad state around if it errors.
 
* Fixed [[Mesh:setDrawRange]] when the Mesh has a vertex map set.
 
* Fixed [[Mesh:setDrawRange]] when the Mesh has a vertex map set.
 
* Fixed internal detection of the 'position' and 'effect' shader functions.
 
* Fixed internal detection of the 'position' and 'effect' shader functions.
 +
* Fixed some cases of noncompliant shader code not properly erroring on some nvidia drivers.
 
* Fixed Texture memory leak when [[Mesh]]es are garbage collected.
 
* Fixed Texture memory leak when [[Mesh]]es are garbage collected.
 
* Fixed the default [[LineJoin|line join mode]] to be 'miter' instead of an undefined value.
 
* Fixed the default [[LineJoin|line join mode]] to be 'miter' instead of an undefined value.
 +
* Fixed [[Canvas:getPixel]] to error if the coordinates are not within the Canvas' bounds.
 +
* Fixed detection of [[CompressedFormat|compressed textures]] to work regardless of the file's extension.
 
* Fixed the default [[love.errhand|error handler]] screen's text size when highdpi mode is enabled on a Retina monitor in OS X.
 
* Fixed the default [[love.errhand|error handler]] screen's text size when highdpi mode is enabled on a Retina monitor in OS X.
 
+
* Fixed the default [[love.errhand|error handler]] background color when sRGB mode is enabled for the window.
=== Renamed APIs ===
+
* Fixed the state of [[love.graphics.setWireframe|wireframe mode]] when love.window.setMode is called.
* Renamed all cases of FSAA to MSAA. The FSAA names still exist for backward-compatibility.
+
* Fixed [[love.window.setMode]] to fall back to the largest available mode if a width or height greater than the largest supported is specified and exclusive-fullscreen mode is used.
  
 
=== Other Changes ===
 
=== Other Changes ===
* Updated the internal Lua wrapper code for modules to account for cases where the module's instance is created, completely removed from memory, and then recreated during the program's lifetime.
+
* Updated the Windows executable to always prefer the higher performance GPU on nvidia Optimus systems.
* Updated the paths returned by [[love.filesystem.getSaveDirectory]] etc. to no longer have double-slashes ("//") in the middle of the path.
+
* Updated the --console command-line argument in Windows to open the console before conf.lua is loaded.
 +
* Updated [[love.conf|t.console]] and the --console command-line argument in Windows to use the existing console window, if LÖVE was launched from one.
 +
* Updated the love executable to verify that the love library version matches before using it.
 +
* Updated the Lua wrapper code for modules to avoid crashes when the module's instance is created, deleted, and recreated.
 +
* Updated internal code for handling garbage collection of love objects to be more efficient.
 +
* Updated love's initialization code to trigger a Lua error if [[love.conf]] has an error in it.
 +
* Updated [[love.filesystem.getSaveDirectory]] and friends to strip double-slashes ("//") from their returned paths.
 +
* Updated the error message when love.filesystem.write or File:open fails because the directory doesn't exist.
 
* Updated error message when [[love.math.setRandomSeed]](0) is attempted.
 
* Updated error message when [[love.math.setRandomSeed]](0) is attempted.
 +
* Updated the error message when invalid UTF-8 strings are used in love functions that expect UTF-8.
 
* Updated [[love.physics.newChainShape]] to error if the number of arguments is invalid.
 
* Updated [[love.physics.newChainShape]] to error if the number of arguments is invalid.
 +
* Updated [[love.physics.newPolygonShape]] and [[love.physics.newChainShape]] to accept a table of vertices.
 +
* Updated [[love.thread.newThread]] to accept a literal string of code.
 
* Updated love-created threads to use names visible in external debuggers.
 
* Updated love-created threads to use names visible in external debuggers.
 
* Updated [[SpriteBatch:unbind]] / [[SpriteBatch:flush]] to use less VRAM if the SpriteBatch has the static usage hint.
 
* Updated [[SpriteBatch:unbind]] / [[SpriteBatch:flush]] to use less VRAM if the SpriteBatch has the static usage hint.
 
* Updated [[love.graphics.newImage]], [[love.image.newImageData]], etc. to leave less temporary Lua-owned memory around.
 
* Updated [[love.graphics.newImage]], [[love.image.newImageData]], etc. to leave less temporary Lua-owned memory around.
 +
* Updated [[love.graphics.push]] to accept different [[StackType|stack types]] to push. Current types are "transform" and "all".
 +
* Updated love shaders to accept GLSL ES precision qualifiers (<code>lowp</code>, <code>mediump</code>, and <code>highp</code>) on variables, although they do nothing.
 +
* Updated the error message for [[love.graphics.newShader]] to be less cryptic if an invalid filename is given.
 +
* Updated compressed texture loading code to support BC6 and BC7 [[CompressedFormat|compressed textures]] (if the graphics driver supports them.)
  
 
+
[[Category:Versions]]
[[File:0.9.0_no-game.png|thumb|no-game screen]]
 
 
 
[[Category:LoveVersions]]
 

Latest revision as of 17:15, 10 May 2015

no-game screen

The codename for LÖVE 0.9.2 is Baby Inspector. It is currently released.

Changes from 0.9.1

Additions

Deprecations

Renamed APIs

  • Renamed all cases of FSAA to MSAA. The FSAA names still exist for backward-compatibility.

Fixes

Other Changes

  • Updated the Windows executable to always prefer the higher performance GPU on nvidia Optimus systems.
  • Updated the --console command-line argument in Windows to open the console before conf.lua is loaded.
  • Updated t.console and the --console command-line argument in Windows to use the existing console window, if LÖVE was launched from one.
  • Updated the love executable to verify that the love library version matches before using it.
  • Updated the Lua wrapper code for modules to avoid crashes when the module's instance is created, deleted, and recreated.
  • Updated internal code for handling garbage collection of love objects to be more efficient.
  • Updated love's initialization code to trigger a Lua error if love.conf has an error in it.
  • Updated love.filesystem.getSaveDirectory and friends to strip double-slashes ("//") from their returned paths.
  • Updated the error message when love.filesystem.write or File:open fails because the directory doesn't exist.
  • Updated error message when love.math.setRandomSeed(0) is attempted.
  • Updated the error message when invalid UTF-8 strings are used in love functions that expect UTF-8.
  • Updated love.physics.newChainShape to error if the number of arguments is invalid.
  • Updated love.physics.newPolygonShape and love.physics.newChainShape to accept a table of vertices.
  • Updated love.thread.newThread to accept a literal string of code.
  • Updated love-created threads to use names visible in external debuggers.
  • Updated SpriteBatch:unbind / SpriteBatch:flush to use less VRAM if the SpriteBatch has the static usage hint.
  • Updated love.graphics.newImage, love.image.newImageData, etc. to leave less temporary Lua-owned memory around.
  • Updated love.graphics.push to accept different stack types to push. Current types are "transform" and "all".
  • Updated love shaders to accept GLSL ES precision qualifiers (lowp, mediump, and highp) on variables, although they do nothing.
  • Updated the error message for love.graphics.newShader to be less cryptic if an invalid filename is given.
  • Updated compressed texture loading code to support BC6 and BC7 compressed textures (if the graphics driver supports them.)