我正在为LBS服务开发客户端,我需要实现一些2D和3D图形。 正如我所读到的,标准包android.graphics更适合2D grahics和绘制简单对象,而opengl es更适合3D,它的工作速度更快。不幸的是,我没有发现任何关于他们之间差异的事情。有没有人知道更多关于使用OpenGL ES和android.graphics绘图之间的区别?
答案 0 :(得分:1)
OpenGL将让您完全控制您正在使用的图形。长期不会对您想要做的事情有很多限制。您可以使用OpenGL在Android上制作出色的3D游戏,因为您可以渲染大量的多边形和叠加2D图形。不过,这是一项很多工作。
常规的旧OpenGL是我最喜欢的,我不想使用其他答案中提到的任何框架,但我已经使用3D图形多年了。我明白为什么其他人会推荐他们。
如果您之前没有完成3D图形,那么您面前的学习曲线会非常陡峭。如果你没有花时间学习基础数学和渲染概念,那么你将长期努力。
我喜欢reference pages from Khronos
此外,Android developer网站有一些很好的参考。
答案 1 :(得分:0)
主要区别在于与Canvas(Android 2D图形绘图表面)相比,OpenGL要快得多。尽管自蜂窝以来Canvas已启用硬件加速,但有效使用它有点棘手。
Canvas确实让生活更轻松。它易于使用,即使是刚接触计算机图形学的人也很容易理解。
最终取决于你需要做什么。如果您需要像Geometry,Lighting等花哨的东西,那么你一定要选择OpenGL。此外,如果你需要3D,那么OpenGL是你唯一的选择,因为Canvas只支持2D图形。
裸露的骨头OpenGL在我看来非常繁琐,所以我建议一个框架,如提到的here.
希望这有帮助。