Skip to content

  • Projects
  • Groups
  • Snippets
  • Help
  • This project
    • Loading...
  • Sign in / Register
S
swiftshader
  • 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
  • swiftshader
  • Repository

Switch branch/tag
  • swiftshader
  • src
  • Device
  • SetupProcessor.cpp
Find file
BlameHistoryPermalink
  • Alexis Hetu's avatar
    Context refactor: from OpenGL-like state to Vulkan-like state · 35f07708
    Alexis Hetu authored Oct 01, 2020
    Overview of the changes:
    
    The Context class has been split into more Vulkan related functional
    elements:
    - The IndexBuffer class, which contains the index buffer information
      and has been extended to also the functionality to support
      primitive restart. Should we need primitive restart related caching
      in the future, this would be the place to do it.
    - The Attachments class, which contains information about render
      targets and depth and stencil buffers
    - The Inputs class, which contains information about descriptor sets
      and input streams.
    - The GraphicsState is a completely constant class which can only be
      modified in the constructor, which represents the state of a
      graphics pipeline, which never changes past construction. The
      GraphicsState can be combined with a DynamicState structure in
      order to create a complete state used by rendering.
    
    Also to note:
    - The DynamicState class in now in Context.hpp, in order for the
      GraphicsState to have functionality related to it.
    - PushConstantStorage was moved to vk::Pipeline, as it is used by
      both the Graphics Pipeline and the Compute Pipeline.
    - Viewport/scissor functionality is contained in the GraphicsState
      and was removed from the Renderer.
    - All *Processor::update() functions now receive only the information
      that they require, rather that having access to the entire context.
    
    Bug: b/132280877
    
    Change-Id: I74f2582d34e45aa1e7b192dbd2b9b770e7af118d
    Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/48830Reviewed-by: 's avatarNicolas Capens <nicolascapens@google.com>
    Tested-by: 's avatarAlexis Hétu <sugoi@google.com>
    Commit-Queue: Alexis Hétu <sugoi@google.com>
    Kokoro-Result: kokoro <noreply+kokoro@google.com>
    35f07708
SetupProcessor.cpp 3.74 KB
EditWeb IDE
×

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