[PD] porting vade shaders collection to Pd

cyrille henry ch at chnry.net
Tue Dec 27 23:12:34 CET 2011



Le 27/12/2011 14:44, Marco Donnarumma a écrit :
> Hi Guido, Cyrille,
>
> thanks for bringing the discussion further.
> Actually Guido, I think I read you on the Pd forum few days ago and checked your patches too, nice work.
>
> As for the documentation.
> Personally, a great part of my first attempts at working with glsl in Pd were completely mined by the absence of a wrapper object for the glsl compilation; the lack of a [pix_shader] or [a_shad] for instance. It would be useful to have [pix_shader] included in GEM.
> It might sound silly, but as Guido mentioned, getting a shader to work it's a much of a trial-and-error exercise.
> Thus, in my experience, it took a lot of time to figure out where to look for bugs or problems.
>
> I needed to study glsl (obviously) to start understanding; but I believe that users would benefit from the inclusion of some initial, basic information within the glsl help patches. For example, shader with rectangular textures won't work if you don't switch the [pix_texture] mode adequately.
> This is not explained anywhere in Pd, and, yes, of course you can getting to it by learning with on-line resources, but it would be far easier to place a [comment] somewhere in the Pd patch. (I don't think it's there already, but please tell me if so.).
this is what the 1st example do explain.
at least, i thought it does. maybe it should be a bit more verbose.


>
> Shortly, imho the present glsl help are very complex for a noob because:
> _there isn't an "official" wrapper, so the loading/compilation process is visible and appears quite confusing.
wow. this is strange for me. I always do a copy/paste.
anyway, there is now a _glsl abstraction since i use it for the 14th example.
other examples can be update to use it.


> _uniforms and how to control them from a Pd patch are not explained anywhere (within Pd)
this is used (but not explain) in most example.
i believed an example is better than text, but it look like i'm wrong.



> _basic and clear info about getting a new shader to work in Pd are missing
you just have to imitate the "basic example"...

>
> of course, the whole glsl thing is complex and need further study anyway, but it would be awesome to inform the glsl in GEM with the stuff above.
feel free to update help and examples.
i thought it was clear. examples provide the information i wish i had before creating them...

cheers
Cyrille


