Showing the changes to libraries/render-utils/src/Model.cpp (1 of 3 files). Show all
Unified · Split
| @@ -36,13 +36,13 @@ · 35 unmodified lines | ||
| 36 | 36 | #include "Model.h" |
| 37 | 37 | |
| 38 | 38 | #include "model_vert.h" |
| 39 | −#include "model_shadow_vert.h" | |
| 40 | −#include "model_normal_map_vert.h" | |
| 41 | −#include "model_lightmap_vert.h" | |
| 42 | −#include "model_lightmap_normal_map_vert.h" | |
| 43 | −#include "skin_model_vert.h" | |
| 44 | −#include "skin_model_shadow_vert.h" | |
| 45 | −#include "skin_model_normal_map_vert.h" | |
| 39 | +#include "model_shadow_vert.h" | |
| 40 | +#include "model_normal_map_vert.h" | |
| 41 | +#include "model_lightmap_vert.h" | |
| 42 | +#include "model_lightmap_normal_map_vert.h" | |
| 43 | +#include "skin_model_vert.h" | |
| 44 | +#include "skin_model_shadow_vert.h" | |
| 45 | +#include "skin_model_normal_map_vert.h" | |
| 46 | 46 | |
| 47 | 47 | #include "model_frag.h" |
| 48 | 48 | #include "model_shadow_frag.h" |
| @@ -218,7 +218,7 @@ void Model::initProgram(gpu::ShaderPointer& program, Model::Locations& locations · 169 unmodified lines | ||
| 218 | 218 | #if (GPU_FEATURE_PROFILE == GPU_CORE) |
| 219 | 219 | locations.materialBufferUnit = program->getBuffers().findLocation("materialBuffer"); |
| 220 | 220 | #else |
| 221 | − locations.materialBuffer = program->getUniforms().findLocation("materialBuffer"); | |
| 221 | + locations.materialBufferUnit = program->getUniforms().findLocation("materialBuffer"); | |
| 222 | 222 | #endif |
| 223 | 223 | |
| 224 | 224 | } |
| @@ -397,11 +397,11 @@ void Model::init() { · 172 unmodified lines | ||
| 397 | 397 | |
| 398 | 398 | // Programs |
| 399 | 399 | _program = gpu::ShaderPointer(gpu::Shader::createProgram(modelVertex, modelPixel)); |
| 400 | − makeResult = gpu::Shader::makeProgram(*_program, slotBindings); | |
| 400 | + makeResult = gpu::Shader::makeProgram(*_program, slotBindings); | |
| 401 | 401 | initProgram(_program, _locations); |
| 402 | 402 | |
| 403 | 403 | _normalMapProgram = gpu::ShaderPointer(gpu::Shader::createProgram(modelNormalMapVertex, modelNormalMapPixel)); |
| 404 | − makeResult = gpu::Shader::makeProgram(*_normalMapProgram, slotBindings); | |
| 404 | + makeResult = gpu::Shader::makeProgram(*_normalMapProgram, slotBindings); | |
| 405 | 405 | initProgram(_normalMapProgram, _normalMapLocations); |
| 406 | 406 | |
| 407 | 407 | _specularMapProgram = gpu::ShaderPointer(gpu::Shader::createProgram(modelVertex, modelSpecularMapPixel)); |
| @@ -413,122 +413,122 @@ void Model::init() { · 5 unmodified lines | ||
| 413 | 413 | initProgram(_normalSpecularMapProgram, _normalSpecularMapLocations); |
| 414 | 414 | |
| 415 | 415 | _translucentProgram = gpu::ShaderPointer(gpu::Shader::createProgram(modelVertex, modelTranslucentPixel)); |
| 416 | − makeResult = gpu::Shader::makeProgram(*_translucentProgram, slotBindings); | |
| 416 | + makeResult = gpu::Shader::makeProgram(*_translucentProgram, slotBindings); | |
| 417 | 417 | initProgram(_translucentProgram, _translucentLocations); |
| 418 | 418 | |
| 419 | 419 | _shadowProgram = gpu::ShaderPointer(gpu::Shader::createProgram(modelShadowVertex, modelShadowPixel)); |
| 420 | 420 | makeResult = gpu::Shader::makeProgram(*_shadowProgram, slotBindings); |
| 421 | − Model::Locations tempShadowLoc; | |
| 421 | + Model::Locations tempShadowLoc; | |
| 422 | 422 | initProgram(_shadowProgram, tempShadowLoc); |
| 423 | 423 | |
| 424 | 424 | _lightmapProgram = gpu::ShaderPointer(gpu::Shader::createProgram(modelLightmapVertex, modelLightmapPixel)); |
| 425 | − makeResult = gpu::Shader::makeProgram(*_lightmapProgram, slotBindings); | |
| 425 | + makeResult = gpu::Shader::makeProgram(*_lightmapProgram, slotBindings); | |
| 426 | 426 | initProgram(_lightmapProgram, _lightmapLocations); |
| 427 | 427 | |
| 428 | 428 | _lightmapNormalMapProgram = gpu::ShaderPointer(gpu::Shader::createProgram(modelLightmapNormalMapVertex, modelLightmapNormalMapPixel)); |
| 429 | − makeResult = gpu::Shader::makeProgram(*_lightmapNormalMapProgram, slotBindings); | |
| 430 | − initProgram(_lightmapNormalMapProgram, _lightmapNormalMapLocations); | |
| 429 | + makeResult = gpu::Shader::makeProgram(*_lightmapNormalMapProgram, slotBindings); | |
| 430 | + initProgram(_lightmapNormalMapProgram, _lightmapNormalMapLocations); | |
| 431 | 431 | |
| 432 | 432 | _lightmapSpecularMapProgram = gpu::ShaderPointer(gpu::Shader::createProgram(modelLightmapVertex, modelLightmapSpecularMapPixel)); |
| 433 | 433 | makeResult = gpu::Shader::makeProgram(*_lightmapSpecularMapProgram, slotBindings); |
| 434 | − initProgram(_lightmapSpecularMapProgram, _lightmapSpecularMapLocations); | |
| 434 | + initProgram(_lightmapSpecularMapProgram, _lightmapSpecularMapLocations); | |
| 435 | 435 | |
| 436 | 436 | _lightmapNormalSpecularMapProgram = gpu::ShaderPointer(gpu::Shader::createProgram(modelLightmapNormalMapVertex, modelLightmapNormalSpecularMapPixel)); |
| 437 | 437 | makeResult = gpu::Shader::makeProgram(*_lightmapNormalSpecularMapProgram, slotBindings); |
| 438 | − initProgram(_lightmapNormalSpecularMapProgram, _lightmapNormalSpecularMapLocations); | |
| 438 | + initProgram(_lightmapNormalSpecularMapProgram, _lightmapNormalSpecularMapLocations); | |
| 439 | 439 | |
| 440 | 440 | _skinProgram = gpu::ShaderPointer(gpu::Shader::createProgram(skinModelVertex, modelPixel)); |
| 441 | − makeResult = gpu::Shader::makeProgram(*_skinProgram, slotBindings); | |
| 442 | − initSkinProgram(_skinProgram, _skinLocations); | |
| 441 | + makeResult = gpu::Shader::makeProgram(*_skinProgram, slotBindings); | |
| 442 | + initSkinProgram(_skinProgram, _skinLocations); | |
| 443 | 443 | |
| 444 | 444 | _skinNormalMapProgram = gpu::ShaderPointer(gpu::Shader::createProgram(skinModelNormalMapVertex, modelNormalMapPixel)); |
| 445 | − makeResult = gpu::Shader::makeProgram(*_skinNormalMapProgram, slotBindings); | |
| 446 | − initSkinProgram(_skinNormalMapProgram, _skinNormalMapLocations); | |
| 445 | + makeResult = gpu::Shader::makeProgram(*_skinNormalMapProgram, slotBindings); | |
| 446 | + initSkinProgram(_skinNormalMapProgram, _skinNormalMapLocations); | |
| 447 | 447 | |
| 448 | 448 | _skinSpecularMapProgram = gpu::ShaderPointer(gpu::Shader::createProgram(skinModelVertex, modelSpecularMapPixel)); |
| 449 | 449 | makeResult = gpu::Shader::makeProgram(*_skinSpecularMapProgram, slotBindings); |
| 450 | − initSkinProgram(_skinSpecularMapProgram, _skinSpecularMapLocations); | |
| 450 | + initSkinProgram(_skinSpecularMapProgram, _skinSpecularMapLocations); | |
| 451 | 451 | |
| 452 | 452 | _skinNormalSpecularMapProgram = gpu::ShaderPointer(gpu::Shader::createProgram(skinModelNormalMapVertex, modelNormalSpecularMapPixel)); |
| 453 | 453 | makeResult = gpu::Shader::makeProgram(*_skinNormalSpecularMapProgram, slotBindings); |
| 454 | − initSkinProgram(_skinNormalSpecularMapProgram, _skinNormalSpecularMapLocations); | |
| 454 | + initSkinProgram(_skinNormalSpecularMapProgram, _skinNormalSpecularMapLocations); | |
| 455 | 455 | |
| 456 | 456 | _skinShadowProgram = gpu::ShaderPointer(gpu::Shader::createProgram(skinModelShadowVertex, modelShadowPixel)); |
| 457 | 457 | makeResult = gpu::Shader::makeProgram(*_skinShadowProgram, slotBindings); |
| 458 | − initSkinProgram(_skinShadowProgram, _skinShadowLocations); | |
| 458 | + initSkinProgram(_skinShadowProgram, _skinShadowLocations); | |
| 459 | 459 | |
| 460 | 460 | _skinTranslucentProgram = gpu::ShaderPointer(gpu::Shader::createProgram(skinModelVertex, modelTranslucentPixel)); |
| 461 | 461 | makeResult = gpu::Shader::makeProgram(*_skinTranslucentProgram, slotBindings); |
| 462 | − initSkinProgram(_skinTranslucentProgram, _skinTranslucentLocations); | |
| 462 | + initSkinProgram(_skinTranslucentProgram, _skinTranslucentLocations); | |
| 463 | 463 | |
| 464 | 464 | /* |
| 465 | 465 | _POprogram.addShaderFromSourceCode(QGLShader::Vertex, model_vert); |
| 466 | 466 | _POprogram.addShaderFromSourceCode(QGLShader::Fragment, model_frag); |
| 467 | 467 | initProgram(_POprogram, _POlocations); |
| 468 | 468 | |
| 469 | − _POnormalMapProgram.addShaderFromSourceCode(QGLShader::Vertex, model_normal_map_vert); | |
| 470 | − _POnormalMapProgram.addShaderFromSourceCode(QGLShader::Fragment, model_normal_map_frag); | |
| 471 | − initProgram(_POnormalMapProgram, _POnormalMapLocations); | |
| 472 | − | |
| 473 | − _POspecularMapProgram.addShaderFromSourceCode(QGLShader::Vertex, model_vert); | |
| 474 | − _POspecularMapProgram.addShaderFromSourceCode(QGLShader::Fragment, model_specular_map_frag); | |
| 475 | − initProgram(_POspecularMapProgram, _POspecularMapLocations); | |
| 476 | − | |
| 477 | − _POnormalSpecularMapProgram.addShaderFromSourceCode(QGLShader::Vertex, model_normal_map_vert); | |
| 478 | − _POnormalSpecularMapProgram.addShaderFromSourceCode(QGLShader::Fragment, model_normal_specular_map_frag); | |
| 479 | − initProgram(_POnormalSpecularMapProgram, _POnormalSpecularMapLocations); | |
| 480 | − | |
| 481 | − _POtranslucentProgram.addShaderFromSourceCode(QGLShader::Vertex, model_vert); | |
| 482 | − _POtranslucentProgram.addShaderFromSourceCode(QGLShader::Fragment, model_translucent_frag); | |
| 483 | − initProgram(_POtranslucentProgram, _POtranslucentLocations); | |
| 484 | − | |
| 485 | − // Lightmap | |
| 486 | − _POlightmapProgram.addShaderFromSourceCode(QGLShader::Vertex, model_lightmap_vert); | |
| 487 | − _POlightmapProgram.addShaderFromSourceCode(QGLShader::Fragment, model_lightmap_frag); | |
| 488 | − initProgram(_POlightmapProgram, _POlightmapLocations); | |
| 489 | − | |
| 490 | − _POlightmapNormalMapProgram.addShaderFromSourceCode(QGLShader::Vertex, model_lightmap_normal_map_vert); | |
| 491 | − _POlightmapNormalMapProgram.addShaderFromSourceCode(QGLShader::Fragment, model_lightmap_normal_map_frag); | |
| 492 | − initProgram(_POlightmapNormalMapProgramddd, _POlightmapNormalMapLocations); | |
| 493 | − | |
| 494 | − _POlightmapSpecularMapProgram.addShaderFromSourceCode(QGLShader::Vertex, model_lightmap_vert); | |
| 495 | − _POlightmapSpecularMapProgram.addShaderFromSourceCode(QGLShader::Fragment, model_lightmap_specular_map_frag); | |
| 496 | − initProgram(_POlightmapSpecularMapProgram, _POlightmapSpecularMapLocations); | |
| 497 | − | |
| 498 | − _POlightmapNormalSpecularMapProgram.addShaderFromSourceCode(QGLShader::Vertex, model_lightmap_normal_map_vert); | |
| 499 | − _POlightmapNormalSpecularMapProgram.addShaderFromSourceCode(QGLShader::Fragment, model_lightmap_normal_specular_map_frag); | |
| 500 | − initProgram(_POlightmapNormalSpecularMapProgram, _POlightmapNormalSpecularMapLocations); | |
| 501 | − // end lightmap | |
| 502 | − | |
| 503 | − | |
| 504 | − _POshadowProgram.addShaderFromSourceCode(QGLShader::Vertex, model_shadow_vert); | |
| 505 | − _POshadowProgram.addShaderFromSourceCode(QGLShader::Fragment, model_shadow_frag); | |
| 506 | − // Shadow program uses the same locations as standard rendering path but we still need to set the bindings | |
| 507 | − Model::Locations tempLoc; | |
| 508 | − initProgram(_POshadowProgram, tempLoc); | |
| 509 | − | |
| 510 | − _POskinProgram.addShaderFromSourceCode(QGLShader::Vertex, skin_model_vert); | |
| 511 | − _POskinProgram.addShaderFromSourceCode(QGLShader::Fragment, model_frag); | |
| 512 | − initSkinProgram(_POskinProgram, _POskinLocations); | |
| 513 | − | |
| 514 | − _POskinNormalMapProgram.addShaderFromSourceCode(QGLShader::Vertex, skin_model_normal_map_vert); | |
| 515 | − _POskinNormalMapProgram.addShaderFromSourceCode(QGLShader::Fragment, model_normal_map_frag); | |
| 516 | − initSkinProgram(_POskinNormalMapProgram, _PaOskinNormalMapLocations); | |
| 517 | − | |
| 518 | − _POskinSpecularMapProgram.addShaderFromSourceCode(QGLShader::Vertex, model_vert); | |
| 519 | − _POskinSpecularMapProgram.addShaderFromSourceCode(QGLShader::Fragment, model_specular_map_frag); | |
| 520 | − initSkinProgram(_POskinSpecularMapProgram, _POskinSpecularMapLocations); | |
| 521 | − | |
| 522 | − _POskinNormalSpecularMapProgram.addShaderFromSourceCode(QGLShader::Vertex, skin_model_normal_map_vert); | |
| 523 | − _POskinNormalSpecularMapProgram.addShaderFromSourceCode(QGLShader::Fragment, model_normal_specular_map_frag); | |
| 524 | − initSkinProgram(_POskinNormalSpecularMapProgram, _POskinNormalSpecularMapLocations); | |
| 525 | − | |
| 526 | − _POskinShadowProgram.addShaderFromSourceCode(QGLShader::Vertex, skin_model_shadow_vert); | |
| 527 | − _POskinShadowProgram.addShaderFromSourceCode(QGLShader::Fragment, model_shadow_frag); | |
| 528 | − initSkinProgram(_POskinShadowProgram, _POskinShadowLocations); | |
| 529 | − | |
| 530 | − | |
| 531 | − _POskinTranslucentProgram.addShaderFromSourceCode(QGLShader::Vertex, skin_model_vert); | |
| 469 | + _POnormalMapProgram.addShaderFromSourceCode(QGLShader::Vertex, model_normal_map_vert); | |
| 470 | + _POnormalMapProgram.addShaderFromSourceCode(QGLShader::Fragment, model_normal_map_frag); | |
| 471 | + initProgram(_POnormalMapProgram, _POnormalMapLocations); | |
| 472 | + | |
| 473 | + _POspecularMapProgram.addShaderFromSourceCode(QGLShader::Vertex, model_vert); | |
| 474 | + _POspecularMapProgram.addShaderFromSourceCode(QGLShader::Fragment, model_specular_map_frag); | |
| 475 | + initProgram(_POspecularMapProgram, _POspecularMapLocations); | |
| 476 | + | |
| 477 | + _POnormalSpecularMapProgram.addShaderFromSourceCode(QGLShader::Vertex, model_normal_map_vert); | |
| 478 | + _POnormalSpecularMapProgram.addShaderFromSourceCode(QGLShader::Fragment, model_normal_specular_map_frag); | |
| 479 | + initProgram(_POnormalSpecularMapProgram, _POnormalSpecularMapLocations); | |
| 480 | + | |
| 481 | + _POtranslucentProgram.addShaderFromSourceCode(QGLShader::Vertex, model_vert); | |
| 482 | + _POtranslucentProgram.addShaderFromSourceCode(QGLShader::Fragment, model_translucent_frag); | |
| 483 | + initProgram(_POtranslucentProgram, _POtranslucentLocations); | |
| 484 | + | |
| 485 | + // Lightmap | |
| 486 | + _POlightmapProgram.addShaderFromSourceCode(QGLShader::Vertex, model_lightmap_vert); | |
| 487 | + _POlightmapProgram.addShaderFromSourceCode(QGLShader::Fragment, model_lightmap_frag); | |
| 488 | + initProgram(_POlightmapProgram, _POlightmapLocations); | |
| 489 | + | |
| 490 | + _POlightmapNormalMapProgram.addShaderFromSourceCode(QGLShader::Vertex, model_lightmap_normal_map_vert); | |
| 491 | + _POlightmapNormalMapProgram.addShaderFromSourceCode(QGLShader::Fragment, model_lightmap_normal_map_frag); | |
| 492 | + initProgram(_POlightmapNormalMapProgramddd, _POlightmapNormalMapLocations); | |
| 493 | + | |
| 494 | + _POlightmapSpecularMapProgram.addShaderFromSourceCode(QGLShader::Vertex, model_lightmap_vert); | |
| 495 | + _POlightmapSpecularMapProgram.addShaderFromSourceCode(QGLShader::Fragment, model_lightmap_specular_map_frag); | |
| 496 | + initProgram(_POlightmapSpecularMapProgram, _POlightmapSpecularMapLocations); | |
| 497 | + | |
| 498 | + _POlightmapNormalSpecularMapProgram.addShaderFromSourceCode(QGLShader::Vertex, model_lightmap_normal_map_vert); | |
| 499 | + _POlightmapNormalSpecularMapProgram.addShaderFromSourceCode(QGLShader::Fragment, model_lightmap_normal_specular_map_frag); | |
| 500 | + initProgram(_POlightmapNormalSpecularMapProgram, _POlightmapNormalSpecularMapLocations); | |
| 501 | + // end lightmap | |
| 502 | + | |
| 503 | + | |
| 504 | + _POshadowProgram.addShaderFromSourceCode(QGLShader::Vertex, model_shadow_vert); | |
| 505 | + _POshadowProgram.addShaderFromSourceCode(QGLShader::Fragment, model_shadow_frag); | |
| 506 | + // Shadow program uses the same locations as standard rendering path but we still need to set the bindings | |
| 507 | + Model::Locations tempLoc; | |
| 508 | + initProgram(_POshadowProgram, tempLoc); | |
| 509 | + | |
| 510 | + _POskinProgram.addShaderFromSourceCode(QGLShader::Vertex, skin_model_vert); | |
| 511 | + _POskinProgram.addShaderFromSourceCode(QGLShader::Fragment, model_frag); | |
| 512 | + initSkinProgram(_POskinProgram, _POskinLocations); | |
| 513 | + | |
| 514 | + _POskinNormalMapProgram.addShaderFromSourceCode(QGLShader::Vertex, skin_model_normal_map_vert); | |
| 515 | + _POskinNormalMapProgram.addShaderFromSourceCode(QGLShader::Fragment, model_normal_map_frag); | |
| 516 | + initSkinProgram(_POskinNormalMapProgram, _PaOskinNormalMapLocations); | |
| 517 | + | |
| 518 | + _POskinSpecularMapProgram.addShaderFromSourceCode(QGLShader::Vertex, model_vert); | |
| 519 | + _POskinSpecularMapProgram.addShaderFromSourceCode(QGLShader::Fragment, model_specular_map_frag); | |
| 520 | + initSkinProgram(_POskinSpecularMapProgram, _POskinSpecularMapLocations); | |
| 521 | + | |
| 522 | + _POskinNormalSpecularMapProgram.addShaderFromSourceCode(QGLShader::Vertex, skin_model_normal_map_vert); | |
| 523 | + _POskinNormalSpecularMapProgram.addShaderFromSourceCode(QGLShader::Fragment, model_normal_specular_map_frag); | |
| 524 | + initSkinProgram(_POskinNormalSpecularMapProgram, _POskinNormalSpecularMapLocations); | |
| 525 | + | |
| 526 | + _POskinShadowProgram.addShaderFromSourceCode(QGLShader::Vertex, skin_model_shadow_vert); | |
| 527 | + _POskinShadowProgram.addShaderFromSourceCode(QGLShader::Fragment, model_shadow_frag); | |
| 528 | + initSkinProgram(_POskinShadowProgram, _POskinShadowLocations); | |
| 529 | + | |
| 530 | + | |
| 531 | + _POskinTranslucentProgram.addShaderFromSourceCode(QGLShader::Vertex, skin_model_vert); | |
| 532 | 532 | _POskinTranslucentProgram.addShaderFromSourceCode(QGLShader::Fragment, model_translucent_frag); |
| 533 | 533 | initSkinProgram(_POskinTranslucentProgram, _POskinTranslucentLocations); |
| 534 | 534 | */ |