Difference between revisions of "12.0"

(Removed duplicated line)
m
Line 16: Line 16:
 
* Added t.highdpi startup flag in [[love.conf]], replacing t.window.highdpi and the highdpi flag of [[love.window.setMode]].
 
* Added t.highdpi startup flag in [[love.conf]], replacing t.window.highdpi and the highdpi flag of [[love.window.setMode]].
 
* Added support for highdpi mode in Windows.
 
* Added support for highdpi mode in Windows.
 +
* Added [[love.window.focus]].
 
* Added [[lua-https|HTTPS]] Lua module.
 
* Added [[lua-https|HTTPS]] Lua module.
 +
* Added variants of enet's [[enet.peer:send|peer:send]] and [[enet.host:broadcast|host:broadcast]] methods that take light userdata and size parameters.
 +
 +
 +
''' Data '''
 +
* Added [[Data]] methods for getting number values.
 +
* Added [[ByteData]] methods for setting number values.
 +
* Added optional byte offset and size parameters to [[Data:getString]].
 +
* Added [[ByteData:setString]].
 +
* Added a variant of [[love.data.pack]] which takes an existing [[ByteData]] object.
  
  
Line 47: Line 57:
 
* Added new [[GamepadButton|Gamepad API buttons]]: "misc1", "paddle1", "paddle2", "paddle3", "paddle4". and "touchpad".
 
* Added new [[GamepadButton|Gamepad API buttons]]: "misc1", "paddle1", "paddle2", "paddle3", "paddle4". and "touchpad".
 
* Added [[love.keyboard.isModifierActive]].
 
* Added [[love.keyboard.isModifierActive]].
 +
* Added parameters to [[love.wheelmoved]]: precise X and Y movement numbers, and a direction enum.
  
  
Line 54: Line 65:
  
 
''' Physics '''
 
''' Physics '''
* Added [[World:getFixturesInArea]].
+
* Added [[World:rayCastAny]] and [[World:rayCastClosest]].
 +
* Added [[World:getShapesInArea]].
 +
* Added [[World:queryShapesInArea]] (replaces [[World:queryBoundingBox]]).
 +
* Added [[Body:getShapes]] (replaces [[Body:getFixtures]]).
 +
* Added [[Body:getShape]] convenience method.
 +
* Added [[Contact:getShapes]] (replaces [[Contact:getFixtures]]).
 +
* Added [[Body:hasCustomMassData]].
 +
* Added convenience functions for creating a [[Body]] and [[Shape]] together:
 +
** Added [[love.physics.newCircleBody]].
 +
** Added [[love.physics.newRectangleBody]].
 +
** Added [[love.physics.newPolygonBody]].
 +
** Added [[love.physics.newEdgeBody]].
 +
** Added [[love.physics.newChainBody]].
  
  
Line 73: Line 96:
 
* Added [[love.graphics.copyBuffer]], [[love.graphics.copyBufferToTexture|copyBufferToTexture]], and [[love.graphics.copyTextureToBuffer|copyTextureToBuffer]].
 
* Added [[love.graphics.copyBuffer]], [[love.graphics.copyBufferToTexture|copyBufferToTexture]], and [[love.graphics.copyTextureToBuffer|copyTextureToBuffer]].
 
* Added APIs for interacting with the [[GraphicsBuffer|Buffer]] objects owned by [[Mesh]]es.
 
* Added APIs for interacting with the [[GraphicsBuffer|Buffer]] objects owned by [[Mesh]]es.
 +
* Added variants of [[love.graphics.newMesh]] to construct a [[Mesh]] from existing [[GraphicsBuffer|Buffer]]s.
 
* Added [[Mesh:getAttachedAttributes]].
 
* Added [[Mesh:getAttachedAttributes]].
 
* Added an optional start array index parameter to [[Mesh:attachAttribute]].
 
* Added an optional start array index parameter to [[Mesh:attachAttribute]].
Line 103: Line 127:
  
 
=== Changes ===
 
=== Changes ===
 +
* Changed [[love.physics]] Shapes and Fixtures to be combined together, in [[Shape]] objects. Separate [[Fixture]]s no longer exist.
 +
* Changed [[love.physics.newCircleShape]], [[love.physics.newRectangleShape|newRectangleShape]], [[love.physics.newPolygonShape|newPolygonShape]], [[love.physics.newEdgeShape|newEdgeShape]], and [[love.physics.newChainShape|newChainShape]] to take a [[Body]] as their first parameter.
 +
* Changed [[love.physics]] callbacks that used to take [[Fixture]] parameters to now take [[Shape]] parameters.
 +
* Changed [[Shape:setDensity]] to no longer need [[Body:resetMassData]] afterward unless the Body already has custom mass data.
 +
* Changed the behaviour of attaching a [[Shape]] to a [[Body]] to no longer reset mass data if it's been customized.
 +
* Changed [[RevoluteJoint:getMotorTorque]] and [[WheelJoint:getMotorTorque]] to take 'dt' as a parameter instead of 'inverse_dt'.
 
