作者laugher (.。oO)
看板AndroidDev
标题[问题] 有关动画的显示写法
时间Tue Jun 18 23:11:51 2013
我知道一般动画都会用Animation或Animator
但是我想弄的效果像是射击游戏一样
若我往正前方丢一颗球,当我往左转的时候
球就变成在我的右方了
用Animation的话之前试过让动画暂停,然後重算目的座标後再重新产生一个动画
但是若我不断旋转,Animation在重算的那一时间点就会卡住不动
甚至到目的座标後就当了
接着我试了ImageView,自己一个frame一个frame计算并变动它的位置
但ImageView似乎很吃资源,移动的时候会一直闪,画面也一顿一顿的
最後我用了canvas,每个frame就清空重画所有球的位置
效果勉强可以接受,但跟Animation比起来还是差了一截
比如同时间内Animation可以顺利处理40颗飞球,但用canvas就只能20颗
请问还有更好的做法吗?
谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 218.164.74.250
1F:推 hijamoya:用OPENGL最快 06/19 00:58
2F:→ bukiya:SurfaceView + canvas api or opengl 06/19 12:50
3F:→ laugher:研究了几天终於成功用opengl画出球了, 但我发现效能仍是无 06/20 20:00
4F:→ laugher:法提升, 我想主要的原因应该是每个frame每颗球都会去呼 06/20 20:01
5F:→ laugher:叫google map的getProjection() 06/20 20:02
6F:→ laugher:因为我想让球根据经纬度跑, 并非萤幕座标 06/20 20:03
※ 编辑: laugher 来自: 140.116.72.155 (06/20 20:04)
7F:→ laugher:而地图的视角是会变的, 所以我想最後的办法应该就只能从演 06/20 20:05
8F:→ laugher:算法下手 06/20 20:05