Impasto discussion

Boudewijn Rempt boud at valdyas.org
Wed Jul 21 06:18:03 CEST 2010


On Saturday 17 July 2010, JL VT wrote:

snip report of good work.

> Now onto the questions.

I've been travelling so I'm a bit late answering -- in fact, I'm in Bangalore 
now so I'm a bit time-zone challenged -- though probably more aligned to you 
than usual :-)

> I'm still a bit lost, so I'd like to narrow my inquiries to something
> concrete. Please validate these hypotheses I have:
> ---The source dealing with the impasto bumpmapping should go in
> koffice/krita/image , in a new class, probably base_impasto.cpp or
> impasto.cpp, devoted to describe a layer subject to being bumpmapped
> and store the projection.
> ---The source dealing with the 5th channel (the height channel) in new
> colorspaces should go in koffice/libs/pigment/colorspaces , in new
> classes, probably called OLDNAMEHeightEnhanced.cpp or
> OLDNAMEImpastoCapable.cpp .
> ---I can operate directly in the main branch of Krita because adding
> those new classes shouldn't break the program for anyone.

Well... Yes, you can hack in Krita trunk, without branching. 

As for the other things, pending Lukas' judgment (since he's your mentor), I 
really would skip hacking in pigment for now. Now that you've got a possible 
algorithm for bumpmapping, I'd add one new paint device member variable, with 
the grayscale without alpha colorspace, either 8 or 16 bits/channel, whatever 
seems best to you, to KisGroupLayer. Call it "heightfield" or something like 
that.

Only actually use the heightfield of the toplevel group layer, the root layer, 
in the paintops that set height. Use that height field when calculating the 
effect of the impast on the projection.

Later on, we can add height fields to all paint layers and start composing 
them, but then the application of the impasto effect on the projection is 
already coded.

Later, later we should probably integrate the height field with the 
colorspaces in pigment, but that will be quite complicated and I really would 
only start doing that once Cyrille is settled in his apartment and can spare 
some time helping out with the design.


-- 
Boudewijn Rempt | http://www.valdyas.org


More information about the kimageshop mailing list