-
Notifications
You must be signed in to change notification settings - Fork 13
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add low level graphics render passes and refactor painter draw methods
Add low level graphics render passes and refactor painter draw methods. This change is needed because there's a need to be able to leverage the painter draw methods in more elaborate drawing systems when doing multiple passes over the items and rendering to various different render targets/buffers. This change splits some rendering state into "render pass" objects which are then responsible for setting up the right device state for writing to color/depth/stencil buffers. Doing this also simplifies the painter implementation since it no longer needs to implement different draws such as mask+cover itself but the caller can create such a setup easily. The legacy functionality for the simplest draw is kept for backwards compatibility by adding some default render pass implementations and using those implicitly. The render pass object is now also added to the environment arguments passed to the material and drawable when applying program/device state. This allows the materials and drawables to provide alternative ways for performing some render pass, such as using simpler shaders when doing a stencil pass and now actual RGB computation is needed.
- Loading branch information
Showing
11 changed files
with
289 additions
and
194 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.