• Show log

    Commit

  • Hash : b97aab3f
    Author : Charlie Lao
    Date : 2022-03-09T17:36:24

    Vulkan: resync mCurrentElementArrayBuffer when out of lineloop
    
    When glDrawElements is called with GL_UNSIGNED_BYTE type or LineLoop
    mode, we will internally allocate an element buffer and copy data to it.
    But when we switch out of that mode, we must re-sync
    mCurrentElementArrayBuffer to what it should be based on VertexArray
    buffer binding. This CL fix the bug that we were previously not updating
    it and end up using the wrong element buffer.
    
    Also added three tests:
    
    DrawWithSameBufferButDifferentTypes: that uses GL_UNSIGNED_BYTE data and
    GL_UNSIGNED_SHORT data in the same buffer and switch between these two
    data types without incurring buffer change.
    
    DrawWithSameBufferButDifferentModes: draw line mode followed by triangle
    without the same element buffer.
    
    DrawArraysLineLoopFollowedByDrawElementsTriangle: draw line mode with
    glDrawArrays and then followed by DrawElements.
    
    Bug: chromium:1299261
    Change-Id: I5c471117d300e9fac9127a9d8fa66d48ac312f03
    Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3513553
    Reviewed-by: Jamie Madill <jmadill@chromium.org>
    Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
    Commit-Queue: Charlie Lao <cclao@google.com>
    

  • Properties

  • Git HTTP https://git.kmx.io/kc3-lang/angle.git
    Git SSH git@git.kmx.io:kc3-lang/angle.git
    Public access ? public
    Description

    A conformant OpenGL ES implementation for Windows, Mac, Linux, iOS and Android.

    Homepage

    Github

    Users
    thodg_m kc3_lang_org thodg_w www_kmx_io thodg thodg_l
    Tags