아래 코드를 사용하여 회전 큐브를 만들고 큐브의 측면으로 비트 맵을 추가했습니다. 영화 클립을 입방체의면으로 할당 할 수 있을지 궁금해서 큐브와 상호 작용할 수있게되었습니다. UPDATE3D 큐브에 동영상 클립 추가 및 상호 작용
import flash.events.Event;
import flash.display.Bitmap;
import flash.display.BitmapData;
import org.papervision3d.cameras.CameraType;
import org.papervision3d.materials.BitmapMaterial;
import org.papervision3d.materials.ColorMaterial;
import org.papervision3d.materials.WireframeMaterial;
import org.papervision3d.materials.utils.MaterialsList;
import org.papervision3d.objects.primitives.Cube;
import org.papervision3d.view.BasicView;
var cube : Cube;
var basicview : BasicView = new BasicView(640, 480, true, false, CameraType.FREE);
addChild(basicview);
var logo : Logo = new Logo(0,0); //Bitmapdata (jpeg) exported as class Logo from library
var matFront : BitmapMaterial = new BitmapMaterial(logo);
var matBack : BitmapMaterial = new BitmapMaterial(logo);
var ml : MaterialsList = new MaterialsList();
ml.addMaterial(matFront, "front");
ml.addMaterial(matBack, "back");
ml.addMaterial(new ColorMaterial(0x551F92),"right");
ml.addMaterial(new ColorMaterial(0x431872),"bottom");
ml.addMaterial(new ColorMaterial(0x341359),"top");
ml.addMaterial(new ColorMaterial(0x7429C7),"left");
cube = new Cube(ml,200,200,200,5,5,5);
basicview.scene.addChild(cube);
basicview.camera.fov = 20;
addEventListener(Event.ENTER_FRAME, enterFrame);
function enterFrame(e:Event) : void
{
cube.yaw((320-mouseX)*0.01);
cube.pitch((240-mouseY)*0.01);
}
basicview.singleRender();
}
나는이
var matFront : MovieMaterial = new MovieMaterial(new MV(),false,true);
matFront.interactive = true ;
MV
가 나는 쪽을 클릭 할 때 내가 어떤 상호 작용을하지 않은 이유는이 코드
package Scripts {
import flash.display.MovieClip;
import flash.events.*;
public class MV extends MovieClip
{
public function MV()
{
buttonMode = true;
addEventListener(MouseEvent.CLICK,traceFunction);
}
private function traceFunction(ev:MouseEvent) {
trace("clicked");
}
}
}
그냥 정사각형 추가 무비 클립 은요?
업데이트 2
좋아, 내가이 줄
basicview.viewport.interactive = true;
를 추가했다하지만 상호 작용을 왜 동영상 클립의 측면을 볼 수없는 경우에도 를 찾을 수 있습니다.
어떻게 피할 수 있습니까?
필자는 Papervision이 더 이상 개발되거나 유지 관리되지 않는다고 생각합니다. Away3D와 같은 라이브러리에서 Stage3D가 제공하는 GPU 하드웨어 렌더링 성능 외에도 현재 3D 엔진에 대한 관심이 더 커질 수 있습니다. –