Hello there Here are 2 quick example using away3d_3_4_0 under flash 10
working http://www.paysbigouden.com/away3d/cube-plane-visible-false.swf not working http://www.paysbigouden.com/away3d/cube-plane-visible-true.swf so my problem is that the mouseEvent3D is triggered with my cube when there is not a single element behind it if I add a plane or something behind, the event is not functionnal I tried plane.mouseEnable = false; plane.ownCanvas = true or false I tryed changing the rendering ect.. still the same result Any idea? here is the code (very quick) import away3d.cameras.*; import away3d.cameras.lenses.*; import away3d.containers.*; import away3d.core.base.*; import away3d.core.clip.*; import away3d.core.draw.*; import away3d.core.math.*; import away3d.core.render.*; import away3d.core.utils.*; import away3d.events.*; import away3d.loaders.*; import away3d.loaders.data.*; import away3d.materials.*; import away3d.primitives.*; import away3d.loaders.Object3DLoader; import away3d.animators.PathAnimator; import away3d.core.project.MovieClipSpriteProjector; import away3d.animators.data.Path; var scene:Scene3D = new Scene3D(); var zoom:Number = 25; var camera = new Camera3D(); camera.zoom = Math.floor(zoom); camera.focus = 200; camera.rotationX = -90; camera.z = -stage.stageHeight / 2; camera.y = 5000 camera.x = 0; camera.rotationX = -90; camera.rotationY = 40; camera.lens = new PerspectiveLens(); var view = new View3D( { x:stage.stageWidth/2, y:stage.stageHeight/2, scene:scene, camera:camera, clipping:null} ); view.renderer = Renderer.CORRECT_Z_ORDER; addChild(view); view.render(); var clTexture1:Class = getDefinitionByName("mcTexture1") as Class; var mcTexture1:MovieClip = new clTexture1() as MovieClip; clTexture1 = null; var bdBase = new BitmapData( mcTexture1.width, mcTexture1.height,false, 0); bdBase.draw( mcTexture1,null,null,null,null,true ); var m3dBase = new BitmapMaterial(bdBase,true); var p3dBase = new Plane({material:m3dBase, width:500, height:500, segmentsW:1, segmentsH:20, yUp:true}); //p3dBase.rotationX = -90; p3dBase.x = 0; p3dBase.z = 0; p3dBase.y = -1000; p3dBase.mouseEnabled = false; //p3dBase.ownCanvas = true; p3dBase.visible = false; scene.addChild(p3dBase); var c0_s1:Cube = new Cube( { width:100, height:100, depth:100, segmentsW:1, segmentsH:1, flip:false } ); c0_s1.cubeMaterials.bottom = new ColorMaterial(0xD40000,{alpha:1}); c0_s1.cubeMaterials.left = new ColorMaterial(0xD40000,{alpha:1}); c0_s1.cubeMaterials.right = new ColorMaterial(0xD40000,{alpha:1}); c0_s1.cubeMaterials.back = new ColorMaterial(0xD40000,{alpha:1}); c0_s1.cubeMaterials.front = new ColorMaterial(0xD40000,{alpha:1}); c0_s1.cubeMaterials.top = new ColorMaterial(0xD40000,{alpha:1}); c0_s1.y = 200; c0_s1.z = 0; c0_s1.rotationY = 45; //c0_s1.smooth = true; c0_s1.ownCanvas = false; c0_s1.useHandCursor = true; var contALL:ObjectContainer3D = new ObjectContainer3D(); scene.addChild(contALL) contALL.addChild(c0_s1); c0_s1.addOnMouseOver(onCubesMouseOver); c0_s1.addOnMouseOut(onCubesMouseOut); view.render(); function onCubesMouseOver(e:MouseEvent3D):void { trace("mouse over"); retour.text += "mouse over\n"; } function onCubesMouseOut(e:MouseEvent3D):void { trace("mouse out"); retour.text += "mouse out\n"; }
