- Timestamp:
- Mar 8, 2010, 12:52:58 PM (15 years ago)
- Location:
- trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk
- Property svn:mergeinfo changed
/branches/vendor/nokia/qt/4.6.2 (added) merged: 650 /branches/vendor/nokia/qt/current merged: 649 /branches/vendor/nokia/qt/4.6.1 removed
- Property svn:mergeinfo changed
-
trunk/src/opengl/gl2paintengineex/qglengineshadermanager.cpp
r561 r651 1 1 /**************************************************************************** 2 2 ** 3 ** Copyright (C) 20 09Nokia Corporation and/or its subsidiary(-ies).3 ** Copyright (C) 20 Nokia Corporation and/or its subsidiary(-ies). 4 4 ** All rights reserved. 5 5 ** Contact: Nokia Corporation ([email protected]) … … 185 185 simpleShaderProg->addShader(fragShader); 186 186 simpleShaderProg->bindAttributeLocation("vertexCoordsArray", QT_VERTEX_COORDS_ATTR); 187 188 189 187 190 simpleShaderProg->link(); 188 191 if (!simpleShaderProg->isLinked()) { … … 217 220 } 218 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 219 239 } 220 240 … … 308 328 if (newProg->useOpacityAttribute) 309 329 newProg->program->bindAttributeLocation("opacityArray", QT_OPACITY_ATTR); 330 331 332 333 334 310 335 311 336 newProg->program->link(); … … 394 419 } 395 420 396 GLuint QGLEngineShaderManager::getUniformLocation( constUniform id)421 GLuint QGLEngineShaderManager::getUniformLocation(Uniform id) 397 422 { 398 423 if (!currentShaderProg) … … 408 433 "globalOpacity", 409 434 "depth", 410 "pmvMatrix",411 435 "maskTexture", 412 436 "fragmentColor", … … 429 453 430 454 431 void QGLEngineShaderManager::optimiseForBrushTransform( constQTransform::TransformationType transformType)455 void QGLEngineShaderManager::optimiseForBrushTransform(QTransform::TransformationType transformType) 432 456 { 433 457 Q_UNUSED(transformType); // Currently ignored … … 506 530 return currentShaderProg->program; 507 531 else 508 return simpleProgram(); 532 return sharedShaders->simpleProgram(); 533 } 534 535 void QGLEngineShaderManager::useSimpleProgram() 536 { 537 sharedShaders->simpleProgram()->bind(); 538 QGLContextPrivate* ctx_d = ctx->d_func(); 539 ctx_d->setVertexAttribArrayEnabled(QT_VERTEX_COORDS_ATTR, true); 540 ctx_d->setVertexAttribArrayEnabled(QT_TEXTURE_COORDS_ATTR, false); 541 ctx_d->setVertexAttribArrayEnabled(QT_OPACITY_ATTR, false); 542 shaderProgNeedsChanging = true; 543 } 544 545 void QGLEngineShaderManager::useBlitProgram() 546 { 547 sharedShaders->blitProgram()->bind(); 548 QGLContextPrivate* ctx_d = ctx->d_func(); 549 ctx_d->setVertexAttribArrayEnabled(QT_VERTEX_COORDS_ATTR, true); 550 ctx_d->setVertexAttribArrayEnabled(QT_TEXTURE_COORDS_ATTR, true); 551 ctx_d->setVertexAttribArrayEnabled(QT_OPACITY_ATTR, false); 552 shaderProgNeedsChanging = true; 509 553 } 510 554 … … 707 751 requiredProgram.useTextureCoords = texCoords; 708 752 requiredProgram.useOpacityAttribute = (opacityMode == AttributeOpacity); 753 709 754 710 755 // At this point, requiredProgram is fully populated so try to find the program in the cache … … 717 762 } 718 763 764 765 766 767 768 769 770 719 771 shaderProgNeedsChanging = false; 720 772 return true;
Note:
See TracChangeset
for help on using the changeset viewer.