summaryrefslogtreecommitdiff
path: root/scene/resources/canvas_item_material.h
diff options
context:
space:
mode:
Diffstat (limited to 'scene/resources/canvas_item_material.h')
-rw-r--r--scene/resources/canvas_item_material.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/scene/resources/canvas_item_material.h b/scene/resources/canvas_item_material.h
index b097d174f0..7c44c125a8 100644
--- a/scene/resources/canvas_item_material.h
+++ b/scene/resources/canvas_item_material.h
@@ -63,8 +63,11 @@ private:
uint32_t key = 0;
- bool operator<(const MaterialKey &p_key) const {
- return key < p_key.key;
+ static uint32_t hash(const MaterialKey &p_key) {
+ return hash_djb2_one_32(p_key.key);
+ }
+ bool operator==(const MaterialKey &p_key) const {
+ return key == p_key.key;
}
};
@@ -81,7 +84,7 @@ private:
int users = 0;
};
- static Map<MaterialKey, ShaderData> shader_map;
+ static HashMap<MaterialKey, ShaderData, MaterialKey> shader_map;
MaterialKey current_key;