Alex Szpakowski
d58505012b
Added OpenGL ES support for the 'none' line join mode.
...
--HG--
branch : minor
2015-01-24 00:05:39 -04:00
Alex Szpakowski
970704c2b7
Added Text objects via love.graphics.newText(font [, textstring]). Reworked the internal code of Font objects to use fewer individual textures and less VRAM per object, and to be compatible with OpenGL ES. Slightly improved the performance of love.graphics.print and love.graphics.printf.
...
Text objects are Drawable objects that represent text on the screen. They decouple text drawing from text parsing and vertex uploading, in a similar manner to SpriteBatches. They also optionally allow efficient batching of text from the same Font in different relative coordinate transformations, without having many draw calls.
Text objects currently have the following methods:
Text:set(textstring) -- replaces any existing text in the object with the new string.
Text:setf(textstring, wraplimit, alignmode) -- replaces any existing text with formatted text using the new string.
Text:getFont() -- gets the Font object used for this Text object.
Text:getWidth() -- gets the width in pixels of the most recently added text in the Text object.
Text:getHeight() -- gets the height in pixels of the most recently added text in the Text object.
Text:add(textstring, x, y, angle, sx, sy, ox, oy, kx, ky) -- adds a new string to the text object using the specified relative coordinate transformation, without replacing existing text. This behaves much like SpriteBatch:add.
Text:addf(textstring, wraplimit, alignmode, x, y, angle, sx, sy, ox, oy, kx, ky) -- adds a new formatted string to the text object using the specified relative coordinate transformation.
Text:clear() -- clears all text from the object.
--HG--
branch : minor
2015-01-23 00:47:28 -04:00
Alex Szpakowski
27aec48d1a
Updated love.graphics.polygon and love.graphics.point to work with OpenGL ES.
...
--HG--
branch : minor
2015-01-22 18:28:24 -04:00
Alex Szpakowski
5b98083e01
Merged default into minor
...
--HG--
branch : minor
2015-01-22 02:18:56 -04:00
Alex Szpakowski
e71c15e650
Fixed a minor memory leak caused by certain rare error conditions in love.graphics.newCanvas.
2015-01-22 02:16:49 -04:00
Alex Szpakowski
9de0e49b19
Optimized canvas performance when ANGLE is used.
...
--HG--
branch : minor
2015-01-22 02:12:26 -04:00
Alex Szpakowski
15538426d7
Added support for creating OpenGL ES 2 and 3 contexts, and updated the OpenGL context creation code to be more robust in general.
...
If the LOVE_GRAPHICS_USE_OPENGLES environment variable is set, then love will try to create an OpenGL ES context before falling back to regular OpenGL. If it's not set (or set to 0), then the opposite happens except when love is run on backends that should always use OpenGL ES.
--HG--
branch : minor
2015-01-22 01:02:01 -04:00
Alex Szpakowski
5c46149afb
Properly set shader dirty flags for love_ScreenSize when love.window.setMode is called.
2015-01-21 21:46:33 -04:00
Alex Szpakowski
18569979e9
Better cleanup when the graphics and window subsystems are destroyed and restarted.
2015-01-21 18:23:16 -04:00
Alex Szpakowski
e82d1dfe54
Added Lua 5.3's UTF-8 module to LÖVE. Resolves issue #951 .
...
The module must be required before use, i.e. utf8 = require("utf8"). API documentation can be found here: http://www.lua.org/manual/5.3/manual.html#6.5
Removing the last unicode character in a string (for proper backspace support in text boxes, for example) can be done using utf8.offset, e.g. text = text:sub(1, utf8.offset(text, -1) - 1).
2015-01-21 16:52:56 -04:00
Alex Szpakowski
5df56d041a
Added GLSL ES 1.00 (OpenGL ES 2) shader support.
...
--HG--
branch : minor
2015-01-20 22:31:54 -04:00
Alex Szpakowski
8067d42df2
Canvases now have OpenGL ES support, updated Texture:setWrap to return false for repeat wrap modes in non-power-of-two textures if OpenGL ES 2 is used and the implementation doesn't have support for repeat on NPOT textures.
...
--HG--
branch : minor
2015-01-20 15:13:59 -04:00
Alex Szpakowski
18ab3973e8
Added support for ETC2/EAC compressed textures. Changed the CompressedFormat enum names to capitalize the format names (e.g. "PVR1rgba4" instead of "pvr1rgba4".) Improved sRGB support for compressed textures.
...
--HG--
branch : minor
2015-01-20 07:53:44 -04:00
Alex Szpakowski
c1d4613ff7
Updated stb_image to 2.0.2.
...
--HG--
branch : minor
2015-01-20 03:40:08 -04:00
Alex Szpakowski
dfdd52e499
Added support for ETC1 and PVR1 compressed textures contained in KTX, PKM, and PVR files.
...
Most desktop graphics drivers don't support those formats.
--HG--
branch : minor
2015-01-20 03:18:28 -04:00
Alex Szpakowski
60c6b6a155
Cleaned up the code that triggers an error when using spatial Source methods on multi-channel Sources.
...
--HG--
branch : minor
2015-01-19 23:55:44 -04:00
Alex Szpakowski
3db4e8dea0
Fixed compilation on systems other than my own...
...
--HG--
branch : minor
2015-01-19 23:32:45 -04:00
Alex Szpakowski
1124612c1f
Some work towards OpenGL ES 2+ support for love 0.10.
...
--HG--
branch : minor
2015-01-19 23:32:16 -04:00
Alex Szpakowski
a7e4148869
Merged default into minor
...
--HG--
branch : minor
2015-01-16 15:47:26 -04:00
Alex Szpakowski
b4f2a9417a
Added new event callback love.mousemoved(x, y, xrel, yrel), where xrel and yrel are the amount of pixels moved since the last event. Added love.mouse.setRelative(bool relative) and love.mouse.isRelative. Resolves issue #470 .
...
Enabling relative mouse mode will hide the cursor and let the system generate relative mouse move events while preventing the mouse from getting stuck at the edges of the screen (i.e. you can keep moving the mouse in one direction forever and the relative movement events will be generated accordingly.)
The reported absolute mouse position is not updated while relative mode is enabled, even while relative movement events are generated.
2015-01-15 20:22:57 -04:00
Alex Szpakowski
c26315dd4d
Actually a stop() in the Audio module destructor is redundant, since stop() is called by the Source pool when it's deleted (also in the destructor.)
2015-01-15 16:39:27 -04:00
Alex Szpakowski
6d3ae981ac
Moved the love.audio.stop call when love is quit from love.run to the destructor of the Audio module.
2015-01-15 16:36:52 -04:00
Alex Szpakowski
f1634bc6a8
The existence of the AL_EXT_MCFORMATS OpenAL extension is checked when creating 5.1 and 7.1 (6 and 8 channel) Sources. love.audio.newSource now errors if the channel count and bit-depth combination of the Source isn't supported.
2015-01-15 15:59:15 -04:00
Bart van Strien
181196fc0c
Add support for 5.1 and 7.1 audio loading, still seems a bit dodgy (issue #970 )
2015-01-15 10:54:27 +01:00
Alex Szpakowski
811f574ef6
Reference counting for love objects in 0.9.2 is now atomic (using SDL's atomic operation functions.)
2015-01-14 15:52:05 -04:00
Bart van Strien
ca343e063e
Allow require paths without replacements
...
--HG--
branch : minor
2015-01-14 15:17:16 +01:00
Bart van Strien
13594e3e38
Add missing include
...
--HG--
branch : minor
2015-01-14 15:16:04 +01:00
Alex Szpakowski
91062a1496
Added Body/Contact/Fixture/Joint/World:isDestroyed (resolves issue #964.)
2015-01-05 00:14:41 -04:00
Alex Szpakowski
be9b5b5d1a
Added love.window.maximize (resolves issue #966.)
2015-01-05 00:00:46 -04:00
Alex Szpakowski
8a9a73151d
Pump events when calling love.mouse.getPosition/getX/getY/setX/setY, since some of SDL's backends don't update the internal mouse state until the next PumpEvents, if SDL_WarpMouseInWindow was called previously.
...
Resolves issue #968 .
2015-01-03 23:02:10 -04:00
Alex Szpakowski
c7b45b3505
Updated copyright for the new year
2014-12-31 19:32:43 -04:00
Alex Szpakowski
37fecf1bd4
Fixed the BMFont character coordinate verification code.
...
--HG--
branch : minor
2014-12-27 18:27:28 -04:00
Alex Szpakowski
60eceadc0a
Added "mirroredrepeat" wrap mode.
2014-12-22 19:16:36 -04:00
Alex Szpakowski
a7b27f3303
Forgot to remove a bit of code...
2014-12-11 21:23:06 -04:00
Alex Szpakowski
6eee2368be
Literal strings containing Lua code can be passed into love.thread.newThread directly, similar to loadstring and love.graphics.newShader (resolves issue #622.)
...
Threads are still *very* heavyweight objects and should be treated as such, unlike the functions returned by loadstring.
2014-12-11 21:22:12 -04:00
Alex Szpakowski
c4a1457603
Fixed Image:setMipmapFilter keeping bad state around if it errors.
2014-12-05 12:19:50 -04:00
Alex Szpakowski
8dba668ce9
Merged default into minor
...
--HG--
branch : minor
2014-11-15 20:17:18 -04:00
Alex Szpakowski
5fac441a51
Added Body:getJointList.
2014-11-15 01:17:20 -04:00
Alex Szpakowski
68936e6d2f
Added GearJoint:getJoints (resolves issue #922.)
2014-11-14 22:06:37 -04:00
Alex Szpakowski
78d5db6981
Fixed MotorJoint:getType.
2014-11-14 21:43:22 -04:00
Alex Szpakowski
775f816304
Added Joint:getBodies (see issue #922.)
2014-11-12 17:18:50 -04:00
Alex Szpakowski
22bbe74ed9
Allow BC6 and BC7 compressed DDS files to be loaded into Images.
2014-11-05 21:11:22 -04:00
Alex Szpakowski
195d41d1d9
Ignore lines starting with "#" when parsing the mappings string given to love.joystick.loadGamepadMappings.
2014-11-03 16:34:18 -04:00
Alex Szpakowski
0d28135465
Fixed love.joystick.loadGamepadMappings to work properly if a FileData object is passed to it.
2014-11-03 16:24:28 -04:00
Alex Szpakowski
b9271ed25a
Don't throw an error if the mappings passed to love.joystick.loadGamepadMappings contain mappings for other platforms but no mappings for the currently running platform.
2014-11-03 16:19:47 -04:00
Alex Szpakowski
5eb37d30f7
Cleaned up and simplified some graphics code.
...
--HG--
branch : minor
2014-10-26 15:31:32 -03:00
Alex Szpakowski
d4be84a630
Fixed love.filesystem.unmount.
...
--HG--
branch : minor
2014-10-19 01:52:48 -03:00
Alex Szpakowski
8d0654a6a7
Added runtime drag-and-drop file and folder support via new love.filedropped and love.directorydropped event callback functions. filedropped has a single File object argument, and directorydropped has a single string argument containing the full path of the directory, which can be used with love.filesystem.mount.
...
--HG--
branch : minor
2014-10-18 20:30:36 -03:00
Alex Szpakowski
af0371361f
Merged default into minor
...
--HG--
branch : minor
2014-10-18 01:45:02 -03:00
Alex Szpakowski
a9630811d8
Fixed a logic error making compressed textures with no mipmaps trigger a Lua error when they're loaded into an Image.
...
--HG--
branch : minor
2014-10-06 20:09:10 -03:00