diff options
author | Konstantin Käfer <mail@kkaefer.com> | 2019-05-13 17:13:31 -0700 |
---|---|---|
committer | Konstantin Käfer <mail@kkaefer.com> | 2019-05-15 11:57:43 -0700 |
commit | 3a6ff7710fcf201f82ddc2090488ef585bd8ab17 (patch) | |
tree | de380cbb7f5553282b081dce9202cbe9e502ebe5 /src/mbgl/renderer/sources/render_image_source.cpp | |
parent | bf0998697e0893d8a56421a139c7fc4855e89fa5 (diff) | |
download | qtlocation-mapboxgl-3a6ff7710fcf201f82ddc2090488ef585bd8ab17.tar.gz |
[core] add gfx::UploadPass, split startRender into prepare and upload
Diffstat (limited to 'src/mbgl/renderer/sources/render_image_source.cpp')
-rw-r--r-- | src/mbgl/renderer/sources/render_image_source.cpp | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/src/mbgl/renderer/sources/render_image_source.cpp b/src/mbgl/renderer/sources/render_image_source.cpp index b6a75acacc..e63c9ad15c 100644 --- a/src/mbgl/renderer/sources/render_image_source.cpp +++ b/src/mbgl/renderer/sources/render_image_source.cpp @@ -31,7 +31,13 @@ bool RenderImageSource::isLoaded() const { return !!bucket; } -void RenderImageSource::startRender(PaintParameters& parameters) { +void RenderImageSource::upload(gfx::UploadPass& uploadPass) { + if (bucket->needsUpload()) { + bucket->upload(uploadPass); + } +} + +void RenderImageSource::prepare(PaintParameters& parameters) { if (!isLoaded()) { return; } @@ -45,10 +51,6 @@ void RenderImageSource::startRender(PaintParameters& parameters) { matrix::multiply(matrix, parameters.alignedProjMatrix, matrix); matrices.push_back(matrix); } - - if (bucket->needsUpload()) { - bucket->upload(parameters.context); - } } void RenderImageSource::finishRender(PaintParameters& parameters) { @@ -70,7 +72,7 @@ void RenderImageSource::finishRender(PaintParameters& parameters) { gfx::StencilMode::disabled(), gfx::ColorMode::unblended(), gfx::CullFaceMode::disabled(), - parameters.staticData.tileBorderIndexBuffer, + *parameters.staticData.tileBorderIndexBuffer, parameters.staticData.tileBorderSegments, programInstance.computeAllUniformValues( DebugProgram::LayoutUniformValues { @@ -82,7 +84,7 @@ void RenderImageSource::finishRender(PaintParameters& parameters) { parameters.state.getZoom() ), programInstance.computeAllAttributeBindings( - parameters.staticData.tileVertexBuffer, + *parameters.staticData.tileVertexBuffer, paintAttributeData, properties ), |