| 1226 | } |
| 1227 | |
| 1228 | void DestroyShaderMeta(ShaderMeta& meta) |
| 1229 | { |
| 1230 | FreeShaderResourceBindings(meta.m_UniformBuffers); |
| 1231 | FreeShaderResourceBindings(meta.m_StorageBuffers); |
| 1232 | FreeShaderResourceBindings(meta.m_Textures); |
| 1233 | FreeShaderResourceBindings(meta.m_Inputs); |
| 1234 | |
| 1235 | for (int i = 0; i < meta.m_TypeInfos.Size(); ++i) |
| 1236 | { |
| 1237 | free(meta.m_TypeInfos[i].m_Name); |
| 1238 | for (int j = 0; j < meta.m_TypeInfos[i].m_MemberCount; ++j) |
| 1239 | { |
| 1240 | free((char*) meta.m_TypeInfos[i].m_Members[j].m_Name); |
| 1241 | } |
| 1242 | |
| 1243 | delete[] meta.m_TypeInfos[i].m_Members; |
| 1244 | } |
| 1245 | meta.m_TypeInfos.SetSize(0); |
| 1246 | meta.m_TypeInfos.SetCapacity(0); |
| 1247 | } |
| 1248 | |
| 1249 | uint32_t CountShaderResourceLeafMembers(const dmArray<ShaderResourceTypeInfo>& type_infos, ShaderResourceType type, uint32_t count) |
| 1250 | { |
no test coverage detected