Uh, sorry, looks like I missed your update, you have in fact already done
it without new setting...  let me check.

Sorry, a bit too much happening around mypaint at the moment, I should stop
trying to look at everything.

On Sat, Dec 15, 2012 at 07:57:16PM +0100, Martin Renold wrote:
> Okay, I think we should push this right after 1.1 is released. This needs to
> be exposed to users who are willing to give feedback for a bit longer.  The
> release is mainly for the silent majority who will only curse instead.  And
> I have just discovered that the 1pixel brush is actually used in practice,
> and we can't fix it by modifying the settings, becasue of the string freeze.
> 
> About adding a new brushsetting to the GUI, I would love to say that this is
> as easy as adding the new setting to the list - however, this is no longer
> the case.  There are some manual fixes needed now in addition.  The
> complexity has increased, I guess MyPaint is no longer a brush editor
> prototype :-) Maybe I'll try to make it easy again after 1.1 is released.
> 
> Regards
> Martin
> 
> On Fri, Dec 14, 2012 at 06:15:02PM +0000, Micael wrote:
> > I have spent some time investigating how to put a checkbox on the brush
> > property window, and found that it currently only supports sliders for
> > numeric values, which are inapropriate for the solution I think is best
> > (see my previous post for more info).
> > 
> > As such, I have decided to go with David Gowers' solution for now, which
> > seemed simple enough and effective. I have found a lot more difficulties
> > than I thought I would though. Passing new values around the draw functions
> > isn't trivial, and a lot of value-copying is happening. I think this should
> > be rethought and maybe passing a struct reference/pointer would be better.
> > I have however succeeded in doing this.
> > 
> > I have rebased my repo to a recent mypaint revision, and applied a new
> > patch that checks for the brush's AA value and enables/disables the AA
> > codepath plus pixel-snapping.
> > This enables the ability to have gapless, pixel-sharp brushes.
> > 
> > Please test: https://gitorious.org/~mdias/mypaint/mdiass-mypaint
> > 
> > On Sun, Dec 9, 2012 at 5:32 AM, Micael <[email protected]> wrote:
> > 
> > > The current AA slider should be renamed to something more appropriate,
> > > like "feather" for example.
> > > Enabling/Disabling the new AA algorithm should be a checkbox, and when
> > > disabled the x/y coords of the dabs should be snapped to pixel centers 
> > > (eg:
> > > "x = floor(x)+0.5"). This would allow for pixel-sharp dabs and it would
> > > perform better than before since it'd also take care of the gappy strokes.
> > >
> > > I would do this myself, but I just don't have enough time to investigate
> > > how exactly one creates a new widget in the brush settings and pass it's
> > > value to the C brushlib up to the "render_dab_mask" function in the most
> > > appropriate way.
> > >
> > > This is just my opinion on how things should be.
> > >
> > >
> > > On Sat, Dec 8, 2012 at 5:02 AM, David Gowers <[email protected]> wrote:
> > >
> > >> I have tried your code and I find that it's a great improvement in terms
> > >> of consistent thickness for thin lines, whether those lines are hard or
> > >> soft edged; it's much more fun and predictable. I actually prefer it for
> > >> pixeling, because those 2-pixel-wide dabs constitute a majority of the 
> > >> work
> > >> on a pixel piece. The only lack is the inability to paint at a 1px detail
> > >> level (again, not only for hard edged brushes; your patches effectively
> > >> 'thicken' all <2px brushes to approximately 2px).
> > >>
> > >> IMO the logical way to turn off AA is by checking whether the brush
> > >> 'antialiasing' value is < 0.001. I haven't spotted a fast way to do that
> > >> yet.
> > >>
> > >>
> > >>
> > >> On Sat, Dec 8, 2012 at 3:09 PM, Micael <[email protected]> wrote:
> > >>
> > >>> @Martin: The final deltas calculate the difference between the "rr"
> > >>> value at the farthest and nearest positions inside the pixel to get an 
> > >>> idea
> > >>> of how much should we fade out the pixel. Since this value can be <1 
> > >>> (but
> > >>> never <0 since rr_far is always >= rr_near), we make it so that it will
> > >>> always be >=1, so that the final division will always fade out the 
> > >>> pixel,
> > >>> instead of fade it in (dividing by >=0 <1). This also makes sure that a
> > >>> division by zero will never occur.
> > >>>
> > >>> @David: antialising is all about removing hard edges, and since
> > >>> currently the patch doesn't offer an option to disable the AA codepath,
> > >>> it's currently impossible to guarantee "pixel-snapped" edges. At most 
> > >>> you
> > >>> can guarantee that a dab with diameter of <=1.0 will never occupy more 
> > >>> than
> > >>> 4 pixels (if painting near a pixel's "vertex").
> > >>>
> > >>> The experimental/1pixel definitely needs a snap-to-pixel-no-aa option so
> > >>> that the brush will always paint at a pixel's center, and not go through
> > >>> the AA codepath.
> > >>>
> > >>> The AA-attempt code also needs to be fixed to not allow <=0 radius dabs.
> > >>>
> > >>> On Fri, Dec 7, 2012 at 9:49 PM, David Gowers <[email protected]> wrote:
> > >>>
> > >>>>  >for example "experimental/1pixel" is now
> > >>>> >broader than 1 pixel.  (Not our most important brush.)
> > >>>>
> > >>>> That seems ok as long as it's possible for me to fix it to actually be
> > >>>> 1pixel again; or at least that proper hard-edged dab rendering is still
> > >>>> possible.
> > >>>>
> > >>>> I'll check out if that is the case ASAP.
> > >>>>
> > >>>>
> > >>>> On Sat, Dec 8, 2012 at 7:22 AM, Martin Renold <[email protected]> wrote:
> > >>>>
> > >>>>> hi Micael
> > >>>>> hi David
> > >>>>>
> > >>>>> I think your patch is good now. But it affects existing brushes.
> > >>>>>
> > >>>>> David (or anyone else working on brushes): could you please test your
> > >>>>> brushes with this branch?
> > >>>>>
> > >>>>> https://gitorious.org/~mdias/mypaint/mdiass-mypaint/commits/master
> > >>>>> git clone git://gitorious.org/~mdias/mypaint/mdiass-mypaint.git
> > >>>>>
> > >>>>> I would like to know if it's okay to use this for 1.1, or if we better
> > >>>>> do it
> > >>>>> after the release, to give more time to check and re-tune brushes.
> > >>>>>  Most
> > >>>>> brushes profit from this change I think, especially dynamic ink
> > >>>>> brushes.
> > >>>>>
> > >>>>> Some are definitively changed, for example "experimental/1pixel" is 
> > >>>>> now
> > >>>>> broader than 1 pixel.  (Not our most important brush.)
> > >>>>>
> > >>>>> Some small sharp ink brushes may look a bit blurred now. I have
> > >>>>> noticed this
> > >>>>> with "deevad/soft_dip_pen" from set #2.  Maybe they can be retuned.
> > >>>>>  The
> > >>>>> settings "hardness", "anti-aliasing" and "opacity" are good 
> > >>>>> candidates.
> > >>>>>
> > >>>>> --
> > >>>>> Martin Renold
> > >>>>>
> > >>>>> _______________________________________________
> > >>>>> Mypaint-discuss mailing list
> > >>>>> [email protected]
> > >>>>> https://mail.gna.org/listinfo/mypaint-discuss
> > >>>>>
> > >>>>
> > >>>>
> > >>>
> > >>>
> > >>> --
> > >>> Micael Dias
> > >>>
> > >>
> > >>
> > >
> > >
> > > --
> > > Micael Dias
> > >
> > 
> > 
> > 
> > -- 
> > Micael Dias
> 
> -- 
> Martin Renold
> 
> _______________________________________________
> Mypaint-discuss mailing list
> [email protected]
> https://mail.gna.org/listinfo/mypaint-discuss
> 

-- 
Martin Renold

_______________________________________________
Mypaint-discuss mailing list
[email protected]
https://mail.gna.org/listinfo/mypaint-discuss

Reply via email to