我在整个papervision场景中都是新手。 对于学校作业,我正在制作我自己房间的全景版 一个有6张照片的立方体。它创造了全景,效果很好。
但现在我想在其中添加可点击的对象。其中一个要求 是我的代码是OOP重点。这就是我现在正在尝试的。
目前我有两节课 - Main.as(这里我把全景立方体作为房间) - photoWall.as(这里我想创建我的第一个可点击对象)
现在我的问题是:我想从photoWall.as添加一个可点击的对象 到我的全景房间。但他没有表现出来?我认为这与某些事情有关 场景。我在Main.as和photoWall.as中使用了一个新场景。未报告任何错误或警告
这是photoWall中的一块。如果我想添加我的对象(photoList):
private function portret():void
{
//defining my material for the clickable portret
var material : BitmapFileMaterial = new BitmapFileMaterial('images/room.jpg');
var material_list : MaterialsList = new MaterialsList( { front: material, back: material } );
// I don't know if this is nessecary? that's my problem
scene = new Scene3D();
material.interactive = true;
// make the clickable object as a cube
var photoList : DisplayObject3D = new Cube(material_list, 1400, 1400, 1750, 1, 4, 4, 4);
// positioning
photoList.x = -1400;
photoList.y = -280;
photoList.z = 5000;
//mouse event
photoList.addEventListener( InteractiveScene3DEvent.OBJECT_CLICK, onPress);
// this is my problem! I cannot see 'photoList' within my scene!!!
scene.addChild(photoList);
// trace works, so the function must be loaded.
trace('function loaded');
}
希望你们能在这里帮助我。真的很棒!
谢谢,
桑多尔
答案 0 :(得分:0)
你必须先渲染才能完成任何事情。
丢失: viewport.startRender()
答案 1 :(得分:0)
不,我已经在另一个班级中渲染了所有内容。 我想通了,答案是:我必须让这个课成为 displayobject3d。 而已。你现在在舞台上添加的所有东西都是displayobject3d。
详情或代码..请问。
在这里查看我的小项目的结果: