Just encase anyone else is going down this path....
Wasn't so bad once I traced out the faces, vertices and uvs of a plane.
var p:Plane = new Plane();
p.segmentsW = 1;
p.segmentsH = 1;
p.width = 400;
p.height = 400;
//view.scene.addChild(p);
for each (var v:Vertex in p.vertices)
{
trace(v);
}
trace("");
trace("faces = " + p.faces.length );
trace("");
for each (var f:Face in p.faces)
{
trace(f);
trace(f.v0);
trace(f.v1);
trace(f.v2);
trace(f.uv0);
trace(f.uv1);
trace(f.uv2);
trace("");
}
m = new Mesh()
view.scene.addChild(m);
var f1v0:Vertex = new Vertex(-200,-200,0);
var f1v1:Vertex = new Vertex(200,-200,0);
var f1v2:Vertex = new Vertex(-200,200,0);
var f1:Face = new Face(f1v0,f1v1,f1v2);
m.addFace(f1);
D
On 11 August 2010 15:46, Darcey Lloyd <[email protected]> wrote:
> Cheers for your reply Pete, sounds good, I put pv3D away a long time ago
> for Away3D, I've always found Away to be more productive.
>
> I Have been tinkering with it a bit here too (3 test applications later),
> FrustumClipping fixes it too. Luckily I wont be doing that kind of
> animation, but I will be moving into the cube through a hole in the wall,
> (door) and then out again (window)
>
> So now I am trying to create some custom primitives for the wall door
> shape, and the window wall shape.
> Also maybe a shape for the rest of the room to prevent line gaps on the
> seems of the room.
>
> 1. Whether to extend Mesh or AbstractPrimitive
> 2. How to successfully create a bunch of UVs for the shape that I want
> 3. How to successfully create a bunch of Vertexes that represents what I
> want
> 4. Add the faces
>
> or maybe get blender to output something I can translate to code.
>
> The fun continues.
>
> D
>
>
>
>
>
>
> On 11 August 2010 15:33, Peter Kapelyan <[email protected]> wrote:
>
>> No bug, it looks about right (the way it's supposed to render).
>>
>> It's sorting the triangles according to their screen Z depth, so of course
>> there might be some that overlap others.
>>
>> Luckily by default Away3D can sort the triangles between other objects
>> (unlike pv3d default?). This works great for some scenes, however with your
>> scene it's obvious that wasn't your intention, and it doesn't look pretty
>>
>> There's a few ways you can stop this default behavior from happening. Off
>> the top of my head, if you apply .ownCanvas=true to all the sides of your
>> box, it won't inter-sort the triangles (default pv3d behavior?).
>>
>> Other ways around it is to use other rendering modes like
>> INTERSECTING_OBJECTS.
>>
>> There's a few other things you can do/try to take off that default
>> inter-triangle sorting behavior, but to answer your question, it's not a
>> bug! Luckily, it's a plus that away3d can sort this way at all (and by
>> default) :)
>>
>> -Pete
>>
>>
>> On Wed, Aug 11, 2010 at 10:06 AM, Darcey Lloyd <[email protected]>wrote:
>>
>>> Hi Guys,
>>>
>>> I think this is a bug?
>>>
>>> Example 1 of bug:
>>>
>>> http://www.allforthecode.co.uk/development/away3d/bug/example1/Room01.html
>>>
>>> Example 2 of bug:
>>>
>>> http://www.allforthecode.co.uk/development/away3d/bug/example2/Room01.html
>>>
>>> Example 3 of bug:
>>>
>>> http://www.allforthecode.co.uk/development/away3d/bug/example3/Room01.html
>>>
>>> Full source available at:
>>> http://www.allforthecode.co.uk/development/away3d/bug/
>>>
>>>
>>>
>>> To the point:
>>> I was creating a cube out of planes, when I was debugging the planes
>>> position this keeps happening.
>>>
>>> // all other planes code above last plane code start...
>>> backPlane = customPlane(cubeSize,cubeSize);
>>> backPlane.x = 0;
>>> backPlane.y = cubeSize/2;
>>> backPlane.z = -cubeSize;
>>> backPlane.rotationX = 90;
>>> backPlane.rotationY = 0;
>>> backPlane.rotationZ = 0;
>>> backPlane.name = "backPlane";
>>> new DebugItem3DPosition(stage,backPlane);
>>> view.scene.addChild(backPlane);
>>> // SHOW BUG
>>> animate();
>>> }
>>> //
>>> ------------------------------------------------------------------------------------------------
>>> //
>>> ------------------------------------------------------------------------------------------------
>>> private function animate():void
>>> {
>>> TweenLite.to(backPlane,4,{z:(cubeSize+cubeSize/2),onComplete:goBack});
>>> }
>>> ///
>>> ------------------------------------------------------------------------------------------------
>>> //
>>> ------------------------------------------------------------------------------------------------
>>> private function goBack():void
>>> {
>>> TweenLite.to(backPlane,4,{z:400,onComplete:animate});
>>> }
>>> //
>>> ------------------------------------------------------------------------------------------------
>>>
>>>
>>> Darcey
>>>
>>
>>
>>
>> --
>> ___________________
>>
>> Actionscript 3.0 Flash 3D Graphics Engine
>>
>> HTTP://AWAY3D.COM
>>
>
>