From 9b8926e56ecdf9d99fa65d67c7c08f2e4e82486b Mon Sep 17 00:00:00 2001 From: GhostSignal <108476298+GhostSignal@users.noreply.github.com> Date: Tue, 21 Mar 2023 12:43:22 +0800 Subject: [PATCH] Update widgets.js Use a global random seed for all samplers --- web/scripts/widgets.js | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/web/scripts/widgets.js b/web/scripts/widgets.js index e1f637637..0e27804db 100644 --- a/web/scripts/widgets.js +++ b/web/scripts/widgets.js @@ -10,6 +10,20 @@ function getNumberDefaults(inputData, defaultStep) { return { val: defaultVal, config: { min, max, step: 10.0 * step } }; } +function __global_seed() { + var seed = null; + var reset = () => { + seed = Math.floor(Math.random() * 1125899906842624); + }; + var timer = setTimeout(reset, 0); + return () => { + clearTimeout(timer); + timer = setTimeout(reset, 1000); + return seed; + } +} +__global_seed = __global_seed(); + function seedWidget(node, inputName, inputData) { const seed = ComfyWidgets.INT(node, inputName, inputData); const randomize = node.addWidget("toggle", "Random seed after every gen", true, function (v) {}, { @@ -20,7 +34,7 @@ function seedWidget(node, inputName, inputData) { randomize.afterQueued = () => { if (randomize.value) { - seed.widget.value = Math.floor(Math.random() * 1125899906842624); + seed.widget.value = __global_seed(); } };