通常建议不要使用矢量图形的手机游戏,或预光栅化操作 - 对性能。这是为什么?我虽然那OpenGL是至少擅长画线/三角形渲染屏幕上的图像...OpenGL的矢量图形在移动设备上渲染性能
回答
栅格化他们缓存它们为图像,以便减少开销发生VS计算每一个坐标矢量和绘图(更多抽奖周期和更多的CPU使用)。绘制一个矢量就是这样,你在每次调用时都是从一个点到另一个点绘制弧,而在一个带有缓存的图像文件的特定坐标上显示一个图像。
有很多的在App Store的3D游戏。它们的渲染难度比平均2D矢量游戏要高10倍,但通常没有性能问题!我错了吗? – cubuspl42 2013-05-09 18:53:54
生成3D模型的3D程序就是这样,是的。但是,比较3D游戏与任何2D游戏的表现,你会看到不同之处。 3D游戏使用光栅图形作为物体的图像,因此它们是2的混合体。它归结为预先渲染的图像和动态创建的图像。 – 2013-05-09 18:57:27
我认为如果您认为3D游戏中没有任何性能问题,您会被误导。与任何3D游戏开发者交谈,他们会告诉你优化是一切,不应该被当成自动魔法。很难让3D游戏在移动设备上表现良好,直到过去一年,甚至在大多数情况下限制质量与数量(帧速率)以实现可播放性。关键要记住的是,一切都只是一个工具,使用正确的工具来完成工作。如果您需要可缩放图形,请使用SVG,如果不是,则利用栅格的性能优势。 – 2013-05-09 19:00:04
答案取决于硬件。你使用GPU还是非?今天,带有Android和IOS的现代移动设备在芯片组中嵌入了GPU单元。 这款GPU非常适合使用矢量图形。为了探究这一点,大多数GPU除了有一个或多个像素处理器之外,还有一个专用的几何处理器。 (例如Mali-400 GPU)。 举例来说,让我们假设你想绘制一个200个不同颜色的透明圆圈。 如果你用现代的OpenGL来做,你只需要一组几何图形(形成一个圆的三角形列表)和每个圆的参数列表,比如说位置和颜色。如果您将这些信息提供给GPU,它将很快并行绘制。
如果您在使用不同的纹理为每个颜色做到这一点,你的程序将是非常沉重的(在存储大小),可能会更慢,由于内存带宽问题。
这取决于你想做的事,和硬件。如果你的硬件没有GPU,你可能应该预渲染你的图形。
- 1. 在OpenGL中渲染矢量图形?
- 2. 如何在移动设备上提高reactjs初始渲染性能?
- 3. 如何在Android上使用OpenGL渲染2D图形/图形?
- 4. OpenGL在矩形内渲染
- 5. 在opengl中渲染1000多个图形
- 6. opengl中渲染对象的移动
- 7. iPhone上的动态图形渲染?
- 8. OpenGL音频波形渲染
- 9. OpenGL三角形不渲染
- 10. 在OpenGL渲染上下文中叠加图形
- 11. 在lwjgl渲染中移动渲染器
- 12. 渲染动作性能
- 13. 用OpenGL渲染四边形的问题
- 14. Opengl的矩形惯于渲染
- 15. OpenGL FreeType2位图不渲染
- 16. 如何在ToolStrip上渲染图形
- 17. iOS图形渲染
- 18. 在C中渲染图形#
- 19. 移动设备上的程序性screencapture
- 20. 测量WPF渲染的性能
- 21. 只能在移动设备
- 22. Android Studio中的矢量渲染不良
- 23. 背景图片在移动设备上
- 24. 在移动设备上隐藏图像
- 25. Android中的动态图形渲染
- 26. 在移动设备上使用javascript移动html的性能问题?
- 27. OpenGL多边形渲染顺序
- 28. OpenGL如何渲染其三角形?
- 29. Freetype Opengl字形不是渲染
- 30. 如何使用真实设备测量移动浏览器渲染时间
栅格化他们缓存他们,所以开销较少发生VS计算每一个坐标矢量和绘图(更多抽奖周期和更多的CPU使用率) – 2013-05-09 18:49:46