• Show log

    Commit

  • Hash : 6722009e
    Author : Jamie Madill
    Date : 2019-05-20T11:12:53

    Vulkan: Handle dirty RTs with state messages.
    
    Prior to this CL we were handling dirty state change notifications by
    flushing the RT Images just prior to use or just after they were
    changed. This could lead to a few redundant checks in several places.
    It also meant we needed an owner pointer from the RT to the parent
    Image. This pointer would be null for Surfaces and Renderbuffers.
    
    This cleans up the image flushing logic to be handled by dirty bit
    notifications. When an app updates an attached Texture with TexSubImage
    or related calls it will send a notification to the Framebuffer. The
    Framebuffer then sets a dirty contents bit that is handled in the
    implementation. In Vulkan this means flushing the dirty bits.
    
    Requires adding a flag to the FramebufferImpl class to determine if we
    need to syncState before we checkStatus. Adding the option allows us to
    only call syncState for the GL back-end. Not calling syncState allows
    the robust resource init operation to happen *before* we syncState.
    Which in turn allows FramebuffeVk to initialize the VkImages in one go.
    
    Added new regression tests for Texture updates. This might not cover
    all cases. I found it was very hard to trigger some of the resource
    update staging in TextureVk.
    
    Bug: angleproject:3427
    Change-Id: Idfa177436ba7fcb9d398f2b67922e085f778f82a
    Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1601552
    Commit-Queue: Jamie Madill <jmadill@chromium.org>
    Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
    

  • 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_l thodg
    Tags