flash 3d flash3d 研究所 pv3d 共享资源  | 经典范例  | 视频教程  | 友情链接  | 联系我们
登陆 | 注册  flash 3d 研究所
讨论区





最近更新:
● 无语瓶阁下在教程区里 回复“《超简易papervision3D基础 ...”(18:09:44)
● payday loan阁下在教程区里 回复“《pv3d, sandy, away3d...”(05:56:23)
● bad credit payday loan阁下在教程区里 回复“《超简易papervision3D基础 ...”(05:56:13)
浏览主题:怎么为CUBE每个面加鼠标事件?

怎么为CUBE每个面加鼠标事件?
hunter_xsy (2009-12-28 17:23:14)

//mm1,mm2……mm6分别为库中影片剪辑
mm1 = new MovieMaterial(aa1,true,true);
mm2 = new MovieMaterial(aa2,true,true);
mm3 = new MovieMaterial(aa3,true,true);
mm4 = new MovieMaterial(aa4,true,true);
mm5 = new MovieMaterial(aa5,true,true);
mm6 = new MovieMaterial(aa6,true,true);
cube=new Cube(new MaterialsList({front:mm1,back:mm2,right:mm3,left:mm4,top:mm5,bottom:mm6}),500,500,500,3,3,3);
试了下,单独为mm1加上点击事件好像不行,应该怎么做??
aa1.addEventListener(MouseEvent.CLICK,onInter1)
public function onInter1(evt:MouseEvent):void {
                 trace(11);
           }


flash 3d 研究所 hunter_xsy
(2009-12-28 17:25:45)
更正下
aa1,aa2……aa6分别为库中影片剪辑
为aa1或mm1加了鼠标事件试了下好像都不行~~

flash 3d 研究所 新手
(2009-12-29 08:37:49)
我也想问这个问题,怎么给PLANE,CUBE这些东西加动画 按钮效果。

flash 3d 研究所 新手
(2009-12-29 09:01:25)
var bitmapMaterial:MovieAssetMaterial=new MovieAssetMaterial("map",false,true,false);

我使用这个可以有动画效果,但是按钮效果却出不来。

flash 3d 研究所 新手
(2009-12-29 09:03:09)
var bitmapMaterial:MovieAssetMaterial=new MovieAssetMaterial("map",false,true,false);
                       //var bitmapM:MovieMaterial=new MovieMaterial(bitmapMaterial);
                       var plane:Plane = new Plane(bitmapMaterial);

                       plane.x = Math.random()*3500-1500;
                       plane.y = Math.random()*3500-1500;
                       plane.z = Math.random()*3500-1500;
                       plane.rotationX = Math.random()*180-90;
                       plane.rotationY = Math.random()*180-90;
                       plane.rotationZ = Math.random()*180-90;
                       myScene.addChild(plane);

                       plane.addEventListener(InteractiveScene3DEvent.OBJECT_CLICK, onPlaneClick);

我使用FLAB3D给的一个演示,改了一下,这样动画可以有,但是plane的事件就没有了。。忘高手指教

flash 3d 研究所 hunter_xsy
(2009-12-29 09:55:59)
用这个MovieMaterial()就可以动画化了吧,只需要设置括号里的参数。鼠标交互这个我郁闷了 没查到相关的资料~~~

flash 3d 研究所 hunter_xsy
(2009-12-29 10:05:47)
楼上的是不是没有给贴图设置成可交互?
plane.interactive=true;

flash 3d 研究所 DDM君
(2009-12-29 10:34:45)
可以参考以下我们傻瓜包里flab3d包里面的roomcube类,里面有写到的哟~

flash 3d 研究所 hunter_xsy
(2009-12-29 10:39:14)
恩 谢谢DDM君 我去看看
还有到处查查到个方法:先给每个贴图都赋个名字,然后给CUBE加点击事件,通过每个面的name来判断点击的是哪个面,不知道这个方法发散起来实用性强不强?

mm1.interactive = true;
mm1.name = "front";
mm2.interactive = true;
mm2.name = "back";
mm3.interactive = true;
mm3.name = "left";
mm4.interactive = true;
mm4.name = "right";
mm5.interactive = true;
mm5.name = "top";
mm6.interactive = true;
mm6.name = "bottom";

flash 3d 研究所 poppyvivi
(2009-12-30 11:34:04)
回 hunter_xsy :
我使用这个
var bitmapMaterial:MovieMaterial=new MovieMaterial(map,true,true);
map为库中的影片,报错如下:
1067: Class 类型值的隐式强制指令的目标是非相关类型 flash.display:DisplayObject。

还有你说的plane.interactive=true; 设置也报错:
1119: 访问可能未定义的属性 interactive (通过 static 类型 org.papervision3d.objects.primitives:Plane 引用)。


flash 3d 研究所 hunter_xsy
(2009-12-30 15:54:13)
回poppyvivi:
private var frontMaterial:MovieMaterial;
frontMaterial=new MovieMaterial(aa1,true,true);//我这里的aa1是个影片剪辑,放在库中
frontMaterial.interactive=true;

你再试试~~

flash 3d 研究所 rong0577
(2010-01-13 15:03:33)
var bitmapMaterial:MovieAssetMaterial=new MovieAssetMaterial("map",false,true,false);
      //var bitmapM:MovieMaterial=new MovieMaterial(bitmapMaterial);
      var plane:Plane = new Plane(bitmapMaterial);

      plane.x = Math.random()*3500-1500;
      plane.y = Math.random()*3500-1500;
      plane.z = Math.random()*3500-1500;
      plane.rotationX = Math.random()*180-90;
      plane.rotationY = Math.random()*180-90;
      plane.rotationZ = Math.random()*180-90;
      myScene.addChild(plane);

      plane.addEventListener(InteractiveScene3DEvent.OBJECT_CLICK, onPlaneClick);

我使用FLAB3D给的一个演示,改了一下,这样动画可以有,但是plane的事件就没有了。。忘高手指教


引用一下楼上的话, 这个问题谁解决了?? 我也碰到这个问题。

flash 3d 研究所 DDM君
(2010-01-13 15:10:31)
plane的事件就没有了是指不能触发onPlaneClick了吗?

如果实在不行的话, 可以考虑把plane加入到一个layer,然后给这个layer加入鼠标事件.

评论人:
邮   箱: (填入邮箱,博客地址均可)

内   容: (广告和垃圾内容可能会被删除,望理解)
链接地址

验证码:(为防止机器人骚扰,请麻烦输入验证码^_^)
  

(目前需登陆方可发表)


不想添加了