| 44 | #if USE_EDITOR |
| 45 | |
| 46 | void Material::GetReferences(Array<Guid>& assets, Array<String>& files) const |
| 47 | { |
| 48 | ShaderAssetTypeBase<MaterialBase>::GetReferences(assets, files); |
| 49 | |
| 50 | // Collect references from material graph (needs to load it) |
| 51 | if (!WaitForLoaded() && HasChunk(SHADER_FILE_CHUNK_VISJECT_SURFACE)) |
| 52 | { |
| 53 | ScopeLock lock(Locker); |
| 54 | if (!LoadChunks(GET_CHUNK_FLAG(SHADER_FILE_CHUNK_VISJECT_SURFACE))) |
| 55 | { |
| 56 | const auto surfaceChunk = GetChunk(SHADER_FILE_CHUNK_VISJECT_SURFACE); |
| 57 | if (surfaceChunk) |
| 58 | { |
| 59 | MemoryReadStream stream(surfaceChunk->Get(), surfaceChunk->Size()); |
| 60 | MaterialGraph graph; |
| 61 | if (!graph.Load(&stream, false)) |
| 62 | { |
| 63 | graph.GetReferences(assets); |
| 64 | } |
| 65 | } |
| 66 | } |
| 67 | } |
| 68 | |
| 69 | } |
| 70 | |
| 71 | #endif |
| 72 |
no test coverage detected