* Changed [[love.filesystem.exists]] to no longer be deprecated.
 
* Changed [[love.filesystem.exists]] to no longer be deprecated.
 
* Changed the default font from Vera size 12 to Noto Sans size 13.
 
* Changed the default font from Vera size 12 to Noto Sans size 13.
Line 115: Line 145:
 
* Changed [[love.graphics.points]] to require 'love_PointSize' to be set in the vertex shader, if a custom shader is used.
 
* Changed [[love.graphics.points]] to require 'love_PointSize' to be set in the vertex shader, if a custom shader is used.
 
* Changed [[love.graphics.setCanvas]] to always clear auto-generated temporary depth and stencil buffers when they're used.
 
* Changed [[love.graphics.setCanvas]] to always clear auto-generated temporary depth and stencil buffers when they're used.
 +
* Changed [[love.graphics.clear]] to no longer be affected by [[love.graphics.setScissor]] or [[love.graphics.setColorMask]].
 
* Changed [[Shader]] code parsing to ignore shader entry point functions inside comments.
 
* Changed [[Shader]] code parsing to ignore shader entry point functions inside comments.
 
* Changed audio file decoding to choose the most appropriate decoder based on file contents instead of the file extension.
 
* Changed audio file decoding to choose the most appropriate decoder based on file contents instead of the file extension.
 
* Changed [[Video]]s to stream audio from the file instead of loading all the video file into memory for use with audio decoding.
 
* Changed [[Video]]s to stream audio from the file instead of loading all the video file into memory for use with audio decoding.
* Changed [[RevoluteJoint:getMotorTorque]] and [[WheelJoint:getMotorTorque]] to take 'dt' as a parameter instead of 'inverse_dt'.
 
 
* Changed [[love.math.perlinNoise]] and [[love.math.simplexNoise]] to use higher precision numbers for its internal calculations.
 
* Changed [[love.math.perlinNoise]] and [[love.math.simplexNoise]] to use higher precision numbers for its internal calculations.
 
* Changed the <code>t.accelerometerjoystick</code> [[love.conf]] flag to be unset by default.
 
* Changed the <code>t.accelerometerjoystick</code> [[love.conf]] flag to be unset by default.
Line 132: Line 162:
 
* Deprecated [[love.filesystem.newFile]] (replaced by [[love.filesystem.openFile]]).
 
* Deprecated [[love.filesystem.newFile]] (replaced by [[love.filesystem.openFile]]).
 
* Deprecated [[love.math.noise]] (replaced by [[love.math.perlinNoise]] and [[love.math.simplexNoise]]).
 
* Deprecated [[love.math.noise]] (replaced by [[love.math.perlinNoise]] and [[love.math.simplexNoise]]).
 +
* Deprecated the variants of [[love.physics.newCircleShape]], [[love.physics.newRectangleShape|newRectangleShape]], [[love.physics.newPolygonShape|newPolygonShape]], [[love.physics.newEdgeShape|newEdgeShape]], and [[love.physics.newChainShape|newChainShape]] that don't take a [[Body]] parameter.
 +
* Deprecated [[Body:getFixtures]] (replaced by [[Body:getShapes]]).
 +
* Deprecated [[Contact:getFixtures]] (replaced by [[Contact:getShapes]]).
 +
* Deprecated [[World:queryBoundingBox]] (replaced by [[World:queryShapesInArea]]).
 +
* Deprecated [[ChainShape:getChildEdge]].
 
* Deprecated [[love.graphics.setNewFont]] (use [[love.graphics.newFont]] and [[love.graphics.setFont]] instead).
 
* Deprecated [[love.graphics.setNewFont]] (use [[love.graphics.newFont]] and [[love.graphics.setFont]] instead).
 
* Deprecated [[love.graphics.newText]] (renamed to [[love.graphics.newTextBatch]]).
 
* Deprecated [[love.graphics.newText]] (renamed to [[love.graphics.newTextBatch]]).
Line 143: Line 178:
  
 
=== Removals ===
 
=== Removals ===
 +
* Removed [[Fixture]] objects. All methods previously in Fixtures are now available in [[Shape]]s.
 
* Removed the variant of [[SpriteBatch:setColor]]() which turns off all previously set colors.
 
* Removed the variant of [[SpriteBatch:setColor]]() which turns off all previously set colors.
 
* Removed the no-argument variant of [[love.graphics.setColorMask]].
 
* Removed the no-argument variant of [[love.graphics.setColorMask]].

Revision as of 03:25, 3 December 2023

O.png 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 12.0 is TBD. It is currently not released.

Changes from 11.4

Additions

General


Data


Filesystem


Audio


Input


Math


Physics


Graphics


Changes


Deprecations


Removals


Fixes

  • Fixed BezierCurve:render adding collinear points in some situations.
  • Fixed line rendering when the line has duplicate points.
  • Fixed sound Decoders to cause a Lua error instead of hard-crashing when memory for the decoding buffer can't be allocated.
  • Fixed oversaturated colors on macOS when a P3-capable display is used.