【问题标题】:OpenGL Extensions on Tegra 3 devicesTegra 3 设备上的 OpenGL 扩展
【发布时间】:2012-02-06 22:25:44
【问题描述】:

我想知道新的 Tegra 3 设备上有哪些新的 OpenGL ES 扩展?有人愿意发布他们的设备名称、OpenGL 版本和扩展列表(仅限 Tegra 3 设备)吗?我认为其他开发人员也可以使用它。

在 Android 上,您可以:

String oglVersion = GLES20.glGetString(GLES20.GL_VERSION);
String deviceName = GLES20.glGetString(GLES20.GL_RENDERER);
String extensions = GLES20.glGetString(GLES20.GL_EXTENSIONS);

另外,GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS 的值是否真的有可能不为零?

【问题讨论】:

    标签: android opengl-es embedded tegra


    【解决方案1】:

    Glbenchmark 有一个扩展列表。

    Tegra 2 dev guide 提到 tegra2 上的顶点纹理单元的最大数量是 0。Tegra3 是 AFAIK,而不是 GPU 方面的大规模重新设计,它只是在 4 个额外的 CUDA 核心上进行片段处理,所以我想说的是tegra3 上的纹理单元数相同。

    【讨论】:

    • 感谢 Glbenchmark 链接!但至于扩展,我认为人们发布他们的扩展仍然是有意义的,我相信设备/固件版本之间可能会有一些细微的差异。
    • Tegra 2/3/4 着色器核心不支持 CUDA。
    • @kusma 实际上我相信 Tegra 4 应该具备 CUDA 能力。不是吗?
    • @theswine:不。不过,Tegra K1 是。
    • @kusma 哦,我明白了。我以为他们是一样的。最近没有做太多的移动编程,有点停留在 Tegra 3。
    【解决方案2】:

    华硕 Eee PAD Transformer Prime TF201

    扩展:

    GL_NV_platform_binary
    GL_OES_rgb8_rgba8
    GL_OES_EGL_sync
    GL_OES_fbo_render_mipmap
    GL_NV_depth_nonlinear
    GL_NV_draw_path
    GL_NV_texture_npot_2D_mipmap
    GL_OES_EGL_image
    GL_OES_EGL_image_external
    GL_OES_vertex_half_float
    GL_OES_mapbuffer
    GL_NV_draw_buffers
    GL_NV_multiview_draw_buffers
    GL_EXT_Cg_shader
    GL_EXT_packed_float
    GL_OES_texture_half_float
    GL_OES_texture_float
    GL_EXT_texture_array
    GL_OES_compressed_ETC1_RGB8_texture
    GL_EXT_texture_compression_latc
    GL_NV_texture_compression_latc
    GL_EXT_texture_compression_dxt1
    GL_EXT_texture_compression_s3tc
    GL_NV_texture_compression_s3tc
    GL_EXT_texture_filter_anisotropic
    GL_NV_get_tex_image
    GL_NV_read_buffer
    GL_NV_shader_framebuffer_fetch
    GL_NV_fbo_color_attachments
    GL_EXT_bgra
    GL_EXT_texture_format_BGRA8888
    GL_EXT_unpack_subimage
    GL_NV_pack_subimage
    GL_NV_texture_compression_s3tc_update
    GL_NV_read_depth
    GL_NV_read_stencil
    GL_EXT_robustness
    GL_OES_standard_derivatives
    GL_NV_EGL_stream_consumer_external
    GL_NV_coverage_sample
    GL_EXT_occlusion_query_boolean
    GL_NV_timer_query
    

    GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS 为 0,正如预期的那样:'(

    有趣的是,与 Glbenchmark 报告的扩展相比,缺少这些:

    GL_NV_robustness
    

    (没那么有趣,被一个EXT版本取代了),但是有一些新的扩展:

    GL_NV_texture_compression_latc
    GL_NV_texture_compression_s3tc
    GL_NV_pack_subimage
    GL_EXT_robustness
    GL_OES_standard_derivatives
    GL_NV_EGL_stream_consumer_external
    GL_EXT_occlusion_query_boolean
    GL_NV_timer_query
    

    刚从同事桌上抓起设备,快速读取扩展字符串,没有机会拿到OpenGL版本(应该是“OpenGL ES 2.0”)和渲染器(应该是“NVIDIA Tegra 3”)。

    【讨论】:

    • "GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS 为 0,符合预期 :'(" 确实是悲伤的脸 :'(
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-22
    • 2011-01-06
    • 1970-01-01
    • 1970-01-01
    • 2015-07-15
    • 1970-01-01
    相关资源
    最近更新 更多