Merge pull request #15905 from SamGondelman/text

BUGZ-967: Fix text visibility toggle
This commit is contained in:
Shannon Romano 2019-07-10 17:47:10 -07:00 committed by GitHub
commit 54b07e9c9b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 10 additions and 20 deletions

View file

@ -173,16 +173,19 @@ render::hifi::Layer EntityRenderer::getHifiRenderLayer() const {
}
ItemKey EntityRenderer::getKey() {
ItemKey::Builder builder = ItemKey::Builder().withTypeShape().withTypeMeta().withTagBits(getTagMask()).withLayer(getHifiRenderLayer());
if (isTransparent()) {
return ItemKey::Builder::transparentShape().withTypeMeta().withTagBits(getTagMask()).withLayer(getHifiRenderLayer());
builder.withTransparent();
} else if (_canCastShadow) {
builder.withShadowCaster();
}
// This allows shapes to cast shadows
if (_canCastShadow) {
return ItemKey::Builder::opaqueShape().withTypeMeta().withTagBits(getTagMask()).withShadowCaster().withLayer(getHifiRenderLayer());
} else {
return ItemKey::Builder::opaqueShape().withTypeMeta().withTagBits(getTagMask()).withLayer(getHifiRenderLayer());
if (!_visible) {
builder.withInvisible();
}
return builder;
}
uint32_t EntityRenderer::metaFetchMetaSubItems(ItemIDs& subItems) const {

View file

@ -282,20 +282,7 @@ ItemKey entities::TextPayload::getKey() const {
auto renderable = entityTreeRenderer->renderableForEntityId(_entityID);
if (renderable) {
auto textRenderable = std::static_pointer_cast<TextEntityRenderer>(renderable);
ItemKey::Builder key;
// Similar to EntityRenderer::getKey()
if (textRenderable->isTextTransparent()) {
key = ItemKey::Builder::transparentShape().withSubMetaCulled().withTagBits(textRenderable->getTagMask()).withLayer(textRenderable->getHifiRenderLayer());
} else if (textRenderable->_canCastShadow) {
key = ItemKey::Builder::opaqueShape().withSubMetaCulled().withTagBits(textRenderable->getTagMask()).withShadowCaster().withLayer(textRenderable->getHifiRenderLayer());
} else {
key = ItemKey::Builder::opaqueShape().withSubMetaCulled().withTagBits(textRenderable->getTagMask()).withLayer(textRenderable->getHifiRenderLayer());
}
if (!textRenderable->_visible) {
key.withInvisible();
}
return key;
return ItemKey::Builder(textRenderable->getKey()).withoutMetaCullGroup().withSubMetaCulled();
}
}
return ItemKey::Builder::opaqueShape();