gpt4 book ai didi

java - OpenGL 扩展可用于不同的 Android 设备

转载 作者:IT老高 更新时间:2023-10-28 20:35:17 25 4
gpt4 key购买 nike

我正在为我的下一款 Android 游戏编写一个支持 OpenGL ES 的框架。目前我支持三种不同的 Sprite 绘制技术:

  • 基本方式:使用顶点数组(慢)
  • 使用 vertex-buffer-objects (VBO)(更快)
  • 使用 draw_texture 扩展(最快,但仅适用于基本 Sprite ,即不变形)

OpenGL ES 1.0 支持顶点数组,因此每个 Android 设备都支持。我猜大多数(如果不是全部)当前设备也支持 VBO 和 draw_texture。

我想知道不同设备支持的扩展,而不是猜测。如果大多数设备都支持 VBO,我可以简化代码并只关注 VBO + draw_texture。

了解不同的设备支持什么会很有帮助,因此如果您有 Android 设备,请报告扩展程序列表。 :)

String extensions = gl.glGetString(GL10.GL_EXTENSIONS);

我有一个 HTC Hero,所以接下来我可以分享这些扩展。

最佳答案

HTC G1 (Android 1.6) 上的 OpenGL ES 扩展:

  • GL_ARB_texture_env_combine
  • GL_ARB_texture_env_crossbar
  • GL_ARB_texture_env_dot3
  • GL_ARB_texture_mirrored_repeat
  • GL_ARB_vertex_buffer_object
  • GL_ATI_extended_texture_coordinate_data_formats
  • GL_ATI_imageon_misc
  • GL_ATI_texture_compression_atitc
  • GL_EXT_blend_equation_separate
  • GL_EXT_blend_func_separate
  • GL_EXT_blend_minmax
  • GL_EXT_blend_subtract
  • GL_EXT_stencil_wrap
  • GL_OES_byte_coordinates
  • GL_OES_compressed_pa​​letted_texture
  • GL_OES_draw_texture
  • GL_OES_fixed_point
  • GL_OES_matrix_palette
  • GL_OES_point_size_array
  • GL_OES_point_sprite
  • GL_OES_read_format
  • GL_OES_single_precision
  • GL_OES_vertex_buffer_object
  • GL_QUALCOMM_vertex_buffer_object
  • GL_QUALCOMM_direct_texture

HTC G1 (Android 1.6) 上的 OpenGL ES 版本:

  • OpenGL ES 1.0-CM

我正在包括由以下人员检索的版本:
gl.glGetString(GL10.GL_VERSION)

这很有趣,因为它不遵循规范。配置文件应该在数字之前。还需要确定能力。例如,Droid 不会在其扩展列表中报告 VBO 支持。但是,它确实报告了 1.1 的 OpenGL ES 版本。这意味着它确实支持 VBO,因为 VBO 在 1.1 版本中是强制性的。

关于java - OpenGL 扩展可用于不同的 Android 设备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2093594/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com