【发布时间】:2009-04-23 22:35:10
【问题描述】:
我有一个可以用手指拖动的 UIImageView。它的大小适合其中的图像,例如球或正方形。如果用户加速得非常快,我想用自身的模糊来跟踪对象,以呈现快速行驶的外观。就像曲速一样。我也有嗖嗖声。我希望声音只在用户加速时持续。
我怎样才能实现这些效果?
【问题讨论】:
标签: iphone cocoa-touch opengl uiimageview
我有一个可以用手指拖动的 UIImageView。它的大小适合其中的图像,例如球或正方形。如果用户加速得非常快,我想用自身的模糊来跟踪对象,以呈现快速行驶的外观。就像曲速一样。我也有嗖嗖声。我希望声音只在用户加速时持续。
我怎样才能实现这些效果?
【问题讨论】:
标签: iphone cocoa-touch opengl uiimageview
嗯,声音完全超出了我的技能范围 - OpenGL 不支持声音,您必须研究 OpenAL 或 iPhone 上存在的任何等效项。
实现模糊的一种简单方法是保留对象最后几个点的数组。每当 UIImageView 移动时(我不确定是否有事件,或者您是否必须检查每一帧),您将新位置推送到数组中,删除最旧的位置。
每当需要渲染对象时,查看最后几个点并计算当前位置与数组中最新项目之间的距离。如果它超过一定距离,请在阵列位置绘制模糊并检查接下来的两个点。继续直到距离低于一定量。
希望这会有所帮助!
【讨论】: