aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu
Commit message (Collapse)AuthorAge
* Disable lighting filter unit test temporarily; unreviewed.Gravatar senorblanco@chromium.org2012-07-11
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@4541 2bbb7eff-a529-9590-31e7-b0007b416f81
* This patch implements the diffuse and specular lighting filters in Ganesh. Gravatar senorblanco@chromium.org2012-07-11
| | | | | | | | | | | | | | | | | | | | | | | | | There are three light types for each: distant, point and spot, whose code generation lives in a GrGLLight class hierarchy. This similar to the CPU implementation, where each light type provides a function to compute the vector from the surface plane to the light (surfaceToLight) and to compute the light colour (emitLightColour). Instead of templated member functions, as in the CPU implementation, these are virtual functions to emit the light-specific GLSL code. All of the code for the GPU path lives in the same file as that for the CPU path, SkLightingImageFilter.cpp. In order to provide Ganesh a hook to access it, SkImageFilter now has a asNewCustomStage() virtual, which allows an image filter to return a GrCustomStage representing that filter. Note that this patch does not handle the border conditions correctly (the [top|bottom][Left|Right]Normal() functions in the CPU implementation). That will come in a future patch. Review URL: http://codereview.appspot.com/6345081/ git-svn-id: http://skia.googlecode.com/svn/trunk@4535 2bbb7eff-a529-9590-31e7-b0007b416f81
* VariableVisibility -> ShaderTypeGravatar bsalomon@google.com2012-07-11
| | | | | | | Review URL: http://codereview.appspot.com/6344103/ git-svn-id: http://skia.googlecode.com/svn/trunk@4534 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix assumption that enabled stage implies texture is presentGravatar bsalomon@google.com2012-07-11
| | | | | | | | Review URL: http://codereview.appspot.com/6353087/ git-svn-id: http://skia.googlecode.com/svn/trunk@4532 2bbb7eff-a529-9590-31e7-b0007b416f81
* Change TextContext handling of stages and draw targets; this allows us toGravatar tomhudson@google.com2012-07-11
| | | | | | | | | | | | | assert in GrContext::setPaint() that all stages are disabled every time the paint is set. Watch for possible performance implications. http://codereview.appspot.com/6347043/ git-svn-id: http://skia.googlecode.com/svn/trunk@4531 2bbb7eff-a529-9590-31e7-b0007b416f81
* Added pdf implementation of conical gradient.Gravatar rileya@google.com2012-07-10
| | | | | | | Also fixed an erroneous comment in the gpu implementation. Review URL: https://codereview.appspot.com/6351076 git-svn-id: http://skia.googlecode.com/svn/trunk@4520 2bbb7eff-a529-9590-31e7-b0007b416f81
* Preserve convex control point polygon in cubic->quadratic approximationGravatar bsalomon@google.com2012-07-10
| | | | | | | | | | | | GM test modified, will require rebaselining. Review URL: http://codereview.appspot.com/6355088/ git-svn-id: http://skia.googlecode.com/svn/trunk@4518 2bbb7eff-a529-9590-31e7-b0007b416f81
* Remove GrStringBuilder Gravatar bsalomon@google.com2012-07-10
| | | | | | | | Review URL: http://codereview.appspot.com/6343093/ git-svn-id: http://skia.googlecode.com/svn/trunk@4514 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fixed Windows compiler complaintsGravatar robertphillips@google.com2012-07-10
| | | | | | | | http://codereview.appspot.com/6392044 git-svn-id: http://skia.googlecode.com/svn/trunk@4511 2bbb7eff-a529-9590-31e7-b0007b416f81
* More carefully disable stages in Ganesh to avoid textures or effectsGravatar tomhudson@google.com2012-07-10
| | | | | | | | | | leaking between draw calls. http://codereview.appspot.com/6353083/ git-svn-id: http://skia.googlecode.com/svn/trunk@4510 2bbb7eff-a529-9590-31e7-b0007b416f81
* Don't call glTexSubImage2D w/ indexed texture format on desktop GLGravatar bsalomon@google.com2012-07-10
| | | | | | | | Review URL: http://codereview.appspot.com/6374048/ git-svn-id: http://skia.googlecode.com/svn/trunk@4509 2bbb7eff-a529-9590-31e7-b0007b416f81
* Remove redundant vlayout masks and wasted vlayout bitsGravatar bsalomon@google.com2012-07-10
| | | | | | | Review URL: http://codereview.appspot.com/6345080/ git-svn-id: http://skia.googlecode.com/svn/trunk@4506 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add placement new macros to SkPostConfig, call SkNEW* from Ganesh.Gravatar tomhudson@google.com2012-07-09
| | | | | | | | | | | | TODO: unify with the placement new implementation in SkTemplatesPriv.h, once various issues there are overcome. reed@ should be taking the lead there. http://codereview.appspot.com/6384043/ git-svn-id: http://skia.googlecode.com/svn/trunk@4492 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add an SK_PRINTF_LIKE macro, which declares a function to have printf-likeGravatar senorblanco@chromium.org2012-07-09
| | | | | | | | | | | | | semantics, allowing gcc and clang to check the format string against the arguments. Enable its use on SkString (printf, appendf, and prependf). Also define an SK_SIZE_T_SPECIFIER macro so there's a cross-platform way of printing a size_t. Review URL: http://codereview.appspot.com/6375043/ git-svn-id: http://skia.googlecode.com/svn/trunk@4485 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix definition of isEqual() for two gradient effect custom stages.Gravatar tomhudson@google.com2012-07-09
| | | | | | | | | | | Expand comments defining isEqual() to better distinguish equality from equivalence, which is more significant in Ganesh shader cache management. http://codereview.appspot.com/6379043/ git-svn-id: http://skia.googlecode.com/svn/trunk@4484 2bbb7eff-a529-9590-31e7-b0007b416f81
* Left over cleanup from r4416 (fix for lingering AA clip mask bug)Gravatar robertphillips@google.com2012-07-09
| | | | | | | | http://codereview.appspot.com/6356058/ git-svn-id: http://skia.googlecode.com/svn/trunk@4474 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix bug in calling NV DeletePathsGravatar bsalomon@google.com2012-07-09
| | | | | | | | Review URL: http://codereview.appspot.com/6345078/ git-svn-id: http://skia.googlecode.com/svn/trunk@4467 2bbb7eff-a529-9590-31e7-b0007b416f81
* Rolling back r4034 (Proposed plumbing to propagate save & restore)Gravatar robertphillips@google.com2012-07-03
| | | | | | | | http://codereview.appspot.com/6346066/ git-svn-id: http://skia.googlecode.com/svn/trunk@4456 2bbb7eff-a529-9590-31e7-b0007b416f81
* Reworked gradient shader to no longer explicitly set gl_FragColor or return ↵Gravatar rileya@google.com2012-07-03
| | | | | | | | | | prematurely. This should fix failing linux buildbot, and should play nicer with programs that don't use the gl_FragColor global, or that have multiple stages. Also disabled debug printing from revision 4445. Review URL: https://codereview.appspot.com/6345063 git-svn-id: http://skia.googlecode.com/svn/trunk@4454 2bbb7eff-a529-9590-31e7-b0007b416f81
* Temporary checkin to debug Linux bot issue.Gravatar rileya@google.com2012-07-03
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@4445 2bbb7eff-a529-9590-31e7-b0007b416f81
* Changed '0.5f' to '0.5' in conical gradient shader to fix problem with ↵Gravatar rileya@google.com2012-07-03
| | | | | | shader compile on Mac. git-svn-id: http://skia.googlecode.com/svn/trunk@4444 2bbb7eff-a529-9590-31e7-b0007b416f81
* Added GPU implementation of 2-point conical gradient.Gravatar rileya@google.com2012-07-03
| | | | | | Review URL: https://codereview.appspot.com/6354062 git-svn-id: http://skia.googlecode.com/svn/trunk@4442 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fixed lingering gpu-path AA clip mask generation bugGravatar robertphillips@google.com2012-06-29
| | | | | | | | http://codereview.appspot.com/6351055/ git-svn-id: http://skia.googlecode.com/svn/trunk@4416 2bbb7eff-a529-9590-31e7-b0007b416f81
* Partially rolled forward the SkGrPixelRef changesGravatar robertphillips@google.com2012-06-29
| | | | | | | | http://codereview.appspot.com/6354060/ git-svn-id: http://skia.googlecode.com/svn/trunk@4415 2bbb7eff-a529-9590-31e7-b0007b416f81
* Un-trifurcate GrTextContext: get rid of Default and Batched subclasses,Gravatar tomhudson@google.com2012-06-29
| | | | | | | | | | | | folding their functionality back into the base class. Requires gyp changes. http://codereview.appspot.com/6357048/ git-svn-id: http://skia.googlecode.com/svn/trunk@4411 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix some NV path rendering issues with perspective and inverse pathsGravatar bsalomon@google.com2012-06-29
| | | | | | | | Review URL: http://codereview.appspot.com/6347050/ git-svn-id: http://skia.googlecode.com/svn/trunk@4403 2bbb7eff-a529-9590-31e7-b0007b416f81
* Pseudo-reverted r4396 (SkGrPixelRef files are still in source pool but are ↵Gravatar robertphillips@google.com2012-06-29
| | | | | | unused) git-svn-id: http://skia.googlecode.com/svn/trunk@4402 2bbb7eff-a529-9590-31e7-b0007b416f81
* Temporarily readding SkGrTexturePixelRef.h/.cpp until WebKit is transitioned ↵Gravatar robertphillips@google.com2012-06-28
| | | | | | to SkGrPixelRef git-svn-id: http://skia.googlecode.com/svn/trunk@4401 2bbb7eff-a529-9590-31e7-b0007b416f81
* Moved SkGrTexturePixelRef to SkGrPixelRefGravatar robertphillips@google.com2012-06-28
| | | | | | | | http://codereview.appspot.com/6344054/ git-svn-id: http://skia.googlecode.com/svn/trunk@4397 2bbb7eff-a529-9590-31e7-b0007b416f81
* Collapsed SkGrTexturePixelRef and SkGrRenderTargetPixelRef into SkGrPixelRef ↵Gravatar robertphillips@google.com2012-06-28
| | | | | | | | | | using new GrSurface class http://codereview.appspot.com/6359045/ git-svn-id: http://skia.googlecode.com/svn/trunk@4396 2bbb7eff-a529-9590-31e7-b0007b416f81
* Change CT assert to RT assertGravatar bsalomon@google.com2012-06-28
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@4391 2bbb7eff-a529-9590-31e7-b0007b416f81
* Initial support for GL_NV_path_renering. Experimental, there are still some ↵Gravatar bsalomon@google.com2012-06-28
| | | | | | | | | | issues to resolve, set gyp variable skia_nv_path_rendering=1 or build flag GR_GL_USE_NV_PATH_RENDERING to enable. http://codereview.appspot.com/6349049/ git-svn-id: http://skia.googlecode.com/svn/trunk@4390 2bbb7eff-a529-9590-31e7-b0007b416f81
* fixed another clang++ compiler errorGravatar robertphillips@google.com2012-06-28
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@4382 2bbb7eff-a529-9590-31e7-b0007b416f81
* Split GrSWMaskHelper into its own filesGravatar robertphillips@google.com2012-06-27
| | | | | | | | http://codereview.appspot.com/6350046/ git-svn-id: http://skia.googlecode.com/svn/trunk@4380 2bbb7eff-a529-9590-31e7-b0007b416f81
* fixed missing "return" errorGravatar robertphillips@google.com2012-06-27
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@4379 2bbb7eff-a529-9590-31e7-b0007b416f81
* Added ReadPixels format-supported check to GL CapsGravatar robertphillips@google.com2012-06-27
| | | | | | | | http://codereview.appspot.com/6336055/ git-svn-id: http://skia.googlecode.com/svn/trunk@4374 2bbb7eff-a529-9590-31e7-b0007b416f81
* add explicit purgeAll() so we don't get foiled by the min cache-limitGravatar reed@google.com2012-06-27
| | | | | | | call unref instead of delete on the GrFontScaler Review URL: https://codereview.appspot.com/6353045 git-svn-id: http://skia.googlecode.com/svn/trunk@4366 2bbb7eff-a529-9590-31e7-b0007b416f81
* Enable Scratch texture detach in SW path renderer's onDrawPath (again)Gravatar robertphillips@google.com2012-06-27
| | | | | | | | http://codereview.appspot.com/6331057/ git-svn-id: http://skia.googlecode.com/svn/trunk@4365 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fixed Resource counting bug in AutoScratchTexture detach mechanismGravatar robertphillips@google.com2012-06-27
| | | | | | | | http://codereview.appspot.com/6356043/ git-svn-id: http://skia.googlecode.com/svn/trunk@4361 2bbb7eff-a529-9590-31e7-b0007b416f81
* Make GrInOrderDrawBuffer playback command drivenGravatar bsalomon@google.com2012-06-26
| | | | | | | | | Review URL: http://codereview.appspot.com/6341052/ git-svn-id: http://skia.googlecode.com/svn/trunk@4356 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fixed alignment issue in Linux buildGravatar robertphillips@google.com2012-06-26
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@4355 2bbb7eff-a529-9590-31e7-b0007b416f81
* Removed cached copy of the GrDebugGLInterfaceGravatar robertphillips@google.com2012-06-26
| | | | | | | | http://codereview.appspot.com/6329068/ git-svn-id: http://skia.googlecode.com/svn/trunk@4354 2bbb7eff-a529-9590-31e7-b0007b416f81
* plumb SkInstCnt to all subclasses of GrRefCntGravatar reed@google.com2012-06-26
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@4353 2bbb7eff-a529-9590-31e7-b0007b416f81
* In GrBatchedTextContext, use GrSafeSetNull(), for more safeness!Gravatar tomhudson@google.com2012-06-26
| | | | | | | | http://codereview.appspot.com/6326058/ git-svn-id: http://skia.googlecode.com/svn/trunk@4345 2bbb7eff-a529-9590-31e7-b0007b416f81
* Reverting r4324Gravatar robertphillips@google.com2012-06-26
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@4338 2bbb7eff-a529-9590-31e7-b0007b416f81
* Disable assert blocking DEPS roll. This is a sanity-checking assert notGravatar tomhudson@google.com2012-06-25
| | | | | | | | | | necessary to correct operation (yet). Will pursue a fix & reenable. http://codereview.appspot.com/6330056/ git-svn-id: http://skia.googlecode.com/svn/trunk@4332 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix crash when buidling with no deferred drawing in grcontextGravatar bsalomon@google.com2012-06-25
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@4329 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix the stencil rules to perfom an rdiff with an inverse pathGravatar bsalomon@google.com2012-06-25
| | | | | | | Review URL: http://codereview.appspot.com/6336056/ git-svn-id: http://skia.googlecode.com/svn/trunk@4328 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add header needed to use the SWAP_PER_DRAW debug facility on windows.Gravatar bsalomon@google.com2012-06-25
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@4327 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add GrPaint::*StageEnabled() and GrDrawState::stageEnabled() functions.Gravatar tomhudson@google.com2012-06-25
| | | | | | | | | | | | | | These wrap the question of "is this stage of the shader enabled?" so that we can change the semantics - previously iff there was a texture, now if there is a texture OR a GrCustomStage, soon (post-cl 6306097) iff there is a GrCustomStage, which at that point will hold whatever texture is necessary. http://codereview.appspot.com/6306104/ git-svn-id: http://skia.googlecode.com/svn/trunk@4325 2bbb7eff-a529-9590-31e7-b0007b416f81