<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Samiam's Scribble Pad &#187; Point Cloud</title>
	<atom:link href="http://www.hodge.net.au/sam/blog/tag/point-cloud/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.hodge.net.au/sam/blog</link>
	<description>Random Thoughts of Sam Hodge, about Life, Art and Technology</description>
	<lastBuildDate>Mon, 01 Dec 2025 07:20:55 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>Point Cloud in Nuke using &#8220;PositionToPoints&#8221;, 3delight Rendman Shader Language and cortex-vfx</title>
		<link>http://www.hodge.net.au/sam/blog/2010/10/14/point-cloud-in-nuke-using-positiontopoints-3delight-rendman-shader-language-and-cortex-vfx/</link>
		<comments>http://www.hodge.net.au/sam/blog/2010/10/14/point-cloud-in-nuke-using-positiontopoints-3delight-rendman-shader-language-and-cortex-vfx/#comments</comments>
		<pubDate>Thu, 14 Oct 2010 02:51:13 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Bake]]></category>
		<category><![CDATA[cortex-vfx]]></category>
		<category><![CDATA[Nuke]]></category>
		<category><![CDATA[Point Cloud]]></category>
		<category><![CDATA[Renderman]]></category>

		<guid isPermaLink="false">http://www.hodge.net.au/sam/blog/?p=295</guid>
		<description><![CDATA[Here is the end result: First things first I need a model to work with Model Stanford Bunny OBJ via MD Fischer Shader 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 surface bakeColourAndPosition&#40; uniform float diffuseAmount = 1; varying color surfaceColour = color&#40;0.18,0.18,0.18&#41;; varying color opacityColour = color&#40;0.99,0.99,0.99&#41;; [...]]]></description>
				<content:encoded><![CDATA[<p>Here is the end result:</p>
<a href="http://www.hodge.net.au/sam/blog/wp-content/uploads/stanfordbunnyinnukefromscrambledexrs.png"><img src="http://www.hodge.net.au/sam/blog/wp-content/uploads/stanfordbunnyinnukefromscrambledexrs-256x300.png" alt="Nuke Node &quot;PositionToPoints&quot; with 3d EXR inputs" title="stanfordbunnyinnukefromscrambledexrs" width="256" height="300" class="size-medium wp-image-324" /></a>
<p>First things first I need a model to work with</p>
<h4>Model</h4>
<ul>
<li><a href="http://graphics.stanford.edu/~mdfisher/Data/Meshes/bunny.obj">Stanford Bunny OBJ via MD Fischer</a></li>
</ul>
<h4>Shader</h4>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
</pre></td><td class="code"><pre class="c" style="font-family:monospace;">surface bakeColourAndPosition<span style="color: #009900;">&#40;</span>
uniform <span style="color: #993333;">float</span> diffuseAmount <span style="color: #339933;">=</span> <span style="color: #0000dd;">1</span><span style="color: #339933;">;</span>
varying color surfaceColour <span style="color: #339933;">=</span> color<span style="color: #009900;">&#40;</span><span style="color:#800080;">0.18</span><span style="color: #339933;">,</span><span style="color:#800080;">0.18</span><span style="color: #339933;">,</span><span style="color:#800080;">0.18</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
varying color opacityColour <span style="color: #339933;">=</span> color<span style="color: #009900;">&#40;</span><span style="color:#800080;">0.99</span><span style="color: #339933;">,</span><span style="color:#800080;">0.99</span><span style="color: #339933;">,</span><span style="color:#800080;">0.99</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
uniform string bakeFile<span style="color: #339933;">=</span><span style="color: #ff0000;">&quot;/tmp/out.bake&quot;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
   varying normal Nn <span style="color: #339933;">=</span> normalize<span style="color: #009900;">&#40;</span>N<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
   Ci <span style="color: #339933;">=</span> diffuse<span style="color: #009900;">&#40;</span>Nn<span style="color: #009900;">&#41;</span><span style="color: #339933;">*</span>surfaceColour<span style="color: #339933;">*</span>diffuseAmount<span style="color: #339933;">*</span>Cs<span style="color: #339933;">;</span>
   Oi <span style="color: #339933;">=</span> opacityColour<span style="color: #339933;">*</span>Os<span style="color: #339933;">;</span>
   varying point Pworld <span style="color: #339933;">=</span> transform<span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;current&quot;</span><span style="color: #339933;">,</span><span style="color: #ff0000;">&quot;world&quot;</span><span style="color: #339933;">,</span>P<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
   bake<span style="color: #009900;">&#40;</span>concat<span style="color: #009900;">&#40;</span>bakeFile<span style="color: #339933;">,</span><span style="color: #ff0000;">&quot;Position&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span>s<span style="color: #339933;">,</span>t<span style="color: #339933;">,</span>Pworld<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
   bake<span style="color: #009900;">&#40;</span>concat<span style="color: #009900;">&#40;</span>bakeFile<span style="color: #339933;">,</span><span style="color: #ff0000;">&quot;Colour&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span>s<span style="color: #339933;">,</span>t<span style="color: #339933;">,</span>Ci<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
   Ci <span style="color: #339933;">*=</span> Oi<span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></td></tr></table></div>

<p>This shader will produce two text &#8220;bakefile&#8221; files in the /tmp directory</p>
<p>Note: The texture coordinates are ignored, only using the 3rd,4th and 5th values</p>
<ol>
<li>one named out.bakeColour with colour information
<li>one named out.bakePosition with position information
</ol>
<h4>Output Bakefiles</h4>
<ul>
<li>Download .tar.gz <a href="http://www.hodge.net.au/sam/blog/wp-content/uploads/bakeFiles.tar.gz">here&#8230;</a>
<p>Due to the SIMD nature of shaders the line count of each of the bake files is the same so they should contain line for line the same information about the Position and Colour Respectively.</p>
<p>They are in ASCII format so they are easy enough to parse with Python.</p>
<p>here is an example of thier content:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
</pre></td><td class="code"><pre class="text" style="font-family:monospace;">out.bakePositionmh
3
0 1 -0.07415867 0.17987273 -0.05079475
0 1 -0.073529155 0.1800126 -0.051191031
0 1 -0.07289961 0.18015243 -0.051587344
0 1 -0.072270096 0.18029229 -0.051983685
0 1 -0.07164058 0.18043211 -0.052379965
0 1 -0.07101102 0.18057197 -0.052776248
0 1 -0.07038155 0.1807118 -0.053172619</pre></td></tr></table></div>

<h4>Creating Position and Colour EXR files using cortex-vfx</h4>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
</pre></td><td class="code"><pre class="python" style="font-family:monospace;"><span style="color: #808080; font-style: italic;">#!/usr/bin/env python</span>
&nbsp;
<span style="color: #ff7700;font-weight:bold;">import</span> <span style="color: #dc143c;">sys</span><span style="color: #66cc66;">,</span><span style="color: #dc143c;">os</span><span style="color: #66cc66;">,</span><span style="color: #dc143c;">math</span>
&nbsp;
IECoreInstallPath <span style="color: #66cc66;">=</span> <span style="color: #483d8b;">&quot;/usr/lib/python2.6/site-packages&quot;</span>
&nbsp;
<span style="color: #ff7700;font-weight:bold;">if</span> IECoreInstallPath <span style="color: #ff7700;font-weight:bold;">not</span> <span style="color: #ff7700;font-weight:bold;">in</span> <span style="color: #dc143c;">sys</span>.<span style="color: black;">path</span>:
	<span style="color: #dc143c;">sys</span>.<span style="color: black;">path</span>.<span style="color: black;">append</span><span style="color: black;">&#40;</span>IECoreInstallPath<span style="color: black;">&#41;</span>
&nbsp;
<span style="color: #ff7700;font-weight:bold;">from</span> IECore <span style="color: #ff7700;font-weight:bold;">import</span> *
&nbsp;
bakeFolder <span style="color: #66cc66;">=</span> <span style="color: #483d8b;">&quot;/tmp&quot;</span>
&nbsp;
colorBakeFileLocation <span style="color: #66cc66;">=</span> <span style="color: #dc143c;">os</span>.<span style="color: black;">path</span>.<span style="color: black;">sep</span>.<span style="color: black;">join</span><span style="color: black;">&#40;</span><span style="color: black;">&#91;</span>bakeFolder<span style="color: #66cc66;">,</span><span style="color: #483d8b;">&quot;out.bakeColour&quot;</span><span style="color: black;">&#93;</span><span style="color: black;">&#41;</span>
&nbsp;
positionBakeFileLocation <span style="color: #66cc66;">=</span> <span style="color: #dc143c;">os</span>.<span style="color: black;">path</span>.<span style="color: black;">sep</span>.<span style="color: black;">join</span><span style="color: black;">&#40;</span><span style="color: black;">&#91;</span>bakeFolder<span style="color: #66cc66;">,</span><span style="color: #483d8b;">&quot;out.bakePosition&quot;</span><span style="color: black;">&#93;</span><span style="color: black;">&#41;</span>
&nbsp;
&nbsp;
&nbsp;
&nbsp;
<span style="color: #ff7700;font-weight:bold;">def</span> parseBakeFile<span style="color: black;">&#40;</span>bakeFileLocation<span style="color: black;">&#41;</span>:
	data <span style="color: #66cc66;">=</span> <span style="color: black;">&#91;</span><span style="color: black;">&#93;</span>
	counter <span style="color: #66cc66;">=</span> <span style="color: #ff4500;">0</span>
	bakeFile <span style="color: #66cc66;">=</span> <span style="color: #008000;">open</span><span style="color: black;">&#40;</span>bakeFileLocation<span style="color: #66cc66;">,</span><span style="color: #483d8b;">&quot;r&quot;</span><span style="color: black;">&#41;</span>
	<span style="color: #ff7700;font-weight:bold;">for</span> line <span style="color: #ff7700;font-weight:bold;">in</span> bakeFile.<span style="color: black;">readlines</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>:
		counter +<span style="color: #66cc66;">=</span><span style="color: #ff4500;">1</span>
		<span style="color: #ff7700;font-weight:bold;">if</span> counter <span style="color: #66cc66;">&gt;</span> <span style="color: #ff4500;">2</span>:
			stuff <span style="color: #66cc66;">=</span> line.<span style="color: black;">strip</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>.<span style="color: black;">split</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">&quot; &quot;</span><span style="color: black;">&#41;</span>
			<span style="color: #ff7700;font-weight:bold;">if</span> <span style="color: #008000;">len</span><span style="color: black;">&#40;</span>stuff<span style="color: black;">&#41;</span> <span style="color: #66cc66;">&gt;</span> <span style="color: #ff4500;">2</span>:
				data.<span style="color: black;">append</span><span style="color: black;">&#40;</span><span style="color: black;">&#40;</span><span style="color: #008000;">float</span><span style="color: black;">&#40;</span>stuff<span style="color: black;">&#91;</span><span style="color: #ff4500;">2</span><span style="color: black;">&#93;</span><span style="color: black;">&#41;</span><span style="color: #66cc66;">,</span><span style="color: #008000;">float</span><span style="color: black;">&#40;</span>stuff<span style="color: black;">&#91;</span><span style="color: #ff4500;">3</span><span style="color: black;">&#93;</span><span style="color: black;">&#41;</span><span style="color: #66cc66;">,</span><span style="color: #008000;">float</span><span style="color: black;">&#40;</span>stuff<span style="color: black;">&#91;</span><span style="color: #ff4500;">4</span><span style="color: black;">&#93;</span><span style="color: black;">&#41;</span><span style="color: black;">&#41;</span><span style="color: black;">&#41;</span>
	<span style="color: #ff7700;font-weight:bold;">print</span> <span style="color: #483d8b;">&quot;Completed parsing %d lines of file %s&quot;</span> % <span style="color: black;">&#40;</span><span style="color: #008000;">len</span><span style="color: black;">&#40;</span>data<span style="color: black;">&#41;</span><span style="color: #66cc66;">,</span>bakeFileLocation<span style="color: black;">&#41;</span>
	bakeFile.<span style="color: black;">close</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>
	<span style="color: #ff7700;font-weight:bold;">return</span> data
&nbsp;
colourData <span style="color: #66cc66;">=</span> parseBakeFile<span style="color: black;">&#40;</span>colorBakeFileLocation<span style="color: black;">&#41;</span>
&nbsp;
positionData <span style="color: #66cc66;">=</span> parseBakeFile<span style="color: black;">&#40;</span>positionBakeFileLocation<span style="color: black;">&#41;</span>
&nbsp;
<span style="color: #ff7700;font-weight:bold;">if</span> <span style="color: #008000;">len</span><span style="color: black;">&#40;</span>colourData<span style="color: black;">&#41;</span> <span style="color: #66cc66;">==</span> <span style="color: #008000;">len</span><span style="color: black;">&#40;</span>positionData<span style="color: black;">&#41;</span>:
	squareSize <span style="color: #66cc66;">=</span> <span style="color: #008000;">int</span><span style="color: black;">&#40;</span><span style="color: #dc143c;">math</span>.<span style="color: black;">sqrt</span><span style="color: black;">&#40;</span><span style="color: #008000;">len</span><span style="color: black;">&#40;</span>positionData<span style="color: black;">&#41;</span><span style="color: black;">&#41;</span><span style="color: black;">&#41;</span> +<span style="color: #ff4500;">1</span>
	<span style="color: #ff7700;font-weight:bold;">print</span> <span style="color: #483d8b;">&quot;Square Size: %d, Excess Pixels : %d&quot;</span> % <span style="color: black;">&#40;</span>squareSize<span style="color: #66cc66;">,</span>squareSize*squareSize - <span style="color: #008000;">len</span><span style="color: black;">&#40;</span>colourData<span style="color: black;">&#41;</span><span style="color: black;">&#41;</span>
	width <span style="color: #66cc66;">=</span> squareSize
	height <span style="color: #66cc66;">=</span> squareSize
	x <span style="color: #66cc66;">=</span> FloatVectorData<span style="color: black;">&#40;</span> width * height <span style="color: black;">&#41;</span>
	y <span style="color: #66cc66;">=</span> FloatVectorData<span style="color: black;">&#40;</span> width * height <span style="color: black;">&#41;</span>
	z <span style="color: #66cc66;">=</span> FloatVectorData<span style="color: black;">&#40;</span> width * height <span style="color: black;">&#41;</span>
&nbsp;
	r <span style="color: #66cc66;">=</span> FloatVectorData<span style="color: black;">&#40;</span> width * height <span style="color: black;">&#41;</span>
	g <span style="color: #66cc66;">=</span> FloatVectorData<span style="color: black;">&#40;</span> width * height <span style="color: black;">&#41;</span>
	b <span style="color: #66cc66;">=</span> FloatVectorData<span style="color: black;">&#40;</span> width * height <span style="color: black;">&#41;</span>
&nbsp;
	<span style="color: #ff7700;font-weight:bold;">for</span> i <span style="color: #ff7700;font-weight:bold;">in</span> <span style="color: #008000;">range</span><span style="color: black;">&#40;</span><span style="color: #008000;">len</span><span style="color: black;">&#40;</span>colourData<span style="color: black;">&#41;</span><span style="color: black;">&#41;</span>:
		r<span style="color: black;">&#91;</span>i<span style="color: black;">&#93;</span><span style="color: #66cc66;">=</span>colourData<span style="color: black;">&#91;</span>i<span style="color: black;">&#93;</span><span style="color: black;">&#91;</span><span style="color: #ff4500;">0</span><span style="color: black;">&#93;</span>
		g<span style="color: black;">&#91;</span>i<span style="color: black;">&#93;</span><span style="color: #66cc66;">=</span>colourData<span style="color: black;">&#91;</span>i<span style="color: black;">&#93;</span><span style="color: black;">&#91;</span><span style="color: #ff4500;">1</span><span style="color: black;">&#93;</span>
		b<span style="color: black;">&#91;</span>i<span style="color: black;">&#93;</span><span style="color: #66cc66;">=</span>colourData<span style="color: black;">&#91;</span>i<span style="color: black;">&#93;</span><span style="color: black;">&#91;</span><span style="color: #ff4500;">2</span><span style="color: black;">&#93;</span>
		x<span style="color: black;">&#91;</span>i<span style="color: black;">&#93;</span><span style="color: #66cc66;">=</span>positionData<span style="color: black;">&#91;</span>i<span style="color: black;">&#93;</span><span style="color: black;">&#91;</span><span style="color: #ff4500;">0</span><span style="color: black;">&#93;</span>
		y<span style="color: black;">&#91;</span>i<span style="color: black;">&#93;</span><span style="color: #66cc66;">=</span>positionData<span style="color: black;">&#91;</span>i<span style="color: black;">&#93;</span><span style="color: black;">&#91;</span><span style="color: #ff4500;">1</span><span style="color: black;">&#93;</span>
		z<span style="color: black;">&#91;</span>i<span style="color: black;">&#93;</span><span style="color: #66cc66;">=</span>positionData<span style="color: black;">&#91;</span>i<span style="color: black;">&#93;</span><span style="color: black;">&#91;</span><span style="color: #ff4500;">2</span><span style="color: black;">&#93;</span>
&nbsp;
	boxColour <span style="color: #66cc66;">=</span> Box2i<span style="color: black;">&#40;</span> V2i<span style="color: black;">&#40;</span> <span style="color: #ff4500;">0</span><span style="color: #66cc66;">,</span> <span style="color: #ff4500;">0</span> <span style="color: black;">&#41;</span><span style="color: #66cc66;">,</span> V2i<span style="color: black;">&#40;</span> width-<span style="color: #ff4500;">1</span><span style="color: #66cc66;">,</span> height-<span style="color: #ff4500;">1</span> <span style="color: black;">&#41;</span> <span style="color: black;">&#41;</span>
	boxPosition <span style="color: #66cc66;">=</span> Box2i<span style="color: black;">&#40;</span> V2i<span style="color: black;">&#40;</span> <span style="color: #ff4500;">0</span><span style="color: #66cc66;">,</span> <span style="color: #ff4500;">0</span> <span style="color: black;">&#41;</span><span style="color: #66cc66;">,</span> V2i<span style="color: black;">&#40;</span> width-<span style="color: #ff4500;">1</span><span style="color: #66cc66;">,</span> height-<span style="color: #ff4500;">1</span> <span style="color: black;">&#41;</span> <span style="color: black;">&#41;</span>
&nbsp;
	imageColour <span style="color: #66cc66;">=</span> ImagePrimitive<span style="color: black;">&#40;</span> boxColour<span style="color: #66cc66;">,</span> boxColour <span style="color: black;">&#41;</span>
	imagePosition <span style="color: #66cc66;">=</span> ImagePrimitive<span style="color: black;">&#40;</span> boxPosition<span style="color: #66cc66;">,</span> boxPosition <span style="color: black;">&#41;</span>
&nbsp;
	imagePosition<span style="color: black;">&#91;</span><span style="color: #483d8b;">&quot;R&quot;</span><span style="color: black;">&#93;</span><span style="color: #66cc66;">=</span> PrimitiveVariable<span style="color: black;">&#40;</span> PrimitiveVariable.<span style="color: black;">Interpolation</span>.<span style="color: black;">Vertex</span><span style="color: #66cc66;">,</span> x<span style="color: black;">&#41;</span>
	imagePosition<span style="color: black;">&#91;</span><span style="color: #483d8b;">&quot;G&quot;</span><span style="color: black;">&#93;</span><span style="color: #66cc66;">=</span> PrimitiveVariable<span style="color: black;">&#40;</span> PrimitiveVariable.<span style="color: black;">Interpolation</span>.<span style="color: black;">Vertex</span><span style="color: #66cc66;">,</span> y<span style="color: black;">&#41;</span>
	imagePosition<span style="color: black;">&#91;</span><span style="color: #483d8b;">&quot;B&quot;</span><span style="color: black;">&#93;</span><span style="color: #66cc66;">=</span> PrimitiveVariable<span style="color: black;">&#40;</span> PrimitiveVariable.<span style="color: black;">Interpolation</span>.<span style="color: black;">Vertex</span><span style="color: #66cc66;">,</span> z<span style="color: black;">&#41;</span>
&nbsp;
	imageColour<span style="color: black;">&#91;</span><span style="color: #483d8b;">&quot;R&quot;</span><span style="color: black;">&#93;</span><span style="color: #66cc66;">=</span> PrimitiveVariable<span style="color: black;">&#40;</span> PrimitiveVariable.<span style="color: black;">Interpolation</span>.<span style="color: black;">Vertex</span><span style="color: #66cc66;">,</span> r<span style="color: black;">&#41;</span>
	imageColour<span style="color: black;">&#91;</span><span style="color: #483d8b;">&quot;G&quot;</span><span style="color: black;">&#93;</span><span style="color: #66cc66;">=</span> PrimitiveVariable<span style="color: black;">&#40;</span> PrimitiveVariable.<span style="color: black;">Interpolation</span>.<span style="color: black;">Vertex</span><span style="color: #66cc66;">,</span> g<span style="color: black;">&#41;</span>
	imageColour<span style="color: black;">&#91;</span><span style="color: #483d8b;">&quot;B&quot;</span><span style="color: black;">&#93;</span><span style="color: #66cc66;">=</span> PrimitiveVariable<span style="color: black;">&#40;</span> PrimitiveVariable.<span style="color: black;">Interpolation</span>.<span style="color: black;">Vertex</span><span style="color: #66cc66;">,</span> b<span style="color: black;">&#41;</span>
&nbsp;
	writePosition <span style="color: #66cc66;">=</span> Writer.<span style="color: black;">create</span><span style="color: black;">&#40;</span> imagePosition<span style="color: #66cc66;">,</span> <span style="color: #483d8b;">&quot;/tmp/outPosition.exr&quot;</span> <span style="color: black;">&#41;</span>
	writeColour <span style="color: #66cc66;">=</span> Writer.<span style="color: black;">create</span><span style="color: black;">&#40;</span> imageColour<span style="color: #66cc66;">,</span> <span style="color: #483d8b;">&quot;/tmp/outColour.exr&quot;</span> <span style="color: black;">&#41;</span>
	writePosition.<span style="color: black;">write</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>
	writeColour.<span style="color: black;">write</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span></pre></td></tr></table></div>

<p>See more about cortex-vfx on google code:</p>
<ul>
<li><a href="http://code.google.com/p/cortex-vfx/">http://code.google.com/p/cortex-vfx/</a>
</ul>
<h4>Using Nuke to read the Position and Colour Data</h4>
<div id="attachment_311" class="wp-caption alignnone" style="width: 310px"><a href="http://www.hodge.net.au/sam/blog/wp-content/uploads/positiontopoints.png"><img src="http://www.hodge.net.au/sam/blog/wp-content/uploads/positiontopoints-300x163.png" alt="File &gt; Script Command [X] &gt; PositionToPoints" title="positiontopoints" width="300" height="163" class="size-medium wp-image-311" /></a><p class="wp-caption-text">File > Script Command > PositionToPoints</p></div>
<p>If you werent able to create your own pair of EXRs you can download the pair <a href="http://www.hodge.net.au/sam/blog/wp-content/uploads/exrOutput.tar.bz2">here</a> in .tar.bz2 format</p>
<p>So then you just need to connect them up to the input nodes for the PositionToPoints 3d node as follows:</p>
<a href="http://www.hodge.net.au/sam/blog/wp-content/uploads/stanfordbunnyinnukefromscrambledexrs.png"><img src="http://www.hodge.net.au/sam/blog/wp-content/uploads/stanfordbunnyinnukefromscrambledexrs-256x300.png" alt="Nuke Node &quot;PositionToPoints&quot; with 3d EXR inputs" title="stanfordbunnyinnukefromscrambledexrs" width="256" height="300" class="size-medium wp-image-324" /></a>
<p>If you thought this was useful leave a comment, or if you thought it was stupid leave a comment about how to improve it</p>
<p>Sam</p>
]]></content:encoded>
			<wfw:commentRss>http://www.hodge.net.au/sam/blog/2010/10/14/point-cloud-in-nuke-using-positiontopoints-3delight-rendman-shader-language-and-cortex-vfx/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>
