Showing the changes to interface/src/renderer/GeometryCache.cpp (1 of 7 files). Show all
Unified · Split
| @@ -294,7 +294,8 @@ QSharedPointer<NetworkGeometry> GeometryCache::getGeometry(const QUrl& url, cons · 293 unmodified lines | |||
| 294 | QSharedPointer<Resource> GeometryCache::createResource(const QUrl& url, | 294 | QSharedPointer<Resource> GeometryCache::createResource(const QUrl& url, |
| 295 | const QSharedPointer<Resource>& fallback, bool delayLoad, const void* extra) { | 295 | const QSharedPointer<Resource>& fallback, bool delayLoad, const void* extra) { |
| 296 | 296 | ||
| 297 | QSharedPointer<NetworkGeometry> geometry(new NetworkGeometry(url, fallback.staticCast<NetworkGeometry>(), delayLoad)); | 297 | QSharedPointer<NetworkGeometry> geometry(new NetworkGeometry(url, fallback.staticCast<NetworkGeometry>(), delayLoad), |
| 298 | &Resource::allReferencesCleared); | ||
| 298 | geometry->setLODParent(geometry); | 299 | geometry->setLODParent(geometry); |
| 299 | return geometry.staticCast<Resource>(); | 300 | return geometry.staticCast<Resource>(); |
| 300 | } | 301 | } |
| @@ -536,6 +537,15 @@ void NetworkGeometry::downloadFinished(QNetworkReply* reply) { · 235 unmodified lines | |||
| 536 | QThreadPool::globalInstance()->start(new GeometryReader(_self, url, reply, _mapping)); | 537 | QThreadPool::globalInstance()->start(new GeometryReader(_self, url, reply, _mapping)); |
| 537 | } | 538 | } |
| 538 | 539 | ||
| 540 | void NetworkGeometry::reinsert() { | ||
| 541 | Resource::reinsert(); | ||
| 542 | |||
| 543 | _lodParent = qWeakPointerCast<NetworkGeometry, Resource>(_self); | ||
| 544 | foreach (const QSharedPointer<NetworkGeometry>& lod, _lods) { | ||
| 545 | lod->setLODParent(_lodParent); | ||
| 546 | } | ||
| 547 | } | ||
| 548 | |||
| 539 | void NetworkGeometry::setGeometry(const FBXGeometry& geometry) { | 549 | void NetworkGeometry::setGeometry(const FBXGeometry& geometry) { |
| 540 | _geometry = geometry; | 550 | _geometry = geometry; |
| 541 | 551 | ||