• Show log

    Commit

  • Hash : 410d8ba5
    Author : Charlie Lao
    Date : 2022-12-21T13:27:00

    Vulkan: Cleanup ContextVk::hasStartedRenderPass APIs
    
    ContextVk has a few hasStartedRenderPass APIs which interpret "start"
    inconsistently. A RenderPassCommands' life should be notStarted,
    started, requestEnd, and end (which is equivalent to notStarted). When
    someone calls onRenderPassFinished on a started renderpass, it does not
    immediate endRenderPass, but it will set DIRTY_BIT_RENDER_PASS dirty bit
    so that next draw call will trigger endRenderPass and start a new
    renderPass. We do not have a name for this state, which adds some
    confusion. This CL renames the stage between start and
    onRenderPassFinished to be "active" renderpass, when you have
    mRenderPassCommandBuffer pointer being valid and you can actively adding
    draw commands into the renderPass. For this purpose, I haves renamed
    hasStartedRenderPass to hasActiveRenderPass. This CL also simplifies
    hasStartedRenderPass implementation to only check
    mRenderPassCommandBuffer and turned mRenderPassCommands.started as
    assertion. This CL also changes hasStartedRenderPassWithQueueSerial to
    actually check mRenderPassCommands.started instead of being "active", so
    that name reflects what it is actually checking. This CL also changed
    hasStartedRenderPassWithCommands to hasActiveRenderPassWithCommands to
    make name and implementation consistent. One added benefit of this is
    that after this CL we now allow load/store optimization on a started but
    inactive renderPass as well (for example glInvalidateFramebuffer call
    after glFenceSync call, or invalidate after FBO blit as demonstrated by
    MultisampleResolveTest.ResolveD32FSamples tests).
    
    Bug: angleproject:7903
    Bug: angleproject:7551
    Change-Id: I8c8ec4c0d54b9ad0a9e373108dfce6b151c8fe0e
    Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4119693
    Reviewed-by: Yuxin Hu <yuxinhu@google.com>
    Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
    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_l thodg
    Tags