History log of /external/skia/src/gpu/gl/GrGLProgramDataManager.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
7d022d6cc80b85c6c6fc0688c0904915fec61910 12-May-2015 joshualitt <joshualitt@chromium.org> add option to supress prints on context

BUG=skia:

Committed: https://skia.googlesource.com/skia/+/55661337667a8305ebb100e36af23d34c2fb83ba

Review URL: https://codereview.chromium.org/1128903008
/external/skia/src/gpu/gl/GrGLProgramDataManager.h
ee71044d4b7aa1703cd9c04d5322f5d2df1e7c25 12-May-2015 joshualitt <joshualitt@google.com> Revert of add option to supress prints on context (patchset #5 id:80001 of https://codereview.chromium.org/1128903008/)

Reason for revert:
breaks windows rollbots

Original issue's description:
> add option to supress prints on context
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/55661337667a8305ebb100e36af23d34c2fb83ba

TBR=bsalomon@google.com,robertphillips@google.com,joshualitt@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/1125193006
/external/skia/src/gpu/gl/GrGLProgramDataManager.h
55661337667a8305ebb100e36af23d34c2fb83ba 12-May-2015 joshualitt <joshualitt@chromium.org> add option to supress prints on context

BUG=skia:

Review URL: https://codereview.chromium.org/1128903008
/external/skia/src/gpu/gl/GrGLProgramDataManager.h
af2d56d2139cc5597a5a43a4e16acbd8d10e9060 11-May-2015 joshualitt <joshualitt@chromium.org> print on unused uniforms in debug builds

BUG=skia:

Review URL: https://codereview.chromium.org/1136803002
/external/skia/src/gpu/gl/GrGLProgramDataManager.h
abb52a1a70a81915c6196e0fb3e9bcb05e8be14d 14-Jan-2015 joshualitt <joshualitt@chromium.org> Move most of the transform logic into the primitive processors

BUG=skia:

Review URL: https://codereview.chromium.org/822423004
/external/skia/src/gpu/gl/GrGLProgramDataManager.h
861e1037017bbb7ac52ec5ebecab3a636a82a3e8 16-Dec-2014 bsalomon <bsalomon@google.com> Rename GrGpuGL to GrGLGpu for consistency

Review URL: https://codereview.chromium.org/808593003
/external/skia/src/gpu/gl/GrGLProgramDataManager.h
47bb38283072dc87dc93220cd2f370ca109972ff 08-Oct-2014 joshualitt <joshualitt@chromium.org> Cleanup of shader building system

this is a huge refactor and cleanup of the gl shader building system in
Skia. The entire shader building pipeline is now part of
GrGLProgramCreator, which takes a gp, and some fps, and creates a
program. I added some subclasses of GrGLProgram to handle the
eccentricities of Nvpr/Nvpres. Outside of the builders folder
and GrGLPrograms, this change is basically just a rename

solo gp

BUG=skia:

Committed: https://skia.googlesource.com/skia/+/fe1233c3f12f81bb675718516bbb32f72af726ec

Review URL: https://codereview.chromium.org/611653002
/external/skia/src/gpu/gl/GrGLProgramDataManager.h
db0d3ca07008ea2c1f24d0fd9ceecf10af6ae63b 07-Oct-2014 joshualitt <joshualitt@chromium.org> Revert of Cleanup of shader building system (patchset #25 id:470001 of https://codereview.chromium.org/611653002/)

Reason for revert:
Seems to have messed up windows 7 gms

Original issue's description:
> Cleanup of shader building system
>
> this is a huge refactor and cleanup of the gl shader building system in
> Skia. The entire shader building pipeline is now part of
> GrGLProgramCreator, which takes a gp, and some fps, and creates a
> program. I added some subclasses of GrGLProgram to handle the
> eccentricities of Nvpr/Nvpres. Outside of the builders folder
> and GrGLPrograms, this change is basically just a rename
>
>
> solo gp
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/fe1233c3f12f81bb675718516bbb32f72af726ec

TBR=bsalomon@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/635533005
/external/skia/src/gpu/gl/GrGLProgramDataManager.h
fe1233c3f12f81bb675718516bbb32f72af726ec 07-Oct-2014 joshualitt <joshualitt@chromium.org> Cleanup of shader building system

this is a huge refactor and cleanup of the gl shader building system in
Skia. The entire shader building pipeline is now part of
GrGLProgramCreator, which takes a gp, and some fps, and creates a
program. I added some subclasses of GrGLProgram to handle the
eccentricities of Nvpr/Nvpres. Outside of the builders folder
and GrGLPrograms, this change is basically just a rename

solo gp

BUG=skia:

Review URL: https://codereview.chromium.org/611653002
/external/skia/src/gpu/gl/GrGLProgramDataManager.h
ec56e4545477e30d4f165ca55ed99f90525c6c38 26-Aug-2014 kkinnunen <kkinnunen@nvidia.com> Implement NV_path_rendering on OpenGL ES

Implement support for NV_path_rendering on OpenGL ES. Use
glProgramPathFragmentInputGenNV function call instead of glPathTexGenNV to
communicate transforms to fragment shader.

The intention is that the NVPR paths will be drawn with the same shader program
as non-NVPR geometry. For NVPR calls, the GPU will skip the vertex shader and
just run the fragment shader.

After program is linked, query the locations of the fragment shader inputs with
glGetResourceLocation. The location will be used to set the transforms with
glProgramPathFragmentInputGenNV.

The functions and their workings are documented in:

glProgramPathFragmentInputGenNV
https://www.opengl.org/registry/specs/NV/path_rendering.txt
(note: addition as of API version 1.3)

glGetResourceLocation
https://www.opengl.org/registry/specs/ARB/program_interface_query.txt
http://www.opengl.org/registry/doc/glspec44.core.pdf
(function is in core Open GL 4.4)

Note: glProgramPathFragmentInputGenNV could be used also for OpenGL. However,
using seems to trigger a bug in the driver. Disable this feature on OpenGL at
least until the driver is fixed and released. The bug manifests in shadertext
test, where the lower-left text pair is missing. Valgrind catches a bad read
for the test and causes the context to OOM reproducibly.

R=bsalomon@google.com, cdalton@nvidia.com, joshualitt@google.com, joshualitt@chromium.org

Author: kkinnunen@nvidia.com

Review URL: https://codereview.chromium.org/367643004
/external/skia/src/gpu/gl/GrGLProgramDataManager.h
30ba436f04e61d4505fb854d5fc56079636e0788 22-Aug-2014 joshualitt <joshualitt@chromium.org> Initial refactor of shaderbuilder to prepare for geometry shaders

gitignore for eclipse

BUG=skia:
R=bsalomon@google.com, bsalomon@chromium.org

Author: joshualitt@chromium.org

Review URL: https://codereview.chromium.org/491673002
/external/skia/src/gpu/gl/GrGLProgramDataManager.h
dddc18a6bba67ad43a65f4c244b95f76cefef617 04-Aug-2014 kkinnunen <kkinnunen@nvidia.com> Make GrGLProgram be available to GrGLProgramDataManager

GL APIs such as glProgramPathFragmentInputGenNV need the explicit program id in
order to set the program resources. For GrGLProgramDataManager to call the APIs,
the program id needs to be available to the GrGLProgramDataManager.

One GrGLProgramDataManager is used to explicitly manage the resources of one
GrGLProgram. Refactor the classes to reflect this: make GrGLProgram create and
own GrGLProgramDataManager. This way the program id can be made available through
GrGLProgram backpointer.

In order to do this, remove the population of the program link results
information for uniforms in GrGLProgramDataManager during shader generation.

Instead, accumulate the info to the uniform list of GrGLShaderBuilder. After the
generation, compilation and link is successful, this info can be used to
construct both GrGLProgram and GrGLProgramDataManager.

Changes names of functions to create UniformHandles and convert them to list
indices. This tries to highlight that they're different lists, even though at
the moment they match index-wise. E.g the contract is that handles can be
created based on the shader builder state, and the object can later be set with
the handle and the manager that was created with the builder.

This is needed to support NV_path_rendering for GLES.

R=bsalomon@google.com

Author: kkinnunen@nvidia.com

Review URL: https://codereview.chromium.org/426553011
/external/skia/src/gpu/gl/GrGLProgramDataManager.h
7510b224e52b9518a8ddf7418db0e9c258f79539 30-Jul-2014 kkinnunen <kkinnunen@nvidia.com> Rename GrGLUniformManager to GrGLProgramDataManager

Rename GrGLUniformManager to GrGLProgramDataManager in anticipation that the
class would be used to manage shader resources that are not uniforms.

This is needed in order to implement NVPR on GLES.

R=bsalomon@google.com

Author: kkinnunen@nvidia.com

Review URL: https://codereview.chromium.org/365853002
/external/skia/src/gpu/gl/GrGLProgramDataManager.h