<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-7658360860567207664</id><updated>2012-01-24T22:20:24.045-08:00</updated><category term='feature animarion film'/><category term='flash'/><category term='hotOcean'/><category term='Secondary Display'/><category term='lighting'/><category term='pointclouds'/><category term='MAYA API'/><category term='deformer'/><category term='exr'/><category term='RSL plugin'/><category term='OpenSuse'/><category term='Alembic'/><category term='Shader'/><category term='bkm'/><category term='C++'/><category term='cooliris'/><category term='Indirect Illumination'/><category term='MonkeyDesign'/><category term='firefox'/><category term='Maya2012'/><category term='GI'/><category term='renderman'/><category term='python'/><category term='plugin'/><category term='PyQT'/><category term='shading tools'/><category term='logoanimation'/><category term='maya'/><category term='ptc'/><category term='autodesk maya'/><category term='PyDEV'/><category term='brickmaps'/><category term='Duncan Jones'/><category term='rendering'/><category term='shell scripting'/><category term='Mental Ray'/><category term='lighting tools'/><category term='motion design'/><category term='multy-channel'/><category term='Clint Mansell'/><category term='Musion'/><category term='shading'/><category term='Tracking System'/><category term='python API'/><category term='Feature Animation Film'/><category term='Linux'/><category term='python maya'/><category term='prman'/><category term='slim'/><category term='MEL'/><category term='Project managment'/><category term='rosatom'/><category term='rerendering'/><category term='Moon movie'/><category term='spherical harmonics'/><title type='text'>Finding For The Light</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>53</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-976587899513075708</id><published>2012-01-12T22:37:00.000-08:00</published><updated>2012-01-15T07:54:53.067-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='C++'/><category scheme='http://www.blogger.com/atom/ns#' term='MAYA API'/><title type='text'></title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;br /&gt;I started to develop of a GPU "Light Server" for renderman.&lt;br /&gt;And for best understanding and debuging alghoritms I implemented a special Maya locator.&lt;br /&gt;It generates random directions(vectors) in a hemisphere domain.&lt;br /&gt;Color of the vectors calculate by light integrator of area light samples.&lt;br /&gt;&lt;iframe allowfullscreen="" frameborder="0" height="315" src="http://www.youtube.com/embed/8u-1ELbx-p0" width="600"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-976587899513075708?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/976587899513075708/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2012/01/i-am-started-to-development-of-gpu.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/976587899513075708'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/976587899513075708'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2012/01/i-am-started-to-development-of-gpu.html' title=''/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://img.youtube.com/vi/8u-1ELbx-p0/default.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-606033466364231446</id><published>2011-10-11T09:29:00.000-07:00</published><updated>2011-10-11T11:34:22.886-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Alembic'/><category scheme='http://www.blogger.com/atom/ns#' term='Maya2012'/><title type='text'>Compiling Alembic for Maya2012 under OpenSuse 11.2</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-2l3nQleWMkc/TpRus6weXlI/AAAAAAAADSo/NPxhLnSM8TA/s1600/Alembic-1.0.gif" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="202" src="http://3.bp.blogspot.com/-2l3nQleWMkc/TpRus6weXlI/AAAAAAAADSo/NPxhLnSM8TA/s400/Alembic-1.0.gif" width="400" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; color: white; text-align: left;"&gt;&lt;span id="internal-source-marker_0.23021656358645748" style="background-color: transparent; font-family: Arial; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;I done compiling the Alembic_1.0_2011080800 rev. with some changes in system.&lt;/span&gt; &lt;/div&gt;&lt;div style="color: white;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;span style="color: black;"&gt;&lt;span style="font-family: Arial;"&gt;&lt;span style="color: white;"&gt;!!! Warning. After installing working version of hdf5 was rewriting some libs like libz.a. Any programms call this lib may be finished with errors.&amp;nbsp; I think it is a good reason for backup.&lt;/span&gt;&lt;br style="color: white;" /&gt;&lt;span style="color: white;"&gt;It is does impossible load Houdini “hou” module in Maya python or Idle editor.&amp;nbsp; I could repair this functionality and finally I will write how-to.&lt;/span&gt;&lt;br style="color: white;" /&gt;&lt;b&gt;&lt;span style="color: white;"&gt;1. So, in first we are doing changes&amp;nbsp; in system: &amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;br style="color: white;" /&gt;&lt;span style="color: white;"&gt;1.1. Install make2.8&lt;/span&gt;&lt;br style="color: white;" /&gt;&lt;span style="color: white;"&gt;1.2. Install boost_1_42_0 from /usr/src/packages/SOURCES/&lt;/span&gt;&lt;br style="color: white;" /&gt;&lt;span style="color: white;"&gt;1.3. Install hdfs5. This one from official repositories does not work. I try dozen of hdf5 revisions but only hdf5-1.8.5-linux-x86_64-static-fpic I found passed for compiling Alembic.&amp;nbsp; It available on http://www.hdfgroup.org/ftp/HDF5/prev-releases/hdf5-1.8.5/bin/linux-x86_64/hdf5-1.8.5-linux-x86_64-static-fpic.tar.gz. Unzip and install. One note about this package - that is, contain the critical libz.a.&lt;/span&gt;&lt;br style="color: white;" /&gt;&lt;span style="color: white;"&gt;1.4. Please check OpenExr libs. Usually&amp;nbsp; ilmbase include in official Suse reositories.&lt;/span&gt;&lt;br style="color: white;" /&gt;&lt;br style="color: white;" /&gt;&lt;b&gt;&lt;span style="color: white;"&gt;2.&amp;nbsp; Prepare Alembic instalation.&lt;/span&gt;&lt;/b&gt;&lt;br style="color: white;" /&gt;&lt;span style="color: white;"&gt;2.1. In ./Alembic_1.0_2011080800/build/AlembicMaya.cmake please add string&lt;/span&gt;&lt;br style="color: white;" /&gt;&lt;span style="color: white;"&gt;SET( MAYA_ROOT "/usr/autodesk/maya2010-x64" ).&lt;/span&gt;&lt;br style="color: white;" /&gt;&lt;span style="color: white;"&gt;2.2. In directory ./Alembic_1.0_2011080800/build/bootstrap run “alembic_bootstrap.py” configurator. I was agree with default path for alembic build dir&amp;nbsp; -&amp;nbsp; “alembic_build”. After I was enter requested path for to configure build.&amp;nbsp; It is was:&lt;/span&gt;&lt;br style="color: white;" /&gt;&lt;span style="color: white;"&gt;/usr/include/boost/lexical_cast.hpp&lt;/span&gt;&lt;br style="color: white;" /&gt;&lt;span style="color: white;"&gt;/usr/local/lib/libboost_thread.a&lt;/span&gt;&lt;br style="color: white;" /&gt;&lt;span style="color: white;"&gt;/usr/include/zlib.h&lt;/span&gt;&lt;br style="color: white;" /&gt;&lt;span style="color: white;"&gt;/usr/lib64/libz.a&lt;/span&gt;&lt;br style="color: white;" /&gt;&lt;span style="color: white;"&gt;/usr/include/hdf5.h&lt;/span&gt;&lt;br style="color: white;" /&gt;&lt;span style="color: white;"&gt;/usr/lib64/libhdf5.a&lt;/span&gt;&lt;br style="color: white;" /&gt;&lt;span style="color: white;"&gt;/usr/include/OpenEXR/ImathMath.h&lt;/span&gt;&lt;br style="color: white;" /&gt;&lt;span style="color: white;"&gt;/usr/autodesk/maya2012-x64/lib/libImath.a&lt;/span&gt;&lt;br style="color: white;" /&gt;&lt;br style="color: white;" /&gt;&lt;b&gt;&lt;span style="color: white;"&gt;3. Installation.&lt;/span&gt;&lt;/b&gt;&lt;br style="color: white;" /&gt;&lt;span style="color: white;"&gt;3.1 In “alembic_build” dir write “make” and enter. I hope your installation will be successful.&lt;/span&gt;&lt;br style="color: white;" /&gt;&lt;span style="color: white;"&gt;3.2. After that you can find compiled plugins in .../alembic_build/maya/AbcExport&amp;nbsp; and ./alembic_build/maya/AbcImport dirs.&lt;/span&gt;&lt;br style="color: white;" /&gt;&lt;span style="color: white;"&gt;Good luck!&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-606033466364231446?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/606033466364231446/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2011/10/compiling-alembic-for-maya2012-under.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/606033466364231446'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/606033466364231446'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2011/10/compiling-alembic-for-maya2012-under.html' title='Compiling Alembic for Maya2012 under OpenSuse 11.2'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-2l3nQleWMkc/TpRus6weXlI/AAAAAAAADSo/NPxhLnSM8TA/s72-c/Alembic-1.0.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-2103162523366279805</id><published>2011-10-02T14:27:00.000-07:00</published><updated>2011-10-04T10:04:33.158-07:00</updated><title type='text'>renderman: displacment with overlapping in progress</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;iframe allowfullscreen="" frameborder="0" height="420" src="http://www.youtube.com/embed/3fkGrBauwvA" width="640"&gt;&lt;/iframe&gt;&lt;br /&gt;Actually I develop displacement shader with overlapping &amp;nbsp;the top and bottom surface parts.&lt;br /&gt;&lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;div&gt;I have long had the idea to make displacement more expressive.&lt;/div&gt;&lt;div&gt;The implementation has been done with simple box kernel. This gave the artifacts to the overlapping parts&lt;/div&gt;&lt;div&gt;but I hope that the gaussian kernel will manage with it.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-8d2KJbSLM94/Tos8P2RnQNI/AAAAAAAADSU/z7tEqGIF1BE/s1600/displ1.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="225" src="http://4.bp.blogspot.com/-8d2KJbSLM94/Tos8P2RnQNI/AAAAAAAADSU/z7tEqGIF1BE/s400/displ1.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-n0ABq_sIauo/Tos8SC9rSxI/AAAAAAAADSY/pndIbe7qH44/s1600/displ2.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="225" src="http://2.bp.blogspot.com/-n0ABq_sIauo/Tos8SC9rSxI/AAAAAAAADSY/pndIbe7qH44/s400/displ2.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-Su1jsGSWgNc/Tos8UOkDx8I/AAAAAAAADSc/KbmQNNh6v3c/s1600/displ3.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="225" src="http://4.bp.blogspot.com/-Su1jsGSWgNc/Tos8UOkDx8I/AAAAAAAADSc/KbmQNNh6v3c/s400/displ3.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-1OXsObyMPIc/Tos8WakTN2I/AAAAAAAADSg/W3Y7AjPY3w4/s1600/displ4.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="225" src="http://2.bp.blogspot.com/-1OXsObyMPIc/Tos8WakTN2I/AAAAAAAADSg/W3Y7AjPY3w4/s400/displ4.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-dSjQzYXwj7k/Tos8YKqipOI/AAAAAAAADSk/A33v48R5EQo/s1600/displ5.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="225" src="http://4.bp.blogspot.com/-dSjQzYXwj7k/Tos8YKqipOI/AAAAAAAADSk/A33v48R5EQo/s400/displ5.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-2103162523366279805?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/2103162523366279805/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2011/10/renderman-displacment-with-overlapping.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/2103162523366279805'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/2103162523366279805'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2011/10/renderman-displacment-with-overlapping.html' title='renderman: displacment with overlapping in progress'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://img.youtube.com/vi/3fkGrBauwvA/default.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-2264883215149148781</id><published>2011-09-12T21:39:00.000-07:00</published><updated>2011-09-12T21:39:59.515-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='prman'/><title type='text'>renderman: skin shader development in progress 2</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-9S-XyhftTuE/Tm7dRXT3jLI/AAAAAAAADSQ/q9DsVy2C7XM/s1600/skin_shader_in_progress_02.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="400" src="http://4.bp.blogspot.com/-9S-XyhftTuE/Tm7dRXT3jLI/AAAAAAAADSQ/q9DsVy2C7XM/s400/skin_shader_in_progress_02.png" width="281" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;There is no life in it without any reflections&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-2264883215149148781?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/2264883215149148781/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2011/09/renderman-skin-shader-development-in_12.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/2264883215149148781'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/2264883215149148781'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2011/09/renderman-skin-shader-development-in_12.html' title='renderman: skin shader development in progress 2'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-9S-XyhftTuE/Tm7dRXT3jLI/AAAAAAAADSQ/q9DsVy2C7XM/s72-c/skin_shader_in_progress_02.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-3032220842009337728</id><published>2011-09-11T23:10:00.000-07:00</published><updated>2011-09-11T23:10:32.889-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='prman'/><title type='text'>renderman: skin shader development in progress</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-AXAPHlwGW7o/Tm2gPlL7TTI/AAAAAAAADSM/TT1vSCDUTfY/s1600/skin_shader_in_progress_01.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="480" src="http://4.bp.blogspot.com/-AXAPHlwGW7o/Tm2gPlL7TTI/AAAAAAAADSM/TT1vSCDUTfY/s640/skin_shader_in_progress_01.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;This is first step of development. It would measure dipole radius for this scene because I think&amp;nbsp;"unitlength" may be wrong.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-3032220842009337728?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/3032220842009337728/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2011/09/renderman-skin-shader-development-in.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/3032220842009337728'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/3032220842009337728'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2011/09/renderman-skin-shader-development-in.html' title='renderman: skin shader development in progress'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-AXAPHlwGW7o/Tm2gPlL7TTI/AAAAAAAADSM/TT1vSCDUTfY/s72-c/skin_shader_in_progress_01.png' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-246613301687590720</id><published>2011-09-06T15:02:00.000-07:00</published><updated>2011-09-11T22:59:56.118-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='spherical harmonics'/><category scheme='http://www.blogger.com/atom/ns#' term='renderman'/><title type='text'>renderman: SH-Shadowing</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;iframe allowfullscreen="" frameborder="0" height="420" src="http://www.youtube.com/embed/WvVQ3Om6__k" width="640"&gt;&lt;/iframe&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-246613301687590720?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/246613301687590720/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2011/09/blog-post.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/246613301687590720'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/246613301687590720'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2011/09/blog-post.html' title='renderman: SH-Shadowing'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://img.youtube.com/vi/WvVQ3Om6__k/default.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-2038890828564421129</id><published>2011-08-31T14:12:00.000-07:00</published><updated>2011-09-08T06:38:52.283-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='autodesk maya'/><category scheme='http://www.blogger.com/atom/ns#' term='lighting tools'/><category scheme='http://www.blogger.com/atom/ns#' term='shading tools'/><title type='text'>Old tools review : Light Zeppelin - BakeNaut Control Panel</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/--aq3y9IG5G4/Tl6ivR8c-sI/AAAAAAAADSA/o-cNNuTBr0A/s1600/Screen_Bakenaut.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="640" src="http://4.bp.blogspot.com/--aq3y9IG5G4/Tl6ivR8c-sI/AAAAAAAADSA/o-cNNuTBr0A/s640/Screen_Bakenaut.png" width="284" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;An example of an artist-friendly tools.&lt;br /&gt;&lt;span style="color: #333333;"&gt;&lt;span style="font-family: arial,sans-serif;"&gt;I really cannot understand why after 02 I wrote 06.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-2038890828564421129?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/2038890828564421129/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2011/08/old-tools-review-light-zeppelin.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/2038890828564421129'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/2038890828564421129'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2011/08/old-tools-review-light-zeppelin.html' title='Old tools review : Light Zeppelin - BakeNaut Control Panel'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/--aq3y9IG5G4/Tl6ivR8c-sI/AAAAAAAADSA/o-cNNuTBr0A/s72-c/Screen_Bakenaut.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-6240638375864756050</id><published>2011-08-31T14:03:00.000-07:00</published><updated>2011-08-31T14:03:06.535-07:00</updated><title type='text'>Old tools review : Light Zeppelin AE Templetes</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-GCWMgrKi8hg/Tl6g8ozhIjI/AAAAAAAADR8/j0r4S7biuOY/s1600/AE_Editors.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="490" src="http://1.bp.blogspot.com/-GCWMgrKi8hg/Tl6g8ozhIjI/AAAAAAAADR8/j0r4S7biuOY/s640/AE_Editors.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;This is AE Templetes with dummy banners. Really bad color scheme.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-6240638375864756050?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/6240638375864756050/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2011/08/old-tools-review-light-zeppelin-ae.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/6240638375864756050'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/6240638375864756050'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2011/08/old-tools-review-light-zeppelin-ae.html' title='Old tools review : Light Zeppelin AE Templetes'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-GCWMgrKi8hg/Tl6g8ozhIjI/AAAAAAAADR8/j0r4S7biuOY/s72-c/AE_Editors.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-1518276452184460397</id><published>2011-08-30T13:12:00.000-07:00</published><updated>2011-08-30T13:13:42.420-07:00</updated><title type='text'>Old tools review : Render Control</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-X9zSGNKp1jM/Tl1Dh2iok2I/AAAAAAAADRs/JFVlKUxehjU/s1600/04_FinalRender.BMP" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="531" src="http://3.bp.blogspot.com/-X9zSGNKp1jM/Tl1Dh2iok2I/AAAAAAAADRs/JFVlKUxehjU/s640/04_FinalRender.BMP" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;This is UI and pipeline scripts was writen for "Frogs Paradise" 3D animation feature.&lt;br /&gt;&lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-RZV2fa7iNcY/Tl1D1Bm2cUI/AAAAAAAADRw/USyjYhmFvUo/s1600/01_occ_setup.BMP" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="332" src="http://4.bp.blogspot.com/-RZV2fa7iNcY/Tl1D1Bm2cUI/AAAAAAAADRw/USyjYhmFvUo/s400/01_occ_setup.BMP" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-ngq7NVIX8no/Tl1D23LAIZI/AAAAAAAADR0/PU-vuKe6SBA/s1600/02_light_setup.BMP" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="332" src="http://3.bp.blogspot.com/-ngq7NVIX8no/Tl1D23LAIZI/AAAAAAAADR0/PU-vuKe6SBA/s400/02_light_setup.BMP" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-v49u62gLr48/Tl1D406tr9I/AAAAAAAADR4/1Om5nsMlPWA/s1600/03_Photons.BMP" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="332" src="http://3.bp.blogspot.com/-v49u62gLr48/Tl1D406tr9I/AAAAAAAADR4/1Om5nsMlPWA/s400/03_Photons.BMP" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-1518276452184460397?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/1518276452184460397/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2011/08/old-tools-review-render-control.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/1518276452184460397'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/1518276452184460397'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2011/08/old-tools-review-render-control.html' title='Old tools review : Render Control'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-X9zSGNKp1jM/Tl1Dh2iok2I/AAAAAAAADRs/JFVlKUxehjU/s72-c/04_FinalRender.BMP' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-505222644403648763</id><published>2011-08-28T07:03:00.000-07:00</published><updated>2011-08-28T08:28:20.755-07:00</updated><title type='text'>The Desert Drought Ground Shader</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-u7MqcG3C83g/TlpJNDwkj5I/AAAAAAAADRQ/5AxMx0EKd6s/s1600/desert_Cropped.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-u7MqcG3C83g/TlpJNDwkj5I/AAAAAAAADRQ/5AxMx0EKd6s/s1600/desert_Cropped.jpg" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;This is procedural renderman contained displacement and surface methods. Main pattern was formed by Voronoy algorithm. Surface method is very simple - it have the minor mutation of colors and fake shadowing in cracks. &amp;nbsp; &lt;/div&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-Ls1f_WxLJdI/TlpJg7uINiI/AAAAAAAADRY/Mw81Y8kb17E/s1600/desert_1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="360" src="http://4.bp.blogspot.com/-Ls1f_WxLJdI/TlpJg7uINiI/AAAAAAAADRY/Mw81Y8kb17E/s640/desert_1.jpg" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-cAc5XN-tCM8/TlpJmA5scLI/AAAAAAAADRg/O8hr4BpnP_0/s1600/desert_2%2528dof1%2529.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="360" src="http://1.bp.blogspot.com/-cAc5XN-tCM8/TlpJmA5scLI/AAAAAAAADRg/O8hr4BpnP_0/s640/desert_2%2528dof1%2529.jpg" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-QVStodt4ZdM/TlpJ0ST4H4I/AAAAAAAADRk/_uXEiOl1un8/s1600/desert_2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="360" src="http://2.bp.blogspot.com/-QVStodt4ZdM/TlpJ0ST4H4I/AAAAAAAADRk/_uXEiOl1un8/s640/desert_2.jpg" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-505222644403648763?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/505222644403648763/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2011/08/desert-drought-ground-shader.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/505222644403648763'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/505222644403648763'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2011/08/desert-drought-ground-shader.html' title='The Desert Drought Ground Shader'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-u7MqcG3C83g/TlpJNDwkj5I/AAAAAAAADRQ/5AxMx0EKd6s/s72-c/desert_Cropped.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-3890620189799112227</id><published>2011-08-28T06:38:00.000-07:00</published><updated>2011-08-28T06:38:29.312-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='C++'/><category scheme='http://www.blogger.com/atom/ns#' term='renderman'/><category scheme='http://www.blogger.com/atom/ns#' term='MAYA API'/><title type='text'></title><content type='html'>&lt;iframe width="620" height="480" src="http://www.youtube.com/embed/2QKNH4ToGMQ" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;&lt;br /&gt;Several month ago I wrote simple MAYA plug-in for converting data from MAYA PaintFX to renderman poinclouds. Generated pointclouds lightweight in contrast to ordinary baked ptc. In result point based occlusion don't physically corrected but plausible for long shots and very fast in rendering.  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-3890620189799112227?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/3890620189799112227/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2011/08/several-month-ago-i-wrote-simple-maya.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/3890620189799112227'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/3890620189799112227'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2011/08/several-month-ago-i-wrote-simple-maya.html' title=''/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://img.youtube.com/vi/2QKNH4ToGMQ/default.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-4223781946852893925</id><published>2011-08-27T08:40:00.001-07:00</published><updated>2011-08-28T06:39:58.361-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PyQT'/><category scheme='http://www.blogger.com/atom/ns#' term='PyDEV'/><category scheme='http://www.blogger.com/atom/ns#' term='python'/><title type='text'>Production Video Editor</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;iframe allowfullscreen="" frameborder="0" height="480" src="http://www.youtube.com/embed/9pJ5c-zxIOQ?hl=en&amp;amp;fs=1" width="640"&gt;&lt;/iframe&gt;&lt;br /&gt;&amp;nbsp;This is the special tool for manage production, vewing and simple editing of sequences.&lt;br /&gt;It is part of the total animation production management system "Atmosphere" that I develop with Andrew Chernysh&amp;nbsp;. It's coded on PyQT. Work in progress.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-4223781946852893925?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/4223781946852893925/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2011/08/production-video-editor.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/4223781946852893925'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/4223781946852893925'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2011/08/production-video-editor.html' title='Production Video Editor'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://img.youtube.com/vi/9pJ5c-zxIOQ/default.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-7231536288981339342</id><published>2011-08-23T14:29:00.000-07:00</published><updated>2011-08-23T14:29:43.887-07:00</updated><title type='text'>Tricks with standart input/output and the renderman shader compiler</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Did you know that renderman shader compiler support the standart unix pipe?&lt;br /&gt;I am looking for a way to rapidly develop co-shaders containing helpers data.&lt;br /&gt;And I found a way that suits me.&lt;br /&gt;&lt;br /&gt;in bash command line:&lt;br /&gt;&lt;br /&gt;echo 'class test(float kd=0.7; float ks=0.1; color diffuse = color(1,0,0)){}' | shader -o /myProj/myShader.slo&lt;br /&gt;&lt;br /&gt;echo 'class test(){ struct _data {varying float kd=0.7; varying float ks=0.1; varying color diffuse = color(1,0,0);}}' | shader -o /myProj/myShader.slo&lt;br /&gt;&lt;br /&gt;in Maya mel:&lt;br /&gt;&lt;br /&gt;system("echo 'class test(float kd=0.7; float ks=0.1; color diffuse = color(1,0,0)){}' | shader -o /myProj/myShader.slo");&lt;br /&gt;&lt;br /&gt;or:&lt;br /&gt;&lt;br /&gt;string $HelperContent = "'class test(float kd=0.7; float ks=0.1; color diffuse = color(1,0,0)){}'";&lt;br /&gt;string $ShaderObject = "/myProj/myShader.slo";&lt;br /&gt;&lt;br /&gt;system("echo "+$HelperContent+"|shader -o "+$ShaderObject);&lt;br /&gt;&lt;br /&gt;in Maya python:&lt;br /&gt;&lt;br /&gt;import os&lt;br /&gt;os.system("echo 'class test(float kd=0.7; float ks=0.1; color diffuse = color(1,0,0)){}' | shader -o /myProj/myShader.slo")&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-7231536288981339342?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/7231536288981339342/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2011/08/tricks-with-standart-inputoutput-and.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/7231536288981339342'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/7231536288981339342'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2011/08/tricks-with-standart-inputoutput-and.html' title='Tricks with standart input/output and the renderman shader compiler'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-5692572427997890358</id><published>2011-07-27T16:17:00.000-07:00</published><updated>2011-08-28T06:40:51.916-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rerendering'/><category scheme='http://www.blogger.com/atom/ns#' term='renderman'/><title type='text'>Renderman rerendering - Camera Edits</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;iframe allowfullscreen="" frameborder="0" height="480" src="http://www.youtube.com/embed/ZqvSf-467n4" width="620"&gt;&lt;/iframe&gt;&lt;br /&gt;Actually I continue my connector maya to renderman rerendering. Work in progress.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-5692572427997890358?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/5692572427997890358/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2011/07/renderman-rerendering-camera-edits.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/5692572427997890358'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/5692572427997890358'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2011/07/renderman-rerendering-camera-edits.html' title='Renderman rerendering - Camera Edits'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://img.youtube.com/vi/ZqvSf-467n4/default.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-54489118495520888</id><published>2011-06-20T21:51:00.000-07:00</published><updated>2011-08-15T23:41:24.887-07:00</updated><title type='text'>PlayBlaster</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;This video illustrate the "PlayBlaster" script for the production of  animation playblasts with labels by one button-click. The Playblaster was writed for production pipeline of "Frogs Paradise" feature animation film. Animation by &lt;a href="http://maratdavletshin.blogspot.com/"&gt;Marat Davletshin&lt;/a&gt;&lt;iframe frameborder="0" height="480" src="http://player.vimeo.com/video/25387181?title=0&amp;amp;byline=0&amp;amp;portrait=0" width="640"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;a href="http://vimeo.com/25387181"&gt;PlayBlaster Tool&lt;/a&gt; from &lt;a href="http://vimeo.com/user1521407"&gt;Alex Mirgorodsky&lt;/a&gt; on &lt;a href="http://vimeo.com/"&gt;Vimeo&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-54489118495520888?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/54489118495520888/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2011/06/playblaster.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/54489118495520888'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/54489118495520888'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2011/06/playblaster.html' title='PlayBlaster'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-4912663039783657052</id><published>2011-05-29T16:00:00.000-07:00</published><updated>2011-05-29T16:35:35.272-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Shader'/><category scheme='http://www.blogger.com/atom/ns#' term='renderman'/><title type='text'>Step By Step Pixar Style Eyes Shader. Step3: The Specular Components</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-l_7SE7dvZAI/TeLXZ40qmdI/AAAAAAAADQA/lx9PaY8MiaA/s1600/Eye_step3_ReflectionComponents.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="144" src="http://1.bp.blogspot.com/-l_7SE7dvZAI/TeLXZ40qmdI/AAAAAAAADQA/lx9PaY8MiaA/s640/Eye_step3_ReflectionComponents.jpg" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;This is the last component needed for our shader eyes - specular glare and reflections.&lt;br /&gt;&lt;iframe frameborder="0" height="480" src="http://player.vimeo.com/video/24393219?title=0&amp;amp;byline=0&amp;amp;portrait=0" width="640"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;a href="http://vimeo.com/24393219"&gt;ReflectivityComponents_SpecAndSpecRefl&lt;/a&gt; from &lt;a href="http://vimeo.com/user1521407"&gt;Alex Mirgorodsky&lt;/a&gt; on &lt;a href="http://vimeo.com/"&gt;Vimeo&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;pre style="background: #001800; color: #55cc66;"&gt;&lt;span style="color: #b96969;"&gt;// cEyeShader.sl written by Alex Mirgorodsky &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #b96969;"&gt;// any questions about this shader code send on my e-mail: &lt;/span&gt;&lt;span style="color: #7144c4;"&gt;amir543@gmail.com&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #b96969;"&gt;// This code free to copy and distribute. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #508050; font-weight: bold;"&gt;class&lt;/span&gt; cEyeShader&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; EyeIrisXPosition &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.5&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; EyeIrisYPosition &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.5&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;uniform color EyeIrisInColor &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0.322&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.18&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.0&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;uniform color EyeIrisMidColor &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0.541&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.278&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.063&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;uniform color EyeIrisOutColor &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0.322&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.18&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.0&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; EyePupilRadius &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.03&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; EyeIrisRadius &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.06&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; EyeIrisSeed &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; EyeIrisCircularNoiseLevel &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.2&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; EyeIrisRadialNoiseLevel &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.75&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; EyeIrisRadialShift &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.3&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; EyeIrisMinLevel &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.05&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; EyeIrisCausticLevel &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;3&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; EyeKd &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.7&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt; &lt;span style="color: #b96969;"&gt;// Koeffs Diffuse&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; EyeWa &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.1&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt; &lt;span style="color: #b96969;"&gt;// Wideness Light Angle&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;color ScleraHighlight &lt;span style="color: #808030;"&gt;=&lt;/span&gt; color&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0.835&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.9&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.965&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;color ScleraLowlight &lt;span style="color: #808030;"&gt;=&lt;/span&gt; color&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0.234&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.234&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.276&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;color ScleraCenterColorize &lt;span style="color: #808030;"&gt;=&lt;/span&gt; color&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;color ScleraOutColorize &lt;span style="color: #808030;"&gt;=&lt;/span&gt; color&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; OffsetCircularColor &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;3&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; EyeShadowLevel &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.1&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #603000;"&gt;string&lt;/span&gt; Category &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;eye&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #b96969;"&gt;// Specular &lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; EyeKs &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; SpecularRoughness &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.003&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; SpecularSharpness &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.9&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #b96969;"&gt;// Reflection&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; Refectivity &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1.0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; MaxDistance &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;256&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; ReflSamples &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;3&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; pi2 &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;6.283185307&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;shader lights&lt;span style="color: #808030;"&gt;[&lt;/span&gt;&lt;span style="color: #808030;"&gt;]&lt;/span&gt; &lt;span style="color: #808030;"&gt;=&lt;/span&gt;&lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;shader categoryLights&lt;span style="color: #808030;"&gt;[&lt;/span&gt;&lt;span style="color: #808030;"&gt;]&lt;/span&gt; &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;shader notCategoryLights&lt;span style="color: #808030;"&gt;[&lt;/span&gt;&lt;span style="color: #808030;"&gt;]&lt;/span&gt; &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;constant &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; countLights &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;constant &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; countCategoryLights &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;constant &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; countNotCategoryLights &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; linstep&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; &lt;span style="color: #603000;"&gt;min&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #603000;"&gt;max&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; x&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; f&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;if&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;x &lt;span style="color: #808030;"&gt;&amp;lt;&lt;/span&gt; &lt;span style="color: #603000;"&gt;min&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt; f &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;if&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;x &lt;span style="color: #808030;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #603000;"&gt;max&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt; f &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;f &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;x&lt;span style="color: #808030;"&gt;-&lt;/span&gt;&lt;span style="color: #603000;"&gt;min&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;/&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #603000;"&gt;max&lt;/span&gt;&lt;span style="color: #808030;"&gt;-&lt;/span&gt;&lt;span style="color: #603000;"&gt;min&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;return&lt;/span&gt; f&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; IrisNoise&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; angle&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; noiseScale1 &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;100&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; noiseScale2 &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;500&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; d &lt;span style="color: #808030;"&gt;=&lt;/span&gt; distance&lt;span style="color: #808030;"&gt;(&lt;/span&gt;point&lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyeIrisXPosition&lt;span style="color: #808030;"&gt;,&lt;/span&gt; EyeIrisXPosition&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; point&lt;span style="color: #808030;"&gt;(&lt;/span&gt;s&lt;span style="color: #808030;"&gt;,&lt;/span&gt; t&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;if&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;d &lt;span style="color: #808030;"&gt;!&lt;/span&gt;&lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &amp;nbsp; &amp;nbsp; angle &lt;span style="color: #808030;"&gt;=&lt;/span&gt; asin&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyeIrisYPosition&lt;span style="color: #808030;"&gt;-&lt;/span&gt;t&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;/&lt;/span&gt;d&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;else&lt;/span&gt; &amp;nbsp; angle &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;if&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyeIrisXPosition&lt;span style="color: #808030;"&gt;-&lt;/span&gt;s &lt;span style="color: #808030;"&gt;&amp;lt;&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt; angle &lt;span style="color: #808030;"&gt;=&lt;/span&gt; PI &lt;span style="color: #808030;"&gt;-&lt;/span&gt; angle&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; n1 &lt;span style="color: #808030;"&gt;=&lt;/span&gt; noise&lt;span style="color: #808030;"&gt;(&lt;/span&gt;s&lt;span style="color: #808030;"&gt;*&lt;/span&gt;noiseScale1&lt;span style="color: #808030;"&gt;,&lt;/span&gt; t&lt;span style="color: #808030;"&gt;*&lt;/span&gt;noiseScale1&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: #808030;"&gt;*&lt;/span&gt; clamp&lt;span style="color: #808030;"&gt;(&lt;/span&gt;noise&lt;span style="color: #808030;"&gt;(&lt;/span&gt;s&lt;span style="color: #808030;"&gt;*&lt;/span&gt;noiseScale2&lt;span style="color: #808030;"&gt;,&lt;/span&gt; t&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: #808030;"&gt;*&lt;/span&gt;noiseScale2&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;.5&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: #808030;"&gt;*&lt;/span&gt; &lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; n2 &lt;span style="color: #808030;"&gt;=&lt;/span&gt; noise&lt;span style="color: #808030;"&gt;(&lt;/span&gt;angle&lt;span style="color: #808030;"&gt;*&lt;/span&gt;&lt;span style="color: #778c77;"&gt;5&lt;/span&gt;&lt;span style="color: #808030;"&gt;+&lt;/span&gt;EyeIrisSeed&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;n1 &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;n1 &lt;span style="color: #808030;"&gt;*&lt;/span&gt; EyeIrisCircularNoiseLevel&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: #808030;"&gt;+&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;-&lt;/span&gt;EyeIrisCircularNoiseLevel&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;n2 &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;n2 &lt;span style="color: #808030;"&gt;*&lt;/span&gt; EyeIrisRadialNoiseLevel&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: #808030;"&gt;+&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;-&lt;/span&gt;EyeIrisRadialNoiseLevel&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;return&lt;/span&gt; n1&lt;span style="color: #808030;"&gt;*&lt;/span&gt;n2&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;normal NormalSurf&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;normal Ns &lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;normal Nn &lt;span style="color: #808030;"&gt;=&lt;/span&gt; normalize&lt;span style="color: #808030;"&gt;(&lt;/span&gt;N&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; depth&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;rayinfo&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;depth&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; depth&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;if&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;depth &lt;span style="color: #808030;"&gt;&amp;gt;&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt; Ns &lt;span style="color: #808030;"&gt;=&lt;/span&gt; faceforward&lt;span style="color: #808030;"&gt;(&lt;/span&gt;Nn&lt;span style="color: #808030;"&gt;,&lt;/span&gt; normalize&lt;span style="color: #808030;"&gt;(&lt;/span&gt;I&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; Nn&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;else&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; sides &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;attribute&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;Sides&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; sides&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;if&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;sides &lt;span style="color: #808030;"&gt;=&lt;/span&gt;&lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &amp;nbsp; &amp;nbsp;Ns &lt;span style="color: #808030;"&gt;=&lt;/span&gt; faceforward&lt;span style="color: #808030;"&gt;(&lt;/span&gt;Nn&lt;span style="color: #808030;"&gt;,&lt;/span&gt; normalize&lt;span style="color: #808030;"&gt;(&lt;/span&gt;I&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; Nn&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;else&lt;/span&gt; Ns &lt;span style="color: #808030;"&gt;=&lt;/span&gt; Nn&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;return&lt;/span&gt; Ns&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: purple;"&gt;}&lt;/span&gt; &amp;nbsp; &lt;br /&gt;&lt;br /&gt;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; angularDistribution&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; rotationAngle&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; angleRad &lt;span style="color: #808030;"&gt;=&lt;/span&gt; radians&lt;span style="color: #808030;"&gt;(&lt;/span&gt;rotationAngle&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; Sn &lt;span style="color: #808030;"&gt;=&lt;/span&gt; s&lt;span style="color: #808030;"&gt;-&lt;/span&gt;EyeIrisXPosition&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; Tn &lt;span style="color: #808030;"&gt;=&lt;/span&gt; t &lt;span style="color: #808030;"&gt;-&lt;/span&gt; EyeIrisYPosition&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; S_Rot &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;Sn&lt;span style="color: #808030;"&gt;*&lt;/span&gt; cos&lt;span style="color: #808030;"&gt;(&lt;/span&gt;angleRad&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: #808030;"&gt;-&lt;/span&gt; Tn&lt;span style="color: #808030;"&gt;*&lt;/span&gt;sin&lt;span style="color: #808030;"&gt;(&lt;/span&gt;angleRad&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: #808030;"&gt;+&lt;/span&gt; EyeIrisXPosition&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; T_Rot &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;Tn&lt;span style="color: #808030;"&gt;*&lt;/span&gt; cos&lt;span style="color: #808030;"&gt;(&lt;/span&gt;angleRad&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: #808030;"&gt;+&lt;/span&gt; Sn&lt;span style="color: #808030;"&gt;*&lt;/span&gt;sin&lt;span style="color: #808030;"&gt;(&lt;/span&gt;angleRad&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: #808030;"&gt;+&lt;/span&gt; EyeIrisYPosition&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; ss &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;atan&lt;span style="color: #808030;"&gt;(&lt;/span&gt;T_Rot&lt;span style="color: #808030;"&gt;-&lt;/span&gt;EyeIrisYPosition&lt;span style="color: #808030;"&gt;,&lt;/span&gt; S_Rot&lt;span style="color: #808030;"&gt;-&lt;/span&gt;EyeIrisXPosition&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: #808030;"&gt;+&lt;/span&gt; PI&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: #808030;"&gt;/&lt;/span&gt; pi2&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; outputDistribution &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; spline &lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;bspline&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; ss&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.5&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.5&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;return&lt;/span&gt; outputDistribution&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #508050; font-weight: bold;"&gt;public&lt;/span&gt; &lt;span style="color: #508050; font-weight: bold;"&gt;void&lt;/span&gt; construct&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;lights &lt;span style="color: #808030;"&gt;=&lt;/span&gt; getlights&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;countLights &lt;span style="color: #808030;"&gt;=&lt;/span&gt; arraylength&lt;span style="color: #808030;"&gt;(&lt;/span&gt;lights&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;uniform &lt;span style="color: #603000;"&gt;string&lt;/span&gt; __category&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; i&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;for&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;i &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt; i &lt;span style="color: #808030;"&gt;&amp;lt;&lt;/span&gt; countLights&lt;span style="color: purple;"&gt;;&lt;/span&gt; i &lt;span style="color: #808030;"&gt;+&lt;/span&gt;&lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;getvar&lt;span style="color: #808030;"&gt;(&lt;/span&gt;lights&lt;span style="color: #808030;"&gt;[&lt;/span&gt;i&lt;span style="color: #808030;"&gt;]&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;__category&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; __category&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;if&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;__category &lt;span style="color: #808030;"&gt;=&lt;/span&gt;&lt;span style="color: #808030;"&gt;=&lt;/span&gt; Category&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;push&lt;span style="color: #808030;"&gt;(&lt;/span&gt;categoryLights&lt;span style="color: #808030;"&gt;,&lt;/span&gt; lights&lt;span style="color: #808030;"&gt;[&lt;/span&gt;i&lt;span style="color: #808030;"&gt;]&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: purple;"&gt;}&lt;/span&gt; &lt;span style="color: #508050; font-weight: bold;"&gt;else&lt;/span&gt; &lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;push&lt;span style="color: #808030;"&gt;(&lt;/span&gt;notCategoryLights&lt;span style="color: #808030;"&gt;,&lt;/span&gt; lights&lt;span style="color: #808030;"&gt;[&lt;/span&gt;i&lt;span style="color: #808030;"&gt;]&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;countCategoryLights &lt;span style="color: #808030;"&gt;=&lt;/span&gt; arraylength&lt;span style="color: #808030;"&gt;(&lt;/span&gt;categoryLights&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;countNotCategoryLights &lt;span style="color: #808030;"&gt;=&lt;/span&gt; arraylength&lt;span style="color: #808030;"&gt;(&lt;/span&gt;notCategoryLights&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #508050; font-weight: bold;"&gt;public&lt;/span&gt; &lt;span style="color: #508050; font-weight: bold;"&gt;void&lt;/span&gt; surface&lt;span style="color: #808030;"&gt;(&lt;/span&gt;output color Ci&lt;span style="color: #808030;"&gt;,&lt;/span&gt; Oi&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #b96969;"&gt;// Dummy Difuse Color&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;color Diffuse &lt;span style="color: #808030;"&gt;=&lt;/span&gt; color&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #b96969;"&gt;// Pupil color (You can make your self solution for Pupil Lighting. But I use siple black color.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;color PupilColor &lt;span style="color: #808030;"&gt;=&lt;/span&gt; color&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; RadialDistribution &lt;span style="color: #808030;"&gt;=&lt;/span&gt; sqrt&lt;span style="color: #808030;"&gt;(&lt;/span&gt;pow&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;s&lt;span style="color: #808030;"&gt;-&lt;/span&gt;EyeIrisXPosition&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: #808030;"&gt;+&lt;/span&gt; pow&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;t&lt;span style="color: #808030;"&gt;-&lt;/span&gt;EyeIrisYPosition&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; reDistribution &lt;span style="color: #808030;"&gt;=&lt;/span&gt; RadialDistribution &lt;span style="color: #808030;"&gt;/&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyeIrisRadius&lt;span style="color: #808030;"&gt;-&lt;/span&gt;EyePupilRadius&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; kKorrection &amp;nbsp;&lt;span style="color: #808030;"&gt;=&lt;/span&gt; EyePupilRadius &lt;span style="color: #808030;"&gt;/&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyeIrisRadius&lt;span style="color: #808030;"&gt;-&lt;/span&gt;EyePupilRadius&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; kSpline &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; spline&lt;span style="color: #808030;"&gt;(&lt;/span&gt; &lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;linear&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; reDistribution&lt;span style="color: #808030;"&gt;,&lt;/span&gt; kKorrection&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;kKorrection&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyeIrisRadialShift &lt;span style="color: #808030;"&gt;+&lt;/span&gt; kKorrection&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt; &lt;span style="color: #808030;"&gt;+&lt;/span&gt; kKorrection&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt; &lt;span style="color: #808030;"&gt;+&lt;/span&gt; kKorrection&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;color IrisPainting &lt;span style="color: #808030;"&gt;=&lt;/span&gt; color spline&lt;span style="color: #808030;"&gt;(&lt;/span&gt; &lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;linear&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; kSpline&lt;span style="color: #808030;"&gt;,&lt;/span&gt; EyeIrisInColor&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;EyeIrisInColor&lt;span style="color: #808030;"&gt;,&lt;/span&gt; EyeIrisMidColor&lt;span style="color: #808030;"&gt;,&lt;/span&gt; EyeIrisOutColor&lt;span style="color: #808030;"&gt;,&lt;/span&gt; EyeIrisOutColor&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;IrisPainting &lt;span style="color: #808030;"&gt;=&lt;/span&gt; IrisPainting &lt;span style="color: #808030;"&gt;*&lt;/span&gt; IrisNoise&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt; &lt;span style="color: #b96969;"&gt;// Add Noise to Iris&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;color IrisColor_W_Pupil &lt;span style="color: #808030;"&gt;=&lt;/span&gt; mix&lt;span style="color: #808030;"&gt;(&lt;/span&gt;PupilColor&lt;span style="color: #808030;"&gt;,&lt;/span&gt; IrisPainting &lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;clamp&lt;span style="color: #808030;"&gt;(&lt;/span&gt;linstep&lt;span style="color: #808030;"&gt;(&lt;/span&gt; EyePupilRadius&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyePupilRadius &lt;span style="color: #808030;"&gt;+&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyePupilRadius&lt;span style="color: #808030;"&gt;/&lt;/span&gt;&lt;span style="color: #778c77;"&gt;100&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;RadialDistribution&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #b96969;"&gt;//------ Calculate Fake Tangent Map ------------------------------------------------------- &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; tangent &lt;span style="color: #808030;"&gt;=&lt;/span&gt; angularDistribution&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;180&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; binormal &lt;span style="color: #808030;"&gt;=&lt;/span&gt; angularDistribution&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;90&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;color tangentAngularMap &lt;span style="color: #808030;"&gt;=&lt;/span&gt; color&lt;span style="color: #808030;"&gt;(&lt;/span&gt;tangent&lt;span style="color: #808030;"&gt;,&lt;/span&gt; binormal&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.5&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;normal Ns &lt;span style="color: #808030;"&gt;=&lt;/span&gt; NormalSurf&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;normal Tangent &lt;span style="color: #808030;"&gt;=&lt;/span&gt; normal&lt;span style="color: #808030;"&gt;(&lt;/span&gt;tangentAngularMap&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;normal ReTangent &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &amp;nbsp;&lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: #808030;"&gt;*&lt;/span&gt;Tangent &lt;span style="color: #808030;"&gt;-&lt;/span&gt; normal&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #b96969;"&gt;//ReTangent = normal(ReTangent[0], ReTangent[1], ReTangent[2]);&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;ReTangent &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #603000;"&gt;transform&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;object&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;current&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; ReTangent&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;normal Unit &lt;span style="color: #808030;"&gt;=&lt;/span&gt; normal&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;normal ReNormal &lt;span style="color: #808030;"&gt;=&lt;/span&gt; normalize&lt;span style="color: #808030;"&gt;(&lt;/span&gt;Ns &lt;span style="color: #808030;"&gt;+&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;Unit &lt;span style="color: #808030;"&gt;-&lt;/span&gt; ReTangent&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #b96969;"&gt;//------ Lighting ---------------------------------------------------------------------------------- &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;color fakeCaustic&lt;span style="color: #808030;"&gt;=&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; nondiff &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; InputAngle &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;-&lt;/span&gt;EyeWa&lt;span style="color: #808030;"&gt;*&lt;/span&gt;&lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;color diffColor &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #b96969;"&gt;//_lightingstart();&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; i&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;for&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;i &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt; i &lt;span style="color: #808030;"&gt;&amp;lt;&lt;/span&gt; countCategoryLights&lt;span style="color: purple;"&gt;;&lt;/span&gt; i &lt;span style="color: #808030;"&gt;+&lt;/span&gt;&lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: #603000;"&gt;vector&lt;/span&gt; L&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;color Cl &lt;span style="color: #808030;"&gt;=&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; LightAngle&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;categoryLights&lt;span style="color: #808030;"&gt;[&lt;/span&gt;i&lt;span style="color: #808030;"&gt;]&lt;/span&gt;&lt;span style="color: #808030;"&gt;-&lt;/span&gt;&lt;span style="color: #808030;"&gt;&amp;gt;&lt;/span&gt;light&lt;span style="color: #808030;"&gt;(&lt;/span&gt;L&lt;span style="color: #808030;"&gt;,&lt;/span&gt; Cl&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: #b96969;"&gt;//------Fake &amp;nbsp;Caustic &amp;nbsp;Computing ------------------------------------------------------&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; ratio &lt;span style="color: #808030;"&gt;=&lt;/span&gt; ReNormal&lt;span style="color: #808030;"&gt;.&lt;/span&gt;normalize&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;-&lt;/span&gt;L&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;fakeCaustic &lt;span style="color: #808030;"&gt;+&lt;/span&gt;&lt;span style="color: #808030;"&gt;=&lt;/span&gt; pow&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;+&lt;/span&gt;ratio&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;/&lt;/span&gt;&lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: #b96969;"&gt;//------ Diffuse Computing With WDA-------------------------------------------------&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;LightAngle &amp;nbsp;&lt;span style="color: #808030;"&gt;=&lt;/span&gt; normalize&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;-&lt;/span&gt;L&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;Ns&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;if&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;Ns&lt;span style="color: #808030;"&gt;.&lt;/span&gt;I &lt;span style="color: #808030;"&gt;&amp;gt;&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt; LightAngle &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;-&lt;/span&gt;LightAngle&lt;span style="color: purple;"&gt;;&lt;/span&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;LightAngle &lt;span style="color: #808030;"&gt;=&lt;/span&gt; clamp&lt;span style="color: #808030;"&gt;(&lt;/span&gt;LightAngle&lt;span style="color: #808030;"&gt;,&lt;/span&gt;InputAngle&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;LightAngle &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;LightAngle &lt;span style="color: #808030;"&gt;-&lt;/span&gt; InputAngle&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: #808030;"&gt;/&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt; &lt;span style="color: #808030;"&gt;-&lt;/span&gt; InputAngle&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;getvar&lt;span style="color: #808030;"&gt;(&lt;/span&gt;categoryLights&lt;span style="color: #808030;"&gt;[&lt;/span&gt;i&lt;span style="color: #808030;"&gt;]&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;__nondiffuse&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; nondiff&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;if&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;nondiff &lt;span style="color: #808030;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;diffColor &lt;span style="color: #808030;"&gt;+&lt;/span&gt;&lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;-&lt;/span&gt;nondiff&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: #808030;"&gt;*&lt;/span&gt; Cl &lt;span style="color: #808030;"&gt;*&lt;/span&gt; LightAngle&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #b96969;"&gt;//------- Shadows computing ----------------------------------------------------------------&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;color inshadow&lt;span style="color: #808030;"&gt;=&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;color accumShadow &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; accumRatio &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;for&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;i &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt; i &lt;span style="color: #808030;"&gt;&amp;lt;&lt;/span&gt; countLights&lt;span style="color: purple;"&gt;;&lt;/span&gt; i &lt;span style="color: #808030;"&gt;+&lt;/span&gt;&lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: #603000;"&gt;vector&lt;/span&gt; L&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;color Cl &lt;span style="color: #808030;"&gt;=&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;lights&lt;span style="color: #808030;"&gt;[&lt;/span&gt;i&lt;span style="color: #808030;"&gt;]&lt;/span&gt;&lt;span style="color: #808030;"&gt;-&lt;/span&gt;&lt;span style="color: #808030;"&gt;&amp;gt;&lt;/span&gt;light&lt;span style="color: #808030;"&gt;(&lt;/span&gt;L&lt;span style="color: #808030;"&gt;,&lt;/span&gt; Cl&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;if&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt; &lt;span style="color: #808030;"&gt;!&lt;/span&gt;&lt;span style="color: #808030;"&gt;=&lt;/span&gt; getvar&lt;span style="color: #808030;"&gt;(&lt;/span&gt;lights&lt;span style="color: #808030;"&gt;[&lt;/span&gt;i&lt;span style="color: #808030;"&gt;]&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;_shadow&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; inshadow&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;accumShadow &lt;span style="color: #808030;"&gt;+&lt;/span&gt;&lt;span style="color: #808030;"&gt;=&lt;/span&gt; inshadow&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #b96969;"&gt;//accumRatio = accumRatio/countLights;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;color shadowHSL &lt;span style="color: #808030;"&gt;=&lt;/span&gt; ctransform&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;hsl&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; accumShadow&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; shadowCalc &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1&lt;/span&gt; &lt;span style="color: #808030;"&gt;-&lt;/span&gt; shadowHSL&lt;span style="color: #808030;"&gt;[&lt;/span&gt;&lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: #808030;"&gt;]&lt;/span&gt;&lt;span style="color: #808030;"&gt;*&lt;/span&gt;EyeShadowLevel&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #b96969;"&gt;//------- Fake Caustic &amp;nbsp;--------------------------------------------------------------------------&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; pupilMask &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &amp;nbsp;clamp&lt;span style="color: #808030;"&gt;(&lt;/span&gt;smoothstep&lt;span style="color: #808030;"&gt;(&lt;/span&gt; EyePupilRadius&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyePupilRadius &lt;span style="color: #808030;"&gt;+&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyePupilRadius&lt;span style="color: #808030;"&gt;/&lt;/span&gt;&lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;RadialDistribution&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; irisMask &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &amp;nbsp;clamp&lt;span style="color: #808030;"&gt;(&lt;/span&gt;smoothstep&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyeIrisRadius&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: #808030;"&gt;-&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyePupilRadius&lt;span style="color: #808030;"&gt;/&lt;/span&gt;&lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; EyeIrisRadius&lt;span style="color: #808030;"&gt;,&lt;/span&gt; RadialDistribution&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; pupilIrisMask &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;-&lt;/span&gt;irisMask&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;*&lt;/span&gt; pupilMask&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; causticComp &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &amp;nbsp;clamp&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyeIrisMinLevel&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: #808030;"&gt;+&lt;/span&gt; EyeIrisCausticLevel&lt;span style="color: #808030;"&gt;*&lt;/span&gt;pow&lt;span style="color: #808030;"&gt;(&lt;/span&gt;fakeCaustic&lt;span style="color: #808030;"&gt;[&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;]&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;*&lt;/span&gt;pupilIrisMask&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #b96969;"&gt;//------- Assemble Diffuse Components ---------------------------------------------------&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;color diffuseHSL &lt;span style="color: #808030;"&gt;=&lt;/span&gt; ctransform&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;hsv&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;diffColor&lt;span style="color: #808030;"&gt;*&lt;/span&gt;shadowCalc&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;color scleraColorRemap &lt;span style="color: #808030;"&gt;=&lt;/span&gt; mix&lt;span style="color: #808030;"&gt;(&lt;/span&gt;ScleraLowlight&lt;span style="color: #808030;"&gt;,&lt;/span&gt; ScleraHighlight&lt;span style="color: #808030;"&gt;,&lt;/span&gt; pow&lt;span style="color: #808030;"&gt;(&lt;/span&gt;diffuseHSL&lt;span style="color: #808030;"&gt;[&lt;/span&gt;&lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: #808030;"&gt;]&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;3&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; Sn &lt;span style="color: #808030;"&gt;=&lt;/span&gt; s&lt;span style="color: #808030;"&gt;-&lt;/span&gt;EyeIrisXPosition&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; Tn &lt;span style="color: #808030;"&gt;=&lt;/span&gt; t &lt;span style="color: #808030;"&gt;-&lt;/span&gt; EyeIrisYPosition&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;Sn &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1&lt;/span&gt; &lt;span style="color: #808030;"&gt;-&lt;/span&gt; sqrt&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;2&lt;/span&gt; &lt;span style="color: #808030;"&gt;*&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;Sn &lt;span style="color: #808030;"&gt;*&lt;/span&gt; Sn &lt;span style="color: #808030;"&gt;+&lt;/span&gt; Tn &lt;span style="color: #808030;"&gt;*&lt;/span&gt; Tn&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;color CircularColor &lt;span style="color: #808030;"&gt;=&lt;/span&gt; mix&lt;span style="color: #808030;"&gt;(&lt;/span&gt;ScleraOutColorize&lt;span style="color: #808030;"&gt;,&lt;/span&gt; ScleraCenterColorize&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &amp;nbsp;pow&lt;span style="color: #808030;"&gt;(&lt;/span&gt;Sn&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;+&lt;/span&gt;OffsetCircularColor&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;color IrisColor_W_Diffuse &lt;span style="color: #808030;"&gt;=&lt;/span&gt; mix&lt;span style="color: #808030;"&gt;(&lt;/span&gt;IrisColor_W_Pupil&lt;span style="color: #808030;"&gt;*&lt;/span&gt;causticComp&lt;span style="color: #808030;"&gt;,&lt;/span&gt; scleraColorRemap&lt;span style="color: #808030;"&gt;*&lt;/span&gt;CircularColor&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;filterstep&lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyeIrisRadius&lt;span style="color: #808030;"&gt;,&lt;/span&gt; RadialDistribution&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #b96969;"&gt;//------ Reflective Components -------------------------------------------------------------&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; fkr&lt;span style="color: #808030;"&gt;,&lt;/span&gt; fkt&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #603000;"&gt;vector&lt;/span&gt; Refl&lt;span style="color: #808030;"&gt;,&lt;/span&gt; Refr&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #603000;"&gt;vector&lt;/span&gt; In &lt;span style="color: #808030;"&gt;=&lt;/span&gt; normalize&lt;span style="color: #808030;"&gt;(&lt;/span&gt;I&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;fresnel&lt;span style="color: #808030;"&gt;(&lt;/span&gt;In&lt;span style="color: #808030;"&gt;,&lt;/span&gt; Ns&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1.75187&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; fkr&lt;span style="color: #808030;"&gt;,&lt;/span&gt;fkt&lt;span style="color: #808030;"&gt;,&lt;/span&gt; Refl&lt;span style="color: #808030;"&gt;,&lt;/span&gt; Refr&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #b96969;"&gt;//-------------------- Specular ------------------------------------------------------------------&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #603000;"&gt;vector&lt;/span&gt; V &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;-&lt;/span&gt;normalize&lt;span style="color: #808030;"&gt;(&lt;/span&gt;I&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;color spec_color &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; glossyRegion &amp;nbsp;&lt;span style="color: #808030;"&gt;=&lt;/span&gt; SpecularSharpness&lt;span style="color: #808030;"&gt;/&lt;/span&gt;&lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; nonspec &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;color specular &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #b96969;"&gt;//vector Refl = reflect(normalize(I), normalize(N));&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;color specOut &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;for&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;i &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt; i &lt;span style="color: #808030;"&gt;&amp;lt;&lt;/span&gt; countCategoryLights&lt;span style="color: purple;"&gt;;&lt;/span&gt; i &lt;span style="color: #808030;"&gt;+&lt;/span&gt;&lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: #603000;"&gt;vector&lt;/span&gt; L&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;color Cl&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;categoryLights&lt;span style="color: #808030;"&gt;[&lt;/span&gt;i&lt;span style="color: #808030;"&gt;]&lt;/span&gt;&lt;span style="color: #808030;"&gt;-&lt;/span&gt;&lt;span style="color: #808030;"&gt;&amp;gt;&lt;/span&gt;light&lt;span style="color: #808030;"&gt;(&lt;/span&gt;L&lt;span style="color: #808030;"&gt;,&lt;/span&gt; Cl&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; nonspec &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;getvar&lt;span style="color: #808030;"&gt;(&lt;/span&gt;categoryLights&lt;span style="color: #808030;"&gt;[&lt;/span&gt;i&lt;span style="color: #808030;"&gt;]&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;__nonspecular&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; nonspec&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt; &lt;span style="color: #b96969;"&gt;// getting specular weight koef from light &lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: #603000;"&gt;vector&lt;/span&gt; H &lt;span style="color: #808030;"&gt;=&lt;/span&gt; normalize&lt;span style="color: #808030;"&gt;(&lt;/span&gt;normalize&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;-&lt;/span&gt;L&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;+&lt;/span&gt;V&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt; &lt;span style="color: #b96969;"&gt;// Halfway vector &lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;specular &lt;span style="color: #808030;"&gt;=&lt;/span&gt; Cl&lt;span style="color: #808030;"&gt;*&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;-&lt;/span&gt;nonspec&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;spec_color &lt;span style="color: #808030;"&gt;+&lt;/span&gt;&lt;span style="color: #808030;"&gt;=&lt;/span&gt; specular &lt;span style="color: #808030;"&gt;*&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;smoothstep &lt;span style="color: #808030;"&gt;(&lt;/span&gt;glossyRegion &lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;-&lt;/span&gt;glossyRegion &lt;span style="color: #808030;"&gt;,&lt;/span&gt; pow&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #603000;"&gt;max&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;Ns&lt;span style="color: #808030;"&gt;.&lt;/span&gt;H&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;/&lt;/span&gt;SpecularRoughness&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #b96969;"&gt;//---------------------- Environment Reflection --------------------------------------------&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #603000;"&gt;vector&lt;/span&gt; ReflDir &lt;span style="color: #808030;"&gt;=&lt;/span&gt; reflect&lt;span style="color: #808030;"&gt;(&lt;/span&gt;normalize&lt;span style="color: #808030;"&gt;(&lt;/span&gt;I&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; Ns&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;color specularIndirect &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #b96969;"&gt;/* The pseudo Fresnel term - like Schlick Aproximation */&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; FrenelTerm &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1&lt;/span&gt; &lt;span style="color: #808030;"&gt;-&lt;/span&gt; pow&lt;span style="color: #808030;"&gt;(&lt;/span&gt;normalize&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;-&lt;/span&gt;I&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;Ns&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.6&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;color reflAccumulation &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;color reflColor &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #b96969;"&gt;/* Reflection map.&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #b96969;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;I use renderman user option string usually &lt;/span&gt;&lt;br /&gt;&lt;span style="color: #b96969;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for sent to a the scene shaders. &lt;/span&gt;&lt;br /&gt;&lt;span style="color: #b96969;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;But for example I use simle string */&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #603000;"&gt;string&lt;/span&gt; envMap &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;street.env&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;gather&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;illuminance&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; P&lt;span style="color: #808030;"&gt;,&lt;/span&gt; ReflDir&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &amp;nbsp;ReflSamples&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;distribution&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;cosine&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;maxdist&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; MaxDistance&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;volume:Ci&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; reflColor&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;reflAccumulation &lt;span style="color: #808030;"&gt;+&lt;/span&gt;&lt;span style="color: #808030;"&gt;=&lt;/span&gt; reflColor&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: purple;"&gt;}&lt;/span&gt; &lt;span style="color: #508050; font-weight: bold;"&gt;else&lt;/span&gt; &lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;ReflDir &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #603000;"&gt;transform&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;ReflEnvMapCoordsys&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; ReflDir&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;reflAccumulation &lt;span style="color: #808030;"&gt;+&lt;/span&gt;&lt;span style="color: #808030;"&gt;=&lt;/span&gt; environment&lt;span style="color: #808030;"&gt;(&lt;/span&gt;envMap&lt;span style="color: #808030;"&gt;,&lt;/span&gt; ReflDir&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;width&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1&lt;/span&gt; &lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;specularIndirect &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;reflAccumulation &lt;span style="color: #808030;"&gt;/&lt;/span&gt; ReflSamples&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: #808030;"&gt;*&lt;/span&gt; FrenelTerm &lt;span style="color: #808030;"&gt;*&lt;/span&gt; Refectivity&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #b96969;"&gt;//------ Assemble All Components ---------------------------------------------------------&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;color outcolor &lt;span style="color: #808030;"&gt;=&lt;/span&gt; IrisColor_W_Diffuse&lt;span style="color: #808030;"&gt;+&lt;/span&gt;spec_color&lt;span style="color: #808030;"&gt;+&lt;/span&gt;specularIndirect&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;Oi &lt;span style="color: #808030;"&gt;=&lt;/span&gt; color&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;Ci&lt;span style="color: #808030;"&gt;=&lt;/span&gt;outcolor&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&amp;nbsp;The next final step will be a small tuning to a custom specular shapes - a rectangle and ellipse.&lt;br /&gt;Coming soon&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-4912663039783657052?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/4912663039783657052/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2011/05/step-by-step-pixar-style-eyes-shader.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/4912663039783657052'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/4912663039783657052'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2011/05/step-by-step-pixar-style-eyes-shader.html' title='Step By Step Pixar Style Eyes Shader. Step3: The Specular Components'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-l_7SE7dvZAI/TeLXZ40qmdI/AAAAAAAADQA/lx9PaY8MiaA/s72-c/Eye_step3_ReflectionComponents.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-2634397799680544901</id><published>2011-03-13T12:21:00.000-07:00</published><updated>2011-04-13T00:47:02.390-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='RSL plugin'/><category scheme='http://www.blogger.com/atom/ns#' term='renderman'/><title type='text'>Renderman RSL DSO Plugin for quering progress rendering</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;I tested the new RenderMan Interface Control lib for the getting progress rendering&lt;br /&gt;in shader calculating environment. The new Ric API include function RtInt RicGetProgress()&lt;br /&gt;for returns percentage progress of rendering.&lt;br /&gt;I wrote the little DSO with float function returns progress during rendering:&lt;br /&gt;&lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;&lt;pre style="background: #001800; color: #55cc66;"&gt;&lt;span style="color: #b96969;"&gt;// progress.cpp source code&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #004a43;"&gt;#&lt;/span&gt;&lt;span style="color: #004a43;"&gt;include &lt;/span&gt;&lt;span style="color: maroon;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #40015a;"&gt;stdio.h&lt;/span&gt;&lt;span style="color: maroon;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #004a43;"&gt;#&lt;/span&gt;&lt;span style="color: #004a43;"&gt;include &lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #40015a;"&gt;RslPlugin.h&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #004a43;"&gt;#&lt;/span&gt;&lt;span style="color: #004a43;"&gt;include &lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #40015a;"&gt;Ric.h&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #508050; font-weight: bold;"&gt;extern&lt;/span&gt; &lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;C&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt; &lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;RSLEXPORT &lt;span style="color: #508050; font-weight: bold;"&gt;int&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;progressFloat&lt;span style="color: #808030;"&gt;(&lt;/span&gt;RslContext&lt;span style="color: #808030;"&gt;*&lt;/span&gt; rslContext&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;int&lt;/span&gt; argc&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #508050; font-weight: bold;"&gt;const&lt;/span&gt; RslArg&lt;span style="color: #808030;"&gt;*&lt;/span&gt; argv&lt;span style="color: #808030;"&gt;[&lt;/span&gt;&lt;span style="color: #808030;"&gt;]&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;RslFloatIter result&lt;span style="color: #808030;"&gt;(&lt;/span&gt;argv&lt;span style="color: #808030;"&gt;[&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;]&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: #808030;"&gt;*&lt;/span&gt;result &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;RicGetProgress&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: #b96969;"&gt;//printf("GetProgress --- %f\n", *result);&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;return&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;static&lt;/span&gt; RslFunction myFunctions&lt;span style="color: #808030;"&gt;[&lt;/span&gt;&lt;span style="color: #808030;"&gt;]&lt;/span&gt; &lt;span style="color: #808030;"&gt;=&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;varying float progress()&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; progressFloat&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #7d0045;"&gt;NULL&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #7d0045;"&gt;NULL&lt;/span&gt; &lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: #7d0045;"&gt;NULL&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;RSLEXPORT RslFunctionTable RslPublicFunctions&lt;span style="color: #808030;"&gt;(&lt;/span&gt;myFunctions&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt; &lt;span style="color: #b96969;"&gt;/* extern “C” */&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;And I used it in shader code for red-blue indexing of progress:&lt;br /&gt;&lt;pre style="background: #001800; color: #55cc66;"&gt;plugin &amp;nbsp;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;progress&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; pr &lt;span style="color: #808030;"&gt;=&lt;/span&gt; progress&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;*&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0.01&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt; &lt;span style="color: #b96969;"&gt;// &lt;/span&gt;&lt;br /&gt;Ci &lt;span style="color: #808030;"&gt;=&lt;/span&gt; mix&lt;span style="color: #808030;"&gt;(&lt;/span&gt;color&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; color&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; pr&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;Main goal this function - calling for progress during re-rendering for optimizing calculation budget etc. But rerendring cals this function yielded unexpected results.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://lh5.googleusercontent.com/-yQ7IucdkjfY/TX0XwN3jJpI/AAAAAAAADPQ/mkBCmPaBStw/s1600/DSO_progress_.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="https://lh5.googleusercontent.com/-yQ7IucdkjfY/TX0XwN3jJpI/AAAAAAAADPQ/mkBCmPaBStw/s1600/DSO_progress_.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;In next step I plan testing this one with a more complicated calculations.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-2634397799680544901?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/2634397799680544901/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2011/03/renderman-rsl-dso-plugin-for-quering.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/2634397799680544901'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/2634397799680544901'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2011/03/renderman-rsl-dso-plugin-for-quering.html' title='Renderman RSL DSO Plugin for quering progress rendering'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='https://lh5.googleusercontent.com/-yQ7IucdkjfY/TX0XwN3jJpI/AAAAAAAADPQ/mkBCmPaBStw/s72-c/DSO_progress_.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-4900064145583508035</id><published>2011-03-12T13:27:00.000-08:00</published><updated>2011-05-29T16:29:12.377-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='python maya'/><title type='text'>If Maya Python doesn't find your package</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;br /&gt;I am often faced with the problem - maya dont finded pakage modules&lt;br /&gt;even path to the module present in PYTHONPATH environment variable.&lt;br /&gt;And in feedback return something like this:&lt;br /&gt;&lt;pre style="background: #f1f0f0; color: black;"&gt;&lt;span style="color: #400000; font-weight: bold;"&gt;import&lt;/span&gt; &amp;nbsp;LightZeppelin&lt;br /&gt;&lt;span style="color: #c34e00;"&gt;# Error: ImportError: line 1 of &amp;lt;maya console&amp;gt;: No module named LightZeppelin #&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;Early I solved this problem with&lt;br /&gt;&lt;br /&gt;&lt;pre style="background: #f1f0f0; color: black;"&gt;&lt;span style="color: #400000; font-weight: bold;"&gt;import&lt;/span&gt; sys&lt;br /&gt;sys&lt;span style="color: #806030;"&gt;.&lt;/span&gt;path&lt;span style="color: #806030;"&gt;.&lt;/span&gt;append&lt;span style="color: #806030;"&gt;(&lt;/span&gt;&lt;span style="color: #e60000;"&gt;'myPath to package'&lt;/span&gt;&lt;span style="color: #806030;"&gt;)&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;This is just work. But there is one more solution for this problem:&lt;br /&gt;&lt;br /&gt;create your own *.pth file in $MAYA_LOCATION/lib/python2.6/site-packages directory&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;In my case - this is LightZeppelin.pth file contained one string - full path to DIRECTORY conteined "LightZeppelin"&amp;nbsp;package.&lt;/div&gt;&lt;div&gt;This is very important.&amp;nbsp;For example, if your pakage placed by /my_toolkit/my_subfolder/my_package&amp;nbsp;&lt;/div&gt;&lt;div&gt;then in *.pth Your must write:&lt;br /&gt;&lt;pre style="background: #f1f0f0; color: black;"&gt;&lt;span style="color: #806030;"&gt;/&lt;/span&gt;my_toolkit&lt;span style="color: #806030;"&gt;/&lt;/span&gt;my_subfolder&lt;span style="color: #806030;"&gt;/&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;And after this one maya python finded your "my_package" by&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;pre style="background: #f1f0f0; color: black;"&gt;&lt;span style="color: #400000; font-weight: bold;"&gt;import&lt;/span&gt; my_package&lt;/pre&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-4900064145583508035?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/4900064145583508035/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2011/03/if-maya-python-dont-find-your-package.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/4900064145583508035'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/4900064145583508035'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2011/03/if-maya-python-dont-find-your-package.html' title='If Maya Python doesn&apos;t find your package'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-7108259470469309473</id><published>2011-03-12T01:40:00.000-08:00</published><updated>2011-08-28T13:50:21.430-07:00</updated><title type='text'></title><content type='html'>&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-7108259470469309473?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/7108259470469309473/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2011/03/japanese-hang-on-we-are-with-you.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/7108259470469309473'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/7108259470469309473'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2011/03/japanese-hang-on-we-are-with-you.html' title=''/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-5406233667146350105</id><published>2011-02-04T15:05:00.000-08:00</published><updated>2011-02-04T15:05:51.989-08:00</updated><title type='text'>HotOcean for MAYA 2010 Linux GCC 4.1</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;span class="Apple-style-span" style="font-family: Tahoma; font-size: 11px; white-space: pre;"&gt;&lt;a href="http://www.4shared.com/file/wZdT18mg/hotOcean_Maya2010_LinuxGCC41.html" target="_blank"&gt;hotOcean_Maya2010_LinuxGCC4.1.zip&lt;/a&gt; &lt;/span&gt;&lt;br /&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Tahoma; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 11px; white-space: pre;"&gt;I recompile HotOcean For MAYA 2010 GCC 4.1&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Tahoma; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 11px; white-space: pre;"&gt;For using it needs installed the fftw3 libs. In OpenSuse 11.2 fftw3 coming with standart repository.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Tahoma; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 11px; white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-5406233667146350105?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/5406233667146350105/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2011/02/hotocean-for-maya-2010-linux-gcc-41.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/5406233667146350105'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/5406233667146350105'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2011/02/hotocean-for-maya-2010-linux-gcc-41.html' title='HotOcean for MAYA 2010 Linux GCC 4.1'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-6138153823940201702</id><published>2011-01-12T02:50:00.000-08:00</published><updated>2011-01-12T02:50:35.823-08:00</updated><title type='text'>some errors in the shader code</title><content type='html'>I made some errors in the shader code&lt;br /&gt;Firstly - I think it's better:&lt;br /&gt;&lt;pre style="background: #001800; color: #55cc66;"&gt;shader lights&lt;span style="color: #808030;"&gt;[&lt;/span&gt;&lt;span style="color: #808030;"&gt;]&lt;/span&gt; &lt;span style="color: #808030;"&gt;=&lt;/span&gt; getlights&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;category&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;Category&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;than:&lt;pre style="background: #001800; color: #55cc66;"&gt;getvar&lt;span style="color: #808030;"&gt;(&lt;/span&gt;lights&lt;span style="color: #808030;"&gt;[&lt;/span&gt;i&lt;span style="color: #808030;"&gt;]&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;__category&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; __category&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: #508050; font-weight: bold;"&gt;if&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;__category &lt;span style="color: #808030;"&gt;=&lt;/span&gt;&lt;span style="color: #808030;"&gt;=&lt;/span&gt; Category&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;push&lt;span style="color: #808030;"&gt;(&lt;/span&gt;categoryLights&lt;span style="color: #808030;"&gt;,&lt;/span&gt; lights&lt;span style="color: #808030;"&gt;[&lt;/span&gt;i&lt;span style="color: #808030;"&gt;]&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;Secondly - to call the shaders in construt () method&lt;br /&gt;&lt;div&gt;&lt;div&gt;- generally a bad idea if we want to use pixar relighting technology.&lt;/div&gt;&lt;div&gt;I think normally calling light co-shaders in lighting() method.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-6138153823940201702?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/6138153823940201702/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2011/01/some-errors-in-shader-code.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/6138153823940201702'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/6138153823940201702'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2011/01/some-errors-in-shader-code.html' title='some errors in the shader code'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-7020742381984938434</id><published>2011-01-04T03:52:00.000-08:00</published><updated>2011-06-01T13:12:13.941-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Shader'/><category scheme='http://www.blogger.com/atom/ns#' term='renderman'/><title type='text'>Step By Step Pixar Style Eyes Shader. Step2: Diffuse Lighting</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_rzIosXWYk7g/TSMF6b9RZ2I/AAAAAAAADOI/TcqT9BIuEgI/s1600/EyeShader_Step2_DiffuseLighting.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="144" src="http://4.bp.blogspot.com/_rzIosXWYk7g/TSMF6b9RZ2I/AAAAAAAADOI/TcqT9BIuEgI/s640/EyeShader_Step2_DiffuseLighting.jpg" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;Hi All! Marry Christmas and Happy New Year!!!!&lt;br /&gt;Last three month I've been really busy and tightened with the publication of the second part. So now I wrote it. In a first gone the Illustrations and all shaders code and in a second a minor clarifications to certain parts of code.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_rzIosXWYk7g/TSMGnA4vzdI/AAAAAAAADOM/UwYCGzvNz9U/s1600/eyeLightingComponents.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="640" src="http://2.bp.blogspot.com/_rzIosXWYk7g/TSMGnA4vzdI/AAAAAAAADOM/UwYCGzvNz9U/s640/eyeLightingComponents.jpg" width="437" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;iframe frameborder="0" height="380" src="http://player.vimeo.com/video/18410458" width="500"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;a href="http://vimeo.com/18410458"&gt;Eye Shader Illustrations 1&lt;/a&gt; from &lt;a href="http://vimeo.com/user1521407"&gt;Alex Mirgorodsky&lt;/a&gt; on &lt;a href="http://vimeo.com/"&gt;Vimeo&lt;/a&gt;.&lt;br /&gt;The code:&lt;br /&gt;&lt;pre style="-moz-background-clip: -moz-initial; -moz-background-inline-policy: -moz-initial; -moz-background-origin: -moz-initial; background: rgb(0, 24, 0) none repeat scroll 0% 0%; color: #55cc66;"&gt;class cEyeShader&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; EyeIrisXPosition &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.5&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; EyeIrisYPosition &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.5&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uniform color EyeIrisInColor &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0.025&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.05&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.01&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uniform color EyeIrisMidColor &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0.7&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.3&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.02&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uniform color EyeIrisOutColor &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0.025&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.05&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.01&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; EyePupilRadius &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.03&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; EyeIrisRadius &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.06&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; EyeIrisSeed &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; EyeIrisCircularNoiseLevel &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.2&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; EyeIrisRadialNoiseLevel &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.75&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; EyeIrisRadialShift &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.3&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; EyeIrisMinLevel &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.1&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; EyeIrisCausticLevel &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;3&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; EyeKd &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt; &lt;span style="color: #b96969;"&gt;// Koeffs Diffuse&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; EyeWa &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.2&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt; &lt;span style="color: #b96969;"&gt;// Wideness Light Angle&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; color ScleraHighlight &lt;span style="color: #808030;"&gt;=&lt;/span&gt; color&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0.835&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.9&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.965&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; color ScleraLowlight &lt;span style="color: #808030;"&gt;=&lt;/span&gt; color&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0.234&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.234&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.276&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; color ScleraCenterColorize &lt;span style="color: #808030;"&gt;=&lt;/span&gt; color&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; color ScleraOutColorize &lt;span style="color: #808030;"&gt;=&lt;/span&gt; color&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; OffsetCircularColor &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;3&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; EyeShadowLevel &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; string Category &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;eye&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; pi2 &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;6.283185307&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;shader lights&lt;span style="color: #808030;"&gt;[&lt;/span&gt;&lt;span style="color: #808030;"&gt;]&lt;/span&gt; &lt;span style="color: #808030;"&gt;=&lt;/span&gt;&lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;shader categoryLights&lt;span style="color: #808030;"&gt;[&lt;/span&gt;&lt;span style="color: #808030;"&gt;]&lt;/span&gt; &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;shader notCategoryLights&lt;span style="color: #808030;"&gt;[&lt;/span&gt;&lt;span style="color: #808030;"&gt;]&lt;/span&gt; &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;constant &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; countLights &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;constant &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; countCategoryLights &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;constant &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; countNotCategoryLights &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; linstep&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; &lt;span style="color: #603000;"&gt;min&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #603000;"&gt;max&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; x&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; f&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;if&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;x &lt;span style="color: #808030;"&gt;&amp;lt;&lt;/span&gt; &lt;span style="color: #603000;"&gt;min&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt; f &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;if&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;x &lt;span style="color: #808030;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #603000;"&gt;max&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt; f &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; f &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;x&lt;span style="color: #808030;"&gt;-&lt;/span&gt;&lt;span style="color: #603000;"&gt;min&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;/&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #603000;"&gt;max&lt;/span&gt;&lt;span style="color: #808030;"&gt;-&lt;/span&gt;&lt;span style="color: #603000;"&gt;min&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;return&lt;/span&gt; f&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; IrisNoise&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; angle&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; noiseScale1 &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;100&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; noiseScale2 &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;500&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; d &lt;span style="color: #808030;"&gt;=&lt;/span&gt; distance&lt;span style="color: #808030;"&gt;(&lt;/span&gt;point&lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyeIrisXPosition&lt;span style="color: #808030;"&gt;,&lt;/span&gt; EyeIrisXPosition&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; point&lt;span style="color: #808030;"&gt;(&lt;/span&gt;s&lt;span style="color: #808030;"&gt;,&lt;/span&gt; t&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;if&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;d &lt;span style="color: #808030;"&gt;!&lt;/span&gt;&lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; angle &lt;span style="color: #808030;"&gt;=&lt;/span&gt; asin&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyeIrisYPosition&lt;span style="color: #808030;"&gt;-&lt;/span&gt;t&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;/&lt;/span&gt;d&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;else&lt;/span&gt;&amp;nbsp;&amp;nbsp; angle &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;if&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyeIrisXPosition&lt;span style="color: #808030;"&gt;-&lt;/span&gt;s &lt;span style="color: #808030;"&gt;&amp;lt;&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt; angle &lt;span style="color: #808030;"&gt;=&lt;/span&gt; PI &lt;span style="color: #808030;"&gt;-&lt;/span&gt; angle&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; n1 &lt;span style="color: #808030;"&gt;=&lt;/span&gt; noise&lt;span style="color: #808030;"&gt;(&lt;/span&gt;s&lt;span style="color: #808030;"&gt;*&lt;/span&gt;noiseScale1&lt;span style="color: #808030;"&gt;,&lt;/span&gt; t&lt;span style="color: #808030;"&gt;*&lt;/span&gt;noiseScale1&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: #808030;"&gt;*&lt;/span&gt; clamp&lt;span style="color: #808030;"&gt;(&lt;/span&gt;noise&lt;span style="color: #808030;"&gt;(&lt;/span&gt;s&lt;span style="color: #808030;"&gt;*&lt;/span&gt;noiseScale2&lt;span style="color: #808030;"&gt;,&lt;/span&gt; t&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #808030;"&gt;*&lt;/span&gt;noiseScale2&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;.5&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: #808030;"&gt;*&lt;/span&gt; &lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; n2 &lt;span style="color: #808030;"&gt;=&lt;/span&gt; noise&lt;span style="color: #808030;"&gt;(&lt;/span&gt;angle&lt;span style="color: #808030;"&gt;*&lt;/span&gt;&lt;span style="color: #778c77;"&gt;5&lt;/span&gt;&lt;span style="color: #808030;"&gt;+&lt;/span&gt;EyeIrisSeed&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; n1 &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;n1 &lt;span style="color: #808030;"&gt;*&lt;/span&gt; EyeIrisCircularNoiseLevel&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: #808030;"&gt;+&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;-&lt;/span&gt;EyeIrisCircularNoiseLevel&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; n2 &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;n2 &lt;span style="color: #808030;"&gt;*&lt;/span&gt; EyeIrisRadialNoiseLevel&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: #808030;"&gt;+&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;-&lt;/span&gt;EyeIrisRadialNoiseLevel&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;return&lt;/span&gt; n1&lt;span style="color: #808030;"&gt;*&lt;/span&gt;n2&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;normal NormalSurf&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; normal Ns &lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; normal Nn &lt;span style="color: #808030;"&gt;=&lt;/span&gt; normalize&lt;span style="color: #808030;"&gt;(&lt;/span&gt;N&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; depth&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; rayinfo&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;depth&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; depth&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;if&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;depth &lt;span style="color: #808030;"&gt;&amp;gt;&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt; Ns &lt;span style="color: #808030;"&gt;=&lt;/span&gt; faceforward&lt;span style="color: #808030;"&gt;(&lt;/span&gt;Nn&lt;span style="color: #808030;"&gt;,&lt;/span&gt; normalize&lt;span style="color: #808030;"&gt;(&lt;/span&gt;I&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; Nn&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;else&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; sides &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; attribute&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;Sides&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; sides&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;if&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;sides &lt;span style="color: #808030;"&gt;=&lt;/span&gt;&lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Ns &lt;span style="color: #808030;"&gt;=&lt;/span&gt; faceforward&lt;span style="color: #808030;"&gt;(&lt;/span&gt;Nn&lt;span style="color: #808030;"&gt;,&lt;/span&gt; normalize&lt;span style="color: #808030;"&gt;(&lt;/span&gt;I&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; Nn&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;else&lt;/span&gt; Ns &lt;span style="color: #808030;"&gt;=&lt;/span&gt; Nn&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;return&lt;/span&gt; Ns&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: purple;"&gt;}&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&lt;br /&gt;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; angularDistribution&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; rotationAngle&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; angleRad &lt;span style="color: #808030;"&gt;=&lt;/span&gt; radians&lt;span style="color: #808030;"&gt;(&lt;/span&gt;rotationAngle&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; Sn &lt;span style="color: #808030;"&gt;=&lt;/span&gt; s&lt;span style="color: #808030;"&gt;-&lt;/span&gt;EyeIrisXPosition&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; Tn &lt;span style="color: #808030;"&gt;=&lt;/span&gt; t &lt;span style="color: #808030;"&gt;-&lt;/span&gt; EyeIrisYPosition&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; S_Rot &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;Sn&lt;span style="color: #808030;"&gt;*&lt;/span&gt; cos&lt;span style="color: #808030;"&gt;(&lt;/span&gt;angleRad&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: #808030;"&gt;-&lt;/span&gt; Tn&lt;span style="color: #808030;"&gt;*&lt;/span&gt;sin&lt;span style="color: #808030;"&gt;(&lt;/span&gt;angleRad&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: #808030;"&gt;+&lt;/span&gt; EyeIrisXPosition&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; T_Rot &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;Tn&lt;span style="color: #808030;"&gt;*&lt;/span&gt; cos&lt;span style="color: #808030;"&gt;(&lt;/span&gt;angleRad&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: #808030;"&gt;+&lt;/span&gt; Sn&lt;span style="color: #808030;"&gt;*&lt;/span&gt;sin&lt;span style="color: #808030;"&gt;(&lt;/span&gt;angleRad&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: #808030;"&gt;+&lt;/span&gt; EyeIrisYPosition&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; ss &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;atan&lt;span style="color: #808030;"&gt;(&lt;/span&gt;T_Rot&lt;span style="color: #808030;"&gt;-&lt;/span&gt;EyeIrisYPosition&lt;span style="color: #808030;"&gt;,&lt;/span&gt; S_Rot&lt;span style="color: #808030;"&gt;-&lt;/span&gt;EyeIrisXPosition&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: #808030;"&gt;+&lt;/span&gt; PI&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: #808030;"&gt;/&lt;/span&gt; pi2&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; outputDistribution &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; spline &lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;bspline&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; ss&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.5&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.5&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;return&lt;/span&gt; outputDistribution&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;public &lt;span style="color: #508050; font-weight: bold;"&gt;void&lt;/span&gt; construct&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; lights &lt;span style="color: #808030;"&gt;=&lt;/span&gt; getlights&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; countLights &lt;span style="color: #808030;"&gt;=&lt;/span&gt; arraylength&lt;span style="color: #808030;"&gt;(&lt;/span&gt;lights&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uniform string __category&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; i&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;for&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;i &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt; i &lt;span style="color: #808030;"&gt;&amp;lt;&lt;/span&gt; countLights&lt;span style="color: purple;"&gt;;&lt;/span&gt; i &lt;span style="color: #808030;"&gt;+&lt;/span&gt;&lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; getvar&lt;span style="color: #808030;"&gt;(&lt;/span&gt;lights&lt;span style="color: #808030;"&gt;[&lt;/span&gt;i&lt;span style="color: #808030;"&gt;]&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;__category&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; __category&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;if&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;__category &lt;span style="color: #808030;"&gt;=&lt;/span&gt;&lt;span style="color: #808030;"&gt;=&lt;/span&gt; Category&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; push&lt;span style="color: #808030;"&gt;(&lt;/span&gt;categoryLights&lt;span style="color: #808030;"&gt;,&lt;/span&gt; lights&lt;span style="color: #808030;"&gt;[&lt;/span&gt;i&lt;span style="color: #808030;"&gt;]&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: purple;"&gt;}&lt;/span&gt; &lt;span style="color: #508050; font-weight: bold;"&gt;else&lt;/span&gt; &lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; push&lt;span style="color: #808030;"&gt;(&lt;/span&gt;notCategoryLights&lt;span style="color: #808030;"&gt;,&lt;/span&gt; lights&lt;span style="color: #808030;"&gt;[&lt;/span&gt;i&lt;span style="color: #808030;"&gt;]&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; countCategoryLights &lt;span style="color: #808030;"&gt;=&lt;/span&gt; arraylength&lt;span style="color: #808030;"&gt;(&lt;/span&gt;categoryLights&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; countNotCategoryLights &lt;span style="color: #808030;"&gt;=&lt;/span&gt; arraylength&lt;span style="color: #808030;"&gt;(&lt;/span&gt;notCategoryLights&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;public &lt;span style="color: #508050; font-weight: bold;"&gt;void&lt;/span&gt; surface&lt;span style="color: #808030;"&gt;(&lt;/span&gt;output color Ci&lt;span style="color: #808030;"&gt;,&lt;/span&gt; Oi&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #b96969;"&gt;// Dummy Difuse Color&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; color Diffuse &lt;span style="color: #808030;"&gt;=&lt;/span&gt; color&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #b96969;"&gt;// Pupil color (You can make your self solution for Pupil Lighting. But I use siple black color.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; color PupilColor &lt;span style="color: #808030;"&gt;=&lt;/span&gt; color&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; RadialDistribution &lt;span style="color: #808030;"&gt;=&lt;/span&gt; sqrt&lt;span style="color: #808030;"&gt;(&lt;/span&gt;pow&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;s&lt;span style="color: #808030;"&gt;-&lt;/span&gt;EyeIrisXPosition&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: #808030;"&gt;+&lt;/span&gt; pow&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;t&lt;span style="color: #808030;"&gt;-&lt;/span&gt;EyeIrisYPosition&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; reDistribution &lt;span style="color: #808030;"&gt;=&lt;/span&gt; RadialDistribution &lt;span style="color: #808030;"&gt;/&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyeIrisRadius&lt;span style="color: #808030;"&gt;-&lt;/span&gt;EyePupilRadius&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; kKorrection&amp;nbsp; &lt;span style="color: #808030;"&gt;=&lt;/span&gt; EyePupilRadius &lt;span style="color: #808030;"&gt;/&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyeIrisRadius&lt;span style="color: #808030;"&gt;-&lt;/span&gt;EyePupilRadius&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; kSpline &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; spline&lt;span style="color: #808030;"&gt;(&lt;/span&gt; &lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;linear&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; reDistribution&lt;span style="color: #808030;"&gt;,&lt;/span&gt; kKorrection&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; kKorrection&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyeIrisRadialShift &lt;span style="color: #808030;"&gt;+&lt;/span&gt; kKorrection&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt; &lt;span style="color: #808030;"&gt;+&lt;/span&gt; kKorrection&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt; &lt;span style="color: #808030;"&gt;+&lt;/span&gt; kKorrection&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; color IrisPainting &lt;span style="color: #808030;"&gt;=&lt;/span&gt; color spline&lt;span style="color: #808030;"&gt;(&lt;/span&gt; &lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;linear&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; kSpline&lt;span style="color: #808030;"&gt;,&lt;/span&gt; EyeIrisInColor&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; EyeIrisInColor&lt;span style="color: #808030;"&gt;,&lt;/span&gt; EyeIrisMidColor&lt;span style="color: #808030;"&gt;,&lt;/span&gt; EyeIrisOutColor&lt;span style="color: #808030;"&gt;,&lt;/span&gt; EyeIrisOutColor&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; IrisPainting &lt;span style="color: #808030;"&gt;=&lt;/span&gt; IrisPainting &lt;span style="color: #808030;"&gt;*&lt;/span&gt; IrisNoise&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt; &lt;span style="color: #b96969;"&gt;// Add Noise to Iris&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; color IrisColor_W_Pupil &lt;span style="color: #808030;"&gt;=&lt;/span&gt; mix&lt;span style="color: #808030;"&gt;(&lt;/span&gt;PupilColor&lt;span style="color: #808030;"&gt;,&lt;/span&gt; IrisPainting &lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; clamp&lt;span style="color: #808030;"&gt;(&lt;/span&gt;linstep&lt;span style="color: #808030;"&gt;(&lt;/span&gt; EyePupilRadius&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyePupilRadius &lt;span style="color: #808030;"&gt;+&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyePupilRadius&lt;span style="color: #808030;"&gt;/&lt;/span&gt;&lt;span style="color: #778c77;"&gt;100&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; RadialDistribution&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #b96969;"&gt;//------ Calculate Fake Tangent Map -------------------------------------------------------&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; tangent &lt;span style="color: #808030;"&gt;=&lt;/span&gt; angularDistribution&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;180&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; binormal &lt;span style="color: #808030;"&gt;=&lt;/span&gt; angularDistribution&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;90&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; color tangentAngularMap &lt;span style="color: #808030;"&gt;=&lt;/span&gt; color&lt;span style="color: #808030;"&gt;(&lt;/span&gt;tangent&lt;span style="color: #808030;"&gt;,&lt;/span&gt; binormal&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.5&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; normal Ns &lt;span style="color: #808030;"&gt;=&lt;/span&gt; NormalSurf&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; normal Tangent &lt;span style="color: #808030;"&gt;=&lt;/span&gt; normal&lt;span style="color: #808030;"&gt;(&lt;/span&gt;tangentAngularMap&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; normal ReTangent &lt;span style="color: #808030;"&gt;=&lt;/span&gt;&amp;nbsp; &lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: #808030;"&gt;*&lt;/span&gt;Tangent &lt;span style="color: #808030;"&gt;-&lt;/span&gt; normal&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ReTangent &lt;span style="color: #808030;"&gt;=&lt;/span&gt; normal&lt;span style="color: #808030;"&gt;(&lt;/span&gt;ReTangent&lt;span style="color: #808030;"&gt;[&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;]&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; ReTangent&lt;span style="color: #808030;"&gt;[&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;]&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; ReTangent&lt;span style="color: #808030;"&gt;[&lt;/span&gt;&lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: #808030;"&gt;]&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ReTangent &lt;span style="color: #808030;"&gt;=&lt;/span&gt; transform&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;object&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;current&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; ReTangent&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; normal Unit &lt;span style="color: #808030;"&gt;=&lt;/span&gt; normal&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; normal ReNormal &lt;span style="color: #808030;"&gt;=&lt;/span&gt; normalize&lt;span style="color: #808030;"&gt;(&lt;/span&gt;Ns &lt;span style="color: #808030;"&gt;+&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;Unit &lt;span style="color: #808030;"&gt;-&lt;/span&gt; ReTangent&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #b96969;"&gt;//------ Lighting ----------------------------------------------------------------------------------&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; color fakeCaustic&lt;span style="color: #808030;"&gt;=&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; nondiff &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; InputAngle &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;-&lt;/span&gt;EyeWa&lt;span style="color: #808030;"&gt;*&lt;/span&gt;&lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; color diffColor &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; i&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;for&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;i &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt; i &lt;span style="color: #808030;"&gt;&amp;lt;&lt;/span&gt; countCategoryLights&lt;span style="color: purple;"&gt;;&lt;/span&gt; i &lt;span style="color: #808030;"&gt;+&lt;/span&gt;&lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; vector L&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; color Cl &lt;span style="color: #808030;"&gt;=&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; LightAngle&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; categoryLights&lt;span style="color: #808030;"&gt;[&lt;/span&gt;i&lt;span style="color: #808030;"&gt;]&lt;/span&gt;&lt;span style="color: #808030;"&gt;-&lt;/span&gt;&lt;span style="color: #808030;"&gt;&amp;gt;&lt;/span&gt;light&lt;span style="color: #808030;"&gt;(&lt;/span&gt;L&lt;span style="color: #808030;"&gt;,&lt;/span&gt; Cl&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #b96969;"&gt;//------Fake&amp;nbsp; Caustic&amp;nbsp; Computing ------------------------------------------------------&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; ratio &lt;span style="color: #808030;"&gt;=&lt;/span&gt; ReNormal&lt;span style="color: #808030;"&gt;.&lt;/span&gt;normalize&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;-&lt;/span&gt;L&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fakeCaustic &lt;span style="color: #808030;"&gt;+&lt;/span&gt;&lt;span style="color: #808030;"&gt;=&lt;/span&gt; pow&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;+&lt;/span&gt;ratio&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;/&lt;/span&gt;&lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #b96969;"&gt;//------ Diffuse Computing With WDA-------------------------------------------------&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LightAngle&amp;nbsp; &lt;span style="color: #808030;"&gt;=&lt;/span&gt; normalize&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;-&lt;/span&gt;L&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;Ns&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;if&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;Ns&lt;span style="color: #808030;"&gt;.&lt;/span&gt;I &lt;span style="color: #808030;"&gt;&amp;gt;&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt; LightAngle &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;-&lt;/span&gt;LightAngle&lt;span style="color: purple;"&gt;;&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LightAngle &lt;span style="color: #808030;"&gt;=&lt;/span&gt; clamp&lt;span style="color: #808030;"&gt;(&lt;/span&gt;LightAngle&lt;span style="color: #808030;"&gt;,&lt;/span&gt;InputAngle&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LightAngle &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;LightAngle &lt;span style="color: #808030;"&gt;-&lt;/span&gt; InputAngle&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: #808030;"&gt;/&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt; &lt;span style="color: #808030;"&gt;-&lt;/span&gt; InputAngle&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; getvar&lt;span style="color: #808030;"&gt;(&lt;/span&gt;categoryLights&lt;span style="color: #808030;"&gt;[&lt;/span&gt;i&lt;span style="color: #808030;"&gt;]&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;__nondiffuse&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; nondiff&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;if&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;nondiff &lt;span style="color: #808030;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; diffColor &lt;span style="color: #808030;"&gt;+&lt;/span&gt;&lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;-&lt;/span&gt;nondiff&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: #808030;"&gt;*&lt;/span&gt; Cl &lt;span style="color: #808030;"&gt;*&lt;/span&gt; LightAngle&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #b96969;"&gt;//------- Shadows computing ----------------------------------------------------------------&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; color inshadow&lt;span style="color: #808030;"&gt;=&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; color accumShadow &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #b96969;"&gt;//float accumRatio = 0;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;for&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;i &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt; i &lt;span style="color: #808030;"&gt;&amp;lt;&lt;/span&gt; countLights&lt;span style="color: purple;"&gt;;&lt;/span&gt; i &lt;span style="color: #808030;"&gt;+&lt;/span&gt;&lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; vector L&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; color Cl &lt;span style="color: #808030;"&gt;=&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lights&lt;span style="color: #808030;"&gt;[&lt;/span&gt;i&lt;span style="color: #808030;"&gt;]&lt;/span&gt;&lt;span style="color: #808030;"&gt;-&lt;/span&gt;&lt;span style="color: #808030;"&gt;&amp;gt;&lt;/span&gt;light&lt;span style="color: #808030;"&gt;(&lt;/span&gt;L&lt;span style="color: #808030;"&gt;,&lt;/span&gt; Cl&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;if&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt; &lt;span style="color: #808030;"&gt;!&lt;/span&gt;&lt;span style="color: #808030;"&gt;=&lt;/span&gt; getvar&lt;span style="color: #808030;"&gt;(&lt;/span&gt;lights&lt;span style="color: #808030;"&gt;[&lt;/span&gt;i&lt;span style="color: #808030;"&gt;]&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;_shadow&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; inshadow&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; accumShadow &lt;span style="color: #808030;"&gt;+&lt;/span&gt;&lt;span style="color: #808030;"&gt;=&lt;/span&gt; inshadow&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; color shadowHSL &lt;span style="color: #808030;"&gt;=&lt;/span&gt; ctransform&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;hsl&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; accumShadow&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; shadowCalc &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1&lt;/span&gt; &lt;span style="color: #808030;"&gt;-&lt;/span&gt; shadowHSL&lt;span style="color: #808030;"&gt;[&lt;/span&gt;&lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: #808030;"&gt;]&lt;/span&gt;&lt;span style="color: #808030;"&gt;*&lt;/span&gt;EyeShadowLevel&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #b96969;"&gt;//------- Fake Caustic&amp;nbsp; --------------------------------------------------------------------------&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; pupilMask &lt;span style="color: #808030;"&gt;=&lt;/span&gt;&amp;nbsp; clamp&lt;span style="color: #808030;"&gt;(&lt;/span&gt;smoothstep&lt;span style="color: #808030;"&gt;(&lt;/span&gt; EyePupilRadius&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyePupilRadius &lt;span style="color: #808030;"&gt;+&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyePupilRadius&lt;span style="color: #808030;"&gt;/&lt;/span&gt;&lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;RadialDistribution&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; irisMask &lt;span style="color: #808030;"&gt;=&lt;/span&gt;&amp;nbsp; clamp&lt;span style="color: #808030;"&gt;(&lt;/span&gt;smoothstep&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyeIrisRadius &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #808030;"&gt;-&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyePupilRadius&lt;span style="color: #808030;"&gt;/&lt;/span&gt;&lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; EyeIrisRadius&lt;span style="color: #808030;"&gt;,&lt;/span&gt; RadialDistribution&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; pupilIrisMask &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;-&lt;/span&gt;irisMask&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;*&lt;/span&gt; pupilMask&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; causticComp &lt;span style="color: #808030;"&gt;=&lt;/span&gt;&amp;nbsp; clamp&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyeIrisMinLevel &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #808030;"&gt;+&lt;/span&gt; EyeIrisCausticLevel&lt;span style="color: #808030;"&gt;*&lt;/span&gt;pow&lt;span style="color: #808030;"&gt;(&lt;/span&gt;fakeCaustic&lt;span style="color: #808030;"&gt;[&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;]&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;*&lt;/span&gt;pupilIrisMask&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #b96969;"&gt;//------- Assemble Diffuse Components ---------------------------------------------------&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; color diffuseHSL &lt;span style="color: #808030;"&gt;=&lt;/span&gt; ctransform&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;hsv&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;diffColor&lt;span style="color: #808030;"&gt;*&lt;/span&gt;shadowCalc&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; color scleraColorRemap &lt;span style="color: #808030;"&gt;=&lt;/span&gt; mix&lt;span style="color: #808030;"&gt;(&lt;/span&gt;ScleraLowlight&lt;span style="color: #808030;"&gt;,&lt;/span&gt; ScleraHighlight&lt;span style="color: #808030;"&gt;,&lt;/span&gt; pow&lt;span style="color: #808030;"&gt;(&lt;/span&gt;diffuseHSL&lt;span style="color: #808030;"&gt;[&lt;/span&gt;&lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: #808030;"&gt;]&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;3&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; Sn &lt;span style="color: #808030;"&gt;=&lt;/span&gt; s&lt;span style="color: #808030;"&gt;-&lt;/span&gt;EyeIrisXPosition&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; Tn &lt;span style="color: #808030;"&gt;=&lt;/span&gt; t &lt;span style="color: #808030;"&gt;-&lt;/span&gt; EyeIrisYPosition&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sn &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1&lt;/span&gt; &lt;span style="color: #808030;"&gt;-&lt;/span&gt; sqrt&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;2&lt;/span&gt; &lt;span style="color: #808030;"&gt;*&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;Sn &lt;span style="color: #808030;"&gt;*&lt;/span&gt; Sn &lt;span style="color: #808030;"&gt;+&lt;/span&gt; Tn &lt;span style="color: #808030;"&gt;*&lt;/span&gt; Tn&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; color CircularColor &lt;span style="color: #808030;"&gt;=&lt;/span&gt; mix&lt;span style="color: #808030;"&gt;(&lt;/span&gt;ScleraOutColorize&lt;span style="color: #808030;"&gt;,&lt;/span&gt; ScleraCenterColorize&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&amp;nbsp; pow&lt;span style="color: #808030;"&gt;(&lt;/span&gt;Sn&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;+&lt;/span&gt;OffsetCircularColor&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; color IrisColor_W_Diffuse &lt;span style="color: #808030;"&gt;=&lt;/span&gt; mix&lt;span style="color: #808030;"&gt;(&lt;/span&gt;IrisColor_W_Pupil&lt;span style="color: #808030;"&gt;*&lt;/span&gt;causticComp&lt;span style="color: #808030;"&gt;,&lt;/span&gt; scleraColorRemap&lt;span style="color: #808030;"&gt;*&lt;/span&gt;CircularColor&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; filterstep&lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyeIrisRadius&lt;span style="color: #808030;"&gt;,&lt;/span&gt; RadialDistribution&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #b96969;"&gt;//------ Assemble All Components ---------------------------------------------------------&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; color outcolor &lt;span style="color: #808030;"&gt;=&lt;/span&gt; IrisColor_W_Diffuse&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Oi &lt;span style="color: #808030;"&gt;=&lt;/span&gt; color&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Ci&lt;span style="color: #808030;"&gt;=&lt;/span&gt;outcolor&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;/pre&gt;I use synth of normal map for fake illumination of iris-pupil stria. Of course we could do it without any color implementations. But it easy for understanding of.&lt;br /&gt;&lt;pre style="-moz-background-clip: -moz-initial; -moz-background-inline-policy: -moz-initial; -moz-background-origin: -moz-initial; background: rgb(0, 24, 0) none repeat scroll 0% 0%; color: #55cc66;"&gt;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; tangent &lt;span style="color: #808030;"&gt;=&lt;/span&gt; angularDistribution&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;180&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; binormal &lt;span style="color: #808030;"&gt;=&lt;/span&gt; angularDistribution&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;90&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;color tangentAngularMap &lt;span style="color: #808030;"&gt;=&lt;/span&gt; color&lt;span style="color: #808030;"&gt;(&lt;/span&gt;tangent&lt;span style="color: #808030;"&gt;,&lt;/span&gt; binormal&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.5&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;In a real eye( human eye) this is narrow groove. But in a cartoon animations we use exaggerations for most effects - and I make full Iris-size fake caustic highlight. In any case You may change the part of code for making "pupilIrisMask":&lt;br /&gt;&lt;pre style="-moz-background-clip: -moz-initial; -moz-background-inline-policy: -moz-initial; -moz-background-origin: -moz-initial; background: rgb(0, 24, 0) none repeat scroll 0% 0%; color: #55cc66;"&gt;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; pupilMask &lt;span style="color: #808030;"&gt;=&lt;/span&gt;&amp;nbsp; clamp&lt;span style="color: #808030;"&gt;(&lt;/span&gt;smoothstep&lt;span style="color: #808030;"&gt;(&lt;/span&gt; EyePupilRadius&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyePupilRadius &lt;span style="color: #808030;"&gt;+&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyePupilRadius&lt;span style="color: #808030;"&gt;/&lt;/span&gt;&lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;RadialDistribution&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; irisMask &lt;span style="color: #808030;"&gt;=&lt;/span&gt;&amp;nbsp; clamp&lt;span style="color: #808030;"&gt;(&lt;/span&gt;smoothstep&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyeIrisRadius &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #808030;"&gt;-&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyePupilRadius&lt;span style="color: #808030;"&gt;/&lt;/span&gt;&lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; EyeIrisRadius&lt;span style="color: #808030;"&gt;,&lt;/span&gt; RadialDistribution&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; pupilIrisMask &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;-&lt;/span&gt;irisMask&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;*&lt;/span&gt; pupilMask&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;/pre&gt;Diffuse Lighting of sclera I separate in two illumination loops. Lighting I make ONLY the special light with __category and a shadows I catching from all light in scene. And finnaly I make color remapping for the diffuse component of sclera by couples variables "ScleraHighlight-ScleraLowlight" and "ScleraCenterColorize-ScleraOutColorize" &lt;br /&gt;In final third part - we will make reflection components for the Eye Shader.&lt;br /&gt;&lt;a href="http://mirgorodsky.blogspot.com/2011/05/step-by-step-pixar-style-eyes-shader.html"&gt;next step 3&lt;/a&gt;&lt;br /&gt;&lt;a href="http://mirgorodsky.blogspot.com/2010/11/step-by-step-pixar-style-eyes-shader.html"&gt;previous step 1&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-7020742381984938434?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/7020742381984938434/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2011/01/step-by-step-pixar-style-eyes-shader.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/7020742381984938434'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/7020742381984938434'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2011/01/step-by-step-pixar-style-eyes-shader.html' title='Step By Step Pixar Style Eyes Shader. Step2: Diffuse Lighting'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_rzIosXWYk7g/TSMF6b9RZ2I/AAAAAAAADOI/TcqT9BIuEgI/s72-c/EyeShader_Step2_DiffuseLighting.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-6310890860076537152</id><published>2010-12-03T01:04:00.000-08:00</published><updated>2010-12-03T01:04:49.519-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Mental Ray'/><category scheme='http://www.blogger.com/atom/ns#' term='lighting'/><title type='text'>Lighting Works (From Old Projects)</title><content type='html'>&lt;iframe frameborder="0" height="480" src="http://player.vimeo.com/video/17431574" width="640"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;a href="http://vimeo.com/17431574"&gt;Lighting_work1(Old Projects)&lt;/a&gt; from &lt;a href="http://vimeo.com/user1521407"&gt;Alex Mirgorodsky&lt;/a&gt; on &lt;a href="http://vimeo.com/"&gt;Vimeo&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;PS - First shot lighting work by Dmitry Fedotov&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-6310890860076537152?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/6310890860076537152/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2010/12/lighting-works-from-old-projects.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/6310890860076537152'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/6310890860076537152'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2010/12/lighting-works-from-old-projects.html' title='Lighting Works (From Old Projects)'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-2817190503117688775</id><published>2010-11-06T15:47:00.000-07:00</published><updated>2011-06-01T13:09:36.509-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Shader'/><category scheme='http://www.blogger.com/atom/ns#' term='renderman'/><title type='text'>Step By Step Pixar Style Eyes Shader. Step1: Iris Texturing</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_rzIosXWYk7g/TNW0HaXYHUI/AAAAAAAADMs/vfHoF6Pngu0/s1600/EyeShader_Step1_IrisGeneration.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="144" src="http://3.bp.blogspot.com/_rzIosXWYk7g/TNW0HaXYHUI/AAAAAAAADMs/vfHoF6Pngu0/s640/EyeShader_Step1_IrisGeneration.jpg" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;First of all, this solution was realised how ST projection.&lt;br /&gt;I mean, position and of Eye Iris is depend from UV mapping only, &lt;br /&gt;not from 3d projection. The image below demonstrate is UV-layout&lt;br /&gt;of polygonal eye.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_rzIosXWYk7g/TNXDyAo2FeI/AAAAAAAADMw/DcQAPI_wWZw/s1600/Screenshot-3.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="284" src="http://1.bp.blogspot.com/_rzIosXWYk7g/TNXDyAo2FeI/AAAAAAAADMw/DcQAPI_wWZw/s640/Screenshot-3.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;And second of all, model quality is such as it is - I am not modeller.&lt;br /&gt;I use RSL2.0 style, but You can rewrite to old RSL style - code is simple. I devide this tutor on some few articles -&lt;br /&gt;Iris Texturing, Diffuse shading, Fake caustic, Reflection components.&lt;br /&gt;So is code below: &lt;br /&gt;&lt;br /&gt;&lt;pre style="-moz-background-clip: -moz-initial; -moz-background-inline-policy: -moz-initial; -moz-background-origin: -moz-initial; background: rgb(0, 24, 0) none repeat scroll 0% 0%; color: #55cc66;"&gt;class cEyeShader&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; EyeIrisXPosition &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.5&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; EyeIrisYPosition &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.5&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uniform color EyeIrisInColor &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0.025&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.05&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.01&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uniform color EyeIrisMidColor &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0.7&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.3&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.02&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uniform color EyeIrisOutColor &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0.025&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.05&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.01&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; EyePupilRadius &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.04&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; EyeIrisRadius &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.06&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; EyeIrisSeed &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; EyeIrisCircularNoiseLevel &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.2&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; EyeIrisRadialNoiseLevel &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.75&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; EyeIrisRadialShift &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0.3&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; linstep&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; &lt;span style="color: #603000;"&gt;min&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #603000;"&gt;max&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; x&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; f&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;if&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;x &lt;span style="color: #808030;"&gt;&amp;lt;&lt;/span&gt; &lt;span style="color: #603000;"&gt;min&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt; f &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;if&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;x &lt;span style="color: #808030;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #603000;"&gt;max&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt; f &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; f &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;x&lt;span style="color: #808030;"&gt;-&lt;/span&gt;&lt;span style="color: #603000;"&gt;min&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;/&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #603000;"&gt;max&lt;/span&gt;&lt;span style="color: #808030;"&gt;-&lt;/span&gt;&lt;span style="color: #603000;"&gt;min&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;return&lt;/span&gt; f&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; IrisNoise&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; angle&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; noiseScale1 &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;100&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uniform &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; noiseScale2 &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;500&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; d &lt;span style="color: #808030;"&gt;=&lt;/span&gt; distance&lt;span style="color: #808030;"&gt;(&lt;/span&gt;point&lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyeIrisXPosition&lt;span style="color: #808030;"&gt;,&lt;/span&gt; EyeIrisXPosition&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; point&lt;span style="color: #808030;"&gt;(&lt;/span&gt;s&lt;span style="color: #808030;"&gt;,&lt;/span&gt; t&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;if&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;d &lt;span style="color: #808030;"&gt;!&lt;/span&gt;&lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; angle &lt;span style="color: #808030;"&gt;=&lt;/span&gt; asin&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyeIrisYPosition&lt;span style="color: #808030;"&gt;-&lt;/span&gt;t&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;/&lt;/span&gt;d&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;else&lt;/span&gt;&amp;nbsp;&amp;nbsp; angle &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;if&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyeIrisXPosition&lt;span style="color: #808030;"&gt;-&lt;/span&gt;s &lt;span style="color: #808030;"&gt;&amp;lt;&lt;/span&gt; &lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt; angle &lt;span style="color: #808030;"&gt;=&lt;/span&gt; PI &lt;span style="color: #808030;"&gt;-&lt;/span&gt; angle&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; n1 &lt;span style="color: #808030;"&gt;=&lt;/span&gt; noise&lt;span style="color: #808030;"&gt;(&lt;/span&gt;s&lt;span style="color: #808030;"&gt;*&lt;/span&gt;noiseScale1&lt;span style="color: #808030;"&gt;,&lt;/span&gt; t&lt;span style="color: #808030;"&gt;*&lt;/span&gt;noiseScale1&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: #808030;"&gt;*&lt;/span&gt; clamp&lt;span style="color: #808030;"&gt;(&lt;/span&gt;noise&lt;span style="color: #808030;"&gt;(&lt;/span&gt;s&lt;span style="color: #808030;"&gt;*&lt;/span&gt;noiseScale2&lt;span style="color: #808030;"&gt;,&lt;/span&gt; t&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #808030;"&gt;*&lt;/span&gt;noiseScale2&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;.5&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: #808030;"&gt;*&lt;/span&gt; &lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; n2 &lt;span style="color: #808030;"&gt;=&lt;/span&gt; noise&lt;span style="color: #808030;"&gt;(&lt;/span&gt;angle&lt;span style="color: #808030;"&gt;*&lt;/span&gt;&lt;span style="color: #778c77;"&gt;5&lt;/span&gt;&lt;span style="color: #808030;"&gt;+&lt;/span&gt;EyeIrisSeed&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; n1 &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;n1 &lt;span style="color: #808030;"&gt;*&lt;/span&gt; EyeIrisCircularNoiseLevel&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: #808030;"&gt;+&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;-&lt;/span&gt;EyeIrisCircularNoiseLevel&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; n2 &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;n2 &lt;span style="color: #808030;"&gt;*&lt;/span&gt; EyeIrisRadialNoiseLevel&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: #808030;"&gt;+&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;-&lt;/span&gt;EyeIrisRadialNoiseLevel&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;return&lt;/span&gt; n1&lt;span style="color: #808030;"&gt;*&lt;/span&gt;n2&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;public &lt;span style="color: #508050; font-weight: bold;"&gt;void&lt;/span&gt; surface&lt;span style="color: #808030;"&gt;(&lt;/span&gt;output color Ci&lt;span style="color: #808030;"&gt;,&lt;/span&gt; Oi&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #b96969;"&gt;// Dummy Difuse Color&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; color Diffuse &lt;span style="color: #808030;"&gt;=&lt;/span&gt; color&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #b96969;"&gt;// Pupil color (You can make your self solution for Pupil Lighting. But I use siple black color.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; color PupilColor &lt;span style="color: #808030;"&gt;=&lt;/span&gt; color&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; RadialDistribution &lt;span style="color: #808030;"&gt;=&lt;/span&gt; sqrt&lt;span style="color: #808030;"&gt;(&lt;/span&gt;pow&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;s&lt;span style="color: #808030;"&gt;-&lt;/span&gt;EyeIrisXPosition&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: #808030;"&gt;+&lt;/span&gt; pow&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;t&lt;span style="color: #808030;"&gt;-&lt;/span&gt;EyeIrisYPosition&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; reDistribution &lt;span style="color: #808030;"&gt;=&lt;/span&gt; RadialDistribution &lt;span style="color: #808030;"&gt;/&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyeIrisRadius&lt;span style="color: #808030;"&gt;-&lt;/span&gt;EyePupilRadius&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; kKorrection&amp;nbsp; &lt;span style="color: #808030;"&gt;=&lt;/span&gt; EyePupilRadius &lt;span style="color: #808030;"&gt;/&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyeIrisRadius&lt;span style="color: #808030;"&gt;-&lt;/span&gt;EyePupilRadius&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; kSpline &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; spline&lt;span style="color: #808030;"&gt;(&lt;/span&gt; &lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;solvecatrom&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; reDistribution&lt;span style="color: #808030;"&gt;,&lt;/span&gt; kKorrection&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; kKorrection&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyeIrisRadialShift &lt;span style="color: #808030;"&gt;+&lt;/span&gt; kKorrection&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt; &lt;span style="color: #808030;"&gt;+&lt;/span&gt; kKorrection&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt; &lt;span style="color: #808030;"&gt;+&lt;/span&gt; kKorrection&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; color IrisPainting &lt;span style="color: #808030;"&gt;=&lt;/span&gt; color spline&lt;span style="color: #808030;"&gt;(&lt;/span&gt; &lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;catrom&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; kSpline&lt;span style="color: #808030;"&gt;,&lt;/span&gt; EyeIrisInColor&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; EyeIrisInColor&lt;span style="color: #808030;"&gt;,&lt;/span&gt; EyeIrisMidColor&lt;span style="color: #808030;"&gt;,&lt;/span&gt; EyeIrisOutColor&lt;span style="color: #808030;"&gt;,&lt;/span&gt; EyeIrisOutColor&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; IrisPainting &lt;span style="color: #808030;"&gt;=&lt;/span&gt; IrisPainting &lt;span style="color: #808030;"&gt;*&lt;/span&gt; IrisNoise&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt; &lt;span style="color: #b96969;"&gt;// Add Noise to Iris&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; color IrisColor_W_Pupil &lt;span style="color: #808030;"&gt;=&lt;/span&gt; mix&lt;span style="color: #808030;"&gt;(&lt;/span&gt;PupilColor&lt;span style="color: #808030;"&gt;,&lt;/span&gt; IrisPainting &lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; clamp&lt;span style="color: #808030;"&gt;(&lt;/span&gt;linstep&lt;span style="color: #808030;"&gt;(&lt;/span&gt; EyePupilRadius&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyePupilRadius &lt;span style="color: #808030;"&gt;+&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyePupilRadius&lt;span style="color: #808030;"&gt;/&lt;/span&gt;&lt;span style="color: #778c77;"&gt;100&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; RadialDistribution&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; color IrisColor_W_Diffuse &lt;span style="color: #808030;"&gt;=&lt;/span&gt; mix&lt;span style="color: #808030;"&gt;(&lt;/span&gt;IrisColor_W_Pupil&lt;span style="color: #808030;"&gt;,&lt;/span&gt; Diffuse&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; filterstep&lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyeIrisRadius&lt;span style="color: #808030;"&gt;,&lt;/span&gt; RadialDistribution&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; color outcolor &lt;span style="color: #808030;"&gt;=&lt;/span&gt; IrisColor_W_Diffuse&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Oi &lt;span style="color: #808030;"&gt;=&lt;/span&gt; color&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Ci &lt;span style="color: #808030;"&gt;=&lt;/span&gt; outcolor&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;/pre&gt;In first we making circular ramp for RadialDistribution:&lt;br /&gt;&lt;pre style="-moz-background-clip: -moz-initial; -moz-background-inline-policy: -moz-initial; -moz-background-origin: -moz-initial; background: rgb(0, 24, 0) none repeat scroll 0% 0%; color: #55cc66;"&gt;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; RadialDistribution &lt;span style="color: #808030;"&gt;=&lt;/span&gt; sqrt&lt;span style="color: #808030;"&gt;(&lt;/span&gt;pow&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;s&lt;span style="color: #808030;"&gt;-&lt;/span&gt;EyeIrisXPosition&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: #808030;"&gt;+&lt;/span&gt; pow&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;t&lt;span style="color: #808030;"&gt;-&lt;/span&gt;EyeIrisYPosition&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;/pre&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_rzIosXWYk7g/TNXI1Rnv8pI/AAAAAAAADM0/6TunG4EaNks/s1600/Eye_step1_RadialDistribution.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="480" src="http://3.bp.blogspot.com/_rzIosXWYk7g/TNXI1Rnv8pI/AAAAAAAADM0/6TunG4EaNks/s640/Eye_step1_RadialDistribution.jpg" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;pre style="-moz-background-clip: -moz-initial; -moz-background-inline-policy: -moz-initial; -moz-background-origin: -moz-initial; background: rgb(0, 24, 0) none repeat scroll 0% 0%; color: #55cc66;"&gt;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; reDistribution &lt;span style="color: #808030;"&gt;=&lt;/span&gt; RadialDistribution &lt;span style="color: #808030;"&gt;/&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyeIrisRadius&lt;span style="color: #808030;"&gt;-&lt;/span&gt;EyePupilRadius&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;/pre&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_rzIosXWYk7g/TNXKKAb47WI/AAAAAAAADM4/m_LEXBZ43Oo/s1600/Eye_step1_reDistribution.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="480" src="http://2.bp.blogspot.com/_rzIosXWYk7g/TNXKKAb47WI/AAAAAAAADM4/m_LEXBZ43Oo/s640/Eye_step1_reDistribution.jpg" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Next step - bulding Circular ramp and multiply it on special Noise function. I &lt;span class="short_text" id="result_box" lang="en"&gt;&lt;span title=""&gt; brought in a separate float function IrisNoise(). It is a bit complicate with radial and circular components.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="short_text" id="result_box" lang="en"&gt;&lt;span title=""&gt;And this release function might potential problems in case radical uv-offseting of position center Iris.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="short_text" id="result_box" lang="en"&gt;&lt;span title=""&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;pre style="-moz-background-clip: -moz-initial; -moz-background-inline-policy: -moz-initial; -moz-background-origin: -moz-initial; background: rgb(0, 24, 0) none repeat scroll 0% 0%; color: #55cc66;"&gt;&lt;span class="short_text" id="result_box" lang="en"&gt;&lt;span title=""&gt;&lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; kSpline &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #508050; font-weight: bold;"&gt;float&lt;/span&gt; spline&lt;span style="color: #808030;"&gt;(&lt;/span&gt; &lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;solvecatrom&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; reDistribution&lt;span style="color: #808030;"&gt;,&lt;/span&gt; kKorrection&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; kKorrection&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyeIrisRadialShift &lt;span style="color: #808030;"&gt;+&lt;/span&gt; kKorrection&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt; &lt;span style="color: #808030;"&gt;+&lt;/span&gt; kKorrection&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt; &lt;span style="color: #808030;"&gt;+&lt;/span&gt; kKorrection&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; color IrisPainting &lt;span style="color: #808030;"&gt;=&lt;/span&gt; color spline&lt;span style="color: #808030;"&gt;(&lt;/span&gt; &lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;catrom&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; kSpline&lt;span style="color: #808030;"&gt;,&lt;/span&gt; EyeIrisInColor&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; EyeIrisInColor&lt;span style="color: #808030;"&gt;,&lt;/span&gt; EyeIrisMidColor&lt;span style="color: #808030;"&gt;,&lt;/span&gt; EyeIrisOutColor&lt;span style="color: #808030;"&gt;,&lt;/span&gt; EyeIrisOutColor&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; IrisPainting &lt;span style="color: #808030;"&gt;=&lt;/span&gt; IrisPainting &lt;span style="color: #808030;"&gt;*&lt;/span&gt; IrisNoise&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt; &lt;span style="color: #b96969;"&gt;// Add Noise to Iris&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_rzIosXWYk7g/TNXSsr-tXVI/AAAAAAAADM8/KG89KPZOVgI/s1600/Eye_step1_IrisPainting.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="480" src="http://4.bp.blogspot.com/_rzIosXWYk7g/TNXSsr-tXVI/AAAAAAAADM8/KG89KPZOVgI/s640/Eye_step1_IrisPainting.jpg" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;span class="short_text" id="result_box" lang="en"&gt;&lt;span title=""&gt;Now we add pupil component:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="short_text" id="result_box" lang="en"&gt;&lt;span title=""&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;pre style="-moz-background-clip: -moz-initial; -moz-background-inline-policy: -moz-initial; -moz-background-origin: -moz-initial; background: rgb(0, 24, 0) none repeat scroll 0% 0%; color: #55cc66;"&gt;&lt;span class="short_text" id="result_box" lang="en"&gt;&lt;span title=""&gt;color IrisColor_W_Pupil &lt;span style="color: #808030;"&gt;=&lt;/span&gt; mix&lt;span style="color: #808030;"&gt;(&lt;/span&gt;PupilColor&lt;span style="color: #808030;"&gt;,&lt;/span&gt; IrisPainting &lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; clamp&lt;span style="color: #808030;"&gt;(&lt;/span&gt;linstep&lt;span style="color: #808030;"&gt;(&lt;/span&gt; EyePupilRadius&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyePupilRadius &lt;span style="color: #808030;"&gt;+&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyePupilRadius&lt;span style="color: #808030;"&gt;/&lt;/span&gt;&lt;span style="color: #778c77;"&gt;100&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; RadialDistribution&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;0&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_rzIosXWYk7g/TNXVUByPhXI/AAAAAAAADNA/WAH-R4SSBOY/s1600/Eye_step1_IrisColor_W_Pupil.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="480" src="http://1.bp.blogspot.com/_rzIosXWYk7g/TNXVUByPhXI/AAAAAAAADNA/WAH-R4SSBOY/s640/Eye_step1_IrisColor_W_Pupil.jpg" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;span class="short_text" id="result_box" lang="en"&gt;&lt;span title=""&gt;And in final this article we cropped Iris by outside circle:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="short_text" id="result_box" lang="en"&gt;&lt;span title=""&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;pre style="-moz-background-clip: -moz-initial; -moz-background-inline-policy: -moz-initial; -moz-background-origin: -moz-initial; background: rgb(0, 24, 0) none repeat scroll 0% 0%; color: #55cc66;"&gt;&lt;span class="short_text" id="result_box" lang="en"&gt;&lt;span title=""&gt;color IrisColor_W_Diffuse &lt;span style="color: #808030;"&gt;=&lt;/span&gt; mix&lt;span style="color: #808030;"&gt;(&lt;/span&gt;IrisColor_W_Pupil&lt;span style="color: #808030;"&gt;,&lt;/span&gt; Diffuse&lt;span style="color: #808030;"&gt;,&lt;/span&gt;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; filterstep&lt;span style="color: #808030;"&gt;(&lt;/span&gt;EyeIrisRadius&lt;span style="color: #808030;"&gt;,&lt;/span&gt; RadialDistribution&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_rzIosXWYk7g/TNXX75rfRzI/AAAAAAAADNE/BBkYlOuqw2A/s1600/Eye_step1_complete.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="480" src="http://4.bp.blogspot.com/_rzIosXWYk7g/TNXX75rfRzI/AAAAAAAADNE/BBkYlOuqw2A/s640/Eye_step1_complete.jpg" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;span class="short_text" id="result_box" lang="en"&gt;&lt;span title=""&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="short_text" id="result_box" lang="en"&gt;&lt;span title=""&gt;To be continued...&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;a href="http://mirgorodsky.blogspot.com/2011/01/step-by-step-pixar-style-eyes-shader.html"&gt;step 2&lt;/a&gt;&lt;br /&gt;&lt;a href="http://mirgorodsky.blogspot.com/2011/05/step-by-step-pixar-style-eyes-shader.html"&gt;step 3&lt;/a&gt;&lt;br /&gt;&lt;span class="short_text" id="result_box" lang="en"&gt;&lt;span title=""&gt; &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-2817190503117688775?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/2817190503117688775/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2010/11/step-by-step-pixar-style-eyes-shader.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/2817190503117688775'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/2817190503117688775'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2010/11/step-by-step-pixar-style-eyes-shader.html' title='Step By Step Pixar Style Eyes Shader. Step1: Iris Texturing'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_rzIosXWYk7g/TNW0HaXYHUI/AAAAAAAADMs/vfHoF6Pngu0/s72-c/EyeShader_Step1_IrisGeneration.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-4508863885881577244</id><published>2010-10-20T09:56:00.000-07:00</published><updated>2010-10-20T09:57:33.486-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='shell scripting'/><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><title type='text'>Little Shell Scripting</title><content type='html'>&lt;pre style="-moz-background-clip: -moz-initial; -moz-background-inline-policy: -moz-initial; -moz-background-origin: -moz-initial; background: rgb(0, 24, 0) none repeat scroll 0% 0%; color: #55cc66;"&gt;&lt;span style="color: #778c77;"&gt;1&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt; Converting all &lt;span style="color: #808030;"&gt;.&lt;/span&gt;tif in directory to &lt;span style="color: #808030;"&gt;.&lt;/span&gt;tex files&lt;br /&gt;&lt;span style="color: #e34adc;"&gt;name:&lt;/span&gt; convert_tif_tex&lt;span style="color: #808030;"&gt;.&lt;/span&gt;sh&lt;br /&gt;&lt;span style="color: #e34adc;"&gt;content:&lt;/span&gt;&lt;/pre&gt;&lt;pre style="-moz-background-clip: -moz-initial; -moz-background-inline-policy: -moz-initial; -moz-background-origin: -moz-initial; background: rgb(0, 24, 0) none repeat scroll 0% 0%; color: #55cc66;"&gt;&lt;span style="color: #b96969;"&gt;#!/bin/bash&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #508050; font-weight: bold;"&gt;for&lt;/span&gt; i &lt;span style="color: #508050; font-weight: bold;"&gt;in&lt;/span&gt; &lt;span style="color: #808030;"&gt;*&lt;/span&gt;&lt;span style="color: #508050; font-weight: bold;"&gt;.&lt;/span&gt;tif&lt;span style="color: purple;"&gt;;&lt;/span&gt; &lt;span style="color: #508050; font-weight: bold;"&gt;do&lt;/span&gt; txmake -mode periodic -verbose &lt;span style="color: #cc5555;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;$i&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;"&lt;/span&gt; &lt;span style="color: #cc5555;"&gt;"${i%.tif}.tex"&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt; &lt;span style="color: #508050; font-weight: bold;"&gt;done&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;pre style="-moz-background-clip: -moz-initial; -moz-background-inline-policy: -moz-initial; -moz-background-origin: -moz-initial; background: rgb(0, 24, 0) none repeat scroll 0% 0%; color: #55cc66;"&gt;&lt;span style="color: #778c77;"&gt;2&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt; Downscaling geometry size all &lt;span style="color: #808030;"&gt;.&lt;/span&gt;tif files to &lt;span style="color: #778c77;"&gt;25&lt;/span&gt;&lt;span style="color: #808030;"&gt;%&lt;/span&gt; of original images&lt;span style="color: #808030;"&gt;.&lt;/span&gt; &lt;br /&gt;It making by &lt;span style="color: maroon;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;mogrify&lt;/span&gt;&lt;span style="color: maroon;"&gt;"&lt;/span&gt; utility &lt;span style="color: #808030;"&gt;-&lt;/span&gt; the part of ImageMagick pack&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;br /&gt;name &lt;span style="color: purple;"&gt;:&lt;/span&gt; mogrify_25prct_tif&lt;span style="color: #808030;"&gt;.&lt;/span&gt;sh&lt;br /&gt;&lt;span style="color: #e34adc;"&gt;content:&lt;/span&gt;&lt;/pre&gt;&lt;pre style="-moz-background-clip: -moz-initial; -moz-background-inline-policy: -moz-initial; -moz-background-origin: -moz-initial; background: rgb(0, 24, 0) none repeat scroll 0% 0%; color: #55cc66;"&gt;&lt;span style="color: #b96969;"&gt;#!/bin/bash&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #508050; font-weight: bold;"&gt;for&lt;/span&gt; i &lt;span style="color: #508050; font-weight: bold;"&gt;in&lt;/span&gt; &lt;span style="color: #808030;"&gt;*&lt;/span&gt;&lt;span style="color: #508050; font-weight: bold;"&gt;.&lt;/span&gt;tif&lt;span style="color: purple;"&gt;;&lt;/span&gt; &lt;span style="color: #508050; font-weight: bold;"&gt;do&lt;/span&gt; mogrify -geometry &lt;span style="color: #778c77;"&gt;25&lt;/span&gt;% &lt;span style="color: #cc5555;"&gt;"&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;$i&lt;/span&gt;&lt;span style="color: #cc5555;"&gt;"&lt;/span&gt; &lt;span style="color: purple;"&gt;;&lt;/span&gt; &lt;span style="color: #508050; font-weight: bold;"&gt;done&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;pre style="-moz-background-clip: -moz-initial; -moz-background-inline-policy: -moz-initial; -moz-background-origin: -moz-initial; background: rgb(0, 24, 0) none repeat scroll 0% 0%; color: #55cc66;"&gt;&lt;span style="color: #778c77;"&gt;3&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt; Converting &lt;span style="color: #808030;"&gt;.&lt;/span&gt;ui files from QTDesigner to PyQt &lt;span style="color: #808030;"&gt;.&lt;/span&gt;py &lt;br /&gt;&lt;span style="color: #e34adc;"&gt;name:&lt;/span&gt; ui2py&lt;span style="color: #808030;"&gt;.&lt;/span&gt;sh&lt;br /&gt;&lt;span style="color: #e34adc;"&gt;content:&lt;/span&gt;&lt;/pre&gt;&lt;pre style="-moz-background-clip: -moz-initial; -moz-background-inline-policy: -moz-initial; -moz-background-origin: -moz-initial; background: rgb(0, 24, 0) none repeat scroll 0% 0%; color: #55cc66;"&gt;&lt;span style="color: #b96969;"&gt;#!/bin/bash&lt;/span&gt;&lt;br /&gt;name&lt;span style="color: #808030;"&gt;=&lt;/span&gt;&lt;span style="-moz-background-clip: -moz-initial; -moz-background-inline-policy: -moz-initial; -moz-background-origin: -moz-initial; background: rgb(255, 255, 232) none repeat scroll 0% 0%; color: black;"&gt;`basename &lt;/span&gt;&lt;span style="-moz-background-clip: -moz-initial; -moz-background-inline-policy: -moz-initial; -moz-background-origin: -moz-initial; background: rgb(255, 255, 232) none repeat scroll 0% 0%; color: black;"&gt;$1&lt;/span&gt;&lt;span style="-moz-background-clip: -moz-initial; -moz-background-inline-policy: -moz-initial; -moz-background-origin: -moz-initial; background: rgb(255, 255, 232) none repeat scroll 0% 0%; color: black;"&gt; &lt;/span&gt;&lt;span style="-moz-background-clip: -moz-initial; -moz-background-inline-policy: -moz-initial; -moz-background-origin: -moz-initial; background: rgb(255, 255, 232) none repeat scroll 0% 0%; color: #508050; font-weight: bold;"&gt;.&lt;/span&gt;&lt;span style="-moz-background-clip: -moz-initial; -moz-background-inline-policy: -moz-initial; -moz-background-origin: -moz-initial; background: rgb(255, 255, 232) none repeat scroll 0% 0%; color: black;"&gt;ui`&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #bb7977; font-weight: bold;"&gt;echo&lt;/span&gt; &lt;span style="color: #cc5555;"&gt;"------- &lt;/span&gt;&lt;span style="color: #cc5555;"&gt;$name&lt;/span&gt;&lt;span style="color: #cc5555;"&gt; ------"&lt;/span&gt;&lt;br /&gt;pyuic4 &lt;span style="color: #508050; font-weight: bold;"&gt;.&lt;/span&gt;&lt;span style="color: #40015a;"&gt;/&lt;/span&gt;$1 &lt;span style="color: #44aadd;"&gt;-o&lt;/span&gt; &lt;span style="color: #508050; font-weight: bold;"&gt;.&lt;/span&gt;&lt;span style="color: #40015a;"&gt;/&lt;/span&gt;$name&lt;span style="color: #508050; font-weight: bold;"&gt;.&lt;/span&gt;py&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-4508863885881577244?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/4508863885881577244/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2010/10/little-shell-scripting.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/4508863885881577244'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/4508863885881577244'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2010/10/little-shell-scripting.html' title='Little Shell Scripting'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-3340236783220418985</id><published>2010-10-20T00:52:00.000-07:00</published><updated>2010-10-20T00:52:47.479-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Shader'/><category scheme='http://www.blogger.com/atom/ns#' term='renderman'/><title type='text'>Step By Step Pixar Style Eyes Shader. Comming Soon.</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_rzIosXWYk7g/TL6fhZQV31I/AAAAAAAADMk/5AV5HgBMLgg/s1600/ep10_sc26B_render.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="291" src="http://4.bp.blogspot.com/_rzIosXWYk7g/TL6fhZQV31I/AAAAAAAADMk/5AV5HgBMLgg/s640/ep10_sc26B_render.jpg" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-3340236783220418985?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/3340236783220418985/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2010/10/step-by-step-pixar-style-eyes-shader.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/3340236783220418985'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/3340236783220418985'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2010/10/step-by-step-pixar-style-eyes-shader.html' title='Step By Step Pixar Style Eyes Shader. Comming Soon.'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_rzIosXWYk7g/TL6fhZQV31I/AAAAAAAADMk/5AV5HgBMLgg/s72-c/ep10_sc26B_render.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-6284419467252226</id><published>2010-10-18T13:32:00.000-07:00</published><updated>2011-04-13T00:49:55.830-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='slim'/><category scheme='http://www.blogger.com/atom/ns#' term='shading'/><category scheme='http://www.blogger.com/atom/ns#' term='renderman'/><title type='text'>Name Surface shader in Slim</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;This is example code from my old "SLO_Inspector" utility.&lt;br /&gt;&lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;1. Getting Id of Ensemble Object on geometryShape (pSphereShape1 as example):&lt;br /&gt;string $Id[] = `getAttr pSphereShape1.slimEns`;&lt;br /&gt;// Result: 2000_fsgyo400000 // &lt;br /&gt;&lt;br /&gt;2 Getting handle of appearence ( the our Ensemble):&lt;br /&gt;string $app_handle = `slimcmd slim GetAppearances -id $Id[0]`;&lt;br /&gt;// Result: func1 // &lt;br /&gt;&lt;br /&gt;2.1. Checking shading object name by handle:&lt;br /&gt;string $Name_Shader = `slimcmd $app_handle GetName`;&lt;br /&gt;// Result: Ens_1 //  (yes - it name "Ens_1")  &lt;br /&gt;&lt;br /&gt;3. Getting handle a Surface Shader connected in "Surface" slot:&lt;br /&gt;string $GetSurface_Handle = `slimcmd $app_handle GetProperties -type "surface"`;&lt;br /&gt;// Result: parm26 // &lt;br /&gt;&lt;br /&gt;3.1. We can check the right surface handle: &lt;br /&gt;string $Name_Shader1 = `slimcmd $GetSurface_Handle GetName`;&lt;br /&gt;// Result: Surface // - it's really "Surface" handle &lt;br /&gt;&lt;br /&gt;4. Getting Id number of connected Surface shader:&lt;br /&gt;string $Id_Surface_Shader = `slimcmd $GetSurface_Handle GetConnection`;&lt;br /&gt;// Result: 2000_rEBbZ400000 // &lt;br /&gt;&lt;br /&gt;5. Getting handle of Surface shader:&lt;br /&gt;string $Surface = `slimcmd slim GetAppearances -id $Id_Surface_Shader`;&lt;br /&gt;// Result: func0 // &lt;br /&gt;&lt;br /&gt;6. Getting name of Surface Shader&lt;br /&gt;string $NameSurface = `slimcmd $Surface GetName`;&lt;br /&gt;// Result: Blinn //&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-6284419467252226?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/6284419467252226/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2010/10/name-surface-shader-in-slim.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/6284419467252226'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/6284419467252226'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2010/10/name-surface-shader-in-slim.html' title='Name Surface shader in Slim'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-5913804344860590125</id><published>2010-10-13T23:27:00.001-07:00</published><updated>2010-10-13T23:28:48.614-07:00</updated><title type='text'>Amazing video from "Crysis" development</title><content type='html'>&lt;iframe frameborder="0" height="400" src="http://player.vimeo.com/video/14480956" width="600"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;a href="http://vimeo.com/14480956"&gt;Crysis nearing Avatar quality&lt;/a&gt; from &lt;a href="http://vimeo.com/user2945582"&gt;Oscar&lt;/a&gt; on &lt;a href="http://vimeo.com/"&gt;Vimeo&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-5913804344860590125?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://mirgorodsky.blogspot.com/' title='Amazing video from &quot;Crysis&quot; development'/><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/5913804344860590125/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2010/10/amazing-video-from-crisis-development.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/5913804344860590125'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/5913804344860590125'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2010/10/amazing-video-from-crisis-development.html' title='Amazing video from &quot;Crysis&quot; development'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-1711095267021833111</id><published>2010-08-27T13:29:00.000-07:00</published><updated>2010-08-27T13:53:32.706-07:00</updated><title type='text'>Some old scenes from "Frogs Paradise" Feature Animation Films (without compositing)</title><content type='html'>&lt;iframe frameborder="0" height="370" src="http://player.vimeo.com/video/14487839" width="600"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;a href="http://vimeo.com/14487839"&gt;from 20Sequence&lt;/a&gt; from &lt;a href="http://vimeo.com/user1521407"&gt;DaVinci&lt;/a&gt; on &lt;a href="http://vimeo.com/"&gt;Vimeo&lt;/a&gt;.&lt;br /&gt;&lt;iframe frameborder="0" height="370" src="http://player.vimeo.com/video/14487579" width="600"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;a href="http://vimeo.com/14487579"&gt;Animation (Some Scenes)&lt;/a&gt; from &lt;a href="http://vimeo.com/user1521407"&gt;DaVinci&lt;/a&gt; on &lt;a href="http://vimeo.com/"&gt;Vimeo&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-1711095267021833111?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/1711095267021833111/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2010/08/some-old-scenes-from-frogs-paradise.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/1711095267021833111'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/1711095267021833111'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2010/08/some-old-scenes-from-frogs-paradise.html' title='Some old scenes from &quot;Frogs Paradise&quot; Feature Animation Films (without compositing)'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-4415791919568165342</id><published>2010-07-22T11:25:00.000-07:00</published><updated>2011-05-29T05:56:50.159-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='autodesk maya'/><category scheme='http://www.blogger.com/atom/ns#' term='MAYA API'/><title type='text'>Autodesk MAYA Bug Tracking page</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_rzIosXWYk7g/TEiMazNQK7I/AAAAAAAADK8/ygWI8ECxBXk/s1600/Screenshot-15.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="285" src="http://2.bp.blogspot.com/_rzIosXWYk7g/TEiMazNQK7I/AAAAAAAADK8/ygWI8ECxBXk/s400/Screenshot-15.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://spreadsheets.google.com/ccc?key=pdI8BlSwGdr0btApDuZEcKQ&amp;amp;inv=py&amp;amp;pli=1#gid=0"&gt;http://spreadsheets.google.com/ccc?key=pdI8BlSwGdr0btApDuZEcKQ&amp;amp;inv=py&amp;amp;pli=1#gid=0&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-4415791919568165342?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/4415791919568165342/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2010/07/autodesk-maya-bug-tracking-page.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/4415791919568165342'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/4415791919568165342'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2010/07/autodesk-maya-bug-tracking-page.html' title='Autodesk MAYA Bug Tracking page'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_rzIosXWYk7g/TEiMazNQK7I/AAAAAAAADK8/ygWI8ECxBXk/s72-c/Screenshot-15.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-2192509496432811632</id><published>2010-07-12T15:57:00.000-07:00</published><updated>2010-07-12T15:58:51.486-07:00</updated><title type='text'>V-Day in Moscow</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_rzIosXWYk7g/TDueIL-FgWI/AAAAAAAADK0/jS17gSMAMxM/s1600/jets2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="428" src="http://3.bp.blogspot.com/_rzIosXWYk7g/TDueIL-FgWI/AAAAAAAADK0/jS17gSMAMxM/s640/jets2.jpg" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-2192509496432811632?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/2192509496432811632/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2010/07/v-day-in-moscow.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/2192509496432811632'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/2192509496432811632'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2010/07/v-day-in-moscow.html' title='V-Day in Moscow'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_rzIosXWYk7g/TDueIL-FgWI/AAAAAAAADK0/jS17gSMAMxM/s72-c/jets2.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-1831244735152996131</id><published>2010-07-05T16:05:00.000-07:00</published><updated>2011-08-28T13:48:41.422-07:00</updated><title type='text'></title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-1831244735152996131?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/1831244735152996131/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2010/07/my-way.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/1831244735152996131'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/1831244735152996131'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2010/07/my-way.html' title=''/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-3254468112258343414</id><published>2010-07-03T10:52:00.000-07:00</published><updated>2011-04-13T00:51:03.604-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='maya'/><category scheme='http://www.blogger.com/atom/ns#' term='plugin'/><category scheme='http://www.blogger.com/atom/ns#' term='deformer'/><category scheme='http://www.blogger.com/atom/ns#' term='C++'/><category scheme='http://www.blogger.com/atom/ns#' term='hotOcean'/><title type='text'>Compiling the HotOcean deformer for the MAYA2008</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_rzIosXWYk7g/TC94Q_bkVRI/AAAAAAAADKc/6fWSW1u30EQ/s1600/HotOcean_ScreenShot.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="308" src="http://1.bp.blogspot.com/_rzIosXWYk7g/TC94Q_bkVRI/AAAAAAAADKc/6fWSW1u30EQ/s640/HotOcean_ScreenShot.jpg" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;This is operation i use for compiling HotOcean plugin writed by Igor Žanić&lt;br /&gt;source code of HotOcean located: &lt;a href="http://sites.google.com/site/igorvfxsite/igorfx"&gt;http://sites.google.com/site/igorvfxsite/igorfx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;OS - OpenSuse11.2&lt;br /&gt;Maya2008&lt;br /&gt;GCC4.1 compiler&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;So compiling:&lt;br /&gt;g++-4.1 -c -I. -I.. -I/usr/autodesk/maya2008-x64/include -I/usr/include/OpenEXR -I/usr/X11R6/include -DBits64_ -m64 -DUNIX -D_BOOL -DLINUX -DFUNCPROTO -D_GNU_SOURCE -DLINUX_64 -fPIC -fno-strict-aliasing -DREQUIRE_IOSTREAM -Wno-deprecated -O3 -Wall -Wno-multichar -Wno-comment -Wno-sign-compare -funsigned-char -Wno-reorder -fno-gnu-keywords -ftemplate-depth-25 -pthread&amp;nbsp; -Wno-deprecated -fno-gnu-keywords hotOcean.cpp&lt;br /&gt;&lt;br /&gt;and linking:&lt;br /&gt;g++-4.1 -DBits64_ -m64 -DUNIX -D_BOOL -DLINUX -DFUNCPROTO -D_GNU_SOURCE -DLINUX_64 -fPIC -fno-strict-aliasing -DREQUIRE_IOSTREAM -Wno-deprecated -O3 -Wall -Wno-multichar -Wno-comment -Wno-sign-compare -funsigned-char -Wno-reorder -fno-gnu-keywords -ftemplate-depth-25 -pthread&amp;nbsp; -Wno-deprecated -fno-gnu-keywords -Wl,-Bsymbolic&amp;nbsp; -shared -o hotOcean.so hotOcean.o -L/usr/lib64/ -lfftw3f -lm -lblitz -lImath -L/usr/autodesk/maya2008-x64/lib -lOpenMaya -lFoundation -lOpenMayaAnim&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;After loading hotOcean.so in Maya I use by Igor Žanić video.&lt;br /&gt;&lt;object height="275" width="400"&gt;&lt;param name="allowfullscreen" value="true" /&gt;&lt;param name="allowscriptaccess" value="always" /&gt;&lt;param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=8049991&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1" /&gt;&lt;embed src="http://vimeo.com/moogaloop.swf?clip_id=8049991&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="275"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;a href="http://vimeo.com/8049991"&gt;HOT for Maya - ocean spray - basic tutorial&lt;/a&gt; from &lt;a href="http://vimeo.com/user1342200"&gt;Igor Zanic&lt;/a&gt; on &lt;a href="http://vimeo.com/"&gt;Vimeo&lt;/a&gt;.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-3254468112258343414?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/3254468112258343414/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2010/07/compiling-hotocean-deformer-for.html#comment-form' title='19 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/3254468112258343414'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/3254468112258343414'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2010/07/compiling-hotocean-deformer-for.html' title='Compiling the HotOcean deformer for the MAYA2008'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_rzIosXWYk7g/TC94Q_bkVRI/AAAAAAAADKc/6fWSW1u30EQ/s72-c/HotOcean_ScreenShot.jpg' height='72' width='72'/><thr:total>19</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-6656413714327174162</id><published>2010-06-29T14:30:00.000-07:00</published><updated>2010-06-29T14:31:28.111-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Musion'/><title type='text'>Musion Box on AtomExpo2010</title><content type='html'>&lt;a href="http://4.bp.blogspot.com/_rzIosXWYk7g/TCpkzraBcpI/AAAAAAAADKU/qQp6npBep0Q/s1600/p1010548.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="480" src="http://4.bp.blogspot.com/_rzIosXWYk7g/TCpkzraBcpI/AAAAAAAADKU/qQp6npBep0Q/s640/p1010548.jpg" width="640" /&gt;&lt;/a&gt;&lt;br /&gt;Testing Musion Box in Rosatom Exposition. It is to be regretted that dust accumulated on musion film.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-6656413714327174162?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/6656413714327174162/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2010/06/musion-box-on-atomexpo2010.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/6656413714327174162'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/6656413714327174162'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2010/06/musion-box-on-atomexpo2010.html' title='Musion Box on AtomExpo2010'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_rzIosXWYk7g/TCpkzraBcpI/AAAAAAAADKU/qQp6npBep0Q/s72-c/p1010548.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-1919632650006466931</id><published>2010-06-28T15:24:00.001-07:00</published><updated>2011-08-28T13:51:23.025-07:00</updated><title type='text'></title><content type='html'>&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-1919632650006466931?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/1919632650006466931/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2010/06/ipad-in-production.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/1919632650006466931'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/1919632650006466931'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2010/06/ipad-in-production.html' title=''/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-9039342862324183718</id><published>2010-06-27T15:55:00.000-07:00</published><updated>2010-06-27T15:55:42.370-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MonkeyDesign'/><title type='text'>Light My Fire</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_rzIosXWYk7g/TCfWxSUGxxI/AAAAAAAADJg/VRVf7yn7iRI/s1600/LightMyFire.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="426" src="http://1.bp.blogspot.com/_rzIosXWYk7g/TCfWxSUGxxI/AAAAAAAADJg/VRVf7yn7iRI/s640/LightMyFire.jpg" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-9039342862324183718?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/9039342862324183718/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2010/06/light-my-fire.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/9039342862324183718'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/9039342862324183718'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2010/06/light-my-fire.html' title='Light My Fire'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_rzIosXWYk7g/TCfWxSUGxxI/AAAAAAAADJg/VRVf7yn7iRI/s72-c/LightMyFire.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-8065431205534477076</id><published>2010-06-27T15:42:00.000-07:00</published><updated>2010-06-27T15:56:31.981-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MonkeyDesign'/><title type='text'>Up In The Air</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_rzIosXWYk7g/TCfTt1uEOUI/AAAAAAAADJY/GBiwnPPSPls/s1600/Up_InTheAir.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="419" src="http://1.bp.blogspot.com/_rzIosXWYk7g/TCfTt1uEOUI/AAAAAAAADJY/GBiwnPPSPls/s640/Up_InTheAir.jpg" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-8065431205534477076?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/8065431205534477076/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2010/06/up-in-air.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/8065431205534477076'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/8065431205534477076'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2010/06/up-in-air.html' title='Up In The Air'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_rzIosXWYk7g/TCfTt1uEOUI/AAAAAAAADJY/GBiwnPPSPls/s72-c/Up_InTheAir.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-8163064487764383035</id><published>2010-06-09T00:36:00.000-07:00</published><updated>2010-07-03T14:50:41.346-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='motion design'/><category scheme='http://www.blogger.com/atom/ns#' term='rosatom'/><category scheme='http://www.blogger.com/atom/ns#' term='logoanimation'/><title type='text'>Rosatom Logo Animation</title><content type='html'>&lt;object height="300" width="400"&gt;&lt;param name="allowfullscreen" value="true" /&gt;&lt;param name="allowscriptaccess" value="always" /&gt;&lt;param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=12396783&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1" /&gt;&lt;embed src="http://vimeo.com/moogaloop.swf?clip_id=12396783&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="640" height="480"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;a href="http://vimeo.com/12396783"&gt;rosatom logo animation&lt;/a&gt; from &lt;a href="http://vimeo.com/user1521407"&gt;DaVinci&lt;/a&gt; on &lt;a href="http://vimeo.com/"&gt;Vimeo&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-8163064487764383035?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/8163064487764383035/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2010/06/rosatom-logo-animation.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/8163064487764383035'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/8163064487764383035'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2010/06/rosatom-logo-animation.html' title='Rosatom Logo Animation'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-8218955058261158003</id><published>2010-05-12T01:10:00.000-07:00</published><updated>2010-05-12T03:37:56.300-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='multy-channel'/><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><category scheme='http://www.blogger.com/atom/ns#' term='exr'/><category scheme='http://www.blogger.com/atom/ns#' term='C++'/><category scheme='http://www.blogger.com/atom/ns#' term='Secondary Display'/><category scheme='http://www.blogger.com/atom/ns#' term='renderman'/><title type='text'>tickets to the moon</title><content type='html'>Utility for assembling exrs cropped images after prman crop render. This tool like "tiffjoin" from prman toolkit, but my "exr_join" assembling multy-channel exrs generally rendered to secondary display.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_rzIosXWYk7g/S-piX7cFJgI/AAAAAAAADI4/fPCZT_Rn7ms/s1600/moon_tickets.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="401" src="http://1.bp.blogspot.com/_rzIosXWYk7g/S-piX7cFJgI/AAAAAAAADI4/fPCZT_Rn7ms/s640/moon_tickets.jpg" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-8218955058261158003?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/8218955058261158003/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2010/05/tickets-to-moon.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/8218955058261158003'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/8218955058261158003'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2010/05/tickets-to-moon.html' title='tickets to the moon'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_rzIosXWYk7g/S-piX7cFJgI/AAAAAAAADI4/fPCZT_Rn7ms/s72-c/moon_tickets.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-8501130781034230750</id><published>2010-04-27T00:23:00.000-07:00</published><updated>2011-08-28T13:53:09.680-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='bkm'/><category scheme='http://www.blogger.com/atom/ns#' term='pointclouds'/><category scheme='http://www.blogger.com/atom/ns#' term='brickmaps'/><category scheme='http://www.blogger.com/atom/ns#' term='C++'/><category scheme='http://www.blogger.com/atom/ns#' term='renderman'/><category scheme='http://www.blogger.com/atom/ns#' term='ptc'/><title type='text'>Fading Of Dream</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;I recently faced problem of converting huge pointclouds in brickmaps. So I wrote litle utility to decrease density points in ptc.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_rzIosXWYk7g/S9aKvW4vxHI/AAAAAAAADII/uypSpg2N8BY/s1600/Out1.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="502" src="http://1.bp.blogspot.com/_rzIosXWYk7g/S9aKvW4vxHI/AAAAAAAADII/uypSpg2N8BY/s640/Out1.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Certainly this is bad subdiv based on poligon with multivalent vertices. But it is good to show conversion to pointclouds.&lt;br /&gt;&lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_rzIosXWYk7g/S9aLKJ7ru6I/AAAAAAAADIQ/4ftHJISjggc/s1600/Out2.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="459" src="http://4.bp.blogspot.com/_rzIosXWYk7g/S9aLKJ7ru6I/AAAAAAAADIQ/4ftHJISjggc/s640/Out2.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;10 x decreased&amp;nbsp; poincloud:&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_rzIosXWYk7g/S9aNit4tnaI/AAAAAAAADIY/oKYMPhc3awE/s1600/Out3.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="508" src="http://4.bp.blogspot.com/_rzIosXWYk7g/S9aNit4tnaI/AAAAAAAADIY/oKYMPhc3awE/s640/Out3.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;100 x decreased pointcloud:&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_rzIosXWYk7g/S9aN5t7j16I/AAAAAAAADIg/KK6wS_TNel0/s1600/Out6.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="502" src="http://2.bp.blogspot.com/_rzIosXWYk7g/S9aN5t7j16I/AAAAAAAADIg/KK6wS_TNel0/s640/Out6.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_rzIosXWYk7g/S9aO0on-UlI/AAAAAAAADIo/Tm2XtprIm3E/s1600/Out4.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="506" src="http://1.bp.blogspot.com/_rzIosXWYk7g/S9aO0on-UlI/AAAAAAAADIo/Tm2XtprIm3E/s640/Out4.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;1000 x decreased pointcloud:&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_rzIosXWYk7g/S9aQW7iGjMI/AAAAAAAADIw/IJUKWcbHRcI/s1600/Out7.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="504" src="http://2.bp.blogspot.com/_rzIosXWYk7g/S9aQW7iGjMI/AAAAAAAADIw/IJUKWcbHRcI/s640/Out7.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-8501130781034230750?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/8501130781034230750/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2010/04/fading-of-dream.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/8501130781034230750'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/8501130781034230750'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2010/04/fading-of-dream.html' title='Fading Of Dream'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_rzIosXWYk7g/S9aKvW4vxHI/AAAAAAAADII/uypSpg2N8BY/s72-c/Out1.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-7384192574940863338</id><published>2010-03-31T13:35:00.000-07:00</published><updated>2011-05-29T07:34:13.762-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='firefox'/><category scheme='http://www.blogger.com/atom/ns#' term='cooliris'/><category scheme='http://www.blogger.com/atom/ns#' term='flash'/><title type='text'>CoolIris</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;I think among a galore firefox plugins, the CoolIris really shiny dimond :)&lt;br /&gt;It power tool for finding images across primary search-engines. Modern design and usability do searching really fascinating.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_rzIosXWYk7g/S7OxuU-sYeI/AAAAAAAADH4/bnQy019ROcg/s1600/Screenshot-8.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="187" src="http://3.bp.blogspot.com/_rzIosXWYk7g/S7OxuU-sYeI/AAAAAAAADH4/bnQy019ROcg/s200/Screenshot-8.png" width="200" /&gt;&lt;/a&gt;&lt;a href="http://4.bp.blogspot.com/_rzIosXWYk7g/S7Ox_j7UnwI/AAAAAAAADIA/F0CrhpNUwWM/s1600/Screenshot-5.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="164" src="http://4.bp.blogspot.com/_rzIosXWYk7g/S7Ox_j7UnwI/AAAAAAAADIA/F0CrhpNUwWM/s320/Screenshot-5.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-7384192574940863338?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/7384192574940863338/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2010/03/cooliris.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/7384192574940863338'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/7384192574940863338'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2010/03/cooliris.html' title='CoolIris'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_rzIosXWYk7g/S7OxuU-sYeI/AAAAAAAADH4/bnQy019ROcg/s72-c/Screenshot-8.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-5843151442211854244</id><published>2010-03-11T15:02:00.000-08:00</published><updated>2010-03-11T15:08:15.459-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OpenSuse'/><title type='text'>Oh Suse</title><content type='html'>&lt;div style="text-align: left;"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_rzIosXWYk7g/S5l2cGJqQYI/AAAAAAAADHw/t4RyPDwb4nQ/s1600-h/File:OpenSUSE_11.2_468x60.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="51" src="http://2.bp.blogspot.com/_rzIosXWYk7g/S5l2cGJqQYI/AAAAAAAADHw/t4RyPDwb4nQ/s400/File:OpenSUSE_11.2_468x60.png" width="400" /&gt;&lt;i&gt;&lt;b&gt; &lt;/b&gt;&lt;/i&gt;&lt;/a&gt;&lt;i&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;/i&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;i&gt;I waiting a long time for the stable versions Suse11. And now I say - "Hello 11.2, but - Dont Goodbay 10.3"&amp;nbsp;&lt;/i&gt;&lt;a href="http://2.bp.blogspot.com/_rzIosXWYk7g/S5l2cGJqQYI/AAAAAAAADHw/t4RyPDwb4nQ/s1600-h/File:OpenSUSE_11.2_468x60.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;i&gt;&lt;b&gt; &lt;/b&gt;&lt;/i&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-5843151442211854244?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/5843151442211854244/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2010/03/oh-suse.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/5843151442211854244'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/5843151442211854244'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2010/03/oh-suse.html' title='Oh Suse'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_rzIosXWYk7g/S5l2cGJqQYI/AAAAAAAADHw/t4RyPDwb4nQ/s72-c/File:OpenSUSE_11.2_468x60.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-6617690889216013997</id><published>2010-02-12T03:53:00.000-08:00</published><updated>2010-02-12T03:53:08.178-08:00</updated><title type='text'>Cylon Render</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;a href="http://4.bp.blogspot.com/_rzIosXWYk7g/S3VA4PLEQKI/AAAAAAAADGg/AxH2obzkNKE/s1600-h/Screen_CylonRender_crop.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_rzIosXWYk7g/S3VA4PLEQKI/AAAAAAAADGg/AxH2obzkNKE/s320/Screen_CylonRender_crop.png" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/div&gt;&amp;nbsp;"The Cylons were created by man, they rebelled, they evolved. They look and feel human. Some are programmed to think they are human. There are many copies and they have a plan."&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-6617690889216013997?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/6617690889216013997/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2010/02/cylon-render.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/6617690889216013997'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/6617690889216013997'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2010/02/cylon-render.html' title='Cylon Render'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_rzIosXWYk7g/S3VA4PLEQKI/AAAAAAAADGg/AxH2obzkNKE/s72-c/Screen_CylonRender_crop.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-69182360083243083</id><published>2010-02-12T03:31:00.000-08:00</published><updated>2010-02-12T03:40:47.469-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Project managment'/><category scheme='http://www.blogger.com/atom/ns#' term='Feature Animation Film'/><category scheme='http://www.blogger.com/atom/ns#' term='Tracking System'/><title type='text'>Atmosphere</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_rzIosXWYk7g/S3U7VSZoBsI/AAAAAAAADGQ/WqpsXqW-d3s/s1600-h/Atmospere.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="102" src="http://1.bp.blogspot.com/_rzIosXWYk7g/S3U7VSZoBsI/AAAAAAAADGQ/WqpsXqW-d3s/s400/Atmospere.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;Managment System developed last year by me and Andrew Chernysh&lt;/div&gt;&lt;div style="text-align: left;"&gt;is rebranded!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-69182360083243083?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/69182360083243083/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2010/02/atmosphere.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/69182360083243083'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/69182360083243083'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2010/02/atmosphere.html' title='Atmosphere'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_rzIosXWYk7g/S3U7VSZoBsI/AAAAAAAADGQ/WqpsXqW-d3s/s72-c/Atmospere.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-7600143733975277589</id><published>2010-02-10T12:25:00.000-08:00</published><updated>2010-02-10T12:25:43.911-08:00</updated><title type='text'></title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_rzIosXWYk7g/S3MWA--RheI/AAAAAAAADFw/_Q8DCO0HtoI/s1600-h/Screenshot.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="640" src="http://2.bp.blogspot.com/_rzIosXWYk7g/S3MWA--RheI/AAAAAAAADFw/_Q8DCO0HtoI/s640/Screenshot.png" width="497" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-7600143733975277589?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/7600143733975277589/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2010/02/blog-post.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/7600143733975277589'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/7600143733975277589'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2010/02/blog-post.html' title=''/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_rzIosXWYk7g/S3MWA--RheI/AAAAAAAADFw/_Q8DCO0HtoI/s72-c/Screenshot.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-3239698396004587580</id><published>2010-02-05T22:57:00.000-08:00</published><updated>2010-02-05T23:02:39.933-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='maya'/><category scheme='http://www.blogger.com/atom/ns#' term='MEL'/><category scheme='http://www.blogger.com/atom/ns#' term='python'/><category scheme='http://www.blogger.com/atom/ns#' term='renderman'/><category scheme='http://www.blogger.com/atom/ns#' term='python API'/><title type='text'></title><content type='html'>Render pipeline prerealised. This is part of big animation pipeline. &lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_rzIosXWYk7g/S20SrPuBr1I/AAAAAAAADFo/WWUVU-THUHM/s1600-h/LightZeppelinNewBanner2.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="125" src="http://1.bp.blogspot.com/_rzIosXWYk7g/S20SrPuBr1I/AAAAAAAADFo/WWUVU-THUHM/s400/LightZeppelinNewBanner2.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-3239698396004587580?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/3239698396004587580/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2010/02/render-pipeline-prerealised.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/3239698396004587580'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/3239698396004587580'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2010/02/render-pipeline-prerealised.html' title=''/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_rzIosXWYk7g/S20SrPuBr1I/AAAAAAAADFo/WWUVU-THUHM/s72-c/LightZeppelinNewBanner2.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-2230383307884494233</id><published>2010-01-22T07:53:00.000-08:00</published><updated>2010-03-16T12:35:30.784-07:00</updated><title type='text'>New Episode</title><content type='html'>&lt;object height="300" width="400"&gt;&lt;param name="allowfullscreen" value="true" /&gt;&lt;param name="allowscriptaccess" value="always" /&gt;&lt;param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=8909880&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1" /&gt;&lt;embed src="http://vimeo.com/moogaloop.swf?clip_id=8909880&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="640" height="480"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;a href="http://vimeo.com/8909880"&gt;Untitled&lt;/a&gt; from &lt;a href="http://vimeo.com/user1521407"&gt;DaVinci&lt;/a&gt; on &lt;a href="http://vimeo.com/"&gt;Vimeo&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-2230383307884494233?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/2230383307884494233/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2010/01/new-episode.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/2230383307884494233'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/2230383307884494233'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2010/01/new-episode.html' title='New Episode'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-4721947007763224496</id><published>2009-12-02T01:04:00.000-08:00</published><updated>2010-03-16T03:08:29.790-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='maya'/><category scheme='http://www.blogger.com/atom/ns#' term='plugin'/><category scheme='http://www.blogger.com/atom/ns#' term='python'/><category scheme='http://www.blogger.com/atom/ns#' term='python API'/><title type='text'>UberLightHelper realised</title><content type='html'>&lt;a href="http://www.creativecrash.com/maya/downloads/scripts-plugins/rendering/renderman/c/uberlighthelper"&gt;http://www.creativecrash.com/maya/downloads/scripts-plugins/rendering/renderman/c/uberlighthelper&lt;/a&gt;&lt;a href="http://4.bp.blogspot.com/_rzIosXWYk7g/SxYtggKN0EI/AAAAAAAADEE/-dsLIVZqgRM/s1600-h/UberLight2.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="424" src="http://4.bp.blogspot.com/_rzIosXWYk7g/SxYtggKN0EI/AAAAAAAADEE/-dsLIVZqgRM/s640/UberLight2.png" width="640" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-4721947007763224496?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/4721947007763224496/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2009/12/uberlighthelper-realised.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/4721947007763224496'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/4721947007763224496'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2009/12/uberlighthelper-realised.html' title='UberLightHelper realised'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_rzIosXWYk7g/SxYtggKN0EI/AAAAAAAADEE/-dsLIVZqgRM/s72-c/UberLight2.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-8959502164280846849</id><published>2009-11-27T02:19:00.000-08:00</published><updated>2009-12-01T16:12:05.581-08:00</updated><title type='text'>"stupid modelling tricks"</title><content type='html'>Sometime I keen regret for lack of Big Gun - when in Shading Department come up scenes like this!&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_rzIosXWYk7g/SxWwtghWELI/AAAAAAAADD8/tsIW2eJW3W4/s1600/Screenshot-4.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_rzIosXWYk7g/SxWwtghWELI/AAAAAAAADD8/tsIW2eJW3W4/s640/Screenshot-4.png" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-8959502164280846849?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/8959502164280846849/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2009/11/wizard-smog.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/8959502164280846849'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/8959502164280846849'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2009/11/wizard-smog.html' title='&quot;stupid modelling tricks&quot;'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_rzIosXWYk7g/SxWwtghWELI/AAAAAAAADD8/tsIW2eJW3W4/s72-c/Screenshot-4.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-2928380319668084508</id><published>2009-11-25T15:05:00.001-08:00</published><updated>2009-11-25T15:17:05.315-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Moon movie'/><category scheme='http://www.blogger.com/atom/ns#' term='Clint Mansell'/><category scheme='http://www.blogger.com/atom/ns#' term='Duncan Jones'/><title type='text'>MOON</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_rzIosXWYk7g/Sw258fld2nI/AAAAAAAADD0/PQ9HjGZvJB8/s1600/moonbannerrgb.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 170px;" src="http://2.bp.blogspot.com/_rzIosXWYk7g/Sw258fld2nI/AAAAAAAADD0/PQ9HjGZvJB8/s400/moonbannerrgb.jpg" alt="" id="BLOGGER_PHOTO_ID_5408183176463768178" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family: verdana;"&gt;Perfect movie - by Duncan Jones and music by Clint Mansell&lt;/span&gt;&lt;a href="http://www.imdb.com/name/nm1512910/" onclick="(new Image()).src='/rg/directorlist/position-1/images/b.gif?link=name/nm1512910/';"&gt;&lt;/a&gt;&lt;br /&gt;http://www.imdb.com/title/tt1182345/&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-2928380319668084508?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/2928380319668084508/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2009/11/moon.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/2928380319668084508'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/2928380319668084508'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2009/11/moon.html' title='MOON'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_rzIosXWYk7g/Sw258fld2nI/AAAAAAAADD0/PQ9HjGZvJB8/s72-c/moonbannerrgb.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-1628506778698403463</id><published>2009-11-25T06:19:00.000-08:00</published><updated>2010-03-16T12:17:39.106-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='maya'/><category scheme='http://www.blogger.com/atom/ns#' term='Feature Animation Film'/><category scheme='http://www.blogger.com/atom/ns#' term='GI'/><category scheme='http://www.blogger.com/atom/ns#' term='Indirect Illumination'/><category scheme='http://www.blogger.com/atom/ns#' term='shading'/><category scheme='http://www.blogger.com/atom/ns#' term='renderman'/><category scheme='http://www.blogger.com/atom/ns#' term='lighting'/><title type='text'>Main Control Room In Frogs Space Ship</title><content type='html'>&lt;a href="http://1.bp.blogspot.com/_rzIosXWYk7g/Sw09aipzIUI/AAAAAAAADDk/v2Zx2Q4jMCQ/s1600/rubka.jpg" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5408046253729849666" src="http://1.bp.blogspot.com/_rzIosXWYk7g/Sw09aipzIUI/AAAAAAAADDk/v2Zx2Q4jMCQ/s400/rubka.jpg" style="cursor: pointer; display: block; height: 170px; margin: 0px auto 10px; text-align: center; width: 400px;" /&gt;&lt;/a&gt;&lt;object height="480" width="640"&gt;&lt;param name="allowfullscreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=7848990&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1"&gt;&lt;embed src="http://vimeo.com/moogaloop.swf?clip_id=7848990&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="640" height="480"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;a href="http://vimeo.com/7848990"&gt;Untitled&lt;/a&gt; from &lt;a href="http://vimeo.com/user1521407"&gt;DaVinci&lt;/a&gt; on &lt;a href="http://vimeo.com/"&gt;Vimeo&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-1628506778698403463?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/1628506778698403463/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2009/11/main-control-room-in-frogs-space-ship.html#comment-form' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/1628506778698403463'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/1628506778698403463'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2009/11/main-control-room-in-frogs-space-ship.html' title='Main Control Room In Frogs Space Ship'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_rzIosXWYk7g/Sw09aipzIUI/AAAAAAAADDk/v2Zx2Q4jMCQ/s72-c/rubka.jpg' height='72' width='72'/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-7743237581710414275</id><published>2009-11-24T13:01:00.000-08:00</published><updated>2010-03-16T12:18:34.674-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rendering'/><category scheme='http://www.blogger.com/atom/ns#' term='maya'/><category scheme='http://www.blogger.com/atom/ns#' term='feature animarion film'/><category scheme='http://www.blogger.com/atom/ns#' term='shading'/><category scheme='http://www.blogger.com/atom/ns#' term='renderman'/><category scheme='http://www.blogger.com/atom/ns#' term='lighting'/><title type='text'>Sometimes They Come Back...</title><content type='html'>&lt;object width="400" height="300"&gt;&lt;param name="allowfullscreen" value="true" /&gt;&lt;param name="allowscriptaccess" value="always" /&gt;&lt;param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=7852114&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1" /&gt;&lt;embed src="http://vimeo.com/moogaloop.swf?clip_id=7852114&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="640" height="480"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;p&gt;&lt;a href="http://vimeo.com/7852114"&gt;Frogs Paradise(work materials)&lt;/a&gt; from &lt;a href="http://vimeo.com/user1521407"&gt;DaVinci&lt;/a&gt; on &lt;a href="http://vimeo.com"&gt;Vimeo&lt;/a&gt;.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-7743237581710414275?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/7743237581710414275/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2009/11/sometimes-they-come-back.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/7743237581710414275'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/7743237581710414275'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2009/11/sometimes-they-come-back.html' title='Sometimes They Come Back...'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7658360860567207664.post-3911941114907338286</id><published>2009-11-24T12:42:00.000-08:00</published><updated>2010-06-27T16:08:39.180-07:00</updated><title type='text'>Hello World !!!</title><content type='html'>This is my first message!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7658360860567207664-3911941114907338286?l=mirgorodsky.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mirgorodsky.blogspot.com/feeds/3911941114907338286/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mirgorodsky.blogspot.com/2009/11/lets-go.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/3911941114907338286'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7658360860567207664/posts/default/3911941114907338286'/><link rel='alternate' type='text/html' href='http://mirgorodsky.blogspot.com/2009/11/lets-go.html' title='Hello World !!!'/><author><name>Alex Mirgorodskiy</name><uri>http://www.blogger.com/profile/11044471930000643869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='29' src='http://1.bp.blogspot.com/-3z3Q3k38ioo/TXtWABDTlYI/AAAAAAAADOw/S8qOhyko_ds/s220/Alex.JPG'/></author><thr:total>0</thr:total></entry></feed>
