Sandy引擎学习笔记:鼠标交互

  

 很早之前,我们可以使用Sandy的摄影机来移动物观察对象物,通过键盘控制摄影机的移动和旋转。今天我们尝试鼠标的交互,通过鼠标交互来控制sandy的对象物。

 

一、目标

在显示类核心编程里面,Sprite类占有一个很大的席位,通过监听MouseEvent,我们可以实现鼠标的交互。同样的原理,我们可以创建一个立方体对象,通过点击对象进行交互。

 

二、继承关系:

在看演示之前,我们首先看一下Box类一个继承关系

Packagesandy.primitive
Classpublic class Box
InheritanceBox ---> Shape3D ---->ATransformable ---> Node
ImplementsPrimitive3D

由于Box类继承了Shape3D类,我们通过这个类找到一Shape3D一个属性container 属性,通过这个类我们可以返回我们想要的Sprite对象。

 container : Sprite
[read-only] The contianer for this object


    public function get container():Sprite

也就是说通过通过这个属性的借助,可以实现一些鼠标的交互。

   box.container.buttonMode = true;
   box.container.addEventListener(MouseEvent.CLICK, clickHandler);

 

这样我们的鼠标就可以对Sadny所创建的物体进行交互了。

 

 

简单的演示:

 

其实就是加一个引用那个属性就可以进行鼠标监听了。

 

效果:

 

 交互

 

 

继续我们上面的程序,实现在场景里面复制三个图,对其进行监听。对三个立方体进行颜色材质贴图。

 

 

 

这样,我们可以对其进行更多效果的交互,如链接,或者其他有趣的贴图等等。

 

 

 交互2

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值