🔧 Set uniforms only once
This commit is contained in:
+2
-1
@@ -224,6 +224,8 @@ if (utils.isInShellProcess()) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
`);
|
`);
|
||||||
|
|
||||||
|
this.set_uniform_value('uShardTexture', 1);
|
||||||
};
|
};
|
||||||
|
|
||||||
// This is overridden to bind the shard texture for drawing. Sadly, this seems to be
|
// This is overridden to bind the shard texture for drawing. Sadly, this seems to be
|
||||||
@@ -240,7 +242,6 @@ if (utils.isInShellProcess()) {
|
|||||||
// Bind the shard texture.
|
// Bind the shard texture.
|
||||||
pipeline.set_layer_texture(1, this._shardTexture.get_texture());
|
pipeline.set_layer_texture(1, this._shardTexture.get_texture());
|
||||||
pipeline.set_layer_wrap_mode(1, Cogl.PipelineWrapMode.REPEAT);
|
pipeline.set_layer_wrap_mode(1, Cogl.PipelineWrapMode.REPEAT);
|
||||||
this.set_uniform_value('uShardTexture', 1);
|
|
||||||
|
|
||||||
super.vfunc_paint_target(node, paint_context);
|
super.vfunc_paint_target(node, paint_context);
|
||||||
}
|
}
|
||||||
|
|||||||
+3
-3
@@ -236,6 +236,8 @@ if (utils.isInShellProcess()) {
|
|||||||
// cogl_color_out = vec4(vec3(rain.y), 1);
|
// cogl_color_out = vec4(vec3(rain.y), 1);
|
||||||
}
|
}
|
||||||
`);
|
`);
|
||||||
|
|
||||||
|
this.set_uniform_value('uFontTexture', 1);
|
||||||
};
|
};
|
||||||
|
|
||||||
// This is overridden to bind the font texture for drawing. Sadly, this seems to be
|
// This is overridden to bind the font texture for drawing. Sadly, this seems to be
|
||||||
@@ -243,9 +245,7 @@ if (utils.isInShellProcess()) {
|
|||||||
// get_target() back then but this is not wrapped in GJS.
|
// get_target() back then but this is not wrapped in GJS.
|
||||||
// https://gitlab.gnome.org/GNOME/mutter/-/blob/gnome-3-36/clutter/clutter/clutter-offscreen-effect.c#L598
|
// https://gitlab.gnome.org/GNOME/mutter/-/blob/gnome-3-36/clutter/clutter/clutter-offscreen-effect.c#L598
|
||||||
vfunc_paint_target(node, paint_context) {
|
vfunc_paint_target(node, paint_context) {
|
||||||
const pipeline = this.get_pipeline();
|
this.get_pipeline().set_layer_texture(1, this._fontTexture.get_texture());
|
||||||
pipeline.set_layer_texture(1, this._fontTexture.get_texture());
|
|
||||||
this.set_uniform_value('uFontTexture', 1);
|
|
||||||
super.vfunc_paint_target(node, paint_context);
|
super.vfunc_paint_target(node, paint_context);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -224,6 +224,8 @@ if (utils.isInShellProcess()) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
`);
|
`);
|
||||||
|
|
||||||
|
this.set_uniform_value('uDustTexture', 1);
|
||||||
};
|
};
|
||||||
|
|
||||||
// This is overridden to bind the dust texture for drawing. Sadly, this seems to be
|
// This is overridden to bind the dust texture for drawing. Sadly, this seems to be
|
||||||
@@ -236,7 +238,6 @@ if (utils.isInShellProcess()) {
|
|||||||
Cogl.PipelineFilter.LINEAR);
|
Cogl.PipelineFilter.LINEAR);
|
||||||
pipeline.set_layer_texture(1, this._dustTexture.get_texture());
|
pipeline.set_layer_texture(1, this._dustTexture.get_texture());
|
||||||
pipeline.set_layer_wrap_mode(1, Cogl.PipelineWrapMode.REPEAT);
|
pipeline.set_layer_wrap_mode(1, Cogl.PipelineWrapMode.REPEAT);
|
||||||
this.set_uniform_value('uDustTexture', 1);
|
|
||||||
super.vfunc_paint_target(node, paint_context);
|
super.vfunc_paint_target(node, paint_context);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
+3
-3
@@ -241,6 +241,8 @@ if (utils.isInShellProcess()) {
|
|||||||
// cogl_color_out = vec4(vec3(scratchMap), 1);
|
// cogl_color_out = vec4(vec3(scratchMap), 1);
|
||||||
}
|
}
|
||||||
`);
|
`);
|
||||||
|
|
||||||
|
this.set_uniform_value('uClawTexture', 1);
|
||||||
};
|
};
|
||||||
|
|
||||||
// This is overridden to bind the claw texture for drawing. Sadly, this seems to be
|
// This is overridden to bind the claw texture for drawing. Sadly, this seems to be
|
||||||
@@ -248,9 +250,7 @@ if (utils.isInShellProcess()) {
|
|||||||
// get_target() back then but this is not wrapped in GJS.
|
// get_target() back then but this is not wrapped in GJS.
|
||||||
// https://gitlab.gnome.org/GNOME/mutter/-/blob/gnome-3-36/clutter/clutter/clutter-offscreen-effect.c#L598
|
// https://gitlab.gnome.org/GNOME/mutter/-/blob/gnome-3-36/clutter/clutter/clutter-offscreen-effect.c#L598
|
||||||
vfunc_paint_target(node, paint_context) {
|
vfunc_paint_target(node, paint_context) {
|
||||||
const pipeline = this.get_pipeline();
|
this.get_pipeline().set_layer_texture(1, this._clawTexture.get_texture());
|
||||||
pipeline.set_layer_texture(1, this._clawTexture.get_texture());
|
|
||||||
this.set_uniform_value('uClawTexture', 1);
|
|
||||||
super.vfunc_paint_target(node, paint_context);
|
super.vfunc_paint_target(node, paint_context);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user