Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(819)

Issue 224067: fake fur bsdf

Can't Edit
Can't Publish+Mail
Start Review
Created:
14 years, 2 months ago by masterblasterofdisaster
Modified:
14 years, 1 month ago
Reviewers:
dev-osl, larrygritz, aconty, ckulla
Base URL:
http://openshadinglanguage.googlecode.com/svn/trunk/
Visibility:
Public.

Description

This is a fake fur shader based on the paper: http://www.danbgoldman.com/misc/fakefur/fakefur.pdf There are 3 closures, two of which essentially re-purpose bsdf_hair.cpp and have additional stuff to account for fur over fur attenuation of light, and another closure that does the same sort of thing for attenuated skin lighting underneath fur. Finally, there is an OSL shader which needs to be provided as well - this shader handles a local surface to world space transform for fur tangent vectors and includes yet another fur opacity function for handling the final compositing of fur over skin. For use in place of full blown hair where medium to low LOD allows... Re: "SMOOTHSTEP()" - I was informed at one point this is already laying around somewhere, but I haven't found it yet.

Patch Set 1 #

Patch Set 2 : update to fakefur bsdf, plus change to ashikhmin velvet fresnel #

Patch Set 3 : changes to fake fur per alex's comments #

Patch Set 4 : one more update... #

Total comments: 16

Patch Set 5 : correction to patch set... #

Total comments: 4

Patch Set 6 : ... #

Total comments: 2

Patch Set 7 : update #

Unified diffs Side-by-side diffs Delta from patch set Stats (+486 lines, -12 lines) Patch
src/liboslcomp/typecheck.cpp View 1 chunk +3 lines, -0 lines 0 comments Download
src/liboslexec/CMakeLists.txt View 1 chunk +1 line, -1 line 0 comments Download
src/liboslexec/bsdf_ashikhmin_velvet.cpp View 4 chunks +5 lines, -11 lines 0 comments Download
src/liboslexec/bsdf_fakefur.cpp View 1 2 3 4 5 6 1 chunk +471 lines, -0 lines 0 comments Download
src/liboslexec/master.cpp View 1 chunk +3 lines, -0 lines 0 comments Download
src/liboslexec/oslops.h View 1 chunk +3 lines, -0 lines 0 comments Download

Messages

