-
rep
for easy to use "shadertoy glsl" to "gem glsl" you can use theses examples here :
https://github.com/danomatika/BangYourHead/tree/master/7.Graphics/10.Shaders/2.ShaderToybasically you have to copy/paste this glsl header code to be compliant with gem :
/////////////////////////start Pd Header // 2015 Sofy Yuditskaya // put all the shadertoy constants here for ease of use uniform vec3 iResolution; // viewport resolution (in pixels) uniform float iGlobalTime; // shader playback time (in seconds) uniform float iTimeDelta; // render time (in seconds) uniform int iFrame; // shader playback frame uniform float iChannelTime[4]; // channel playback time (in seconds) uniform vec3 iChannelResolution[4]; // channel resolution (in pixels) uniform vec4 iMouse; // mouse pixel coords. xy: current (if MLB down), zw: click // changed samplerXX to sampler2D so it would be recognized, you can also change it to samplerCube as needed uniform sampler2D iChannel0; // input channel. XX = 2D/Cube uniform sampler2D iChannel1; // input channel. XX = 2D/Cube uniform sampler2D iChannel2; // input channel. XX = 2D/Cube uniform sampler2D iChannel3; // input channel. XX = 2D/Cube uniform vec4 iDate; // (year, month, day, time in seconds) uniform float iSampleRate; // sound sample rate (i.e., 44100) void mainImage(out vec4 fragColor, in vec2 fragCoord); // changelog for Pd: //running mainImage() from main() // declared Shadertoy's usual variables above // declared iChannel0...3 variables individually void main( ) { mainImage(gl_FragColor, gl_FragCoord.xy); } //paste ShaderToy code below /////////////////////////end Pd Header
-
rep
Works with Pd 0.43.1extended-20110908, G.E.M. 0.93 svn (8 sept too), and natty x86_64.
You did it guido ! Bravo !
And thanks for commenting your code, it help.
Also : it seems that switching masks doesnt work well, only the depth buffer works, I have this warning :0(12) : warning C7532: global type sampler2DRect requires "#version 140" or later 0(12) : warning C0000: ... or #extension GL_ARB_texture_rectangle : enable 0(31) : warning C7531: global function texture2DRect requires "#extension GL_ARB_texture_rectangle : enable" before use
But it may be my fault as I compiled GEM from svn on x86_64, and I'm not sure about gem's compilation options.
-
rep
with this command :
nm -go Gem.pd_linux | grep ' T ' | grep 'setup' | grep -v '_ZN' | sed -e 's/Gem.pd_linux:...................//' | sed -e 's/_setup//'It seems that I get all the objects produced by GEM
for more infos (in french) :
http://codelab.fr/2455 -
rep
Nice thread ! I'm also curious about how to blur specific shapes in G.E.M., my goal is to provide a simple 'depth of field' effect, a kind of blur based on zbuffer.
The 2 solutions I see for now :-
repeat shapes (with [until] or glsl), because once repeated a lot forms could seems to be 'blurred', and more the form is far from the point of view more the shape is repeated
see Gem/examples/10.glsl/10.geometry.pd or Gem/examples/02.advanced/20.double-gemhead_vs_repeat.pd -
render a scene to a framebuffer, blur specific parts of the frame with a shader, based on zbuffer...
-
-
rep
@ClaudiusMaximus said:
I patched my Pd to print out all classes created, here's what Gem provides (current CVS version compiled on Linux with most options enabled)
hi ClaudiusMaximus, could you tell us how to patch pd to have this kind of "-verbose" thing ?
thx -
rep
@nay said:
Does anyone have any experience playing back professional HD quality vid in PD?
i don't have any experience about playing HD videos, but i often create big GEM windows (3072x768px) for audio/visual live shows, and it is really good (never under 30fps). I know your problem is very different of what im talking about, but if you can provide some samples videos at the resolution you talk about i can give it a try and report the tests, (linux/pd-extended/last GEM/geforce 7700)...
-
rep
for now multiple windows with gem is experimental :
http://puredata.info/dev/gemwiki/MultipleWindows
more infos here :
http://lists.puredata.info/pipermail/gem-dev/2006-10/002387.html
i never tried to use multiple windows myself, but i've use [pix_preview] which works fine under linux, you will find it here :
http://artefacte.org/pd/
(and the other externals/objects on these page are great too) -
rep
hello, you can ask as well Paris Treantafeles :
http://www.parisgraphics.com/
he as done somes nice '8 bits style' videos :
-
rep
[arraysize] do it :
http://pure-data.sourceforge.net/old/documentation.php#arraysizebut you can also change the size of an array with the [resize< message at loading time...