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
  • tests
  • gl_tests
  • InstancingTest.cpp
Find file
BlameHistoryPermalink
  • Tobin Ehlis's avatar
    Vulkan: Emulate instanced attrib divisor · 71c1138d
    Tobin Ehlis authored Aug 16, 2019
    This sets instancedArrays[ANGLE|EXT] extenstions as always
    supported regardless of underlying Vulkan HW's max vertex attrib
    divisor.
    Then detect instances where app sets a divisor that isn't supported
    by hardware and emulate those cases. Emulations is accomplished by
    copying the instanced attribs to a new buffer where each attrib is
    present once per instance, using the attrib divisor value as a
    factor to replicate the attribs, and then setting the actual divisor
    value for the draw to "1".
    Also, we only store 8 bits for the divisor used in the PSO, so this
    code also handles emulation of the case where divisor is > 255.
    
    This is passing all of the drawInstanced/Elements dEQP tests
    where divisor has to be emulated.
    
    Also enabled end2end InstancingTestES3 for Vulkan backend.
    
    Bug: angleproject:2672
    Change-Id: I9932f9eab49b16a19e8bbd35dacaf3b5a27a213f
    Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1758689Reviewed-by: 's avatarCourtney Goeltzenleuchter <courtneygo@google.com>
    Commit-Queue: Tobin Ehlis <tobine@google.com>
    71c1138d
InstancingTest.cpp 20.8 KB
EditWeb IDE
×

Replace InstancingTest.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.