У меня возникла следующая проблема, как сделать так что бы грани помеченный красным небыли видны. Как настроить камеру, или может дело не в камере и есть другое решение проблемы.
Код AS3:
package
{
import flash.events.Event;
import org.papervision3d.core.utils.Mouse3D;
import org.papervision3d.materials.ColorMaterial;
import org.papervision3d.materials.WireframeMaterial;
import org.papervision3d.objects.primitives.Plane;
import org.papervision3d.view.BasicView;
import org.papervision3d.view.layer.ViewportLayer;
import org.papervision3d.view.layer.util.ViewportLayerSortMode;
import org.papervision3d.materials.utils.MaterialsList;
import org.papervision3d.objects.primitives.Cube;
[SWF(width="640", height="480", backgroundColor="#b6bfc2", frameRate="60")]
public class Test extends BasicView
{
private var mouse3D:Mouse3D;
private var follower:Cube;
public function Test()
{
viewport.interactive = true;
Mouse3D.enabled = true;
mouse3D = viewport.interactiveSceneManager.mouse3D;
var redColorMaterial:ColorMaterial = new ColorMaterial(0xe5e8ec);
redColorMaterial.interactive = true;
var floor:Plane = new Plane(redColorMaterial, 2000, 2000, 10, 10);
var wareFrame:WireframeMaterial = new WireframeMaterial(0x3b4149, 100, 1)
var materialsList:MaterialsList = new MaterialsList();
materialsList.addMaterial(wareFrame, "front");
materialsList.addMaterial(wareFrame, "back");
materialsList.addMaterial(wareFrame, "top");
materialsList.addMaterial(wareFrame, "bottom");
materialsList.addMaterial(wareFrame, "right");
materialsList.addMaterial(wareFrame, "left");
follower = new Cube(materialsList, 300, 50, 300, 1, 1, 1, 0, 0);
scene.addChild(floor);
scene.addChild(follower);
camera.y = -230;
camera.zoom = 32;
var floorViewportLayer:ViewportLayer = new ViewportLayer(viewport, floor);
var followerViewportLayer:ViewportLayer = new ViewportLayer(viewport, follower);
viewport.containerSprite.sortMode = ViewportLayerSortMode.INDEX_SORT;
floorViewportLayer.layerIndex = 0;
followerViewportLayer.layerIndex = 1;
viewport.containerSprite.addLayer(floorViewportLayer);
viewport.containerSprite.addLayer(followerViewportLayer);
startRendering();
}
override protected function onRenderTick(event:Event=null):void
{
follower.x += (mouse3D.x - follower.x) * .1;
follower.y += (mouse3D.y - follower.y) * .1;
follower.z += (mouse3D.z - follower.z) * .1;
renderer.renderScene(scene, camera, viewport);
}
}
}