Ginormous Giraffe
Community
- There are new
lovr-keyboard
andlovr-mouse
libraries for mouse and keyboard input. - Nightly builds for Windows can be downloaded from https://lovr.org/download/nightly.
- Prebuilt binaries for macOS can be downloaded from https://lovr.org/download/mac.
- The WebAssembly build is 30% smaller.
Framework
Add:
- Add
Microphone
objects,lovr.audio.getMicrophoneNames
, andlovr.audio.newMicrophone
. - Add
SoundData
objects for accessing individual samples of sound files andSource:getType
. - Add support for compute shaders via
lovr.graphics.newComputeShader
andlovr.graphics.compute
. - Add
ShaderBlock
objects for efficiently sending large amounts of data to Shaders. - Add
AudioStream:decode
to decode a chunk of audio and return it as a SoundData. - Add a new
lineloop
value forMeshDrawMode
. - Add
lovr.math.noise
for perlin noise. - Support
require
ing C libraries (.dll, .so) files as LÖVR modules. - Add
Material:setTransform
andMaterial:getTransform
for using subregions of textures or applying other texture coordinate transformations. - Add
Texture:getMipmapCount
. - Add support for new Texture/Canvas formats:
rgba4
,r16f
,r32f
,rg16f
,rg32f
,rgb5a1
,rgb10a2
. - Add support for loading HDR image files in unclipped floating point texture formats.
- Add
Texture:getFormat
. - Add
conf.headset.msaa
to control the antialiasing of the headset Canvas (it can be different from the MSAA of the desktop window now). - Add
lovr.graphics.getSupported
so you can figure out if compute shaders are supported.
Change:
- Change rendering to use single pass stereo rendering on supported graphics cards. This renders both eyes at the same time which should reduce CPU usage and nearly double rendering performance.
- Change fonts to use stb_truetype instead of FreeType, which seems to improve text quality.
- Change
lovr.audio.newSource
to accept aSourceType
so you can create a Source backed by either an AudioStream or a SoundData. - Change
lovr.graphics.newShader
to accept Blobs containing shader source code. - Change
lovr.filesystem.getRequirePath
andlovr.filesystem.setRequirePath
to support C require paths. - Change the default
lovr.filesystem
to look inlua_modules
for Lua modules for better luarocks integration. - Change
Texture:replacePixels
to accept an x/y offset and a mipmap level to replace. - Change
Texture:getWidth
,Texture:getHeight
, andTexture:getDimensions
to accept an optional mipmap level. - Change
lovr.graphics.newShader
to work with strings longer than 8,192 characters. - Change
lovr.data.newTextureData
to support an optional texture format. - Change
Transform:getMatrix
to accept a table to fill with values.
Fix:
- Fix an issue where the no game screen's
conf.lua
wasn't loading properly. - Fix
lovr.event.push
to work with custom event names. - Fix
lovr.graphics.getBlendMode
to report correct values. - Fix various memory leaks.
Remove:
- Remove
AudioStream:seek
. - Remove support for COLLADA models.
- Remove support for loading tga, bmp, and gif textures.