U3D钟UGUI的抽奖转盘的简单做法(允许控制)

网上有很多抽奖转盘的帖子,基本实现方法就不赘述了 。

在此说一下一个简便的 控制转盘落点的办法,即通过 计算 初速度 (随机一个加速度和多旋转的圈数)来控制这个转盘。


首先,转盘就使用一个image图片给出。

通过skinTrans.FindChild ()方法找到此转盘。

后给出一个控制转盘结果的算法,如下:

可以通过数学知识知道,当转盘停下时,有:

路程 = 初速度*时间+加速度*时间*时间/2 (即物理公式x = vt+½at²)

0 = 速度 - 加速度*时间  (即物理公式  0 =v -at)

可得结果:t =根号(2x/a)    v =根号(2ax)     即 速度 =根号(2*加速度*路程)

由此我们可以传入 待停区域角度(即路程x) ,加速度(即a) 来获得 最终需要的初速度。


特别的,我们在重写updata() 时, 要注意两个操控物体的式子:

XXX.transform.Rotate (0, 0,Convert.ToSingle(Time.deltaTime * Speed)); //物体旋转

Speed = Speed - Delta*Time.deltaTime ; //物体的减速度 

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值