Commit Graph

604 Commits

Author SHA1 Message Date
Alex Szpakowski 0c58d5d46a Added ParticleSystem:isPaused (issue #623) and removed ParticleSystem:isEmpty/isFull (issue #621) 2013-05-23 13:42:29 -03:00
Alex Szpakowski 0e9d73503c Stencil buffers are now created and attached to canvases on-demand, instead of always on canvas creation.
saves VRAM when stencils aren't used in canvases.
2013-05-22 23:08:21 -03:00
Alex Szpakowski ac094f9437 Fixed love.graphics.newScreenshot to always read from the main framebuffer, even when a canvas is bound 2013-05-22 19:18:11 -03:00
Alex Szpakowski 0b71fa1483 Added SpriteBatch:getCount and SpriteBatch:getBufferSize, and removed SpriteBatch:isEmpty/isFull. 2013-05-22 18:44:40 -03:00
Alex Szpakowski 264948690c Renamed BlendMode "none" to "replace" and updated changelog 2013-05-22 04:26:29 -03:00
Alex Szpakowski 123889dfed Converted code for Shader:send from Lua to C++ 2013-05-21 20:41:26 -03:00
Alex Szpakowski 89265107ea Fixed SpriteBatch:addg/setg to error properly instead of crash when attempting to use a Geometry without exactly 4 vertices 2013-05-20 14:47:37 -03:00
Bart van Strien 167d3183b9 Rename SpriteBatch:setq to setg 2013-05-20 19:04:27 +02:00
Alex Szpakowski aa59761177 Fixed smooth lines with love.graphics.origin() after love.graphics.scale 2013-05-12 16:13:32 -03:00
vrld e9d0204cdc Disallow concave shapes as geometry. 2013-05-12 13:01:05 +02:00
Alex Szpakowski c1cbd610e6 Fixed the default blend mode (and other related state) 2013-05-12 05:49:00 -03:00
Alex Szpakowski ff77eb4b29 Added love.window (issue #6.) All window-related functions have been moved from love.graphics to love.window.
love.graphics.setCaption has been renamed to love.window.setTitle.
2013-05-10 22:32:15 -03:00
vrld 13dd8d3199 Faster (and less WTF-ish) computation of current pixel size for line drawing. 2013-05-10 19:09:17 +02:00
Bart van Strien 16e27d95b1 Rename ParticleSystem:setLifetime/setParticleLife and getters to setEmitterLifetime/setParticleLifetime (issue #601) 2013-05-10 16:50:20 +02:00
Alex Szpakowski c7ebb50b70 love.graphics.newParticleSystem now uses a default buffer size of 1000 (issue #598) 2013-05-08 17:19:25 -03:00
Alex Szpakowski 7ab3809165 Fixed Object:typeOf for love.physics objects new to 0.8.0, removed vestigial ColorMode code 2013-05-07 15:23:26 -03:00
Alex Szpakowski 63404f7097 Added love.graphics.getRendererInfo(infotype). Useful for creating more informative error reports and advanced debugging.
Returned string can be highly system-dependent, so don't rely on its output!

infotype can be "name", "version", "vendor", or "device"
2013-05-05 16:47:42 -03:00
Alex Szpakowski 08d6e658c1 Removed love.graphics.newStencil (issue #569) 2013-05-03 15:49:39 -03:00
Alex Szpakowski 4c616e409b Renamed ParticleSystem:count, Channel:count, and all getNum* functions to get*Count (issue #602) 2013-05-03 04:04:44 -03:00
Alex Szpakowski 3bf43dadd8 Renamed CompressedData:getNumMipmaps to CompressedData:getMipmapCount; Improved type-checking error messages for some functions which expect function arguments 2013-05-02 17:26:50 -04:00
Alex Szpakowski 1edfbb766f Misc. fixes 2013-05-01 16:17:42 -07:00
Alex Szpakowski 8b50dd499b Removed now-unnecessary optional filter parameters from love.graphics.newImageFont 2013-04-28 18:15:03 -07:00
Alex Szpakowski ad2239aaaf Error instead of crash when love.graphics.newScreenshot fails 2013-04-28 11:12:19 -07:00
Alex Szpakowski b44c083894 Added Shader:sendInt 2013-04-27 19:26:32 -07:00
Alex Szpakowski 97f7ad1a54 Fixed extern matrices 2013-04-25 11:16:43 -07:00
Alex Szpakowski 0130b726de Improved error messages when sending bad values to a shader (also issue #587) 2013-04-24 23:19:37 -07:00
Alex Szpakowski d0970658bf Exposed Geometry:setVertexColors and Geometry:hasVertexColors, to enable/disable per-vertex colors.
Vertex colors are automatically enabled if newGeometry or setVertex is called with a color other than 255,255,255,255
2013-04-24 12:04:24 -07:00
Alex Szpakowski 3b05ec0635 Geometries now automatically use per-vertex colors when drawing if any vertex has a custom color set, otherwise the constant color is used.
Still not a perfect solution, but it works better than before
2013-04-23 23:25:45 -07:00
Alex Szpakowski a5eaffe625 Disabled opengl debug output until it can be improved & made optional 2013-04-23 16:47:22 -07:00
Alex Szpakowski 97d61dda96 Optimized Geometry:setVertex 2013-04-23 01:02:13 -07:00
Alex Szpakowski 8de3a7c708 Fixed love.graphics.getColor before setColor is called 2013-04-22 23:34:28 -07:00
Alex Szpakowski 38b7e19914 Fixed Geometry:flip 2013-04-21 19:54:05 -07:00
Alex Szpakowski f05e681b24 Error instead of crash when love.graphics.newGeometry fails 2013-04-21 18:49:56 -07:00
vrld 1e54049fbb Fix SpriteBatch.
Broken in my last commit (6e0f6a4).
2013-04-21 20:01:03 +02:00
Alex Szpakowski 27bbfaac42 Updated Xcode project and removed now-unneeded Quad source files 2013-04-21 10:13:20 -07:00
vrld 71317c4359 Add Geometries (replaces Quads).
A Geometry is a collection of vertices describing a non self-intersecting
(simple) polygon. In addition to screen coordinates, the vertices have
attributes for texture coordinates (s,t) and color (r,g,b,a).

It can be used as a quad, to display distorted images, or anything in between.

Added:
^^^^^^

-- geometry from table, where table has the format:
-- info = {
-- {x,y, s,t, [r = 255, g = 255, b = 255, a = 255]}
-- {x,y, s,t, [r = 255, g = 255, b = 255, a = 255]}
-- ...
-- }
geom = love.graphics.newGeometry(info)

-- convenience wrapper for quads (same as before)
geom = love.graphics.newQuad(x,y, w,h, sw,sh)

-- retrieve vertex i (1-indexed)
x,y,s,t,r,g,b,a = geom:getVertex(i)

-- set vertex i (1-indexed)
geom:setVertex(i, x,y, s,t, [r,g,b,a])

-- flip geometry
geom:flip(x, y)


Renamed:
^^^^^^^^

love.graphics.drawq() -> love.graphics.drawg()


Removed:
^^^^^^^^

quad:setViewport()
quad:getViewport()
2013-04-21 18:53:13 +02:00
Alex Szpakowski 9d62d0044c Macro hard, microsoft 2013-04-19 16:11:39 -03:00
Alex Szpakowski 426ca03315 Added ParticleSystem:setLinearAcceleration(xmin, ymin, xmax, ymax) and removed ParticleSystem:setGravity (issue #599) 2013-04-19 15:33:30 -03:00
Alex Szpakowski b6247f9ae1 Added many getters of questionable utility to ParticleSystems.
Storing your own values is blasphemy, clearly.
2013-04-18 04:54:53 -03:00
Alex Szpakowski bf6d1c258b Misc. code cosmetics and improvements 2013-04-18 02:14:35 -03:00
Alex Szpakowski 6fd3038405 Improved clarity/readability of internal OpenGL state shadowing functions 2013-04-17 01:06:33 -03:00
Alex Szpakowski 2d0b3b5226 ParticleSystems now use their own RNG instead of the global one (prevents ParticleSystems from modifying the global math.random state)
--HG--
branch : math-randobject
2013-04-15 15:11:06 -03:00
Alex Szpakowski d98e2cb40c Renamed randnormal to randomnormal
--HG--
branch : math-randobject
2013-04-15 14:57:20 -03:00
Alex Szpakowski 6a27e1aa2f Ensure the current color is set properly after drawing particlesystems and spritebatches 2013-04-12 15:40:53 -03:00
Alex Szpakowski 3edf033498 Internally keep track of the value of the current color (issue #564) 2013-04-12 15:24:21 -03:00
Alex Szpakowski 7391d9821f Merged love.graphics.origin into default (issue #124) 2013-04-11 17:59:32 -03:00
Alex Szpakowski c7838b78b6 Added love.graphics.setAlphaTest (issue #534) 2013-04-10 13:17:54 -03:00
Alex Szpakowski b22f1aa16a Added Image:refresh(), reloads a love.graphics image using the imagedata that created it 2013-04-10 00:15:43 -03:00
Alex Szpakowski c215541d6c Merged mage-CompressedData into default 2013-04-09 23:44:00 -03:00
Alex Szpakowski b59b967f6b Fixed a memory leak in Canvas:getImageData() (issue #590) 2013-04-09 14:08:05 -03:00