Showing the changes to libraries/render-utils/src/Model.cpp (1 of 1 file). Show all
Unified · Split
| @@ -791,6 +791,7 @@ namespace render { · 790 unmodified lines | |||
| 791 | template <> void payloadRender(const TransparentMeshPart::Pointer& payload, RenderArgs* args) { | 791 | template <> void payloadRender(const TransparentMeshPart::Pointer& payload, RenderArgs* args) { |
| 792 | if (args) { | 792 | if (args) { |
| 793 | args->_elementsTouched++; | 793 | args->_elementsTouched++; |
| 794 | //qDebug() << "would be TransparentMeshPart: " << payload->meshIndex << "," << payload->partIndex; | ||
| 794 | return payload->model->renderPart(args, payload->meshIndex, payload->partIndex, true); | 795 | return payload->model->renderPart(args, payload->meshIndex, payload->partIndex, true); |
| 795 | } | 796 | } |
| 796 | } | 797 | } |
| @@ -2189,6 +2190,13 @@ AABox Model::getPartBounds(int meshIndex, int partIndex) { · 1392 unmodified lines | |||
| 2189 | 2190 | ||
| 2190 | void Model::renderPart(RenderArgs* args, int meshIndex, int partIndex, bool translucent) { | 2191 | void Model::renderPart(RenderArgs* args, int meshIndex, int partIndex, bool translucent) { |
| 2191 | renderSetup(args); | 2192 | renderSetup(args); |
| 2193 | |||
| 2194 | /* | ||
| 2195 | if (translucent) { | ||
| 2196 | renderCore(args, 1.0f); | ||
| 2197 | return; | ||
| 2198 | } | ||
| 2199 | */ | ||
| 2192 | auto textureCache = DependencyManager::get<TextureCache>(); | 2200 | auto textureCache = DependencyManager::get<TextureCache>(); |
| 2193 | 2201 | ||
| 2194 | gpu::Batch& batch = *(args->_batch); | 2202 | gpu::Batch& batch = *(args->_batch); |
| @@ -2207,8 +2215,9 @@ void Model::renderPart(RenderArgs* args, int meshIndex, int partIndex, bool tran · 12 unmodified lines | |||
| 2207 | batch.setViewTransform(_transforms[0]); | 2215 | batch.setViewTransform(_transforms[0]); |
| 2208 | 2216 | ||
| 2209 | 2217 | ||
| 2210 | const float DEFAULT_ALPHA_THRESHOLD = 0.5f; // | 2218 | const float OPAQUE_ALPHA_THRESHOLD = 0.5f; |
| 2211 | auto alphaThreshold = DEFAULT_ALPHA_THRESHOLD; // FIX ME | 2219 | const float TRANSPARENT_ALPHA_THRESHOLD = 0.0f; |
| 2220 | auto alphaThreshold = translucent ? TRANSPARENT_ALPHA_THRESHOLD : OPAQUE_ALPHA_THRESHOLD; // FIX ME | ||
| 2212 | const FBXGeometry& geometry = _geometry->getFBXGeometry(); | 2221 | const FBXGeometry& geometry = _geometry->getFBXGeometry(); |
| 2213 | const QVector<NetworkMesh>& networkMeshes = _geometry->getMeshes(); | 2222 | const QVector<NetworkMesh>& networkMeshes = _geometry->getMeshes(); |
| 2214 | 2223 | ||
| @@ -2216,7 +2225,7 @@ void Model::renderPart(RenderArgs* args, int meshIndex, int partIndex, bool tran · 1 unmodified line | |||
| 2216 | const FBXMesh& mesh = geometry.meshes.at(meshIndex); | 2225 | const FBXMesh& mesh = geometry.meshes.at(meshIndex); |
| 2217 | const MeshState& state = _meshStates.at(meshIndex); | 2226 | const MeshState& state = _meshStates.at(meshIndex); |
| 2218 | 2227 | ||
| 2219 | bool translucentMesh = networkMesh.getTranslucentPartCount(mesh) == networkMesh.parts.size(); | 2228 | bool translucentMesh = translucent; // networkMesh.getTranslucentPartCount(mesh) == networkMesh.parts.size(); |
| 2220 | bool hasTangents = !mesh.tangents.isEmpty(); | 2229 | bool hasTangents = !mesh.tangents.isEmpty(); |
| 2221 | bool hasSpecular = mesh.hasSpecularTexture(); | 2230 | bool hasSpecular = mesh.hasSpecularTexture(); |
| 2222 | bool hasLightmap = mesh.hasEmissiveTexture(); | 2231 | bool hasLightmap = mesh.hasEmissiveTexture(); |