assurance-tunnel
assurance-tunnel
assurance-tunnel
assurance-tunnel

Live Drawing Patch



  • **[EDIT]** IMPORTANT! You must install the updated Lines plugin attached to this post to get the patch to work properly. These plugins should work fine with 1.3.0f24 and after; I cannot guarantee they will work with versions before that. Note that there are versions for both Mac and Windows. To install the plugins, please read this [Knowledge Base Article](http://troikatronix.com/support/kb/installing-an-isadora-plugin-manually/).
    In addition, I've improved the patch, showing how you can use the velocity of the mouse to control the width of the line, and how you can use the drawn path as a mask to reveal a video image.
    **[ORIGINAL POST]**
    Hi Everybody,
    The question of how to do 'live drawing' comes up from time to time. I took a patch created by Michel and modified it to allow this in a better way than I've done it before for people.
    Have a look a the patch to see.
    Enjoy,
    Mark
    P.S. Uses the Pete Warden's "GaussianBlur" FreeFrame actor... you can get those free plugins here: 
    Mac = http://troikatronix.com/files/petes-plugins-ub.dmg
    Windows = http://troikatronix.com/files/petes-plugins-win.exe

    3206e1-live-drawing-v2.izz 1ab777-lines-plugin-mac.zip 1f03b2-lines-plugin-win.zip


  • Tech Staff

    Thanx, more of those!


  • Tech Staff

    Excited to have a look at this.
    Thanks.



  • When I use this I have to draw over slowly otherwise it leaves gaps in the line. Looking at the patch it does not make so much sense why. It seems it should be able to join all the point s together. What is the reasoning behind this behaviour?



  • @Fred

    It does not work too well for fast mouse movement. It is the same with many other similar tools I have tried(Modul8 paint module comes in mind).
    A good one is written in Java
    http://al.chemy.org/
    and if we could modify it to accept OSC from Isadora we would have pretty amazing drawing tool. But the author is not interested doing anything to it any more but the code is available.
    I just notice that if you modify some params it starts to draw with gaps and restart the patch would restore it to normal.


  • i like how it makes occasional gaps in the lines, especially as it's unpredictable, which for me makes it an even more exciting patch to play with.

    i've started to edit the patch and adding the ability to pause the drawing so i can move the mouse to a new position.
    next thing i'm going to add is a marker for where the mouse position is while in drawing pause mode. 

  • Tech Staff

    I haven't been able to play with this yet.. but it sounds great



  • I received this question via our support form: "Is there a way of  making the drawing interact with the movie, as in "erasing" the movie wherever the lines play?"

    The answer is yes, and the answer is shown in the updated patch in my original post.
    Best Wishes,
    Mark


  • Hey All,

    I investigated the problem with the gaps. Here's why it's happening: the Mouse Watcher and Value Delay Lines are updated more frequently than the speed at which the Lines actor is drawn.
    Remember, actors like the Mouse Watcher are executed at the rate specified by the "General Service Task"; actors that draw video are drawn at the currently specified frame rate. (Both of these are specified in the General tab of the Isadora Preferences.)
    What that means is that the values being produced by the Mouse Watcher + Value Delay Lines could change between drawing cycles... leaving a gap between the lines.
    There is no really good solution to this problem except to update the Lines actor to buffer the line parameters when the 'trigger' input is triggered, i.e., to keep a list of all the pending lines so that when it draws, all of them are drawn. So that's exactly what I've done.
    Please see the improved patch along with the updated actors in my original post at the top of this thread.
    Best Wishes,
    Mark


  • I say, Mark, I say! I like it a lot. Specially the reaction to the line size. I can see contructing this to act similar to my favorite al.chemy.


  • Tech Staff

    Thats great!



  • We had some friends with kids over. I was just fooling with the patch and constructed a quick fun game for them. Left mouse click enable drawing on the stage; right click grab a new frame.

    BTW does anybody know if Wacom tablet could be used independent of the mouse so the Stage Mouse Watcher could see only that?

    1d209b-draw-on-your-face.izz


  • Tech Staff

    @Mark

    When I did my drawing patch, I also notice putting the framerate to 75 frames gave me much better results with less gaps as with 25.

    Best
    Michel



  • Dear Michel,

    Yes... I think it would be a similar problem with my original version. However, there should be no gaps in the updated version (as long as you install the revised plugins) regardless of frame rate.
    Best Wishes,
    Mark

  • Tech Staff

    Yes your version2 solves this.

    Best
    Michel



  • @Vanakaru

    Mark seems to have fixed this. I have made a few drawing system myself, depending on what kind of GL mode I am using to draw I can get no gaps easily and have varying responses to movement if it is really too fast. I have generally taken the approach of using the mouse input as an interrupt and adding all the points to an array of GL objects to draw. Whether these are drawn every frame or not is not important, I draw an updated version of the array every frame. Unfortunately there is not so much information on how precisely Isadora executes the actors.
    Within Openframeworks there are 2 loops, 1 for updating and one for drawing. The draw runs at the frame rate you set and update runs as fast as it possibly can unless you slow it down. I still like to sketch a bit with Izzy and I think that having this structure would be beneficial. Some events that are not related to drawing anything to the screen could be run faster than the draw loop. If the draw loop is too much for your system to do the underlying interaction would still be fast and responsive. I think that as Izzy functions now it just does everything one thing at a time after each other. If this is the case altering the underlying behaviour would be way too much work to do in any hurry.


  • Thanks, Mark.  Much appreciated.
    Michel



  • Thanks, Mark! This is a really interesting actor. I am going to wire it up to my kinect and see what i can get going on.

    Justin



  • Thank you!



  • Hi everyone,

    I find out this post and want to thank Michel and Mark for their contribution.
    Just a question, is it normal that my fans turn very fast and my GPU rises to 75 degree ?
    I tried to uncheck the Graphics automatic permutation in the System Preferences without success...
    All the best.
    Clement

Log in to reply
 

Looks like your connection to TroikaTronix Community Forum was lost, please wait while we try to reconnect.