Commit Graph

2863 Commits

Author SHA1 Message Date
Alex Szpakowski aba4386807 SDL click count functionality was added in 2.0.2, not 2.0.4. So we can get rid of some useless code since we require 2.0.2+ in love 0.11...
--HG--
branch : minor
2016-09-27 22:53:48 -03:00
Alex Szpakowski b38e567e74 Added a click count argument to love.mousepressed/released. Tracks double/triple/etc. clicks.
--HG--
branch : minor
2016-09-27 22:46:55 -03:00
Alex Szpakowski 25376ba310 Added SpriteBatch:setDrawRange(start, count) and SpriteBatch:getDrawRange.
--HG--
branch : minor
2016-09-21 20:03:39 -03:00
Alex Szpakowski 7ab76b1ef6 Mesh:setDrawRange now takes start and count parameters, instead of min and max.
--HG--
branch : minor
2016-09-21 19:44:53 -03:00
Bart van Strien cc0cfac66c Remove deprecated love.window.isCreated alias
--HG--
branch : minor
2016-09-16 19:58:26 +02:00
Alex Szpakowski 7eeca829e5 Fix a use of std::remove_if
--HG--
branch : minor
2016-09-12 08:11:38 -03:00
Alex Szpakowski 11328a23cf Don't consider different OpenGL versions when re-creating the window after a previous window and OpenGL context has been created. love.graphics has never supported switching GL versions mid-game, so we should prevent it from ever happening.
--HG--
branch : minor
2016-09-11 21:40:00 -03:00
Alex Szpakowski 4dd1b3a83f Added a new variant of Shader:send for matrices: Shader:send(uniformname, is_column_major, matrix, ...).
If is_column_major is true, the table(s) passed as subsequent arguments will be treated as column-major instead of row-major. This matches the 0.10.x behaviour of Shader:send for matrices.

--HG--
branch : minor
2016-09-11 20:57:40 -03:00
Alex Szpakowski 593f96a08c Add support for non-square matrix uniforms in desktop GLSL. The notation is columns x rows, e.g. a mat4x2 has 4 columns and 2 rows.
Fixed the memory layout of matrices sent to shaders via Shader:send. Note that this is a breaking fix and will probably cause matrices designed to work with older versions of LÖVE to be transposed in shaders compared to what they were previously, if Shader:send or sendMatrix was used to put them in the shader.

--HG--
branch : minor
2016-09-11 14:53:23 -03:00
Alex Szpakowski a853ef6c3a Remove Shader:sendInt/sendBoolean/sendFloat/sendMatrix/sendTexture
--HG--
branch : minor
2016-09-11 13:09:41 -03:00
Alex Szpakowski 54efa825c3 Merge default into minor
--HG--
branch : minor
2016-09-11 13:09:01 -03:00
Alex Szpakowski a9c83897bb Shader:send improvements.
Type and value checking is now completely based on the shader uniform's information, instead of on the arguments to Shader:send. This means Shader:send now converts numbers to integers or floats depending on the uniform's type, and matrices can now be passed in as a flat array (without requiring the 'dimension' field that shader:sendMatrix previously needed).
As a result, Shader:sendTexture, Shader:sendMatrix, Shader:sendInt, and Shader:sendFloat are all deprecated in favour of Shader:send.