Total messages: 33
masterblasterofdisaster
14 years, 2 months ago (2010-02-26 01:59:02 UTC) #1
masterblasterofdisaster
update to fakefur bsdf, plus change to ashikhmin velvet fresnel
14 years, 1 month ago (2010-03-04 19:38:10 UTC) #2
aconty
I don't know why I can't put comments on the code, but here is the ...
14 years, 1 month ago (2010-03-04 21:34:27 UTC) #3
ckulla
I'm not able to view side-by-side diffs. Are you sure you picked the right project ...
14 years, 1 month ago (2010-03-04 21:36:52 UTC) #4
aconty
I guess this code: pdf = cos_pi; cos_pi = furIllum * furOpac; pdf = 0.f; ...
14 years, 1 month ago (2010-03-04 21:38:38 UTC) #5
masterblasterofdisaster
On 2010/03/04 21:34:27, aconty wrote: > I don't know why I can't put comments on ...
14 years, 1 month ago (2010-03-04 22:21:53 UTC) #6
masterblasterofdisaster
On 2010/03/04 21:36:52, ckulla wrote: > I'm not able to view side-by-side diffs. Are you ...
14 years, 1 month ago (2010-03-04 22:23:34 UTC) #7
ckulla
The diff is probably fine, but this review is looking at the python svn tree ...
14 years, 1 month ago (2010-03-04 22:24:33 UTC) #8
masterblasterofdisaster
changes to fake fur per alex's comments
14 years, 1 month ago (2010-03-04 22:29:30 UTC) #9
aconty
You still have cos_pi = furIllum * furOpac; Is that intentional?
14 years, 1 month ago (2010-03-04 22:32:52 UTC) #10
masterblasterofdisaster
On 2010/03/04 22:32:52, aconty wrote: > You still have > > cos_pi = furIllum * ...
14 years, 1 month ago (2010-03-04 22:35:49 UTC) #11
aconty
Shouldn't it be? cos_pi *= furIllum * furOpac; or something that doesn't just overwrite cos_pi?
14 years, 1 month ago (2010-03-04 22:44:07 UTC) #12
masterblasterofdisaster
On 2010/03/04 22:44:07, aconty wrote: > Shouldn't it be? > > cos_pi *= furIllum * ...
14 years, 1 month ago (2010-03-04 22:46:45 UTC) #13
masterblasterofdisaster
one more update...
14 years, 1 month ago (2010-03-04 22:55:14 UTC) #14
aconty
LGTM
14 years, 1 month ago (2010-03-04 23:01:37 UTC) #15
ckulla
I have a few comments: http://codereview.appspot.com/224067/diff/3004/11004 File src/liboslexec/bsdf_fakefur.cpp (right): http://codereview.appspot.com/224067/diff/3004/11004#newcode33 src/liboslexec/bsdf_fakefur.cpp:33: Could you include a ...
14 years, 1 month ago (2010-03-04 23:14:26 UTC) #16
aconty
Wait a minute, if as Chris says this is to be mapped on a regular ...
14 years, 1 month ago (2010-03-04 23:28:16 UTC) #17
masterblasterofdisaster
On 2010/03/04 23:28:16, aconty wrote: > Wait a minute, if as Chris says this is ...
14 years, 1 month ago (2010-03-04 23:30:41 UTC) #18
aconty
Then chris is right, everything should be single sided and you should sample a hemisphere. ...
14 years, 1 month ago (2010-03-04 23:37:44 UTC) #19
larrygritz
http://codereview.appspot.com/224067/diff/3004/11004 File src/liboslexec/bsdf_fakefur.cpp (right): http://codereview.appspot.com/224067/diff/3004/11004#newcode34 src/liboslexec/bsdf_fakefur.cpp:34: inline float SMOOTHSTEP(const float &edge0, const float &edge1, float ...
14 years, 1 month ago (2010-03-05 00:10:30 UTC) #20
masterblasterofdisaster
On 2010/03/05 00:10:30, larrygritz wrote: > http://codereview.appspot.com/224067/diff/3004/11004 > File src/liboslexec/bsdf_fakefur.cpp (right): > > http://codereview.appspot.com/224067/diff/3004/11004#newcode34 > ...
14 years, 1 month ago (2010-03-05 00:29:57 UTC) #21
lg_imageworks.com
If it won't compile with lowercase, that probably means it's already defined somewhere! Hmmm... seems ...
14 years, 1 month ago (2010-03-05 00:41:51 UTC) #22
aconty
I'm not sure if oiio should be a basic library for everything. Well, that's not ...
14 years, 1 month ago (2010-03-05 00:59:01 UTC) #23
lg_imageworks.com
I totally agree, that's why I suggested oslops.h. I was just commenting that there's a ...
14 years, 1 month ago (2010-03-05 01:13:07 UTC) #24
jreynolds_imageworks.com
Larry Gritz wrote: > If it won't compile with lowercase, that probably means it's already ...
14 years, 1 month ago (2010-03-05 01:26:17 UTC) #25
masterblasterofdisaster
updated per yesterdays review comments
14 years, 1 month ago (2010-03-05 23:31:32 UTC) #26
masterblasterofdisaster
correction to patch set...
14 years, 1 month ago (2010-03-05 23:39:44 UTC) #27
ckulla
http://codereview.appspot.com/224067/diff/35001/18005 File src/liboslexec/bsdf_fakefur.cpp (right): http://codereview.appspot.com/224067/diff/35001/18005#newcode88 src/liboslexec/bsdf_fakefur.cpp:88: CLOSURE_CTOR (FakefurDiffuseClosure) : BSDFClosure(side, Labels::DIFFUSE, Both) You need to ...
14 years, 1 month ago (2010-03-05 23:59:01 UTC) #28
aconty
http://codereview.appspot.com/224067/diff/35001/18005 File src/liboslexec/bsdf_fakefur.cpp (right): http://codereview.appspot.com/224067/diff/35001/18005#newcode160 src/liboslexec/bsdf_fakefur.cpp:160: sample_cos_hemisphere (Nf, omega_out, randu, randv, omega_in, pdf); Which means ...
14 years, 1 month ago (2010-03-06 00:14:36 UTC) #29
masterblasterofdisaster
...
14 years, 1 month ago (2010-03-06 00:27:20 UTC) #30
ckulla
http://codereview.appspot.com/224067/diff/40001/32004 File src/liboslexec/bsdf_fakefur.cpp (right): http://codereview.appspot.com/224067/diff/40001/32004#newcode88 src/liboslexec/bsdf_fakefur.cpp:88: CLOSURE_CTOR (FakefurDiffuseClosure) : BSDFClosure(side, Labels::DIFFUSE, side) The third argument ...
14 years, 1 month ago (2010-03-06 00:31:08 UTC) #31
masterblasterofdisaster
update
14 years, 1 month ago (2010-03-09 16:46:05 UTC) #32
ckulla
14 years, 1 month ago (2010-03-10 18:06:10 UTC) #33
LGTM
Sign in to reply to this message.

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b