On 6 Feb, David A. Bartold wrote:
> I think a better solution would be a definable pressure curve, much
> like Wacom's Windows driver has. That'd probably be a feature of the
> general mechanism you described and perhaps what you have in mind.
Hm, generating a lookup table and getting the pressure from there
instead directly from the driver would be trivial to implement and
seems like a worthy feature to me.
I made an entry into bugzilla so we don't forget that. I'd like to wait
for Sven and Mitch to complete the changes so we don't have to implement
this in several places hopefully.
> user (or a brush designer) can define their own function and the
> mechanism would be usable for all tools, not just ones that draw by
> copying from bitmaps.
> The major problem with having different texture maps for each pressure
> is the amount of memory necessary to store them. Texture tiles
> generally are much bigger than brushes to reduce visible repetition.
> A texture of size 256x256 is not uncommon, and if there were 8 copies
> of that texture stored in a brush pipe file, each bitmap corresponding
> to a different pressure, then the file will be ~500k. That's a big
> download (and a lot of cache misses) just for one texture. Since many
> people download their copies of GIMP, that's a lot of bandwidth, too.
But you can have different effects if you have the choice to use
pressure-mapped-brushes as song as we don't have mathematical brushes
because some tools (in reallife) behave quite differently when one applies
bigger pressure to them.
> I'm not convinced creating bitmaps specific to certain values of
> parameter subsets (such as angle, pressure, velocity, random, ordering,
> etc) is really the proper solution. It works okay if you want to
> change a tool depending on the value of one variable, but each time a
> parameter is added, the number of bitmaps increases manyfold.
> Basically the whole mechanism explodes in an exponential disaster. ;)
Sure, but since this is optional I don't really see the problem.
> For example: a 256x256 texture with 9 angles and 8 pressure levels
> will require more than 4 megs of memory.
Who cares? People that like to use such a beast (have you ever tried
the speed of HUGE brushes with any graphics application?) also have
the necessary memory... it's like people that can afford a 1.4 GHz P-IV
probably also have the necessary money but this is also just optional. :)