<?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: Billboarding in Papervision3D 2.0 using DisplayObject2D</title>
	<atom:link href="http://www.tweetpond.com/blog/billboarding-in-papervision3d-20-displayobject2d/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.tweetpond.com/blog/billboarding-in-papervision3d-20-displayobject2d/</link>
	<description>Ambient visualisation of Twitter</description>
	<lastBuildDate>Thu, 27 May 2010 03:22:08 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
	<item>
		<title>By: Jussi</title>
		<link>http://www.tweetpond.com/blog/billboarding-in-papervision3d-20-displayobject2d/comment-page-1/#comment-535</link>
		<dc:creator>Jussi</dc:creator>
		<pubDate>Thu, 27 May 2010 03:22:08 +0000</pubDate>
		<guid isPermaLink="false">http://www.tweetpond.com/?p=121#comment-535</guid>
		<description>No worries at all Gordon, I&#039;m sure you will find a good solution soon. Cheers, Jussi</description>
		<content:encoded><![CDATA[<p>No worries at all Gordon, I&#8217;m sure you will find a good solution soon. Cheers, Jussi</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Gordon</title>
		<link>http://www.tweetpond.com/blog/billboarding-in-papervision3d-20-displayobject2d/comment-page-1/#comment-534</link>
		<dc:creator>Gordon</dc:creator>
		<pubDate>Thu, 27 May 2010 03:19:14 +0000</pubDate>
		<guid isPermaLink="false">http://www.tweetpond.com/?p=121#comment-534</guid>
		<description>Anyway, big thanks to you, Jussi, at least I can put movieclip to the 3d environment in a pretty way. Just keep on digging into collada import procedure to see if there is any hint to solve the issue~ Thank you.</description>
		<content:encoded><![CDATA[<p>Anyway, big thanks to you, Jussi, at least I can put movieclip to the 3d environment in a pretty way. Just keep on digging into collada import procedure to see if there is any hint to solve the issue~ Thank you.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Gordon</title>
		<link>http://www.tweetpond.com/blog/billboarding-in-papervision3d-20-displayobject2d/comment-page-1/#comment-533</link>
		<dc:creator>Gordon</dc:creator>
		<pubDate>Thu, 27 May 2010 03:16:26 +0000</pubDate>
		<guid isPermaLink="false">http://www.tweetpond.com/?p=121#comment-533</guid>
		<description>I finally figure that, sadly not a solution yet, dae model is always behind the do2d...
I use your sample code and add one more dae model, no matter how I change the z, the dae model is covered by the box and do2d~</description>
		<content:encoded><![CDATA[<p>I finally figure that, sadly not a solution yet, dae model is always behind the do2d&#8230;<br />
I use your sample code and add one more dae model, no matter how I change the z, the dae model is covered by the box and do2d~</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jussi</title>
		<link>http://www.tweetpond.com/blog/billboarding-in-papervision3d-20-displayobject2d/comment-page-1/#comment-532</link>
		<dc:creator>Jussi</dc:creator>
		<pubDate>Thu, 27 May 2010 00:56:59 +0000</pubDate>
		<guid isPermaLink="false">http://www.tweetpond.com/?p=121#comment-532</guid>
		<description>Hi Gordon,

I won&#039;t be able to have a detailed look at your code, however I did notice that you&#039;ve commented out the following:
&lt;code&gt;
//paddleArr[i].useOwnContainer = true;
//parentLayer.getChildLayer(paddleArr[i], true);
&lt;/code&gt;&lt;code&gt;
//do2D.useOwnContainer = true;
//parentLayer.getChildLayer(do2D, true);
&lt;/code&gt;

From memory, correct z-sorting using these classes depends on the fact that all child objects have their own individual layer - hence the explicit &#039;true&#039; for the createNew parameter in the method call.

I&#039;d recommend you try these classes out in a clean Flash project first and make sure DO2D&#039;s behave correctly in terms of z-ordering. Then drop in some DO3D&#039;s and confirm that objects are still sorted properly. Once this works you can then apply same logic to your actual project.

Also make sure you have a &lt;a href=&quot;http://www.demonsterdebugger.com/&quot; rel=&quot;nofollow&quot;&gt;debugger&lt;/a&gt; on hand to be able to see inside your project at runtime. It&#039;s really helpful to see object properites, how they nest etc.

Cheers, Jussi</description>
		<content:encoded><![CDATA[<p>Hi Gordon,</p>
<p>I won&#8217;t be able to have a detailed look at your code, however I did notice that you&#8217;ve commented out the following:<br />
<code><br />
//paddleArr[i].useOwnContainer = true;<br />
//parentLayer.getChildLayer(paddleArr[i], true);<br />
</code><code><br />
//do2D.useOwnContainer = true;<br />
//parentLayer.getChildLayer(do2D, true);<br />
</code></p>
<p>From memory, correct z-sorting using these classes depends on the fact that all child objects have their own individual layer &#8211; hence the explicit &#8216;true&#8217; for the createNew parameter in the method call.</p>
<p>I&#8217;d recommend you try these classes out in a clean Flash project first and make sure DO2D&#8217;s behave correctly in terms of z-ordering. Then drop in some DO3D&#8217;s and confirm that objects are still sorted properly. Once this works you can then apply same logic to your actual project.</p>
<p>Also make sure you have a <a href="http://www.demonsterdebugger.com/" rel="nofollow">debugger</a> on hand to be able to see inside your project at runtime. It&#8217;s really helpful to see object properites, how they nest etc.</p>
<p>Cheers, Jussi</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Gordon</title>
		<link>http://www.tweetpond.com/blog/billboarding-in-papervision3d-20-displayobject2d/comment-page-1/#comment-531</link>
		<dc:creator>Gordon</dc:creator>
		<pubDate>Wed, 26 May 2010 08:54:03 +0000</pubDate>
		<guid isPermaLink="false">http://www.tweetpond.com/?p=121#comment-531</guid>
		<description>Thanks for your rapid respond, the DO2D and paddle is put to a DO3D with purpose, so that I can assign that DO3D always face to the camera instead of assigning them individually.

I just wonder if the issue is related to the:
viewport.containerSprite.addLayer(parentLayer);

And I tried to change the sortMode of viewportlayer to index_sort, z_sort, nothing help /~\

This is the simplified file package, hope you may interest and see if there is any solution:
http://snap-f.net/do2D_z_Issue.zip</description>
		<content:encoded><![CDATA[<p>Thanks for your rapid respond, the DO2D and paddle is put to a DO3D with purpose, so that I can assign that DO3D always face to the camera instead of assigning them individually.</p>
<p>I just wonder if the issue is related to the:<br />
viewport.containerSprite.addLayer(parentLayer);</p>
<p>And I tried to change the sortMode of viewportlayer to index_sort, z_sort, nothing help /~\</p>
<p>This is the simplified file package, hope you may interest and see if there is any solution:<br />
<a href="http://snap-f.net/do2D_z_Issue.zip" rel="nofollow">http://snap-f.net/do2D_z_Issue.zip</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jussi</title>
		<link>http://www.tweetpond.com/blog/billboarding-in-papervision3d-20-displayobject2d/comment-page-1/#comment-530</link>
		<dc:creator>Jussi</dc:creator>
		<pubDate>Wed, 26 May 2010 05:41:51 +0000</pubDate>
		<guid isPermaLink="false">http://www.tweetpond.com/?p=121#comment-530</guid>
		<description>Hi Gordon,

this is a bit of a stab in the dark but looking at these lines:

personHolderArr[i].addChild(paddleArr[i]);

personHolderArr[i].addChild(do2D);

I am wondering if you should add the paddles and characters directly to the scene by calling &lt;em&gt;scene.addChild(paddleArr[i])&lt;/em&gt; and &lt;em&gt;scene.addChild(do2D)&lt;/em&gt; instead?

Just an idea, let me know how you go.

Cheers, Jussi</description>
		<content:encoded><![CDATA[<p>Hi Gordon,</p>
<p>this is a bit of a stab in the dark but looking at these lines:</p>
<p>personHolderArr[i].addChild(paddleArr[i]);</p>
<p>personHolderArr[i].addChild(do2D);</p>
<p>I am wondering if you should add the paddles and characters directly to the scene by calling <em>scene.addChild(paddleArr[i])</em> and <em>scene.addChild(do2D)</em> instead?</p>
<p>Just an idea, let me know how you go.</p>
<p>Cheers, Jussi</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Gordon</title>
		<link>http://www.tweetpond.com/blog/billboarding-in-papervision3d-20-displayobject2d/comment-page-1/#comment-529</link>
		<dc:creator>Gordon</dc:creator>
		<pubDate>Wed, 26 May 2010 02:33:43 +0000</pubDate>
		<guid isPermaLink="false">http://www.tweetpond.com/?p=121#comment-529</guid>
		<description>Your do2d is great to me, and I have encountered an issue that I am unable to make the z-sorting work correctly when my do2ds on the stage with other collada objects.
It seems it always in front of other 3d models:
http://www.busysuzie.com/testing/#/opening

I wonder if my code add the do2d wrongly:
---------------------------------------------------------------------------
var parentLayer:ViewportLayer;
parentLayer = new ViewportLayer(viewport, null);
viewport.containerSprite.addLayer(parentLayer);

//create table models and loaded successfully
.
.
//
tables.useOwnContainer = true;
parentLayer.getChildLayer(tables, true);
scene.addChild(tables);


//create middle column models and loaded successfully
.
.
//
middleColumn.useOwnContainer = true;
parentLayer.getChildLayer(middleColumn, true);
scene.addChild(middleColumn);

//loop for creating paddle and character on a do3d and add do3d to scene
for(var i:int = 0; i&lt;6; i++)
{
	personHolderArr[i] = new DisplayObject3D();
	
	//create paddle and loaded successfully
	.
	.
	//
	paddleArr[i].useOwnContainer = true;
	parentLayer.getChildLayer(paddleArr[i], true);
	personHolderArr[i].addChild(paddleArr[i]);
	
	var do2D:DisplayObject2D = new DisplayObject2D(new Character() as DisplayObject, parentLayer, 180);
	personHolderArr[i].addChild(do2D);
	
	scene.addChild(personHolderArr[i]);
}
---------------------------------------------------------------------------
I suppose it is due to layering, but I cannot figure out where I code it wrongly.
I would be very appreciated if you can inspire me for any solution. Thanks</description>
		<content:encoded><![CDATA[<p>Your do2d is great to me, and I have encountered an issue that I am unable to make the z-sorting work correctly when my do2ds on the stage with other collada objects.<br />
It seems it always in front of other 3d models:<br />
<a href="http://www.busysuzie.com/testing/#/opening" rel="nofollow">http://www.busysuzie.com/testing/#/opening</a></p>
<p>I wonder if my code add the do2d wrongly:<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<br />
var parentLayer:ViewportLayer;<br />
parentLayer = new ViewportLayer(viewport, null);<br />
viewport.containerSprite.addLayer(parentLayer);</p>
<p>//create table models and loaded successfully<br />
.<br />
.<br />
//<br />
tables.useOwnContainer = true;<br />
parentLayer.getChildLayer(tables, true);<br />
scene.addChild(tables);</p>
<p>//create middle column models and loaded successfully<br />
.<br />
.<br />
//<br />
middleColumn.useOwnContainer = true;<br />
parentLayer.getChildLayer(middleColumn, true);<br />
scene.addChild(middleColumn);</p>
<p>//loop for creating paddle and character on a do3d and add do3d to scene<br />
for(var i:int = 0; i&lt;6; i++)<br />
{<br />
	personHolderArr[i] = new DisplayObject3D();</p>
<p>	//create paddle and loaded successfully<br />
	.<br />
	.<br />
	//<br />
	paddleArr[i].useOwnContainer = true;<br />
	parentLayer.getChildLayer(paddleArr[i], true);<br />
	personHolderArr[i].addChild(paddleArr[i]);</p>
<p>	var do2D:DisplayObject2D = new DisplayObject2D(new Character() as DisplayObject, parentLayer, 180);<br />
	personHolderArr[i].addChild(do2D);</p>
<p>	scene.addChild(personHolderArr[i]);<br />
}<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<br />
I suppose it is due to layering, but I cannot figure out where I code it wrongly.<br />
I would be very appreciated if you can inspire me for any solution. Thanks</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jussi</title>
		<link>http://www.tweetpond.com/blog/billboarding-in-papervision3d-20-displayobject2d/comment-page-1/#comment-244</link>
		<dc:creator>Jussi</dc:creator>
		<pubDate>Thu, 11 Mar 2010 00:38:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.tweetpond.com/?p=121#comment-244</guid>
		<description>Hi Iker,

I assume you&#039;re trying to rotate the DisplayObject2D around its Z-axis, similar to what changing the standard Flash rotation property would do (i.e. &quot;obj._rotation = angle&quot;)?

I don&#039;t think this will work, as the whole idea behind billboarding is that the DisplayObject2D is always facing the same way on the two-dimensional plane (your screen).

If you&#039;re looking for something that &#039;participates&#039; more fully in the 3D world, including rotations around X, Y and Z axes, perhaps you can look into 	org.papervision3d.objects.Plane class (with a suitable material such as bitmap).

Hope this helps.

Cheers, Jussi</description>
		<content:encoded><![CDATA[<p>Hi Iker,</p>
<p>I assume you&#8217;re trying to rotate the DisplayObject2D around its Z-axis, similar to what changing the standard Flash rotation property would do (i.e. &#8220;obj._rotation = angle&#8221;)?</p>
<p>I don&#8217;t think this will work, as the whole idea behind billboarding is that the DisplayObject2D is always facing the same way on the two-dimensional plane (your screen).</p>
<p>If you&#8217;re looking for something that &#8216;participates&#8217; more fully in the 3D world, including rotations around X, Y and Z axes, perhaps you can look into 	org.papervision3d.objects.Plane class (with a suitable material such as bitmap).</p>
<p>Hope this helps.</p>
<p>Cheers, Jussi</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: iker</title>
		<link>http://www.tweetpond.com/blog/billboarding-in-papervision3d-20-displayobject2d/comment-page-1/#comment-240</link>
		<dc:creator>iker</dc:creator>
		<pubDate>Sat, 06 Mar 2010 18:09:25 +0000</pubDate>
		<guid isPermaLink="false">http://www.tweetpond.com/?p=121#comment-240</guid>
		<description>Hi... I´m trying yor classes and at this moment I can see various displayObject3d and a displayObject2d on the stage. This displayObject2d is a child of one of those displayObject3d. I want both to rotate at the same time but when I rotate the displayObject3d the displayObject2d doesn`t change its rotation.

By the way, Tweetpond is great.

Thank you.</description>
		<content:encoded><![CDATA[<p>Hi&#8230; I´m trying yor classes and at this moment I can see various displayObject3d and a displayObject2d on the stage. This displayObject2d is a child of one of those displayObject3d. I want both to rotate at the same time but when I rotate the displayObject3d the displayObject2d doesn`t change its rotation.</p>
<p>By the way, Tweetpond is great.</p>
<p>Thank you.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jussi</title>
		<link>http://www.tweetpond.com/blog/billboarding-in-papervision3d-20-displayobject2d/comment-page-1/#comment-126</link>
		<dc:creator>Jussi</dc:creator>
		<pubDate>Tue, 08 Dec 2009 21:34:20 +0000</pubDate>
		<guid isPermaLink="false">http://www.tweetpond.com/?p=121#comment-126</guid>
		<description>Hi Fernando, sounds like you&#039;re trying to run the original example from Blitz Agency.

&quot;Circle&quot; is not defined in ActionScript at all, it is a movieclip you can find in the Library of the DisplayObject2DTest.fla project:

&lt;img class=&quot;alignnone size-full wp-image-136&quot; title=&quot;DisplayObject2d Library: Circle&quot; src=&quot;http://www.tweetpond.com/wp/wp-content/uploads/2009/08/displayobject2d_library_circle.png&quot; alt=&quot;DisplayObject2d Library: Circle&quot; width=&quot;494&quot; height=&quot;327&quot; /&gt;

You will also notice under the &quot;linkage&quot; column how this movieclip has been exported to ActionScript as class &quot;Circle&quot;. In the Library, right click on the Circle and select Properties to view and change symbol properties.

Hope this helps.

Cheers, Jussi</description>
		<content:encoded><![CDATA[<p>Hi Fernando, sounds like you&#8217;re trying to run the original example from Blitz Agency.</p>
<p>&#8220;Circle&#8221; is not defined in ActionScript at all, it is a movieclip you can find in the Library of the DisplayObject2DTest.fla project:</p>
<p><img class="alignnone size-full wp-image-136" title="DisplayObject2d Library: Circle" src="http://www.tweetpond.com/wp/wp-content/uploads/2009/08/displayobject2d_library_circle.png" alt="DisplayObject2d Library: Circle" width="494" height="327" /></p>
<p>You will also notice under the &#8220;linkage&#8221; column how this movieclip has been exported to ActionScript as class &#8220;Circle&#8221;. In the Library, right click on the Circle and select Properties to view and change symbol properties.</p>
<p>Hope this helps.</p>
<p>Cheers, Jussi</p>
]]></content:encoded>
	</item>
</channel>
</rss>
