<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Comments on: John Iacoviello &#8211; Papervision3D Optimization Tips</title>
	<atom:link href="http://interactivehug.com/2008/04/21/john-iacoviello-papervision3d-optimization-tips/feed/" rel="self" type="application/rss+xml" />
	<link>http://interactivehug.com/2008/04/21/john-iacoviello-papervision3d-optimization-tips/</link>
	<description>Design, Animation, Art Direction</description>
	<lastBuildDate>Wed, 06 Jan 2010 21:02:41 -0800</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Joel Tong</title>
		<link>http://interactivehug.com/2008/04/21/john-iacoviello-papervision3d-optimization-tips/comment-page-1/#comment-1602</link>
		<dc:creator>Joel Tong</dc:creator>
		<pubDate>Wed, 02 Dec 2009 11:18:23 +0000</pubDate>
		<guid isPermaLink="false">http://interactivehug.com/2008/04/21/john-iacoviello-papervision3d-optimization-tips/#comment-1602</guid>
		<description>Hey,

Thanks for the tips!  Really liked the way you integrated P3D with the site...

Erm got a tip for optimization.  When rendering, set the useCulling property on camera to true:

camera.useCulling = true;

Will help to get rid of extra polygons and speed up processing.</description>
		<content:encoded><![CDATA[<p>Hey,</p>
<p>Thanks for the tips!  Really liked the way you integrated P3D with the site&#8230;</p>
<p>Erm got a tip for optimization.  When rendering, set the useCulling property on camera to true:</p>
<p>camera.useCulling = true;</p>
<p>Will help to get rid of extra polygons and speed up processing.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Miomni Coverflow &#124; VISUAL DIALECTS</title>
		<link>http://interactivehug.com/2008/04/21/john-iacoviello-papervision3d-optimization-tips/comment-page-1/#comment-1598</link>
		<dc:creator>Miomni Coverflow &#124; VISUAL DIALECTS</dc:creator>
		<pubDate>Tue, 10 Nov 2009 00:14:29 +0000</pubDate>
		<guid isPermaLink="false">http://interactivehug.com/2008/04/21/john-iacoviello-papervision3d-optimization-tips/#comment-1598</guid>
		<description>[...] The first version of this coverflow was built using papervision, however due to a combination of visual distortion and performance issues it was never put live. We were caught in a catch 22 using papervision on this project because to maintain a good level of performance and visual fluididty I had to keep the amouth of segements on each Cube to a minimum which led to some pretty bad horizontal distortion on any materials displayed at an angle . I found 5 segments per Cube was the best compromise, any less and you would start to see intersection issuses, anymore and the performance began to drop off massively. The original idea was for the coverflow to run within a fairly small div limiting the view to about 5 covers, but it also had the ability to run in a fullscreen mode. At the small size the coverflow ran quite nicely but as soon as the it was run in fullscreen the extra geometry on screen led once again to a nose dive in performance. The design team were unhappy with both issuses and even after some attempts to optimise the project  as much as possible the decision was taken to drop the project.  (thanks to John Iacovieloo and his post on Papervision3D Optimization Tips) [...]</description>
		<content:encoded><![CDATA[<p>[...] The first version of this coverflow was built using papervision, however due to a combination of visual distortion and performance issues it was never put live. We were caught in a catch 22 using papervision on this project because to maintain a good level of performance and visual fluididty I had to keep the amouth of segements on each Cube to a minimum which led to some pretty bad horizontal distortion on any materials displayed at an angle . I found 5 segments per Cube was the best compromise, any less and you would start to see intersection issuses, anymore and the performance began to drop off massively. The original idea was for the coverflow to run within a fairly small div limiting the view to about 5 covers, but it also had the ability to run in a fullscreen mode. At the small size the coverflow ran quite nicely but as soon as the it was run in fullscreen the extra geometry on screen led once again to a nose dive in performance. The design team were unhappy with both issuses and even after some attempts to optimise the project  as much as possible the decision was taken to drop the project.  (thanks to John Iacovieloo and his post on Papervision3D Optimization Tips) [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Josh Noble</title>
		<link>http://interactivehug.com/2008/04/21/john-iacoviello-papervision3d-optimization-tips/comment-page-1/#comment-1586</link>
		<dc:creator>Josh Noble</dc:creator>
		<pubDate>Thu, 03 Sep 2009 14:55:53 +0000</pubDate>
		<guid isPermaLink="false">http://interactivehug.com/2008/04/21/john-iacoviello-papervision3d-optimization-tips/#comment-1586</guid>
		<description>Thanks for posting this it has help me optimize my code a bunch and really improved the peformace of the project I was working on. Many Thanks.</description>
		<content:encoded><![CDATA[<p>Thanks for posting this it has help me optimize my code a bunch and really improved the peformace of the project I was working on. Many Thanks.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: babeuf</title>
		<link>http://interactivehug.com/2008/04/21/john-iacoviello-papervision3d-optimization-tips/comment-page-1/#comment-1566</link>
		<dc:creator>babeuf</dc:creator>
		<pubDate>Mon, 15 Jun 2009 15:46:29 +0000</pubDate>
		<guid isPermaLink="false">http://interactivehug.com/2008/04/21/john-iacoviello-papervision3d-optimization-tips/#comment-1566</guid>
		<description>For your interactivity problem, i would suggest that you use internal papervision events and when you detect onMouseOver, you start to track pointers position on your texture ( you can find the way to do this in the pv3d sample where you paint on a 3D smiley  ) and update your material thanks to this position. 

About the problem of performances. i think what you are trying to do is definetly too much for pv3d ( for the moment )...</description>
		<content:encoded><![CDATA[<p>For your interactivity problem, i would suggest that you use internal papervision events and when you detect onMouseOver, you start to track pointers position on your texture ( you can find the way to do this in the pv3d sample where you paint on a 3D smiley  ) and update your material thanks to this position. </p>
<p>About the problem of performances. i think what you are trying to do is definetly too much for pv3d ( for the moment )&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jeev</title>
		<link>http://interactivehug.com/2008/04/21/john-iacoviello-papervision3d-optimization-tips/comment-page-1/#comment-1559</link>
		<dc:creator>Jeev</dc:creator>
		<pubDate>Wed, 29 Apr 2009 12:16:11 +0000</pubDate>
		<guid isPermaLink="false">http://interactivehug.com/2008/04/21/john-iacoviello-papervision3d-optimization-tips/#comment-1559</guid>
		<description>Hey John,

Awesome stuff :). Your tips helped a lot in optimization, but I still lack some computing power for a project that I&#039;m currently working on. I have scene with about 50 Sphere objects all with GouradMaterial. On top of that I got 4 Viewports of 550x400 with 4 different camera&#039;s. On top of thát I also have a motion detection to influence the light source for the GouradMaterial. So we&#039;ve got a SWF of 1100x800 with 50 GouradMaterial Spheres, 4 Camera&#039;s and Viewports and motion detecting (which relies on bitmap reading, which requires a lot of processing power, but I managed to reduce this as much as possible already). I think you can image the amount of processing power needed for this. Do you have any tips on how I could reduce the amount of processing power?

Also I had another pv3d project on which I tried to apply a scripted MovieClip to a MovieAssetMaterial and MovieMaterial. The script on the MovieClip was a simple onMouseOver and onMouseOut event. Weird thing is, the script worked correctly with MovieMaterial, but with the MovieAssetMaterial it didn&#039;t quite. As soon as you mouse over the object, the material would respond to the mouse over. But as you mouse out it wouldn&#039;t do anything. So I checked what happened using some traces and it seems as soon as you mouse out of the object with the MovieAssetMaterial it dóes fire the mouse out event, but it also immediatly fires the mouse over event again, even though your nót on the object, thus on the material, thus on the movieclip. Now you&#039;ll probably be thinking &quot;why not use the papervision events of object_over and object_out?&quot;. The thing is I want to make the planet earth on a Sphere, where when you mouse over different countries different things happen (borders of country lit up &#039;n stuff like that). This can not be done with the pv3d events as far as I know, but should rather be done with traditional InteractiveDisplayObject events I think. Do you have any idea what&#039;s up with this? Or should I try a different approach? Is there maybe a way for this to work with pv3d?

Well I&#039;ll stop here. I always try to get to the bottom of things, looking for answers, but sometimes it only leads to more questions :). 

Looking forward to hear from you!</description>
		<content:encoded><![CDATA[<p>Hey John,</p>
<p>Awesome stuff <img src='http://interactivehug.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> . Your tips helped a lot in optimization, but I still lack some computing power for a project that I&#8217;m currently working on. I have scene with about 50 Sphere objects all with GouradMaterial. On top of that I got 4 Viewports of 550&#215;400 with 4 different camera&#8217;s. On top of thát I also have a motion detection to influence the light source for the GouradMaterial. So we&#8217;ve got a SWF of 1100&#215;800 with 50 GouradMaterial Spheres, 4 Camera&#8217;s and Viewports and motion detecting (which relies on bitmap reading, which requires a lot of processing power, but I managed to reduce this as much as possible already). I think you can image the amount of processing power needed for this. Do you have any tips on how I could reduce the amount of processing power?</p>
<p>Also I had another pv3d project on which I tried to apply a scripted MovieClip to a MovieAssetMaterial and MovieMaterial. The script on the MovieClip was a simple onMouseOver and onMouseOut event. Weird thing is, the script worked correctly with MovieMaterial, but with the MovieAssetMaterial it didn&#8217;t quite. As soon as you mouse over the object, the material would respond to the mouse over. But as you mouse out it wouldn&#8217;t do anything. So I checked what happened using some traces and it seems as soon as you mouse out of the object with the MovieAssetMaterial it dóes fire the mouse out event, but it also immediatly fires the mouse over event again, even though your nót on the object, thus on the material, thus on the movieclip. Now you&#8217;ll probably be thinking &#8220;why not use the papervision events of object_over and object_out?&#8221;. The thing is I want to make the planet earth on a Sphere, where when you mouse over different countries different things happen (borders of country lit up &#8216;n stuff like that). This can not be done with the pv3d events as far as I know, but should rather be done with traditional InteractiveDisplayObject events I think. Do you have any idea what&#8217;s up with this? Or should I try a different approach? Is there maybe a way for this to work with pv3d?</p>
<p>Well I&#8217;ll stop here. I always try to get to the bottom of things, looking for answers, but sometimes it only leads to more questions <img src='http://interactivehug.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> . </p>
<p>Looking forward to hear from you!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Sinan</title>
		<link>http://interactivehug.com/2008/04/21/john-iacoviello-papervision3d-optimization-tips/comment-page-1/#comment-1558</link>
		<dc:creator>Sinan</dc:creator>
		<pubDate>Thu, 16 Apr 2009 15:50:21 +0000</pubDate>
		<guid isPermaLink="false">http://interactivehug.com/2008/04/21/john-iacoviello-papervision3d-optimization-tips/#comment-1558</guid>
		<description>Fantastic web site indeed. And apart from Papervision, I also wonder how does the intro movie stream so fast?? It seems a large movie with rapidly changing material. And at the halfway of the timeline, it was already downloaded. Is it related with codec or servers??

Cheers...</description>
		<content:encoded><![CDATA[<p>Fantastic web site indeed. And apart from Papervision, I also wonder how does the intro movie stream so fast?? It seems a large movie with rapidly changing material. And at the halfway of the timeline, it was already downloaded. Is it related with codec or servers??</p>
<p>Cheers&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: john</title>
		<link>http://interactivehug.com/2008/04/21/john-iacoviello-papervision3d-optimization-tips/comment-page-1/#comment-1506</link>
		<dc:creator>john</dc:creator>
		<pubDate>Tue, 04 Nov 2008 04:15:57 +0000</pubDate>
		<guid isPermaLink="false">http://interactivehug.com/2008/04/21/john-iacoviello-papervision3d-optimization-tips/#comment-1506</guid>
		<description>Sorry for the extremely late replies, I haven&#039;t been back here in a while.  I&#039;ll respond to a few of the more &#039;recent&#039; ones.  If anyone has any urgent questions feel free to email me at john@selftitled.ca.  I&#039;ll get those a lot faster.

@felix:
As I stated above I ran into this same issue and I resolved it by calling my3dObject.calculateScreenCoords(myCamera); before accessing the screen property which populates the values.

@Adam:
Regarding the hand cursor issue, I banged my head over this one for ages and never found a great solution or the cause of this.  I did however implement a hack where on the  InteractiveScene3DEvent.OBJECT_OVER &amp; InteractiveScene3DEvent.OBJECT_OUT events handlers I would set the useHandCursor property of the viewport to true/false respectively.  I haven&#039;t worked with PV much since this project so I&#039;m not sure if the issue has been resolved yet but this method should work if you need a last resort.

@screw-ed:
For the preloader I just had a MovieClip which had one graphic of the logo on the bottom layer, and a different colored one above which was masked.  I mapped this to a plane and during the preload I accessed and set the mask&#039;s height in the MovieClip which was mapped to the planes material.</description>
		<content:encoded><![CDATA[<p>Sorry for the extremely late replies, I haven&#8217;t been back here in a while.  I&#8217;ll respond to a few of the more &#8216;recent&#8217; ones.  If anyone has any urgent questions feel free to email me at <a href="mailto:john@selftitled.ca">john@selftitled.ca</a>.  I&#8217;ll get those a lot faster.</p>
<p>@felix:<br />
As I stated above I ran into this same issue and I resolved it by calling my3dObject.calculateScreenCoords(myCamera); before accessing the screen property which populates the values.</p>
<p>@Adam:<br />
Regarding the hand cursor issue, I banged my head over this one for ages and never found a great solution or the cause of this.  I did however implement a hack where on the  InteractiveScene3DEvent.OBJECT_OVER &amp; InteractiveScene3DEvent.OBJECT_OUT events handlers I would set the useHandCursor property of the viewport to true/false respectively.  I haven&#8217;t worked with PV much since this project so I&#8217;m not sure if the issue has been resolved yet but this method should work if you need a last resort.</p>
<p>@screw-ed:<br />
For the preloader I just had a MovieClip which had one graphic of the logo on the bottom layer, and a different colored one above which was masked.  I mapped this to a plane and during the preload I accessed and set the mask&#8217;s height in the MovieClip which was mapped to the planes material.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: screw-ed</title>
		<link>http://interactivehug.com/2008/04/21/john-iacoviello-papervision3d-optimization-tips/comment-page-1/#comment-1503</link>
		<dc:creator>screw-ed</dc:creator>
		<pubDate>Mon, 27 Oct 2008 13:01:25 +0000</pubDate>
		<guid isPermaLink="false">http://interactivehug.com/2008/04/21/john-iacoviello-papervision3d-optimization-tips/#comment-1503</guid>
		<description>Hi John

I know this is totally of topic but can you please please please explain to me how you did the preloader, I&#039;m looking to create a similar effect but I can&#039;t find one decent tutorial or help on how to make one that really works as well as yours does.

I will be forever grateful.</description>
		<content:encoded><![CDATA[<p>Hi John</p>
<p>I know this is totally of topic but can you please please please explain to me how you did the preloader, I&#8217;m looking to create a similar effect but I can&#8217;t find one decent tutorial or help on how to make one that really works as well as yours does.</p>
<p>I will be forever grateful.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Adam</title>
		<link>http://interactivehug.com/2008/04/21/john-iacoviello-papervision3d-optimization-tips/comment-page-1/#comment-1494</link>
		<dc:creator>Adam</dc:creator>
		<pubDate>Tue, 23 Sep 2008 20:10:06 +0000</pubDate>
		<guid isPermaLink="false">http://interactivehug.com/2008/04/21/john-iacoviello-papervision3d-optimization-tips/#comment-1494</guid>
		<description>back on this project after a few months off...john, a few posts above you told me how to target the movie clip that I&#039;m using from the library as a plane material...however, the buttons don&#039;t seem to have any function within that movie and i don&#039;t get the hand cursor or anything indicating that it is even a button...any ideas?</description>
		<content:encoded><![CDATA[<p>back on this project after a few months off&#8230;john, a few posts above you told me how to target the movie clip that I&#8217;m using from the library as a plane material&#8230;however, the buttons don&#8217;t seem to have any function within that movie and i don&#8217;t get the hand cursor or anything indicating that it is even a button&#8230;any ideas?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: John</title>
		<link>http://interactivehug.com/2008/04/21/john-iacoviello-papervision3d-optimization-tips/comment-page-1/#comment-1480</link>
		<dc:creator>John</dc:creator>
		<pubDate>Fri, 12 Sep 2008 01:50:38 +0000</pubDate>
		<guid isPermaLink="false">http://interactivehug.com/2008/04/21/john-iacoviello-papervision3d-optimization-tips/#comment-1480</guid>
		<description>Hey How do you toggle between the smoothing so nicely?

When there is movement the smoothing seems like it&#039;s off then pops on.</description>
		<content:encoded><![CDATA[<p>Hey How do you toggle between the smoothing so nicely?</p>
<p>When there is movement the smoothing seems like it&#8217;s off then pops on.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