Performance of Shader:send has also increased, especially when sending small amounts of values per call.
2016-09-11 12:40:02 -03:00
Alex Szpakowski 0b1bfba493 Use SDL_DetachThread instead of a conditional SDL_WaitThread when a Thread is destroyed. 2016-09-08 23:33:48 -03:00
Alex Szpakowski e803878445 love.event.quit("restart") now causes LÖVE to restart the Lua state after shutting it down.
Note that this isn't perfect – it won't kill running threads which aren't cleaned up by the Lua code when the main Lua state is shut down.
2016-09-08 18:42:56 -03:00
Alex Szpakowski 8fca2aa607 Call collectgarbage after love.lowmemory(), instead of before. 2016-09-08 18:11:50 -03:00
Alex Szpakowski 7a904de2e1 In fact, lets just replace Shader:getUniformVariable with Shader:hasUniform. The latter returns true if the uniform with the specified name exists and contributes to the final output of the shader.
--HG--
branch : minor
2016-09-01 18:32:12 -03:00
Alex Szpakowski ee79038572 Renamed Shader:getExternVariable to Shader:getUniformVariable. The "extern" alias for shader uniforms is considered deprecated, although it still exists.
--HG--
branch : minor
2016-09-01 18:15:25 -03:00
Alex Szpakowski 0ca5e57c3f Merge default into minor
--HG--
branch : minor
2016-08-29 23:15:00 -03:00
Alex Szpakowski cc4dd24be6 Update the love version used for appveyor 2016-08-29 23:14:20 -03:00
Alex Szpakowski f30f9ab3f5 Appveyor test 2016-08-29 23:03:37 -03:00
Alex Szpakowski baebb45c2e Updated the love.conf default for vsync.
--HG--
branch : minor
2016-08-29 22:53:14 -03:00
Alex Szpakowski dd2a448099 The vsync field in t.window and love.window.setMode is now an integer.
0 disables vsync, 1 sets it to sync every screen refreshes, 2 sets it to sync every 2 screen refreshes (effectively setting the framerate to half the monitor's refresh rate), etc.

As a special case, -1 also attempts to use adaptive vsync (vsync enabled when FPS is >= monitor's refresh rate, disabled whe not) if the driver supports it.

--HG--
branch : minor
2016-08-29 22:52:15 -03:00
Alex Szpakowski ef61573cd3 Merge default into minor
--HG--
branch : minor
2016-08-29 22:41:24 -03:00
Alex Szpakowski d572c70883 Fix a GL error on OpenGL ES 3 when using multiple render targets. 2016-08-29 18:48:53 -03:00
Alex Szpakowski 677a8d60b8 Use love::Vector (8 bytes) instead of love::Vertex (20 bytes) for love.math.triangulate and love.math.isConvex. 2016-08-24 18:02:27 -03:00
Alex Szpakowski acde58d311 Improved the error message when nil is passed as the first argument to love.image.newImageData (resolves issue #1205). 2016-08-21 11:22:21 -03:00
Alex Szpakowski daf13de4eb Removed the no-argument variant of Text:set() in favour of Text:clear(). Resolves issue #1126.
--HG--
branch : minor
2016-08-20 09:17:14 -03:00
airstruck 154f7cbc7e Support reference angle on revolute, prismatic, and weld joints (fixes #1194) 2016-08-19 14:36:36 +02:00
Anders Ruud 78a2e80818 Created bitbucket-pipelines.yml. 2016-08-19 08:47:16 +00:00
Anders Ruud d896f7f871 Work-around for gcc bug 1568899. 2016-08-19 08:46:05 +00:00
Bart van Strien 9998e761a4 Do not error in newVideo when optionally loading audio with love.audio disabled (fixes #1206) 2016-08-15 17:12:36 +02:00
Alex Szpakowski 22056271ec love.graphics.circle/ellipse/arc/rectangle now take transformation scale into account when determining the number of segments to use. Resolves issue #1184.
--HG--
branch : minor
2016-08-13 12:43:52 -03:00
Alex Szpakowski e9ac008f43 Merge default into minor
--HG--
branch : minor
2016-08-13 12:41:14 -03:00
Alex Szpakowski 3e678fc462 Fix SpriteBatch:setBufferSize to keep old sprite data if it can fit (resolves issue #1204). 2016-08-12 23:44:16 -03:00
Bart van Strien 5ae730be9e Update changelog 2016-08-02 14:33:28 +02:00
Bart van Strien 57e4ec78e3 Prevent attaching a MouseJoint to a kinematic body (fixes #1185)
It turns out, calling World:update() after attaching a MouseJoint to a
kinematic body causes an exception. Normally the wrapper catches the exception,
but somehow this exception cannot be caught. Wonderful.
2016-08-02 14:26:51 +02:00
Bart van Strien 0ce44e465d Catch possible Box2D exception in Fixture:getBoundingBox() (fixes #1196) 2016-08-02 13:07:05 +02:00
Alex Szpakowski fc2c79ad5f Add EdgeShape:set/getNext/PreviousVertex. ChainShape:setNext/PreviousVertex can now take no arguments to disable ghost vertices.
Resolves issue #1191.
2016-08-01 10:15:34 -03:00
Alex Szpakowski 2e8f785a01 Potentially fix building with megasource on Windows 2016-07-31 14:40:55 -03:00
Alex Szpakowski 3157e5df7b Added ChainShape:getNext/PreviousVertex (see issue #1191). Thanks airstruck! 2016-07-31 14:25:12 -03:00
Alex Szpakowski 55cb2fad84 Fixture:setCategory and Fixture:setMask now accept a table of categories/masks (resolves issue #1178). 2016-07-31 11:51:53 -03:00
Alex Szpakowski 0a534d4751 Fixed ChainShape:setPreviousVertex. 2016-07-28 18:08:27 -03:00
Bart van Strien f4999bd2c7 Fail gracefully when auto.lua is called on a file not in src/scripts 2016-07-28 17:15:52 +02:00
Leonardo Etcheverry a11c7278c8 Fix FT_Get_Kerning using char codes instead of glyph indices. 2016-07-20 21:52:56 -03:00
Alex Szpakowski d2c2c717e4 Mac: treat folders with the .love extension as packages that can be double-clicked to open with LÖVE (resolves issue #1186). 2016-07-20 19:36:43 -03:00
Alex Szpakowski 8ea1edbc2a Cause a Lua error instead of silently failing if a vertex buffer memory allocation fails. 2016-07-17 17:44:38 -03:00
Bart van Strien 877ebbf9c9 Make WheelJoint/PrismaticJoint:getAxis return a world vector (refs #1176) 2016-07-15 12:20:58 +02:00
Bart van Strien 803cdccc1f Add love.window.updateMode (resolves #1037)
--HG--
branch : minor
2016-07-14 18:43:30 +02:00
Bart van Strien 990839383f Merge default into minor
--HG--
branch : minor
2016-07-14 18:42:42 +02:00
rude 7922c44d27 Make CMake build functional on Linux.
At least on Ubuntu.
2016-07-14 18:07:20 +02:00