Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrecht Van Lommel <brechtvanlommel@gmail.com>2020-03-08 12:42:11 +0300
committerBrecht Van Lommel <brecht@blender.org>2020-03-11 22:35:38 +0300
commitd8aa613d94caf6a3d82a8f4e9e90b9b8f5c61a7d (patch)
tree7f85577ae4f37c9bdeba31fd65411b718b19b035 /intern/cycles/render/nodes.h
parentec3eeee46b4885b9167b0dc28d273993d77b8ce6 (diff)
Cleanup: add ImageHandle to centralize image ownership logic
Diffstat (limited to 'intern/cycles/render/nodes.h')
-rw-r--r--intern/cycles/render/nodes.h26
1 files changed, 5 insertions, 21 deletions
diff --git a/intern/cycles/render/nodes.h b/intern/cycles/render/nodes.h
index 1d76cb5e828..99e676fc8cb 100644
--- a/intern/cycles/render/nodes.h
+++ b/intern/cycles/render/nodes.h
@@ -78,12 +78,9 @@ class ImageSlotTextureNode : public TextureNode {
explicit ImageSlotTextureNode(const NodeType *node_type) : TextureNode(node_type)
{
special_type = SHADER_SPECIAL_TYPE_IMAGE_SLOT;
- image_manager = NULL;
}
- ~ImageSlotTextureNode();
- void add_image_user() const;
- ImageManager *image_manager;
- vector<int> slots;
+
+ ImageHandle handle;
};
class ImageTextureNode : public ImageSlotTextureNode {
@@ -103,7 +100,7 @@ class ImageTextureNode : public ImageSlotTextureNode {
animated == image_node.animated;
}
- ImageKey image_key(const int tile = 0) const;
+ ImageKey image_key() const;
/* Parameters. */
ustring filename;
@@ -118,11 +115,6 @@ class ImageTextureNode : public ImageSlotTextureNode {
float3 vector;
ccl::vector<int> tiles;
- /* Runtime. */
- bool is_float;
- bool compress_as_srgb;
- ustring known_colorspace;
-
protected:
void cull_tiles(Scene *scene, ShaderGraph *graph);
};
@@ -159,11 +151,6 @@ class EnvironmentTextureNode : public ImageSlotTextureNode {
InterpolationType interpolation;
bool animated;
float3 vector;
-
- /* Runtime. */
- bool is_float;
- bool compress_as_srgb;
- ustring known_colorspace;
};
class SkyTextureNode : public TextureNode {
@@ -370,9 +357,7 @@ class PointDensityTextureNode : public ShaderNode {
return true;
}
- void add_image();
-
- ImageKey image_key() const;
+ void add_image(ImageManager *image_manager);
/* Parameters. */
ustring filename;
@@ -383,8 +368,7 @@ class PointDensityTextureNode : public ShaderNode {
void *builtin_data;
/* Runtime. */
- ImageManager *image_manager;
- int slot;
+ ImageHandle handle;
virtual bool equals(const ShaderNode &other)
{