diff --git a/changes.txt b/changes.txt index f3ab99ea6..cc9b16b01 100644 --- a/changes.txt +++ b/changes.txt @@ -3,33 +3,50 @@ LOVE 12.0 [N/A] Released: N/A +* Added support for launching a specific .lua file as the main file. * Added love.parsedGameArguments and love.rawGameArguments tables, in the main thread. * Added love.markDeprecated. +* Added HTTPS Lua module. * Added love.event.restart(optionalvalue). A new love.restart field will contain the value after restarting. +* Added love.system.getPreferredLocales. +* Added love.localechanged callback. +* Added love.dropbegan and love.dropcompleted callbacks. +* Added love.audiodisconnected callback. * Added love.filesystem.mountFullPath and love.filesystem.unmountFullPath, including opt-in mount-for-write support. * Added love.filesystem.mountCommonPath, unmountCommonPath, and getFullCommonPath. * Added 'readonly' field to love.filesystem.getInfo's returned table. +* Added love.filesystem.openFile (replaces love.filesystem.newFile). * Added an optional load mode parameter to love.filesystem.load whetever to only allow binary chunks, text chunks, or both. +* Added love.math.perlinNoise and love.math.simplexNoise (replaces love.math.noise). * Added SoundData:copyFrom. * Added SoundData:slice. +* Added optional stream type parameter to love.audio.newSource streaming sources ("file" or "memory"). It defaults to "file". +* Added love.audio.getPlaybackDevice, love.audio.getPlaybackDevices, and love.audio.setPlaybackDevice. +* Added love.keyboard.isModifierActive. * Added Joystick:setPlayerIndex and Joystick:getPlayerIndex. * Added Joystick:getGamepadType. * Added new Gamepad API buttons: "misc1", "paddle1", "paddle2", "paddle3", "paddle4". and "touchpad". +* Added World:getFixturesInArea(). +* Added support for saving .exr image files via ImageData:encode. * Added a Metal backend to love.graphics, available on macOS 10.15+ and iOS 13+. * Added a Vulkan backend to love.graphics, available on Windows, Linux, and Android 7+. * Added '--renderers a,b,c' and '--excluderenderers a,b,c' command line arguments. * Added t.renderers and t.excluderenderers love.conf options. * 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 per-shader opt in support for the GLSL 4.30 (desktop) and GLSL ES 3.20 (mobile) shading languages, via #pragma language glsl4. +* Added compile options table parameter to love.graphics.newShader. Allows setting #define values via newShader. * Added love.graphics.newTexture. newImage and newCanvas still exist as convenience constructor functions. * Added love.graphics.getTextureFormats, which replaces getImageFormats and getCanvasFormats. -* Added integer texture formats. +* Added integer pixel formats for Textures and ImageData. * Added Graphics Buffer objects, including vertex, index, texel, and shader storage buffers. * Added love.graphics.copyBuffer, copyBufferToTexture, and copyTextureToBuffer. * Added APIs for interacting with the Buffer objects owned by Meshes. * Added Mesh:getAttachedAttributes. * Added integer buffer data formats. -* Added 'staging' buffer data usage enum, useful for Buffers used in intermediate copy steps. +* Added love.graphics.readbackTexture and love.graphics.readbackTextureAsync (replaces Texture:newImageData). +* Added love.graphics.readbackBuffer and love.graphics.readbackBufferAsync. +* Added 'readback' buffer data usage enum, useful for advanced memory optimization when using love.graphics.readbackBuffer. * Added new lower level 'vertexmain' and 'pixelmain' shader entry points. * Added Compute Shader support via new 'computemain' shader entry point. * Added love.graphics.dispatchThreadgroups for running compute shaders. @@ -44,26 +61,33 @@ Released: N/A * Added a variant of love.graphics.setColorMask which accepts a single boolean. * Added new 'clampone' wrap mode. * Added a variant of Font:getWidth which takes a codepoint number argument. -* Added love.keyboard.isModifierActive. -* Added love.system.getPreferredLocales. -* Added love.localechanged callback. -* Added World:getFixturesInArea(). * Changed the default font from Vera size 12 to Noto Sans size 13. * Changed the Texture class and implementation to no longer have separate Canvas and Image subclasses. * Changed Images to no longer hold onto a CPU copy of their pixel data after creation. +* Changed love.graphics.newImage to error instead of loading a placeholder texture, when the image dimensions are too large for the system. * Changed love.graphics.newMesh to no longer default to the "fan" Mesh draw mode. * Changed the behaviour of Meshes to no longer allow a vertex map or index buffer when the "fan" mesh draw mode is used. * Changed love.window.setMode to no longer clear the contents of Canvases or otherwise recreate OpenGL resources. * Changed love.graphics.points to require 'love_PointSize' to be set in the vertex shader, if a custom shader is used. +* Changed audio file decoding to choose the most appropriate decoder based on file contents instead of the file extension. +* Changed Videos to stream audio from the file instead of loading all the video file into memory for use with audio decoding. +* Changed love.filesystem.exists to no longer be deprecated. * Changed RevoluteJoint:getMotorTorque to take 'dt' as a parameter instead of 'inverse_dt'. -* Changed love.math.noise to use higher precision numbers for its internal calculations. +* Changed love.math.perlinNoise and simplexNoise to use higher precision numbers for its internal calculations. + +* Renamed 'display' field to 'displayindex' in love.window.setMode/updateMode/getMode and love.conf. * Updated Box2D from 2.3 to 2.4.1. +* Updated LuaSocket from 3.0-rc1 to 3.1.0. +* Deprecated usage of slashes instead of dots for module separators in require. +* Deprecated love.filesystem.newFile (replaced by openFile). +* Deprecated love.math.noise (replaced by perlinNoise and simplexNoise). * Deprecated love.graphics.getImageFormats and love.graphics.getCanvasFormats (replaced by getTextureFormats). * Deprecated t.window.highdpi in love.conf and the highdpi flag of love.window.setMode (replaced by t.highdpi in love.conf). * Deprecated the variants of Mesh:attachAttribute and SpriteBatch:attachAttribute which accept a Mesh (replaced by variants which accept a Buffer). +* Deprecated Texture:newImageData (replaced by love.graphics.readbackTexture). * Removed the variant of SpriteBatch:setColor() which turns off all previously set colors. * Removed the no-argument variant of love.graphics.setColorMask. @@ -71,6 +95,9 @@ Released: N/A * Removed love.graphics.setStencilTest and getStencilTest (replaced by love.graphics.setStencilMode and getStencilMode). * 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. LOVE 11.4 [Mysterious Mysteries] --------------------------------