]>
git.sesse.net Git - movit/log
Steinar H. Gunderson [Sun, 7 Oct 2012 18:55:17 +0000 (20:55 +0200)]
Remove a flipping that is now wrong (again, because phase inputs are always RTT).
Steinar H. Gunderson [Sun, 7 Oct 2012 18:53:42 +0000 (20:53 +0200)]
Fix an issue with textures that are immediately bounced (they need mipmaps in all cases, since “inputs” to a phase now always are RTT inputs). Also add a FIXME to kill bounces in some of those cases.
Steinar H. Gunderson [Sun, 7 Oct 2012 18:17:38 +0000 (20:17 +0200)]
Support changing resolution in effects, and add a simple ResizeEffect that does that. It is still not possible to query the input size, though.
Steinar H. Gunderson [Sun, 7 Oct 2012 16:23:34 +0000 (18:23 +0200)]
Add missing file opengl.h.
Steinar H. Gunderson [Sun, 7 Oct 2012 16:23:27 +0000 (18:23 +0200)]
Add .d files to .gitignore.
Steinar H. Gunderson [Sun, 7 Oct 2012 12:01:15 +0000 (14:01 +0200)]
Add simple dependency generation to the Makefile.
Steinar H. Gunderson [Sun, 7 Oct 2012 10:54:32 +0000 (12:54 +0200)]
Move pixel_format out of the ImageFormat struct, since it is only relevant for FlatInput.
Steinar H. Gunderson [Sun, 7 Oct 2012 10:44:58 +0000 (12:44 +0200)]
Move all OpenGL includes into one file.
Steinar H. Gunderson [Sun, 7 Oct 2012 10:32:30 +0000 (12:32 +0200)]
Add YCbCr input. Required a bit of reworking of the sRGB extension stuff, but seems to work fine.
Steinar H. Gunderson [Sat, 6 Oct 2012 23:59:04 +0000 (01:59 +0200)]
1.0f is not allowed in GLSL; 1.0 it is.
Steinar H. Gunderson [Sat, 6 Oct 2012 18:04:31 +0000 (20:04 +0200)]
mat3() contructor takes elements in column-major order, so fix ColorspaceConversionEffect.
Steinar H. Gunderson [Sat, 6 Oct 2012 13:35:53 +0000 (15:35 +0200)]
Make Input an abstract base class, and move the current functionality into FlatInput. Also change a bit how we deal with adding them.
Steinar H. Gunderson [Sat, 6 Oct 2012 13:04:50 +0000 (15:04 +0200)]
Kill the EffectId enum, on the basis of YAGNI.
Steinar H. Gunderson [Sat, 6 Oct 2012 13:03:55 +0000 (15:03 +0200)]
Fix a warning.
Steinar H. Gunderson [Sat, 6 Oct 2012 12:35:07 +0000 (14:35 +0200)]
Redo the phase generation; we now start at the output end instead of at the inputs, which makes a lot more sense and unbreaks multiple-input scenarios.
Steinar H. Gunderson [Sat, 6 Oct 2012 12:34:24 +0000 (14:34 +0200)]
Bind input textures to the right sampler, and do it even if we do not need to update it (just draw from it).
Steinar H. Gunderson [Sat, 6 Oct 2012 10:09:14 +0000 (12:09 +0200)]
Open up for multiple inputs. We need to re-think the execution algorithm before it will actually work, though.
Steinar H. Gunderson [Sat, 6 Oct 2012 09:43:12 +0000 (11:43 +0200)]
Remove another unused member.
Steinar H. Gunderson [Sat, 6 Oct 2012 09:42:40 +0000 (11:42 +0200)]
Remove an unused member.
Steinar H. Gunderson [Sat, 6 Oct 2012 09:40:45 +0000 (11:40 +0200)]
Typo fix.
Steinar H. Gunderson [Fri, 5 Oct 2012 23:24:17 +0000 (01:24 +0200)]
Line-wrap the Makefile a bit.
Steinar H. Gunderson [Fri, 5 Oct 2012 23:17:39 +0000 (01:17 +0200)]
Add a glow effect, and an effect that linearly mixes two sources (because glow needed that).
Steinar H. Gunderson [Fri, 5 Oct 2012 23:14:08 +0000 (01:14 +0200)]
DiffusionEffect should not have any GLSL stuff in it.
Steinar H. Gunderson [Fri, 5 Oct 2012 23:06:23 +0000 (01:06 +0200)]
DiffusionEffect now needs sRGB primaries, since we compute the luminance.
Steinar H. Gunderson [Fri, 5 Oct 2012 22:58:31 +0000 (00:58 +0200)]
In overlay matte, use the luminance as a matte instead of each individual color component; it makes more sense to me. Also clamp luminance there to [0,1] to avoid going extrapolating into ugliness, which could happen when we had e.g. lift/gamma/gain before.
Steinar H. Gunderson [Fri, 5 Oct 2012 22:48:29 +0000 (00:48 +0200)]
Allow Input to set pitch. Currently only before the texture is created, though; we do not support variable pitch.
Steinar H. Gunderson [Fri, 5 Oct 2012 22:42:32 +0000 (00:42 +0200)]
Add missing file image_format.h, and add grayscale support.
Steinar H. Gunderson [Fri, 5 Oct 2012 22:39:21 +0000 (00:39 +0200)]
Generate PBOs on-the-fly instead of having hard-coded numbers.
Steinar H. Gunderson [Fri, 5 Oct 2012 22:24:33 +0000 (00:24 +0200)]
Split inputs into a separate class (descending from Effect) instead of handling them as a special case in EffectChain. Kills some special cases, and paves the road for multiple master inputs soon.
Steinar H. Gunderson [Fri, 5 Oct 2012 22:16:36 +0000 (00:16 +0200)]
Remember to clear the needs_update flag on 1D textures after upload.
Steinar H. Gunderson [Fri, 5 Oct 2012 19:29:34 +0000 (21:29 +0200)]
Rename set_uniforms() to set_gl_state(), and make a corresponding clear_gl_state().
Steinar H. Gunderson [Fri, 5 Oct 2012 14:55:21 +0000 (16:55 +0200)]
Mark some appropriate effects as not needing sRGB primaries, and expand the comment on when it is appropriate not to use them.
Steinar H. Gunderson [Fri, 5 Oct 2012 11:01:15 +0000 (13:01 +0200)]
Unbreak the final normalizers.
Steinar H. Gunderson [Fri, 5 Oct 2012 10:43:35 +0000 (12:43 +0200)]
Add a diffusion effect, and hook it up in the GUI.
Steinar H. Gunderson [Fri, 5 Oct 2012 10:03:49 +0000 (12:03 +0200)]
Actually implement multiple inputs to phases. Surprising amounts of stuff needed...
Steinar H. Gunderson [Thu, 4 Oct 2012 21:02:15 +0000 (23:02 +0200)]
Allow an effect to have multiple inputs (although the graph still supports only one master input). Still no support for it in the processing pipeline.
Steinar H. Gunderson [Thu, 4 Oct 2012 20:27:08 +0000 (22:27 +0200)]
Prepare for a more DAG-like effect graph. Does not actually do anything differently yet.
Steinar H. Gunderson [Thu, 4 Oct 2012 19:57:38 +0000 (21:57 +0200)]
Revert an unintended change to main.cpp.
Steinar H. Gunderson [Thu, 4 Oct 2012 15:28:15 +0000 (17:28 +0200)]
Replace LAST_INPUT with INPUT.
Steinar H. Gunderson [Thu, 4 Oct 2012 13:53:30 +0000 (15:53 +0200)]
Rename needs_many_samples() to needs_texture_bounce(), and update the comment.
Steinar H. Gunderson [Wed, 3 Oct 2012 22:16:49 +0000 (00:16 +0200)]
Move the GL_GENERATE_MIPMAP setting to a less broken place.
Steinar H. Gunderson [Wed, 3 Oct 2012 20:05:52 +0000 (22:05 +0200)]
Fix R/B swapping in the SDL conversion.
Steinar H. Gunderson [Wed, 3 Oct 2012 18:25:54 +0000 (20:25 +0200)]
Yet another use-NULL-instead-of-giving-in-empty-stuff cleanup.
Steinar H. Gunderson [Wed, 3 Oct 2012 18:23:07 +0000 (20:23 +0200)]
Fix a (harmless) Valgrind hit.
Steinar H. Gunderson [Wed, 3 Oct 2012 18:22:36 +0000 (20:22 +0200)]
Let SDL convert the pixels instead of doing it ourselves.
Steinar H. Gunderson [Wed, 3 Oct 2012 17:56:22 +0000 (19:56 +0200)]
Add a “sandbox effect” that does nothing but is a useful playground for development of new effects.
Steinar H. Gunderson [Wed, 3 Oct 2012 16:55:24 +0000 (18:55 +0200)]
Work around a Mesa bug wrt. mipmap generation.
Steinar H. Gunderson [Wed, 3 Oct 2012 16:55:08 +0000 (18:55 +0200)]
Give NULL to glTexImage2D() instead of zeroing memory ourselves.
Steinar H. Gunderson [Wed, 3 Oct 2012 15:59:20 +0000 (17:59 +0200)]
Mirror does not need linear light or sRGB primaries, of course.
Steinar H. Gunderson [Wed, 3 Oct 2012 15:56:14 +0000 (17:56 +0200)]
Yet more header file comments.
Steinar H. Gunderson [Wed, 3 Oct 2012 15:53:10 +0000 (17:53 +0200)]
Comment all of *_effect.h.
Steinar H. Gunderson [Wed, 3 Oct 2012 15:37:18 +0000 (17:37 +0200)]
Comment the Effect class.
Steinar H. Gunderson [Wed, 3 Oct 2012 14:48:05 +0000 (16:48 +0200)]
Small refactoring.
Steinar H. Gunderson [Wed, 3 Oct 2012 14:46:15 +0000 (16:46 +0200)]
Make a new system for meta-effects, and convert the blur to use it. Hides the two-pass nature.
Steinar H. Gunderson [Wed, 3 Oct 2012 14:30:55 +0000 (16:30 +0200)]
Some more GL state paranoia.
Steinar H. Gunderson [Wed, 3 Oct 2012 14:30:34 +0000 (16:30 +0200)]
Flesh out the blur code a little. It actually blurs now, although it is not as pretty as I would like it.
Steinar H. Gunderson [Wed, 3 Oct 2012 12:55:27 +0000 (14:55 +0200)]
Support setting vec4 arrays.
Steinar H. Gunderson [Wed, 3 Oct 2012 12:40:13 +0000 (14:40 +0200)]
Do not send uninitialized memory as a texture.
Steinar H. Gunderson [Wed, 3 Oct 2012 10:31:37 +0000 (12:31 +0200)]
Set better texture environment for the intermediate textures.
Steinar H. Gunderson [Wed, 3 Oct 2012 09:52:53 +0000 (11:52 +0200)]
Add a hack to restore the miplevels after blurring.
Steinar H. Gunderson [Tue, 2 Oct 2012 23:25:50 +0000 (01:25 +0200)]
Fix the blur so it is much prettier, by not sampling from a mipmap in the second pass.
Steinar H. Gunderson [Tue, 2 Oct 2012 23:14:27 +0000 (01:14 +0200)]
Increase the range of the blur control.
Steinar H. Gunderson [Tue, 2 Oct 2012 23:01:13 +0000 (01:01 +0200)]
Add vertical blurring, and fix a bug where not all taps would be used.
Steinar H. Gunderson [Tue, 2 Oct 2012 22:56:02 +0000 (00:56 +0200)]
Try to adjust the mip levels to get box blur for free as needed.
Steinar H. Gunderson [Tue, 2 Oct 2012 22:47:13 +0000 (00:47 +0200)]
Hook up a blur radius control.
Steinar H. Gunderson [Tue, 2 Oct 2012 22:45:32 +0000 (00:45 +0200)]
Make the blur into a simple, Gaussian horizontal blur. Still not very good.
Steinar H. Gunderson [Tue, 2 Oct 2012 22:20:05 +0000 (00:20 +0200)]
Support multiple render phases (with FBOs and all), and make a sample blur effect that uses it.
Steinar H. Gunderson [Tue, 2 Oct 2012 20:19:31 +0000 (22:19 +0200)]
Mark some functions in Effect as const.
Steinar H. Gunderson [Tue, 2 Oct 2012 18:45:08 +0000 (20:45 +0200)]
Fix indenting in effect_id.h.
Steinar H. Gunderson [Tue, 2 Oct 2012 18:37:44 +0000 (20:37 +0200)]
Less stupid mirroring.
Steinar H. Gunderson [Tue, 2 Oct 2012 17:58:09 +0000 (19:58 +0200)]
Add a new framework for 1D-LUTs via fp16 textures. Make the gamma compression and expansion effects use it.
Steinar H. Gunderson [Tue, 2 Oct 2012 17:34:11 +0000 (19:34 +0200)]
Kill the hard-coded texture enums (yay).
Steinar H. Gunderson [Tue, 2 Oct 2012 16:50:16 +0000 (18:50 +0200)]
Kill the vertex shader system; it is too complicated to get it right until we have a full DAG understanding.
Steinar H. Gunderson [Tue, 2 Oct 2012 12:32:48 +0000 (14:32 +0200)]
Revert "Move calculation of normalized position for the vignette into the vertex shader."
This is not correct, since tc can be changed by the fragment shader
_and_ by later vertex shaders. We need to do some rethinking here,
seemingly.
This reverts commit
2b4a7d868112b4995bf6699f5b3aa68e9ec2b308 .
Steinar H. Gunderson [Tue, 2 Oct 2012 12:18:37 +0000 (14:18 +0200)]
Add a mirror effect.
Steinar H. Gunderson [Tue, 2 Oct 2012 11:59:31 +0000 (13:59 +0200)]
Move calculation of normalized position for the vignette into the vertex shader.
Steinar H. Gunderson [Tue, 2 Oct 2012 11:55:43 +0000 (13:55 +0200)]
Fix a confusion in the vertex shader chaining.
Steinar H. Gunderson [Tue, 2 Oct 2012 11:50:48 +0000 (13:50 +0200)]
Rename .glsl to .vert/.frag.
Steinar H. Gunderson [Tue, 2 Oct 2012 11:46:25 +0000 (13:46 +0200)]
Chain together vertex shaders, like with fragment shaders.
Steinar H. Gunderson [Tue, 2 Oct 2012 11:37:57 +0000 (13:37 +0200)]
Rename identity.glsl to identity-fs.glsl.
Steinar H. Gunderson [Tue, 2 Oct 2012 11:35:59 +0000 (13:35 +0200)]
Rename output_glsl to output_fragment_shader.
Steinar H. Gunderson [Tue, 2 Oct 2012 10:36:39 +0000 (12:36 +0200)]
Upload the texture via PBOs. Slight speedup on nVidia, rather neutral on Intel.
Steinar H. Gunderson [Tue, 2 Oct 2012 10:12:43 +0000 (12:12 +0200)]
Fix a C++11 compatibility issue.
Steinar H. Gunderson [Tue, 2 Oct 2012 09:56:19 +0000 (11:56 +0200)]
Upload textures in BGRA format instead of RGB. Somewhat faster on nVidia, somewhat slower on Intel.
Steinar H. Gunderson [Tue, 2 Oct 2012 09:48:34 +0000 (11:48 +0200)]
Use glTexSubImage2D on second and later uploads.
Steinar H. Gunderson [Tue, 2 Oct 2012 09:46:59 +0000 (11:46 +0200)]
Revert "Slight cleanup in texture upload format selection."
This reverts commit
7ead6f1c15daf8e5a70df583198a8ce58251b0d6 .
Steinar H. Gunderson [Tue, 2 Oct 2012 09:46:46 +0000 (11:46 +0200)]
Slight cleanup in texture upload format selection.
Steinar H. Gunderson [Tue, 2 Oct 2012 09:44:51 +0000 (11:44 +0200)]
Slight cleanup in texture upload format selection.
Steinar H. Gunderson [Mon, 1 Oct 2012 23:36:23 +0000 (01:36 +0200)]
Fix float/int divide (it is not allowed).
Steinar H. Gunderson [Mon, 1 Oct 2012 23:28:16 +0000 (01:28 +0200)]
<sys/time.h> is needed for gettimeofday.
Steinar H. Gunderson [Mon, 1 Oct 2012 23:24:57 +0000 (01:24 +0200)]
Less old-style GLSL extension use.
Steinar H. Gunderson [Mon, 1 Oct 2012 23:10:40 +0000 (01:10 +0200)]
Add fallbacks for systems without proper monotonic clocks (e.g. OS X).
Steinar H. Gunderson [Mon, 1 Oct 2012 22:49:53 +0000 (00:49 +0200)]
Vignette actually looks really nice in linear light; update effectlist.txt.
Steinar H. Gunderson [Mon, 1 Oct 2012 22:46:21 +0000 (00:46 +0200)]
Fix a warning.
Steinar H. Gunderson [Mon, 1 Oct 2012 22:46:04 +0000 (00:46 +0200)]
Hook up the vignette effect to the sample app.
Steinar H. Gunderson [Mon, 1 Oct 2012 22:45:55 +0000 (00:45 +0200)]
Add a vignette effect.
Steinar H. Gunderson [Mon, 1 Oct 2012 22:45:08 +0000 (00:45 +0200)]
Add vec2 parameter support.
Steinar H. Gunderson [Mon, 1 Oct 2012 22:07:05 +0000 (00:07 +0200)]
Remove obsolete file todo.glsl.
Steinar H. Gunderson [Mon, 1 Oct 2012 22:04:18 +0000 (00:04 +0200)]
Make it possible to instantiate the colorspace conversion effect separately.
Steinar H. Gunderson [Mon, 1 Oct 2012 22:03:12 +0000 (00:03 +0200)]
Flip some need bits in the conversion effects.