>
> M
>
>
>
> On Tue, Dec 27, 2011 at 2:10 PM, cyrille henry <ch at chnry.net <mailto:ch at chnry.net>> wrote:
>
>
>
>     Le 27/12/2011 13:02, Guido Tamino a écrit :
>
>         Hello,
>
>         actually the [pix_shader] abstraction comes from a depth of field simulation I made with glsl/gem a while ago. Download link, documentation and demo video are available at the link below. If anyone wants to try it out, the depth of field patch is pretty self-explainatory and should work just out of the box.
>         http://vimeo.com/30188933
>
>         Before being swamped with work I was interested in porting Vade shaders and other glsl stuff to PD. I implemented his blur shaders (motion blur, zoom blur and fast blur) and they all seems to work fine but a lot of work has to be done before using them as solid generic effects.
>         http://guidotamino.it/__download/glslBlur.zip <http://guidotamino.it/download/glslBlur.zip>
>
>         A couple months ago I opened a discussion with Cyrille on the theme but we were both too busy with work to fully dive into the subject.
>
>     since then, i made a "good" triangle blur shader to work with a modified version of guildo patch.
>     i commit everything as a gem example yesterday.
>
>
>         In the meanwhile I played around with the optical flow experiments by the jitter community with nice results, a demo could be seen here:
>         http://vimeo.com/30517302
>
>     nice.
>
>
>
>         I'm definetely interested in developing a set of glsl wrappers to make the whole thing easier for a beginner. I am a beginner myself and I had some tough times trying to figure out things like how to multipass glsl effects or how to feed multiple textures to a shader. This kind of stuff is almost undocumented and needs a lot of trial and error in order to be understood.
>
>     there are few multipass example in gem.
>     I try to make 1 example for each technical possibility.
>     nothing is fully documented, but i think everything is documented.
>     at least, everything that i'm aware of. (i was also a glsl noob before making gem examples...)
>
>     do you think that more multipass example are needed?
>     or is it just that since it's complex, it need time to be fully understood?
>
>     cheer
>     Cyrille
>
>         Best,
>         Guido
>
>         Il giorno 27/dic/2011, alle ore 11.22, philippe boisnard ha scritto:
>
>             Hello
>
>             We have worked in codelab french forum about that since one month :
>             I give you the first test-lib that I have created :
>             <a_shader-tr.zip>
>             [a_cons] is a usefull abstract to create box of variables.
>
>             2 exemples with multipass of texture
>             http://t-pas-net.com/videos/__test_multi_shad.mov <http://t-pas-net.com/videos/test_multi_shad.mov>
>             http://vimeo.com/33974266
>
>             Yet, I adapt GLSL. system of particules with pmpd.
>             http://t-pas-net.com/videos/__fragGLSLtest5.mov <http://t-pas-net.com/videos/fragGLSLtest5.mov>
>             http://t-pas-net.com/videos/__testGLSL_pmpd.flv <http://t-pas-net.com/videos/testGLSL_pmpd.flv>
>
>             :-)
>
>             p
>
>             Le 27 déc. 2011 à 10:36, Marco Donnarumma a écrit :
>
>                 Hi all,
>
>                 while studying glsl (after attending Cyrille's workshop at the PdCon), I'm porting Vade's collection of shaders [1] to Pd,
>                 and I only need to know I'm not reinventing the wheel.
>
>                 I'm creating a glsl-help-files lib, based on the [pix_shader] wrap by Cyrille; adding ready made patches for diverse shaders and briefly explaining while some work out of the box and some others not.
>                 It could be useful to have such documentation in Pd, as the glsl topic is not covered in depth, or at least not enough for a noob in this field as myself.
>
>                 I recall Marius was doing something similar, but I'm not sure how the project ended up.
>
>                 [1] http://001.vade.info/?page_id=__20 <http://001.vade.info/?page_id=20>
>
>
>                 --
>                 Marco Donnarumma
>                 Independent New Media and Sonic Arts Practitioner, Performer, Teacher
>                 ACE, Sound Design MSc by Research (ongoing)
>                 The University of Edinburgh, UK
>                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>                 Portfolio: http://marcodonnarumma.com <http://marcodonnarumma.com/>
>                 Research: http://res.marcodonnarumma.com <http://res.marcodonnarumma.__com/ <http://res.marcodonnarumma.com/>> | http://www.thesaddj.com <http://www.thesaddj.com/> | http://www.flxer.net <http://www.flxer.net/>
>                 Director: http://www.__liveperformersmeeting.net <http://www.liveperformersmeeting.net> <http://www.__liveperformersmeeting.net/ <http://www.liveperformersmeeting.net/>>
>                 _________________________________________________
>                 Pd-list at iem.at <mailto:Pd-list at iem.at> <mailto:Pd-list at iem.at <mailto:Pd-list at iem.at>> mailing list
>
>                 UNSUBSCRIBE and account-management -> http://lists.puredata.info/__listinfo/pd-list <http://lists.puredata.info/listinfo/pd-list>
>
>
>             _________________________________________________
>             Pd-list at iem.at <mailto:Pd-list at iem.at> <mailto:Pd-list at iem.at <mailto:Pd-list at iem.at>> mailing list
>
>             UNSUBSCRIBE and account-management -> http://lists.puredata.info/__listinfo/pd-list <http://lists.puredata.info/listinfo/pd-list>
>
>
>
>
>         _________________________________________________
>         Pd-list at iem.at <mailto:Pd-list at iem.at> mailing list
>         UNSUBSCRIBE and account-management -> http://lists.puredata.info/__listinfo/pd-list <http://lists.puredata.info/listinfo/pd-list>
>
>
>
>
>
> --
> Marco Donnarumma
> Independent New Media and Sonic Arts Practitioner, Performer, Teacher
> ACE, Sound Design MSc by Research (ongoing)
> The University of Edinburgh, UK
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> Portfolio: http://marcodonnarumma.com <http://marcodonnarumma.com/>
> Research: http://res.marcodonnarumma.com <http://res.marcodonnarumma.com/> | http://www.thesaddj.com <http://www.thesaddj.com/> | http://www.flxer.net <http://www.flxer.net/>
> Director: http://www.liveperformersmeeting.net <http://www.liveperformersmeeting.net/>



More information about the Pd-list mailing list