Alexander Szpakowski
eb98e8cc48
Removed unnecessary tabs in empty lines, fixed texture filtering when the minification and mipmap filter are the same
2013-01-07 06:56:59 -04:00
Alexander Szpakowski
8b3fb1d71c
Code cleanup
2013-01-02 17:19:41 -04:00
Alexander Szpakowski
1de26ea1fa
Added "mipmap" love.graphics.isSupported string
2013-01-02 05:55:50 -04:00
Alexander Szpakowski
2d077758d1
Fixed mipmap generation for pre-FBO systems, fixed NPOT check if mipmap filtering is enabled on an image before the texture is created
2013-01-02 05:29:17 -04:00
Alexander Szpakowski
f067e228b4
Fixed mipmap sharpness setting not being correctly reapplied on resolution change
2013-01-02 04:44:24 -04:00
Alexander Szpakowski
fda16e27cd
Changed image mipmap api: Image:setFilter now takes an optional third argument (mipmap filter mode), Image:get/setMipmapFilter is removed.
2013-01-02 04:21:22 -04:00
Alexander Szpakowski
2739ea561a
Initial image mipmapping implementation. Includes Image:set/getMipmapFilter and Image:set/getMipmapSharpness. setMipMapFilter requires a filter mode, or nil to disable mipmapping.
...
Enabling mipmapping on an image that does not have power-of-two dimensions will raise an error, due to inconsistent support in older graphics chipsets
2013-01-02 02:50:13 -04:00
Alexander Szpakowski
ab98b0de45
Added mipmap support to Image filter struct and OpenGL texture filter helper functions
2013-01-01 21:44:27 -04:00
Alexander Szpakowski
1678252b7a
Applied patch from issue #542 (texture filtering inconsistencies) in main LÖVE repository
2013-01-01 21:29:38 -04:00
Alexander Szpakowski
a8dc813258
Text drawing performance improvements (issue #532 )
2012-12-15 22:18:40 +01:00
Bart van Strien
68a895e7c6
Catch errors in love.font.newRasterizer, add luax_pconvobj which pcalls, allowing love.graphics.newFont to clean up before re-erroring
2012-12-15 14:26:46 +01:00
vrld
62e2c752e5
More verbose VertexIndex::getType() (using numeric_limits)
2012-12-01 14:00:05 +01:00
vrld
b0abcbda71
Fix: Returning wrong type in VertexIndex::getType()
2012-11-28 16:14:10 +01:00
vrld
8bbf68c69c
Match types in VertexIndex::getType()
2012-11-28 16:01:04 +01:00
vrld
b2f1408b12
Fix issue #495 : Large spritebatches doesn't render properly
2012-11-23 10:23:44 +01:00
vrld
6882c2c32c
Close issue #519 : Maximum stack depth reached error message.
2012-11-23 09:08:36 +01:00
vrld
c782093374
Intel gets their way
2012-11-22 21:24:43 +01:00
vrld
a35b4232e1
Use opengl buffer ARB constistently in VertexBuffer.
2012-11-22 21:07:35 +01:00
vrld
6ffb9d28f0
VertexBuffer/SpriteBatch speed tweaks.
...
- VertexBuffer holds permanent copy of the vertex data and is only read from
GPU memory was written outside a sb:bind()/sb:unbind() pair.
- "Orphan" the current GPU buffer on unmap() before uploading the changed data
to the GPU to avoid implicit synchronisation lags.
2012-11-22 20:59:47 +01:00
Bart van Strien
d24c0344c8
Make second argument to setDefaultImageFilter Image:setFilter and Image:setWrap optional, and default to the first
2012-11-18 19:18:37 +01:00
Bart van Strien
94516e2290
Catch possible exceptions thrown when locking a SpriteBatch twice
2012-11-18 18:48:37 +01:00
rude
54498ce378
Apply slime73's ParticleSystem patch.
2012-11-18 11:02:30 +01:00
vrld
31f98ebf52
Fix #234 again. Of course this means the texture coordinates are flipped
...
again...
2012-10-18 13:29:13 +02:00
vrld
6c850fdc98
Possibly (code in issue does not fail on my machine) fix #486 . Please test.
2012-10-15 17:13:08 +02:00
vrld
e6711b2837
Fix multiplicative blend mode.
2012-10-12 13:52:16 +02:00
vrld
48f5afcc0e
Throw error if invalid canvas type was supplied in l.g.newCanvas()
2012-10-12 13:14:40 +02:00
vrld
ccdf6e1c00
Fix Issue #476 : Add HDR Canvas (thanks, Alexander Szpakowski!).
...
* Add `love.graphics.isSupported("hdrcanvas")' to query whether the hardware
actually supports HDR canvases.
* Add optional third argument to `love.graphics.newCanvas(w,h, type)', where
`type' is one of "normal" or "hdr" and defaults to "normal". HDR canvases
use floating point that can have values > 1 to store pixels, allowing for
HDR rendering and other higher level lighting techniques when combined with
pixel effects.
* Add `canvas:getType()'.
2012-10-11 22:22:10 +02:00
vrld
c75bc199ae
Remove ARB checks in PixelEffect::isSupported().
...
ARB fragment shaders shouldn't support GLSL 1.2 anyway.
2012-10-04 17:27:31 +02:00
vrld
a39ddc9f1a
Close issue #480 : Extending Canvas support to cards without packed depth stencil.
2012-10-01 22:06:56 +02:00
vrld
e35854acdc
Remove love_ScreenSize from shaders.
...
PixelEffects would fail to load when screen_coords were unused.
Reopens issue #435 : "PixelEffects have flipped screen_coords.y".
2012-10-01 21:39:52 +02:00
vrld
e575c86246
Severe case of premature commit-ion.
2012-09-11 16:11:26 +02:00
vrld
fdf175d7d0
Partly fix issue #468 : Incorrect(?) detection of shader support.
...
Still need to figure out if we can use the ARB versions.
2012-09-11 15:21:39 +02:00
vrld
4ec7609d37
Fix issue #437 : Area-based particle spawn.
...
New particles are spawned around the particle emitter position according to a
configurabe distribution.
New functionality:
particlesystem:setAreaSpread(distributon, x, y)
distribution, x, y = particlesystem:getAreaSpread()
Where `distribution' is one of "none", "uniform", "normal".
`x' and `y' take different meaning based on the distribution:
* none: no area spread - particles spawned at emitter position.
* uniform: particle spawned at px,py in the rectangle around emitter
position ex,ey, i.e.:
ex - x < px < ex + x, ey - y < py < ey + y,
* normal: particle position drawn from a normal/gaussian distribution
with mean ex,ey and standard deviation x,y, i.e.:
px \in N(ex, x²), py \in N(ey, y²).
2012-09-10 19:58:44 +02:00
vrld
87c6646705
Fix #435 (for real this time). Unfixes #324 .
...
Add a extern vec2 love_ScreenSize to the pixel effects that will
be (re)set upon PixelEffect::loadVolatile() and is used to flip
the fragment coordinate.
Unfixes #324 because canvases can have different dimensions than
the screen.
2012-08-05 16:08:22 +02:00
Bart van Strien
148b0c2f6d
Correctly read filter modes in newImageFont when the implicit newRasterizer is used (issue #437 )
2012-08-03 16:01:33 +02:00
Bart van Strien
85a1787ad8
Make SpriteBatch:setColor accept a table as well (issue #459 )
2012-08-03 15:27:59 +02:00
Bart van Strien
b10bc87b9a
Make love.graphics.setCanvas(nil) error
...
This helps detect typoes, setCanvas() still works as before
2012-07-21 17:51:54 +02:00
Marc Lepage
e5c4f7f43c
Remove call to glAlphaFunc as alpha testing is never enabled.
2012-07-17 21:33:16 -04:00
Marc Lepage
4cc0056a21
Fix some typos in comments.
2012-07-12 00:21:25 -04:00
vrld
6d02057864
Close issue #408 : printf-justify alignment.
...
Add letter_spacing argument to Font::print(). Might be worth to expose to Lua
at some point. Justify alignment may result in mushy/blurred glyphs.
2012-07-08 13:37:09 +02:00
vrld
12f714bf74
Issue #419 : Make font:getWidth(str) account for newlines.
2012-07-05 16:15:38 +02:00
vrld
85fa71c519
Make love.graphics.getFont() return (and set) default font when no font set.
...
Use closures instead of love.graphics.print(f)1() and love.graphics.newFont1.
2012-07-05 16:14:44 +02:00
Bart van Strien
7793e7f02f
CRLF to LF
2012-07-04 14:40:24 +02:00
rude
81c38e22d0
Applied the new style guidelines.
...
Well, sort of. Lot's more to be done, but this is a start.
2012-06-28 23:52:33 +02:00
Bart van Strien
bc4e59ba24
Apply the line width patch
2012-06-11 17:06:57 +02:00
Bart van Strien
1b568fdf39
Make setMode get the actual width and height after setting, fixes bug with width and height 0 (aka desktop resolution)
2012-05-18 17:46:00 +02:00
Bart van Strien
1e00f0f981
Move the default image filter to the Image class, instead of Graphics applying it on newImage
2012-05-18 17:35:51 +02:00
Bart van Strien
1a89622262
Fonts and ImageFonts now use the default image filter, newImageFont gets a second and third argument, to optionally specify the filters
2012-05-18 17:23:50 +02:00
vrld
26780681ea
Remove artifacts at line endings (see 4f9c5db78143).
2012-05-09 17:45:50 +02:00
vrld
b5f3addd35
Remove antialiasing artifacts when drawing lines at a very big scale.
...
When drawing lines at scales>1 the inner workings (gradients) of the
antialiasing too were upscaled and became visible. When the scale was very
large this produced interesing yet unexpected visuals.
2012-05-09 17:17:16 +02:00