<html>
<head>
<meta http-equiv="content-type" content="text/html;
charset=ISO-8859-15">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<br>
<div class="moz-text-flowed" style="font-family: -moz-fixed;
font-size: 13px;" lang="x-western">Hello,<br>
<br>
i add many modifications to cycles trunk <b>Revision 44019</b>
(10.02.2012) <br>
I am not a active coder - and i search someone who can add this to
blender trunk. <br>
I have no supported GPU and i could not test it - i hope it work.<br>
<br>
Here is a diff-file created with WinMerge and all Cycles-files<br>
<br>
Number of changed files: 34 <br>
<br>
DOWNLOAD: <br>
<a moz-do-not-send="true" class="moz-txt-link-freetext"
href="http://www.pasteall.org/blend/11623">http://www.pasteall.org/blend/11623</a><br>
(rename .zip.blend to .zip)<br>
<br>
Thread:<br>
<a moz-do-not-send="true" class="moz-txt-link-freetext"
href="http://blenderartists.org/forum/showthread.php?243186-My-Cycles-Modifications-%28WIP%29&s=7afc8ba4e98bbbb10cf8d2eb5b54a7e2">http://blenderartists.org/forum/showthread.php?243186-My-Cycles-Modifications-%28WIP%29&s=7afc8ba4e98bbbb10cf8d2eb5b54a7e2</a><br>
<br>
<br>
<br>
=====MODIFICATIONS===== <br>
<br>
1) pixel based sampling instead of frame based sampling <br>
i create new buffer called "samplemap" for this <br>
this buffer collect number of samples per pixel <br>
<br>
2) mat_stop (shader) + obj_stop (object) + back_stop (background)
<br>
can used to stop pixel-based path-tracing <br>
set number of max samples for this <br>
detection: first ray<br>
reflections or bounces are not changed <br>
<br>
3) mat_samples (shader) + obj_samples (object) <br>
can used to render more samples per pass <br>
detection: first ray<br>
reflections or bounces are not changed <br>
<br>
4) mat_mask (shader) + obj_mask (object) <br>
switch for quick mask out (like holdout) <br>
different result than camera ray visibility <br>
real pixel based masking! <br>
<br>
5) invert_mask switch <br>
invert masking logic for whole scene <br>
quick preview of masked pixels <br>
can combined with back_stop! <br>
<br>
sample file:<br>
<a moz-do-not-send="true" class="moz-txt-link-freetext"
href="http://www.pasteall.org/blend/11624">http://www.pasteall.org/blend/11624</a><br>
<br>
6) color management switch from blender <br>
<br>
<br>
<br>
=====CODE ISSUES ====== <br>
<br>
1) exposure & invert_masks do not sync in interactive mode <br>
here is something missing in cycles <br>
<br>
2) obj_samples / obj_stop / obj_mask collected in "visibility" <br>
not so clean, but it was easier to add for me <br>
someone should change it? <br>
<br>
3) samplemap highest bit is used as STOP_BIT <br>
so max number of samples should be limited to 0x7FFFFFFF <br>
here is also no check for max number of samples for each pixel -
can done easy in "path_trace" <br>
<br>
4) obj_stop & mat_stop - buffers in kernel use also highest
bit for "masking" <br>
so since we have also STOP_BIT, i put masking to highest bit too -
all flags are untouched<br>
<br>
5) i do not add extra passes to blender (like combined): <br>
"samples" and "stop" - data is hidden for user <br>
should change someone? <br>
<br>
6) mat_stop & obj_stop & back_stop can produce strange
results with DOF and/or antialiasing (if stop value is very low) <br>
this is known - and bit "dirty" - but a great hack to speed up <br>
<br>
</div>
</body>
</html>