MCPcopy Create free account
hub / github.com/defold/defold / DestroyShaderMeta

Function DestroyShaderMeta

engine/graphics/src/graphics.cpp:1228–1247  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

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 {

Callers 1

DestroyProgramFunction · 0.85

Calls 5

freeFunction · 0.85
SizeMethod · 0.45
SetSizeMethod · 0.45
SetCapacityMethod · 0.45

Tested by

no test coverage detected