![]() Registered Member ![]()
|
Greetings. I want to tell all the developers that Krita is incredible! I have been an avid fan of GIMP painter for about a year, but Krita has just changed my mind. I just installed Kubuntu 12.04 on my system and my Intuos 3 tablet configured easily with kcm_tablet. I am impressed with all of the features in Krita 2.4. The rotation feature on my Art Pen stylus is now working and I could not be happier with it's performance.
Is there any chance that the Airbrush stylus will be supported in a future version? It would be useful to be able to control brush opacity or size in real time with the airbrush finger wheel. I realize this is easier said than done. I don't know anything about programming but I would be willing to take a look at the source code. Is something like this possible with the existing brush engine? Thanks! |
![]() KDE Developer ![]()
|
Hi!
The only reason the airbrush isn't supported is that none of the Krita developers have one. It would be pretty easy to map the airbrush wheel to just about any parameter a brush can use. You can find all the relevant code in calligra/krita/plugins/paintops/libpaintop. |
![]() Registered Member ![]()
|
hm, does krita actually support the Airbrush now or is there something wrong with my configuration?
for me the current mapping of the airbrush wheel is on the Rotation sensor, which expects 360° rotation but the wheel has only 180° and you actually get to use only 90° of the wheel as you have to mirror at the center of the curve so that you can get a useable behavior. here are 2 somewhat usable curves: http://goo.gl/B8pfPV http://goo.gl/Z6yUVS |
![]() KDE Developer ![]()
|
Hm, the rotation sensor is meant to work with the rotation feature of the art pen -- we never had a wacom airbrush so we never really could add support for its features.
|
![]() Registered Member ![]()
|
ok is there something i could try to improve it?
scince the krita source code does mention that the wheel should be mapped to the tangential pressure sensor, does krita detects wrong values or does the mapping to the rotation sensor happen somewhere else in the source im using linux, the wheel works for me in gimp and while using evtest /dev/input/event18 | grep ABS_WHEEL it displays Event code 8 (ABS_WHEEL) Event: time 1422033885.388729, type 3 (EV_ABS), code 8 (ABS_WHEEL), value 0 - 1023 when i use the wheel. evtest does also display for Event code 2 (ABS_Z) and for Event code 5 (ABS_RZ) a min value of -900 and max value of 899 which is the value krita displays when launching it from the terminal but i dont recive any of those events while using evtest. using the Krita Tablet debugger it reports rot: 180 at the min wheel position rot: 360 at the mid wheel position and rot: 180 at the max wheel position |
![]() Registered Member ![]()
|
playing a bit more with the curves, i got 2 new curves which allow using nearly the full range of the wheel,
http://goo.gl/Xa47qs http://goo.gl/UnBiE4 but its a bit tedius as you have to place 4 - 5 points close together at the middle, top and bottom of the curve, a zoomable curve view or/and vector handels would probably make it alot easier. so, krita not really supporting the airbrush gives you 4 behaviors in 1 sensor ![]() the downside is, besides making those curves, i have to make several duplicate brushes depending on the behavior i want to use. save/loadable curve/brush dynamics could improve this. and to a different question, would it be hard to make use of the proximity sensor? i guess then you could get a more real airbrush feeling as you wouldnt have the resistance of the brush tip, so you would remove the tip of the stylus and remap the button on top of the airbrush to button 1 but it probably would be better on a cintiq then on a tablet and it would be a bit harder to use accurately, i guess similar as a real airbrush vs pen. it also would be nice to modifiy the density of the pixel brush with a sensor. ok thats already to many feature requests for a unsupported device ![]() |
![]() KDE Developer ![]()
|
Those are very interesting curves
![]() ![]() |
![]() Registered Member ![]()
|
yeah the 360° and 0° is on the middle wheel position, the lowest wheel position is 180° and the highest position is also 180° so you have to begin the curve from 180° if you want the full range of the wheel like in curve3 and curve4 but thats also where you get a value jump from lowest to highest value, as you cant break the curve in 2.
|
![]() KDE Developer ![]()
|
Hm... Could you check what 'tangential pressure' does? That is what the airbrush wheel is called internally, and that might map better.
|
![]() Registered Member ![]()
|
using the tangential pressure curve does nothing.
|
![]() KDE Developer ![]()
|
|
![]() Registered Member ![]()
|
got it working and added a bugreport with the fix.
|
![]() Registered Member ![]()
|
Hi, all!
Could you please update and test whether Airbrush works now as expected? http://commits.kde.org/calligra/142b953 ... 8796e57c4c |
Registered users: bartoloni, Bing [Bot], Google [Bot], Yahoo [Bot]