Commit Graph

1602 Commits

Author SHA1 Message Date
Bart van Strien c7c5d0ed6b Fix race conditions and deadlocks in Channels (hopefully) (issue #554)
Also, this is a giant commit because of the official Code Style (tm) was applied.

--HG--
branch : minor
2013-01-30 17:15:12 +01:00
Alex Szpakowski a9211a1389 Removed direct OpenGL calls in the SDL Window module 2013-01-30 00:27:46 -04:00
Bart van Strien 8fba362fc5 Add SoundData:getDuration, returns the duration in seconds 2013-01-29 23:19:26 +01:00
Alex Szpakowski 7a16e4cb49 Made Visual Studio play nice with the C++ STL min/max functions in the new shader code 2013-01-29 13:01:34 -04:00
Alex Szpakowski 7384bf15d3 Merged rude/love into default 2013-01-29 11:25:38 -04:00
Alex Szpakowski 02d2a872ab Improved shader member variable names, fixed up XCode project file 2013-01-29 04:34:36 -04:00
Alex Szpakowski 383cfb11ea Merged rude/love into vertexshader/default 2013-01-28 20:41:45 -04:00
Bart van Strien f81eebfb5f Reapply sdl's keyrepeat settings after setWindow 2013-01-28 00:25:03 +01:00
Alex Szpakowski 09ee533cea Cleaned up TrueType Rasterizer code 2013-01-27 17:18:11 -04:00
Bart van Strien be2363fc00 Add Channel:supply(), a blocking version of Channel:push()
--HG--
branch : minor
2013-01-27 20:04:16 +01:00
Bart van Strien 0fd4b147a4 Merge in default
--HG--
branch : minor
2013-01-27 19:15:55 +01:00
Alex Szpakowski 5cae5ea37e Removed code for tesselation and geometry shader detection 2013-01-24 18:26:40 -04:00
Alex Szpakowski 383bed8098 Use const references for string function arguments 2013-01-23 15:28:11 -04:00
Alex Szpakowski 191af5cd5b Minor cosmetics 2013-01-23 06:26:17 -04:00
Alex Szpakowski 76b0537eff ImageFonts now replace the spacer color with transparency when generating a glyph instead of when first parsing ImageData (source ImageData used to generate an ImageFont is now unmolested.) 2013-01-23 06:00:28 -04:00
Alex Szpakowski 6247e7b60b Removed silly exception case 2013-01-23 03:15:49 -04:00
Alex Szpakowski e51a9eb25d Added support for UTF-8 ImageFont glyphs and ImageFonts with more than 256 characters 2013-01-23 03:02:46 -04:00
Alex Szpakowski 022f549554 Use unsigned ints instead of unsigned shorts to represent UTF8 font glyphs 2013-01-22 23:43:35 -04:00
Alexander Szpakowski f016840ed0 Merged in changes from main repository 2013-01-21 02:31:15 -04:00
Bart van Strien 4221d55468 Enfore limits on ParticleSystem:setSizeVariation (issue #545) 2013-01-18 21:03:07 +01:00
Bart van Strien 32684b674e Add Font:getAscent/getDescent/getBaseline (issue #445) 2013-01-18 13:20:40 +01:00
Bart van Strien 84b6eedf1f Make the default point style to setPoint 'smooth' (issue #543), and fix setPointStyle ignoring normal operation 2013-01-18 12:43:43 +01:00
Alexander Szpakowski ce75b3af69 Merge from root 2013-01-17 20:29:48 -04:00
Bart van Strien a72c981c32 Make sure love.errhand gets a local reference to print as well, and find the error handler at errortime (partial #390) 2013-01-18 00:55:28 +01:00
Bart van Strien 501beb7d02 Add blend mode 'none' (issue #536) 2013-01-18 00:48:36 +01:00
Bart van Strien 49961d66c7 Fix setVolumeLimits (issue #537) 2013-01-18 00:32:25 +01:00
Bart van Strien b97765b169 Check for OpenGL 2.0 in NPOT check (issue #538) 2013-01-18 00:29:01 +01:00
Alexander Szpakowski 9f8f493aed Texel (texture2D) calls in shaders now return pure white instead of pure black when drawing untextured graphics primitives. This prevents the need for separate "passthrough" shaders to be used when drawing graphics primitives vs images. 2013-01-17 04:18:38 -04:00
Alexander Szpakowski e24d721381 Renamed all instances of 'ShaderEffect' (previously 'PixelEffect') to 'Shader'. 2013-01-16 07:21:41 -04:00
Alexander Szpakowski 331c883c77 Improved clarity of some comments, variable names, and functions 2013-01-15 20:20:35 -04:00
Alexander Szpakowski c4a5b16447 Merged from main? 2013-01-13 21:37:52 -05:00
vrld 2db9bfad11 Fix PixelEffect texture unit pool.
Fixes two problems: (1) Overwriting externs with the same name and (2) not using unused texture units properly.

1) Sending two different images to two different effects using the same extern name would use the same image for both effects, e.g.:

	effect_1:send('img', img_1)
	effect_2:send('img', img_2) -- also changes img to point to img_2 in effect_1!

Fixed by localizing the name -> texture unit mapping for each pixel effect.

2) When a pixel effect was destroyed, the allocated texture units were not marked as being available again. Fixed by having a vector<bool> marking the free units instead of just a counter how many units are in use.


Still problematic: Sending more than GL_MAX_TEXTURE_IMAGE_UNITS (>= 16, depending on the implementation) images/canvases *in total* to pixel effects. Effects could hold references to used *texture-ids* and bind/unbind them dynamically on a effect switch. Con: Introduces additional complexity when switching effects. However, benchmarks by Alexander Szpakowski have shown the performance loss is negligible.
2013-01-13 16:19:27 +01:00
Alexander Szpakowski 8fdd6cbbb2 Merged in from main repository (originally from love-mipmap fork) 2013-01-12 18:07:14 -05:00
vrld 3b80c52cc2 Merged in slime73/love-mipmap (pull request #18: Add mipmapping support to images) 2013-01-12 23:54:15 +01:00
rude c03e35b6cc Merge default branch.
--HG--
branch : minor
2013-01-12 11:52:04 +01:00
rude 697f4de80a Fix compilation issue in MSVC2012. 2013-01-12 11:28:32 +01:00
Alexander Szpakowski 69dc6c76e8 Better boolean shader extern support 2013-01-11 00:47:15 -04:00
Alexander Szpakowski ca1a9caf91 Added boolean value support to ShaderEffect:send 2013-01-11 00:21:28 -04:00
Alexander Szpakowski 3a9659b608 More minor graphics.lua cleanup 2013-01-09 01:01:13 -04:00
Alexander Szpakowski f1e72efd30 Cleaned up graphics.lua script a bit 2013-01-08 23:59:48 -04:00
Alexander Szpakowski 3e3f5c6bdd Minor tweaks, balanced disable/enable clientstate calls in SpriteBatches 2013-01-08 05:33:22 -04:00
Alexander Szpakowski 808a09f786 Changed shader source list from a vector of sources to a map of shader types to source codes 2013-01-07 19:13:19 -04:00
Alexander Szpakowski b6088115c9 Changed some variable names to be more descriptive 2013-01-07 18:26:41 -04:00
Alexander Szpakowski 36c5259e12 Font objects now have mipmap filter and mipmap sharpness support 2013-01-07 16:31:48 -04:00
Alexander Szpakowski a6f4a3ab0f Removed names of unused parameters to quiet noisy compilers 2013-01-07 07:29:04 -04:00
Alexander Szpakowski e5388ff73b Removed more unnecessary tabs in blank lines 2013-01-07 07:11:40 -04:00
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 609ef2c4e4 Format luaL_error strings properly in ShaderEffect lua wrapper code 2013-01-07 06:39:33 -04:00
Alexander Szpakowski 88af7239c3 Removed unnecessary tabs from empty lines 2013-01-07 06:21:15 -04:00
Alexander Szpakowski 0968fa6f11 More cleanup and some overdone comments 2013-01-05 15:59:01 -04:00