Skip to content

  • Projects
  • Groups
  • Snippets
  • Help
  • This project
    • Loading...
  • Sign in / Register
A
angle
  • Project
    • Overview
    • Details
    • Activity
    • Cycle Analytics
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Charts
  • Issues 0
    • Issues 0
    • List
    • Board
    • Labels
    • Milestones
  • Merge Requests 0
    • Merge Requests 0
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
    • Charts
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Charts
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • Chen Yisong
  • angle
  • Repository

Switch branch/tag
  • angle
  • src
  • libANGLE
  • Context.cpp
Find file
BlameHistoryPermalink
  • Jamie Madill's avatar
    Sync dirty objects at the GL layer. · c9d442d7
    Jamie Madill authored Jan 20, 2016
    The dirty bit system currently puts dirty objects in line with the
    rest of the dirty state. This means at the Renderer level, the sync
    manager code would call back to the GL layer to sync the specific
    objects that are dirty. This is a bit of a layering violation (impl
    layer mutating top-level objects) and also a bit of repeated boiler-
    plate code.
    
    Fix this by treating dirty objects in a separate dirty bit set, called
    the dirty objects. This also has the benefit of allowing us to re-
    implement the dirty object set at a later date, if we want to store
    them in a list, or other structure.
    
    Also don't skip the state sync at the GL level if there are no GL
    dirty bits. The Impl might have some dirty bits locally, and it's
    better to call syncState and do the no-op check in the Impl than it
    is to also sync local state at every sync point (draw call, read, etc)
    in each Impl.
    
    BUG=angleproject:1260
    
    Change-Id: Id5d4beb2a1c4e3ad351edf54e3f32e828d5f5da3
    Reviewed-on: https://chromium-review.googlesource.com/318790Reviewed-by: 's avatarCorentin Wallez <cwallez@chromium.org>
    Tested-by: 's avatarJamie Madill <jmadill@chromium.org>
    c9d442d7
Context.cpp 70.1 KB
EditWeb IDE
×

Replace Context.cpp

Attach a file by drag & drop or click to upload


Cancel
A new branch will be created in your fork and a new merge request will be started.