[Bf-cycles] Cycles Modifications

DONOTSPAM do.not.spam at gmx.de
Mon Feb 13 19:43:17 CET 2012


Hello,

i add many modifications to cycles trunk *Revision 44019* (10.02.2012)
I am not a active coder - and i search someone who can add this to 
blender trunk.
I have no supported GPU and i could not test it - i hope it work.

Here is a diff-file created with WinMerge and all Cycles-files

Number of changed files: 34

DOWNLOAD:
http://www.pasteall.org/blend/11623
(rename .zip.blend to .zip)

Thread:
http://blenderartists.org/forum/showthread.php?243186-My-Cycles-Modifications-%28WIP%29&s=7afc8ba4e98bbbb10cf8d2eb5b54a7e2



=====MODIFICATIONS=====

1) pixel based sampling instead of frame based sampling
i create new buffer called "samplemap" for this
this buffer collect number of samples per pixel

2) mat_stop (shader) + obj_stop (object) + back_stop (background)
can used to stop pixel-based path-tracing
set number of max samples for this
detection: first ray
reflections or bounces are not changed

3) mat_samples (shader) + obj_samples (object)
can used to render more samples per pass
detection: first ray
reflections or bounces are not changed

4) mat_mask (shader) + obj_mask (object)
switch for quick mask out (like holdout)
different result than camera ray visibility
real pixel based masking!

5) invert_mask switch
invert masking logic for whole scene
quick preview of masked pixels
can combined with back_stop!

sample file:
http://www.pasteall.org/blend/11624

6) color management switch from blender



=====CODE ISSUES ======

1) exposure & invert_masks do not sync in interactive mode
here is something missing in cycles

2) obj_samples / obj_stop / obj_mask collected in "visibility"
not so clean, but it was easier to add for me
someone should change it?

3) samplemap highest bit is used as STOP_BIT
so max number of samples should be limited to 0x7FFFFFFF
here is also no check for max number of samples for each pixel - can 
done easy in "path_trace"

4) obj_stop & mat_stop - buffers in kernel use also highest bit for 
"masking"
so since we have also STOP_BIT, i put masking to highest bit too - all 
flags are untouched

5) i do not add extra passes to blender (like combined):
"samples" and "stop" - data is hidden for user
should change someone?

6) mat_stop & obj_stop & back_stop can produce strange results with DOF 
and/or antialiasing (if stop value is very low)
this is known - and bit "dirty" - but a great hack to speed up

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.blender.org/pipermail/bf-cycles/attachments/20120213/2ffc8005/attachment.htm 


More information about the Bf-cycles mailing list