Skip to content

Commit d6a2a01

Browse files
committed
optimization
1 parent cf664c2 commit d6a2a01

1 file changed

Lines changed: 8 additions & 1 deletion

File tree

game/graphics/objectsbucket.cpp

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -385,7 +385,8 @@ void ObjectsBucket::drawShadow(Encoder<CommandBuffer>& cmd, uint8_t fId, int lay
385385
void ObjectsBucket::drawCommon(Encoder<CommandBuffer>& cmd, uint8_t fId,
386386
const RenderPipeline& shader, SceneGlobals::VisCamera c) {
387387
UboPush pushBlock = {};
388-
bool sharedSet = false;
388+
bool sharedSet = false;
389+
bool sharedPush = false;
389390

390391
size_t pushSz = (morphAnim!=nullptr) ? sizeof(pushBlock) : sizeof(Tempest::Matrix4x4);
391392
if(shaderType==Pfx)
@@ -403,6 +404,12 @@ void ObjectsBucket::drawCommon(Encoder<CommandBuffer>& cmd, uint8_t fId,
403404
uboSetDynamic(v,fId);
404405
cmd.setUniforms(shader, v.ubo.ubo[fId][c], &pushBlock, pushSz);
405406
}
407+
else if(shaderType==Landscape) {
408+
if(!sharedPush) {
409+
sharedPush = true;
410+
cmd.setUniforms(shader, uboShared.ubo[fId][c], &pushBlock, pushSz);
411+
}
412+
}
406413
else if(!sharedSet) {
407414
sharedSet = true;
408415
cmd.setUniforms(shader, uboShared.ubo[fId][c], &pushBlock, pushSz);

0 commit comments

Comments
 (0)