aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/gl/GrGLProgram.h
Commit message (Collapse)AuthorAge
...
* Add a GrGpuGL reference for GrGLProgram/GrGLUniformManagerGravatar commit-bot@chromium.org2013-09-05
| | | | | | | | | | | | | | | Updates GrGLProgram and GrGLUniformManager to keep a GrGpuGL reference instead of one for GrGLContextInfo. No change in functionality, this is in preparation to support fixed function GL calls for vertexless shaders. R=bsalomon@google.com Author: cdalton@nvidia.com Review URL: https://chromiumcodereview.appspot.com/23636011 git-svn-id: http://skia.googlecode.com/svn/trunk@11111 2bbb7eff-a529-9590-31e7-b0007b416f81
* Isolate VertexBuilder from GrGLShaderBuilderGravatar commit-bot@chromium.org2013-08-30
| | | | | | | | | | | | | | | Adds a nested class to GrGLShaderBuilder called VertexBuilder. Now GrGLShaderBuilder can only modify the fragment shader directly. In order to modify the vertex shader, the client code needs to call getVertexShader, which will return null for vertex-less shaders. R=bsalomon@google.com Author: cdalton@nvidia.com Review URL: https://chromiumcodereview.appspot.com/23754003 git-svn-id: http://skia.googlecode.com/svn/trunk@11046 2bbb7eff-a529-9590-31e7-b0007b416f81
* Refactor GrGLUniformManager::UniformHandle to initialize itself by defaultGravatar commit-bot@chromium.org2013-08-14
| | | | | | | | | | | | | | | | | | | | Refactor GrGLUniformManager::UniformHandle to initialize itself to "invalid" state by default. This simplifies the effect constructors. In the future, it should also help catch potential uninitialized uniform variable usage. Remove unneeded explicit uniform handle validity assertions before the handle usage. The assertion will always be made when handle is converted to index. BUG=skia:1492 R=bsalomon@google.com Author: kkinnunen@nvidia.com Review URL: https://chromiumcodereview.appspot.com/22340010 git-svn-id: http://skia.googlecode.com/svn/trunk@10713 2bbb7eff-a529-9590-31e7-b0007b416f81
* separate arrays for color and coverage effects.Gravatar bsalomon@google.com2013-06-06
| | | | | | | | R=robertphillips@google.com Review URL: https://codereview.chromium.org/16180006 git-svn-id: http://skia.googlecode.com/svn/trunk@9465 2bbb7eff-a529-9590-31e7-b0007b416f81
* Make GrGLProgram no longer depend on kNumStagesGravatar bsalomon@google.com2013-06-06
| | | | | | | | R=robertphillips@google.com Review URL: https://codereview.chromium.org/16158007 git-svn-id: http://skia.googlecode.com/svn/trunk@9462 2bbb7eff-a529-9590-31e7-b0007b416f81
* Make GrGLProgramDesc's key variable length by compacting the effect key arrayGravatar bsalomon@google.com2013-05-22
| | | | | | | | R=robertphillips@google.com Review URL: https://codereview.chromium.org/15252004 git-svn-id: http://skia.googlecode.com/svn/trunk@9239 2bbb7eff-a529-9590-31e7-b0007b416f81
* Expand modulate, add, subtract, extract component glsl helpers.Gravatar bsalomon@google.com2013-04-18
| | | | | | Review URL: https://codereview.chromium.org/13895006 git-svn-id: http://skia.googlecode.com/svn/trunk@8755 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Skia_Periodic_House_KeepingGravatar skia.committer@gmail.com2013-04-02
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@8477 2bbb7eff-a529-9590-31e7-b0007b416f81
* Take two for r8466:Gravatar jvanverth@google.com2013-04-01
| | | | | | | | | | | | | | | Replace the old attribute binding and index interface with one where we include the binding as part of the attribute array. Also removed the fixed attribute indices for constant color and coverage attributes, and replaced with dynamic ones based on current attribute set. Removed binding of color and coverage attributes unless they're actually set. Original author: bsalomon@google.com Author: jvanverth@google.com Reviewed By: bsalomon@google.com,robertphillips@google.com Review URL: https://chromiumcodereview.appspot.com/13296005 git-svn-id: http://skia.googlecode.com/svn/trunk@8468 2bbb7eff-a529-9590-31e7-b0007b416f81
* Rolling back r8466. Gravatar jvanverth@google.com2013-04-01
| | | | | | | Not reviewed. git-svn-id: http://skia.googlecode.com/svn/trunk@8467 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revise attribute binding interface.Gravatar commit-bot@chromium.org2013-04-01
| | | | | | | | | | | | | | Replace the old attribute binding and index interface with one where we include the binding as part of the attribute array. Also removed the fixed attribute indices for constant color and coverage attributes, and replaced with dynamic ones based on current attribute set. Removed binding of color and coverage attributes unless they're actually set. Original author: bsalomon@google.com Author: jvanverth@google.com Reviewed By: bsalomon@google.com,robertphillips@google.com Review URL: https://chromiumcodereview.appspot.com/13296005 git-svn-id: http://skia.googlecode.com/svn/trunk@8466 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add support for reading the dst pixel value in an effect. Use in a new ↵Gravatar bsalomon@google.com2013-03-29
| | | | | | | | | | | effect for the kDarken xfer mode. The current implementation is to always make a copy of the entire dst before the draw. It will only succeed if the RT is also a texture. Obviously, there is lots of room for improvement. Review URL: https://codereview.chromium.org/13314002 git-svn-id: http://skia.googlecode.com/svn/trunk@8449 2bbb7eff-a529-9590-31e7-b0007b416f81
* Move GrGLProgramDesc::Build to new cpp file.Gravatar bsalomon@google.com2013-03-27
| | | | | | Review URL: https://codereview.chromium.org/13097007 git-svn-id: http://skia.googlecode.com/svn/trunk@8414 2bbb7eff-a529-9590-31e7-b0007b416f81
* Move GrGLProgram::Desc out of GrGLProgram.Gravatar bsalomon@google.com2013-03-27
| | | | | | Review URL: https://codereview.chromium.org/12942014 git-svn-id: http://skia.googlecode.com/svn/trunk@8411 2bbb7eff-a529-9590-31e7-b0007b416f81
* Program key coverage/discard fixes.Gravatar bsalomon@google.com2013-03-26
| | | | | | Review URL: https://codereview.chromium.org/13095004 git-svn-id: http://skia.googlecode.com/svn/trunk@8393 2bbb7eff-a529-9590-31e7-b0007b416f81
* Replace edge types with GrEdgeEffect. Gravatar bsalomon@google.com2013-03-26
| | | | | | | | | This strips out last of the edge types and the fixed function edge attribute and replaces them with using GrEdgeEffect. Also fixes a minor bug when checking attribute counts -- it was using kAttribIndexCount instead of kVertexAttribCnt. Original Author: jvanverth@google.com Review URL: https://codereview.chromium.org/13069003 git-svn-id: http://skia.googlecode.com/svn/trunk@8392 2bbb7eff-a529-9590-31e7-b0007b416f81
* Attempt to reland 8264-5 with warning-as-error fixes.Gravatar bsalomon@google.com2013-03-20
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@8272 2bbb7eff-a529-9590-31e7-b0007b416f81
* revert 8265-8264 (broke build)Gravatar reed@google.com2013-03-20
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@8268 2bbb7eff-a529-9590-31e7-b0007b416f81
* Adds local coords to GrEffect system.Gravatar bsalomon@google.com2013-03-20
| | | | | | | | | | | | | Effects can ask the builder for local coords which may or may not be distinct from positions. GrEffectStage tracks changes to relationship between pos and local coords. GrGLEffectMatrix and GrSingleTextureEffect can use either pos or textures as intput coords GrSimpleTextureEffect now allows for an explicit texture coords attribute. Review URL: https://codereview.chromium.org/12531015 git-svn-id: http://skia.googlecode.com/svn/trunk@8264 2bbb7eff-a529-9590-31e7-b0007b416f81
* Resubmit r7899 and r7901.Gravatar jvanverth@google.com2013-03-01
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@7929 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert r7901 & r7899 to allow DEPS rollGravatar robertphillips@google.com2013-02-28
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@7909 2bbb7eff-a529-9590-31e7-b0007b416f81
* Split GrGLContextInfo into GrGLContext & GrGLContextInfoGravatar robertphillips@google.com2013-02-28
| | | | | | | | https://codereview.appspot.com/7436045/ git-svn-id: http://skia.googlecode.com/svn/trunk@7905 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add new vertex attribute array specification.Gravatar jvanverth@google.com2013-02-28
| | | | | | | | | | | | This changes the old method of setting vertex layout to a new one where we specify vertex attribute data separately from attribute bindings (i.e. program functionality). Attribute data is now set up via an array of generic attribute types and offsets, and this is mapped to the old program functionality by setting specific attribute indices. This allows us to create more general inputs to shaders. git-svn-id: http://skia.googlecode.com/svn/trunk@7899 2bbb7eff-a529-9590-31e7-b0007b416f81
* Refactor tracking of bound vbufs and ibufs and vertex attrib arrays.Gravatar bsalomon@google.com2013-02-19
| | | | | | Review URL: https://codereview.appspot.com/7359045 git-svn-id: http://skia.googlecode.com/svn/trunk@7779 2bbb7eff-a529-9590-31e7-b0007b416f81
* Remove unused texture coordinate flags.Gravatar jvanverth@google.com2013-02-14
| | | | | | | | | | | Currently we support 5 texture stages, each with 5 possible texture coordinate attributes. However, we only ever use one explicit texture coordinate. This change removes all but one (now named just "aTexCoord") of the possible explicit texture coordinates. Review URL: https://codereview.appspot.com/7308094/ git-svn-id: http://skia.googlecode.com/svn/trunk@7737 2bbb7eff-a529-9590-31e7-b0007b416f81
* r7719 was an exact reland of r7713. This CL is fix.Gravatar bsalomon@google.com2013-02-13
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@7720 2bbb7eff-a529-9590-31e7-b0007b416f81
* Attempt to reland r7713 with fix.Gravatar bsalomon@google.com2013-02-13
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@7719 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert r7713 until GM changes are understood.Gravatar bsalomon@google.com2013-02-13
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@7718 2bbb7eff-a529-9590-31e7-b0007b416f81
* Move view matrix flush to GrGLPrograms.Gravatar bsalomon@google.com2013-02-13
| | | | | | Review URL: https://codereview.appspot.com/7322064 git-svn-id: http://skia.googlecode.com/svn/trunk@7713 2bbb7eff-a529-9590-31e7-b0007b416f81
* Move code that builds GrGLProgram::Desc to GrGLProgram. Move color and ↵Gravatar bsalomon@google.com2013-02-12
| | | | | | | | coverage flush to GrGLProgram. Review URL: https://codereview.appspot.com/7322058 git-svn-id: http://skia.googlecode.com/svn/trunk@7708 2bbb7eff-a529-9590-31e7-b0007b416f81
* Implement support for origin-TopLeft render targets. Note that the default ↵Gravatar senorblanco@chromium.org2013-02-05
| | | | | | | | behaviour remains the same: textures default to origin-TopLeft, render targets default to origin-BottomLeft, and backend textures default to origin-BottomLeft. However, the caller can override the default by setting fOrigin in GrTextureDesc, GrBackendTextureDesc or GrBackendRenderTargetDesc. Review URL: https://codereview.appspot.com/7230049 git-svn-id: http://skia.googlecode.com/svn/trunk@7594 2bbb7eff-a529-9590-31e7-b0007b416f81
* Reverting r7545 (render target origin change) due to layout test issues (see ↵Gravatar robertphillips@google.com2013-02-05
| | | | | | https://codereview.chromium.org/12210002/) git-svn-id: http://skia.googlecode.com/svn/trunk@7571 2bbb7eff-a529-9590-31e7-b0007b416f81
* Implement support for origin-TopLeft render targets in GL backend.Gravatar senorblanco@chromium.org2013-02-04
| | | | | | Review URL: https://codereview.appspot.com/7230049 git-svn-id: http://skia.googlecode.com/svn/trunk@7545 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Skia_Periodic_House_KeepingGravatar skia.committer@gmail.com2013-01-05
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@7038 2bbb7eff-a529-9590-31e7-b0007b416f81
* Allow GrEffects with multiple textures.Gravatar bsalomon@google.com2013-01-04
| | | | | | | It will work as long as the total number of textures sis less than GrDrawState::kNumStages. That will be fixed in a follow up CL. Review URL: https://codereview.appspot.com/7040052 git-svn-id: http://skia.googlecode.com/svn/trunk@7023 2bbb7eff-a529-9590-31e7-b0007b416f81
* Modifications to GrPatherRenderer(Chain) interfaces to support clip mask ↵Gravatar bsalomon@google.com2012-12-10
| | | | | | | | | manager. R=robertphillips@google.com Review URL: https://codereview.appspot.com/6904069 git-svn-id: http://skia.googlecode.com/svn/trunk@6741 2bbb7eff-a529-9590-31e7-b0007b416f81
* Remove default texture coords / texture matrixGravatar bsalomon@google.com2012-11-05
| | | | | | Review URL: https://codereview.appspot.com/6775100 git-svn-id: http://skia.googlecode.com/svn/trunk@6293 2bbb7eff-a529-9590-31e7-b0007b416f81
* Replace GrMatrix with SkMatrix.Gravatar bsalomon@google.com2012-11-01
| | | | | | Review URL: https://codereview.appspot.com/6814067 git-svn-id: http://skia.googlecode.com/svn/trunk@6247 2bbb7eff-a529-9590-31e7-b0007b416f81
* Expose vertex position to GrGLEffect via GrGLShaderBuilder.Gravatar bsalomon@google.com2012-10-30
| | | | | | | R=robertphillips@google.com Review URL: https://codereview.appspot.com/6814054 git-svn-id: http://skia.googlecode.com/svn/branches/gpu_dev@6195 2bbb7eff-a529-9590-31e7-b0007b416f81
* Pass GrCustomStage to key-generation functions and emitCode().Gravatar bsalomon@google.com2012-10-29
| | | | | | | R=robertphillips@google.com Review URL: https://codereview.appspot.com/6819046 git-svn-id: http://skia.googlecode.com/svn/branches/gpu_dev@6182 2bbb7eff-a529-9590-31e7-b0007b416f81
* Make the orientation of a texture accessible from and known by GrSurface.Gravatar bsalomon@google.com2012-10-26
| | | | | | | R=robertphillips@google.com Review URL: https://codereview.appspot.com/6801044 git-svn-id: http://skia.googlecode.com/svn/branches/gpu_dev@6148 2bbb7eff-a529-9590-31e7-b0007b416f81
* Rename StageKey and related stuff.Gravatar bsalomon@google.com2012-10-25
| | | | | | | R=robertphillips@google.com Review URL: https://codereview.appspot.com/6785049 git-svn-id: http://skia.googlecode.com/svn/trunk@6130 2bbb7eff-a529-9590-31e7-b0007b416f81
* Rename GrProgramStageFactory to GrBackendEffectFactory.Gravatar bsalomon@google.com2012-10-25
| | | | | | Review URL: https://codereview.appspot.com/6773044 git-svn-id: http://skia.googlecode.com/svn/trunk@6125 2bbb7eff-a529-9590-31e7-b0007b416f81
* GrGLProgramStage Renaming Part 1.Gravatar bsalomon@google.com2012-10-25
| | | | | | | | Renamed cpp and h s/GrGLProgramStage/GrGLEffect/ Review URL: https://codereview.appspot.com/6759054 git-svn-id: http://skia.googlecode.com/svn/trunk@6090 2bbb7eff-a529-9590-31e7-b0007b416f81
* GrCustomStage Renaming Part 5Gravatar bsalomon@google.com2012-10-25
| | | | | | | | | Stuff found by searching for "stage". R=robertphillips@google.com Review URL: https://codereview.appspot.com/6772043 git-svn-id: http://skia.googlecode.com/svn/trunk@6089 2bbb7eff-a529-9590-31e7-b0007b416f81
* GrCustomStage Renaming Part 3Gravatar bsalomon@google.com2012-10-24
| | | | | | | | | Rename all things *CUSTOM_STAGE*, customStage*, and other miscellany R=robertphillips@google.com Review URL: https://codereview.appspot.com/6769048 git-svn-id: http://skia.googlecode.com/svn/trunk@6081 2bbb7eff-a529-9590-31e7-b0007b416f81
* CustomStage Renaming Part 1Gravatar bsalomon@google.com2012-10-24
| | | | | | | | | | | | | | | | | | | Search and replace: GrCustomStage->GrEffect GrCustomStageTestFactory->GrEffectTestFactory renamed the cpp/h files from customStage->effect reordered gypi, #includes, forward decls to maintain alphabetical sort. manually fixed up some whitespace and linewraps deleted a commented out #include R=robertphillips@google.com Review URL: https://codereview.appspot.com/6758046 git-svn-id: http://skia.googlecode.com/svn/trunk@6076 2bbb7eff-a529-9590-31e7-b0007b416f81
* Reland r6330 thru r6333 but do without enabling ↵Gravatar bsalomon@google.com2012-10-23
| | | | | | GL_ARB_fragment_coord_conventions on Intel GPUs. git-svn-id: http://skia.googlecode.com/svn/trunk@6048 2bbb7eff-a529-9590-31e7-b0007b416f81
* Reorder the vertex attributes to be friendlier to android.Gravatar bsalomon@google.com2012-10-23
| | | | | | Review URL: https://codereview.appspot.com/6742068 git-svn-id: http://skia.googlecode.com/svn/trunk@6044 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert r6330 thru 6333 while we figure out what to do about Intel bots ↵Gravatar bsalomon@google.com2012-10-22
| | | | | | (possible driver bug). git-svn-id: http://skia.googlecode.com/svn/trunk@6037 2bbb7eff-a529-9590-31e7-b0007b416f81