安卓中的3D旋转木马效果

27

我正在开发Android的3D旋转木马。

我正在使用这个代码,以下是我的当前输出。

enter image description here

我想开发如下所示的3D形状旋转木马。

enter image description here

我参考了以下已经在SO上提出的问题。

  1. 如何在图像尺寸和角度上修改3D Carousel

  2. 如何在Android中创建带有Carousel效果的列表?

  3. 如何增加Carousel图像空间?

  4. Coverflow Carousel效果与iPhone / iPad在Android上相同

以下接近我的要求:

  1. 使用3D Carousel项目创建SPB Carousel样式

根据这个答案,我总结如下:

mCamera.rotateY(-((CarouselItem) child).getCurrentAngle());

我在Carousel.javagetChildStaticTransformation()方法中,但是结果不完美。

请帮我解决这个问题。


你能把完整的代码上传到Github或类似的地方,这样我就可以看一下吗? - crazyPixel
我也在寻找类似的东西。 滚动速度也应该是一个关注点,因为参考的3D旋转木马项目即使在微小的滚动上也有一些惊人的快速滚动速度。 - Salman Khakwani
我会在这个周末查看这个问题,如若真主愿意。 - Salman Khakwani
你想做什么?我明白你已经做了什么,但不知道你想做什么,问题不够清晰。 - Exikle
旋转必须依赖于角度的正弦值,因此需要乘以 Math.sin(angle) - skobaljic
显示剩余4条评论
1个回答

2
你正在使用一个名为Calculate3DPosition的函数,它从角度计算X、Y、Z位置,然后这些位置在matrix.translate调用中被使用。
实际上,你只需要使用角度调用matrix.rotate就可以了,这比你复制的3D代码看起来要简单得多。当你完成后可能会感到惊讶,但说实话,你复制的3D代码中唯一的复杂性是试图让所有东西都面向用户而不是让它旋转...

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接