Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • V virglrenderer
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 86
    • Issues 86
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 37
    • Merge requests 37
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Container Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • virgl
  • virglrenderer
  • Merge requests
  • !871

Enable use of separate shader objects for certain shader programs

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged Gert Wollny requested to merge gerddie/virglrenderer:enable-sso-use into master Aug 09, 2022
  • Overview 5
  • Commits 8
  • Pipelines 10
  • Changes 3

The series fixes up !864 (merged) and signals the guest that the SSO property can be understood be the host. Changes are:e,

  • Keep the info about the number of patch varyings to apply locations properly
  • scan the shader for ability to be emitted as separable program prior to translating it. This makes sure that the shader key is correctly initialized, and it also rejects shaders that may need IO matching by name.
  • Don't update FS shader key parts if we handle separable programs, matching is done by location, so there is no need to fix the interpolation specifiers
  • rebind not only UBOs but samplers too when switching pipeline, do this only if a shader is bound to a different pipeline

The first patch just fixes some (new) warning.

As a result of this series the benchmark in Tomb Raider 2013 runs a lot smoother and Dota 2 run in OpenGL mode also seems to settle faster to smooth game play (there is still a lot of stuttering at the beginning).

Edited Aug 09, 2022 by Gert Wollny
Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: enable-sso-use