Commit Graph

1467 Commits

Author SHA1 Message Date
Alex Szpakowski 83a9e5912f Merged bartbes/love-experiments/Mesh into default 2013-10-07 15:43:32 -03:00
Alex Szpakowski fb34f5bc9e Auto-padded NPOT images' texture coordinates are now scaled at draw time via the texture matrix (fixes auto-padded images with Meshes.) Also fixed love.graphics.newQuad.
--HG--
branch : Mesh
2013-10-06 23:25:29 -03:00
Alex Szpakowski f87f97e4fe Better parameter checking for SoundData (resolves issue #764) 2013-10-06 21:52:05 -03:00
Alex Szpakowski 25caa188ba Fixed Joystick:getName to be more consistent 2013-10-05 04:07:39 -03:00
Alex Szpakowski 8b7f151a4d Added joystick vibration support for most common controllers (resolves issue #159).
Added Joystick:setVibration(left, right), Joystick:getVibration, and Joystick:isVibrationSupported.
left and right are numbers between 0 and 1 which correspond to the strength of the gamepad's left and right rumble motors, if it has them.
2013-10-05 01:54:41 -03:00
Bart van Strien 0e6786988e Try to create appdata dir if it doesn't exist (hopefully resolves #680) 2013-10-04 14:30:56 +02:00
Alex Szpakowski d161d5c0fc Fixed an uncaught exception in Mesh:getVertexMap
--HG--
branch : Mesh
2013-10-01 23:52:20 -03:00
Alex Szpakowski c426998b04 Fixed Mesh:setVertexMap when the mesh has more than 2^16-1 vertices (still needs more work to make it use smaller data types when available), added Mesh:setVertices
--HG--
branch : Mesh
2013-09-30 04:30:17 -03:00
Alex Szpakowski 857296f107 Merged default into Mesh
--HG--
branch : Mesh
2013-09-30 04:00:28 -03:00
Alex Szpakowski 95eedcd1be Using auto for some iterators for less dense-looking code 2013-09-30 02:35:10 -03:00
Alex Szpakowski b59e3d9c35 Meshes now use vertex buffers for more efficient drawing.
--HG--
branch : Mesh
2013-09-29 21:24:19 -03:00
Alex Szpakowski c63e2ec624 Merged default into Mesh
--HG--
branch : Mesh
2013-09-29 04:58:26 -03:00
Alex Szpakowski 5f609c2e2b OS X: switched to -std=c++11, fixed compilation, cleaned up obsolete files in src/platform/macosx/ 2013-09-29 02:50:37 -03:00
Alex Szpakowski 1e696c4505 Added Mesh objects and love.graphics.newMesh. Mesh objects are similar to Geometry but they're drawables (the relationship between meshes and images is the opposite of geometry and images.)
Removed Geometry objects and re-added Quads.

example:
local vertices = {{0, 0, 0, 0}, {100, 0, 1, 0}, {100, 100, 1, 1}, {0, 100, 0, 1}}
mesh = love.graphics.newMesh(vertices, image, "fan")
..
love.graphics.draw(mesh, 0, 0)

--HG--
branch : Mesh
2013-09-28 18:26:47 -03:00
Alex Szpakowski 1be8ac5be4 Removed some unused functions and fixed up some wrap_ headers 2013-09-26 00:48:48 -03:00
Alex Szpakowski bcee9a222b Made some float/int/unsigned char conversions explicit, fixed ParticleSystem:getColors, fixed love.mouse.isDown with x1 and x2 buttons 2013-09-26 00:36:50 -03:00
Alex Szpakowski 5de43a7207 The Vertex struct is now recognized as POD by C++, also fixed the name to be consistent with other love structs 2013-09-24 11:09:18 -03:00
Alex Szpakowski 8d5ddb9e34 Fixed some internal documentation (thanks to clang's -Wdocumentation) 2013-09-23 21:52:28 -03:00
Alex Szpakowski 06f2ec8e31 Renamed BezierCurve:eval to BezierCurve:evaluate (resolves issue #722) 2013-09-23 20:40:58 -03:00
Alex Szpakowski b36d643570 Changed love.graphics.getRendererInfo to return all the info (resolves issue #757) 2013-09-23 18:03:10 -03:00
Alex Szpakowski 2e2ede6334 Calling ParticleSystem:setLinearAcceleration with no arguments now errors instead of defaulting to 0 (resolves issue #755) 2013-09-23 17:12:20 -03:00
Alex Szpakowski b5c231e5bb The window minwidth and minheight can't be less than 1 2013-09-19 23:33:13 -03:00
Alex Szpakowski 0ce0db9e1b The minwidth and minheight window flags have default values of 0 instead of 100 (resolves issue #735).
The real minimum window width and height are still system-dependent.
2013-09-19 19:05:40 -03:00
Alex Szpakowski ffe0485173 Removed love.window.checkMode (resolves issue #653, invalidates issue #592).
Also fixed love.window.setMode to fail instead of bug out when trying to set a fullscreen mode which is too large for the monitor.
2013-09-19 18:13:52 -03:00
Alex Szpakowski 74f26160da Fixed a couple bugs caught by clang's static analyzer 2013-09-18 18:30:12 -03:00
Alex Szpakowski 21d1e7737c Fixed ParticleSystem:setAreaSpread("none") to not require x/y arguments (resolves issue #738) 2013-09-17 00:54:55 -03:00
Alex Szpakowski f89097ed90 Fixed the error message when only one argument is given to newImageFont (resolves issue #737) 2013-09-16 03:11:38 -03:00
Alex Szpakowski d9cd10e29c love.joystick now scans for connected joysticks when the module is initialized instead of only relying on joystick add events 2013-09-16 02:42:50 -03:00
Alex Szpakowski ef9f30d5c4 Fixed a typo preventing compressed textures from being loaded into images 2013-09-06 00:59:19 -03:00
Alex Szpakowski 06f80d5c08 Fixed undefined behaviour when love exceptions are converted into Lua errors (resolves issue #729) 2013-09-05 23:17:29 -03:00
Alex Szpakowski 389e99bf2c Added love.keyboard.setTextInput to enable/disable text input events (enabled by default.)
This fixes the issue of receiving an unwanted text input event if a key is used to bring a game's textbox into focus, since textinput events can be triggered after keypress events if the keypress generates text.
2013-09-05 18:55:44 -03:00
Alex Szpakowski 93a782d445 Renamed World:setAllowSleeping and World:getAllowSleeping to World:setSleepingAllowed and World:isSleepingAllowed (see issue #691, also consistent with the Body methods) 2013-08-31 21:15:09 -03:00
Alex Szpakowski 3ac0710544 Renamed Joystick:getProductGUID back to Joystick:getGUID 2013-08-30 23:50:29 -03:00
Alex Szpakowski d3826aba9d Improved thread safety of love.event.wait and love.event.push 2013-08-30 17:34:58 -03:00
Alex Szpakowski 4584cf6780 Always use regular vsync instead of preferring adaptive vsync if supported 2013-08-30 00:33:20 -03:00
Alex Szpakowski 75340f6c7b Renamed love.window.getModes to love.window.getFullscreenModes (resolves issue #679) 2013-08-29 21:42:05 -03:00
Alex Szpakowski 5b28b34a0b Fixed Thread:start(func) crashing instead of erroring 2013-08-29 20:59:25 -03:00
Alex Szpakowski c15fc4453b Re-added Data:getPointer (can be used with LuaJIT's FFI) 2013-08-29 17:16:21 -03:00
Alex Szpakowski 4c4a385ce6 Updated CompressedData to store its data in a single block of memory, like other Data objects 2013-08-29 16:24:13 -03:00
vrld 6b51c5aadc Fix issue #724: Bezier curve rendering/eval crashes with empty curves. 2013-08-29 08:31:58 +02:00
Alex Szpakowski eb052d99e8 Added love.keyboard.setKeyRepeat and love.keyboard.hasKeyRepeat (resolves issue #717) 2013-08-29 03:20:27 -03:00
Alex Szpakowski deba2926ce Prefer the Joystick name rather than the GameController name for Joystick:getName 2013-08-29 01:39:21 -03:00
Alex Szpakowski ec9dec6b80 Replaced luax_newtype with luax_pushtype (and added luax_rawnewtype for the old functionality of luax_newtype.)
luax_pushtype keeps the object in a weak table and checks the table before creating a new userdata, so it re-uses the object's existing wrapper userdata if it can, whenever the object is pushed to Lua.

This fixes some subtle issues with love objects, where using them as keys in tables would not always work as expected (https://love2d.org/forums/viewtopic.php?f=4&t=39398&p=112388#p112415). It also decreases the amount of new Lua objects created, saving the garbage collector some work.
2013-08-29 00:40:06 -03:00
Alex Szpakowski 526ccb12ad Renamed love.window.isFullscreen to love.window.getFullscreen (resolves issue #721) 2013-08-28 19:15:00 -03:00
Alex Szpakowski 040defbbfe Renamed love.mouse.setGrab to love.mouse.setGrabbed (resolves issue #720) 2013-08-28 19:13:17 -03:00
Alex Szpakowski 1375aaccb5 Renamed BezierCurve:move to BezierCurve:translate (resolves issue #723) 2013-08-28 19:10:18 -03:00
Alex Szpakowski 3f6b280d54 Joystick:getID now returns the Joystick's instance id as a second argument, if the Joystick is connected.
The Joystick gets a new unique instance id every time it's connected.
2013-08-28 05:23:02 -03:00
Alex Szpakowski 4fcf47a427 Renamed Joystick:getGUID to Joystick:getProductGUID for greater clarity 2013-08-28 04:21:08 -03:00
Alex Szpakowski 51d3fe22fc Always recreate the GL context in love.window.setMode - SDL_GL_MakeCurrent can return success sometimes in Windows even when the context is trashed 2013-08-28 01:07:00 -03:00
Alex Szpakowski 390a47099e Removed some dead/useless joystick code 2013-08-26 18:18:07 -03:00