ComfyUI-0246
Random nodes for ComfyUI I made to solve my struggle with ComfyUI. Have varying quality.
Documentation More Docs (can be shown directly in the UI if rgthree is installed).
Nodes list
Piping:
Highway: yet another implementation but overkill version of pipe and reroute.HighwayBatch: batching version ofHighway.Junction: over-the-head data packing and unpacking sequentially.JunctionBatch: ifJunctionand ComfyUI batching have a kid.Merge: pipe and batch merging.
Misc:
BoxRange: visualization of boxes. usefull for anything that requires boxes (which isx,y,width,height).- Currently only
ConditioningSetAreaPercentageand anything that havepercentage sizeand have exactx,y,width,heightinput name are supported. More will come in the future. - Double click on each corner and discover what each will do.
- Currently only
Beautify: the beautification of data for easy troubleshooting.Stringify: anything to string, optionally together.RandomInt: different from other implementation such that it generate number server side to works withLoop.Hub: widget management to the max.- Image display does not work for now, alongside with other 3rd party custom. But it should generally stable.
CastReroute: basically likeReroutebut have ability to specify custom type. Useful when dealing withHighway,Junctionand such.
Control Flow:
Loop: very hacky recursive repetition by messing with ComfyUI internals.Hold: hold data between each loop execution.Count: simple counter to use withLoop.
"Execute anything" node:
ScriptNodeScriptRuleScript
Update
2023-12-19
Tons more nodes. Here's the simple workflow image that showcase everything within this update.
For any nodes related to Script, *_order widget will determine script execution order, which depends on natsort. How it being sorted can be customized by doing things like INT, LOCALE within the _sort_mode widget.
Warning: The recent changes I have changed how Highway and Junction tracking types. Therefore the best way to mitigrate this is to just copy the _query or _offset, create a new Highway or Junction, paste the string then reconnect everything over. I've probably find a way to automate this.
I recommended you to play around with this sample workflow:
TODO (may or may not get implemented)
- Tutorial for various nodes.
- More testing.