#PBRify - Fast, Ethical Upscaler & PBR Generator!
1 messages ยท Page 3 of 1
only thing to clarify
the zip would contain the ComfyUI folder, and they just drag it into the directory above it?
PBRify_Remix_ComfyUI_ONLY.zip\ComfyUI\models\upscale_models
i actually don't think i'm gonna do this part
i feel like it'd be easier to screw up the dragging part than placing it in an exact directory that i specify
yeah i'm sure lol
for the seesr update it will require a full redownload i had to change the whole environment
is there a way to clear or empty a node?
like that
i don't want that to be in the saved template
just closing and reopening the tab clears it
@limpid flame alright there's only one issue left now, lol. it's the same one chaiNNer had
if there's no alpha layer, this workflow will add one
is there any way you know of to disable alphas if they're not actually present?
i will look into it
since comfy will error if the return type is not filled, it may become a Boolean as well and bypass merge if not present
ig default image if none could be full white?
afaik that's what it does already
separating the generated alpha and viewing it = white image
well i mean in comfy
ya
i think its set to black
this is the result from comfy
but direct from get textures node
ah
input
output in Remix
it is black @limpid flame
not sure how it turns white lol
current workflow
ty i will work on it this weekend
thank ya
i'll upload this workflow separately and add it to my steps for now, if anyone wants to use it
i don't want to bug Nvidia about it until it's finalized lol
It looks scary but I'll give it a go lol
i simplified it even more for ya
it's all in these steps now: https://github.com/Kim2091/PBRify_Remix?tab=readme-ov-file#comfyui
i linked the latest alpha compatible workflow at the relevant step
It's the comfyui stuff that looks confusing to me lol. But I'm sure I'll figure it out when I mess with it
ya i understand
thankfully though, you don't have to mess with comfy at all other than launching it and pressing "queue prompt"
as part of the new comfyUI stuff the textures get assigned automatically right?
@vagrant moon
yep

you just select the texture in the toolkit and press queue, then it'll upscale and assign all of them
is there a way to specify layer so I can have an "AI-Placeholders" one I can toggle
the ONLY issue is that you have to manually modify displacement afterward every time, and it defaults to a full strength of 1
nvm
not gonna use height so that's fine
unless

gotcha
well I'm gonna try out the latest builds and see how that goes
of remix I mean. Been having issues with RC lately and those perf improvements would be nice too
@vagrant moon can you test this commit before i pull
sure. what am i looking for?
fix for alpha returning as opaque by defauilt
hm
422 Client Error: Unprocessable Entity for url: http://127.0.0.1:8011/ingestcraft/mass-validator/queue/material
File "C:\Users\Kim\Projects\Tools\ComfyUI_windows_portable\ComfyUI\execution.py", line 151, in recursive_execute
output_data, output_ui = get_output_data(obj, input_data_all)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Kim\Projects\Tools\ComfyUI_windows_portable\ComfyUI\execution.py", line 81, in get_output_data
return_values = map_node_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Kim\Projects\Tools\ComfyUI_windows_portable\ComfyUI\execution.py", line 74, in map_node_over_list
results.append(getattr(obj, func)(**slice_dict(input_data_all, i)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Kim\Projects\Tools\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-RTX-Remix\nodes\common.py", line 63, in wrapper
return (instance.context,) + self.func(instance, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Kim\Projects\Tools\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-RTX-Remix\nodes\ingestion.py", line 139, in ingest_texture
check_response_status_code(r)
File "C:\Users\Kim\Projects\Tools\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-RTX-Remix\nodes\utils.py", line 58, in check_response_status_code
raise err
File "C:\Users\Kim\Projects\Tools\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-RTX-Remix\nodes\utils.py", line 54, in check_response_status_code
response.raise_for_status()
File "C:\Users\Kim\Projects\Tools\ComfyUI_windows_portable\python_embeded\Lib\site-packages\requests\models.py", line 1024, in raise_for_status
raise HTTPError(http_error_msg, response=self)```
no worries
same error unfortunately
i noticed it doesn't preview the texture at any stage in the pipeline
i deleted the entire ComfyUI-RTX-Remix node folder and git cloned the new version
and restarted comfy i assume
yes
hmmmmmmm
whats odd is that error message doesnt touch the file i edited lol
do you have remix open ๐
i do
huh
so i opened my older Barnyard project (the one i'd been using for about 4 months) and it's just not working in there. it just worked a couple nights ago with the normal nodes though
opened a newer project and it's fine
wonder if you reclone base repo is it same error
also why is my commit showing a whole file change im annoyed
the error isn't there
actually, it is
but it previews the changes in the chain
ah i think i know. you said you set it to full transparency all the time? wouldn't that have the effect of textures being completely invisible?
i'm just extremely confused. it was just working 2 days ago
o
but it seems that it's not due to your changes
wait so what change are you requesting
not to run the upscale process for alpha if there's no alpha layer on the input texture
if i put in an RGB texture, it spits out RGBA with a white alpha layer
waste of space + it can cause issues + wasted time upscaling nothing
ah, that'd have to be a custom bool bypass thing hmmm
i'm guessing that's too much to add?
realistically the extra alpha layer isn't that bad, it's just annoying to deal with
No not hard, but would be a custom node, or if we can add it to their node pack
There anyway to add a check if the file already exists and skip it?
what method are you using? chaiNNer? or REST API
Not sure exactly what happened but my ai_upscaled.usda just deleted itself, all the ingested assets are still there. My remix was running slow during the ComfyUI queue so I saved mid upscale, then on next open it hints ""..sublayer path is invalid and was cleaned up /aiupscale_textures.usda"
Double checked the project folder and confirmed its gone lol, any way to restore a backup?
๐ฆ
unfortunately if it's gone, i don't know how you could possibly restore it
that's moreso a question for @peak dagger
Thankfully its just Delta Force, the captures are only a couple hundred assets, lesson learned though haha
save often, just beta things
Its cool but i was like damn it's really gone haha
I could only imagine how someone would react on a bigger capture
oh btw, you should use the workflow file here: https://github.com/Kim2091/ComfyUI-RTX-Remix/raw/main/workflows/rtx_remix_pbrify_remix_workflow.png
it supports transparency on textures
Yeah after getting over the initial hurdles the REST PBRify stuff is pretty neat
I will say a simple 1024 x 1024 couch texture defeated it though ๐
yeah... that's due to the way comfyui handles some things related to upscaling unfortunately
the original chaiNNer version is far more optimized, but is less feature rich
I do like the ease of use, at first it was intimidating with all the stuff out there but its actually really easy
if you want to have far faster + lighter weight upscaling, you can switch to the SPANV4 model for upscaling instead of the DAT2 model
it's right here in the chain
just change the top one to the same as the bottom one
quality is definitely worse, but not drastically so
Is there any models that can get higher than 4X? The game I'm working with has some tiny textures and I'd love to blast 4K at it for fun
none that are worth using. anything above 4x with these types of models is a waste unfortunately
they just can't reconstruct that much detail
Gotcha, the current models do some good work with the 64 x 64 terrain textures from Delta Force as is
๐ i'm glad
the DAT2 model is a lot more capable for that kind of thing, but also uses significantly more VRAM and is roughly 10x slower than the SPANV4 model
i'm working on an upgrade right now that should have the same (or better) quality as DAT2, while being much much faster
hopefully it'll just be a week from now
anyway, i'm happy this is working for ya. afaik you're the first person so far to use the REST API version extensively
Yeah I was actually using it across a whole level and it beats the hell out of manually exporting and re-ingesting
Also I just started using remix a few days ago too lol
Thanks for the work you put into all this, definitely some amazing groundwork for something great
Chainner
Better late than never lol.
then yes. in the "Save Image" nodes (they're buried in each stack, sorry), there's a setting to skip images that exist
however this won't prevent the upscaling process for those existing images unfortunately
Normally if we clean anything up all we do is remove the reference in the stage, we don't delete the file, so that most likely came from the ComfyUI graph or another source if the file was actually deleted
Hi!
I noticed PBRIfy and PBRFusion 2 produce different roughness maps; in fact, they seem to be inverted when compared to eachother. So either PBRify or PBRFusion2 is producing inverted roughness maps?
ie, left side is PBRify and right side is PBRFusion2.
Here's a comparison between the two (scroll down for roughness maps)
https://onnoj.github.io/DeusExEchelonRendererPages/pbrcomparison/?setA=01_pbrify&setB=02_pbrfusion2
Here's an in-game comparison of PBRify and PBRify with inverted roughness maps:
https://onnoj.github.io/DeusExEchelonRendererPages/comparison/?setA=13_v0.3.9_pbrify&setB=13_v0.3.9_pbrifyinvroughness
PBRify seems closer to what I would expect artists to produce in your comparison ๐
that's a good question. the difference simply comes down to how the model is interpreting roughness
PBRFusion is generally more robust with PBR generation and usually does a better job interpreting these things. it's based on diffusion and is a lot more capable than the types of models i'm using
In the comparison look here and you'll see the "inverted" PBRify textures are more accurate
Yeah, but scroll down
Left is PBRify and Right is PBR Fusion
Oh there's more !
yeah i was just about to say you can scroll lol
i just noticed
that's a pretty cool website
Yeah didn't know that was a thing either!
PBRFusion generally does a better job imo. PBRify's roughness generation really struggles when an input has a dark portion, it'll just interpret it as smooth no matter what
I would say generally looks like PBRify just likes to make things shinier. Which is not bad, because you can just use Photoshop or any image altering software after and just reduce the exposure to make things more mat if you want
versus
i'm going to be training a new set of models coming up, hopefully they're more robust
Roughness has been the hardest map to produce because it really does require the model to know what it's looking at, I will say I'm not happy with the current outputs and have artificially made them to be more rough then not
haha that's what i was doing initially too
roughness maps are really difficult
yeah, one comparison is PBRIfy versus PBRify w/inverted roughness (where I think inverted roughness looks better). The screenshot I posted is from PBRify versus PBRFusion 2
PBRFusion's PBR maps tend to be more defined. so although Night is adjusting them to be more rough after it's generated, it still has better highlights than mine
this is a sample from the PBRFusion screenshot
mine isn't able to reproduce the reflectivity on the edges quite as well
i'm going to be retraining the entire set of models on a new architecture with an entire new (and much better) dataset. it should improve this
but yeah. thankfully just editing it a bit in post should produce a good result
I agree with this ppl like to use it as a batch replacement(which is fine), in practice i use as a tool, editing the outputs in post
As it can definitely get things very wrong
yep. any time i use something like this, i edit it afterward to improve it. it's less than a minute per edit a lot of the time, but drastically improves the quality ๐
Yep even as simple as an invert
ya. some of the inverted outputs Onno shared are more correct, but others aren't. i do wish it was as simple as just running this and having the outputs be correct 100% of the time, but i think that'll be quite a while away
This would be a long project but, since I have prompt model in the workflow now, I could pass the clip to the controlnet for roughness trained on correct clip of prompts for what it should do for roughness in different materials to get it more correct?
I have kind of disregarded the power of prompts in the models
But also to be fair a model that recognizes them correctly has only been a recent development
yeah. tbh i'd probably wait a bit longer until there's a model that can reliably detect it 95% of the time
but having that would pretty much render PBRFusion the go-to ๐
It'd be too powerful, even with clip correct like that though, the adherence to color bias would still be stronger, I'm going to start testing on flux soon when controlnet training has been flushed out
ah. seems there are more factors than i realized lol
There always is ๐
I'm confused is he saying that that brick wall shouldn't be rough or is he referring to the game screenshots lol
i think he was asking which is more correct for the actual map
Gotcha the embed preview threw me off lol
great example of PBRify just making anything that was black in the albedo shiny
really wish i could find a way around that
Color bias has been extremely annoying, the only way I even began to train it out was with 1 million image pairs ๐
And it still has some
no matter what i did, i wasn't able to remove it
then again i didn't try even 50,000 pairs lol
i only had about 3000 to work with
It's okay even depth anything v2 has some color bias
And that's trained with actual depth flags lol
Screenshots only! The overall map look more appealing to me because of the nice reflections ๐ Regardless of the expected physical look haha! Definitely not "accurate" but more eye-candy looking map
This map being one of the clearest examples of what I mean
makes sense ๐
Thanks for the insight, after a few days of testing it I found that when my system gets choked for VRAM in the middle of an upscale using the DAT2 upscale model ComfyUI somehow deletes my aiupscaled usda file, can confirm it happens on the 'Upscale texture (using model)' stage. I have not had this issue when using SPANV4 though, while using the SPANV4 model I can choke the VRAM down to where remix says I have literally 0 Bytes left of VRAM and it never causes the slowdown / aiupscaled usda delete. The DAT2 related crashes seemed to happen more on the PBRify with alpha support workflow, the same workflow with SPANV4 for both models has yet to cause issues though
i think the reason it'd happen more is because it's running two different models right after each other, which would increase VRAM load
but to me that absolutely sounds like a bug in ComfyUI or in the addons. nothing i modified in the workflow could be causing this. all i did was set it to use an upscaling model rather than resizing for the diffuse
Who knows, I have a feeling its not caused by Remix but again just a feeling. Something definitely eats VRAM like crazy in Remix after about 40 or 50 prompts. I'll go from almost 6 GB free down to literal bytes until I close and re open Remix, which it goes back to eating VRAM by the time I've done another 10 or 15 prompts
I'll definitely have to test this on another game / project before I can say what the cause is
well, no matter what, that file shouldn't be deleted
i don't know what could be causing it. maybe an error finishing a write to the file and it's just... gone?
Is there any way I can log this? ComfyUI logs seemed pretty unhelpful
to clarify, do you mean restarting comfyui? or the remix toolkit
Just the remix toolkit, all of the used VRAM comes back after relaunching the toolkit, without closing ComfyUI
if you run Remix from the lightspeed.app.trex.bat file in %LocalAppData%\ov\pkg\rtx-remix-2024.4.1, it'll open a terminal window with a log
Got it, I'll see if I can generate anything useful, might take a little while. Also in case anyone runs into the same thing: If you notice the slowdown / VRAM eating with the project open and know it deleted the aiupscaled usda, don't close the project or you'll lose the layer, you can export the aiupscaled layer to another folder and manually re-add it to the project folder
Going off the embed here this is the wrong way of going about it. PBRify is actually super accurate here in terms of contrast, but not brightness. Inverting it actually is making the difference between the brick and gaps more inaccurate though the overall brightness is more accurate to a real brick roughness map. If you took PBRify's output there and ran it through levels/brightness adjustment to bias it more towards white, you'd get the best possible result
A new version is WIP. Thanks to the donations I received, I was able to purchase additional content to use in the dataset.
In addition, @limpid flame helped (did most of it lol) put together a script for InstaMAT (texture design software) to bake textures. This will greatly improve PBRify's ability to handle and interpret degraded game textures.
Previously PBRify was trained only on albedos, which are textures with no lighting information. Baked textures contain all of the lighting information in a single image.
This is an example from the new dataset:
Albedo | Baked
I plan to use MoSR (a newer, faster architecture) for the new models. I will be (hopefully) retraining the entire PBRify set, PBR generation and upscaling. I also intend to give an unbaking model another go, now that the baked texture generation is more robust ๐
good to see that the pbrify is being updated
WOHOOOO!! Nice work Kim!! 
it seems like my AI layer was deleted too @peak dagger
That simply means the layer didn't exist on your HDD when you loaded your project
Something external most likely deleted the layer before you reloaded the project. Are you using a ComfyUI graph?
i am, using the PBRify one on the official repository
however, i saw nothing in the comfyui logs about it
Matt above said this:
Thanks for the insight, after a few days of testing it I found that when my system gets choked for VRAM in the middle of an upscale using the DAT2 upscale model ComfyUI somehow deletes my aiupscaled usda file, can confirm it happens on the 'Upscale texture (using model)' stage.
i haven't been able to confirm it, but it makes sense. so it's likely a bug of some sort in comfy ๐ฆ
I think it's most likely the design of the ComfyUI graph. If you look there's probably a Delete Layer node
It was probably executed for some reason and because the generation didn't succeed, you never got the updated texture in the new layer in the end
lol you're right. it's at the beginning of the chain
it seems to be executing all the time though
and i'm not sure why it's enabled by default ๐ฆ
i'll make a PR tomorrow to disable it. thanks Pete
Np!
For reference I think our demo graph had that so that you would fetch the textures from the capture layer and not the auto upscale layer.
If you want to be able to execute the graph multiple times you'll probably need a similar system, muting layers would probably work too
hi Pete. i'm sorry but i don't really know what you mean with that last part. i'm having a hard time wrapping my head around this ๐ฆ
would this retain the layer, and insert any new modifications into the existing layer?
Your graph will have a Get Textures node. That grabs the textures from the stage in Remix, but if some textures were replaced, it'll grab those. So you want to make sure you only grab the textures that come from the capture layer, right?
You can probably simplify that by never deleting layers, and only creating a layer of it doesn't exist
That would also be "safer"
hm
i believe this is correct then?
i have the REST API documentation, but i don't see any for the ComfyUI nodes in particular other than the descriptions in the readme
so this is the top part connecting to if_false
so i'd set it to create instead of insert
ComfyUI basically only calls the REST API so it should be quite close
This mostly okay, just just need the switcher to make sure you only create the layer if it doesn't exist
right. i believe i have it set up correctly now
i'll give it a test ๐
yep! it all works
i restarted comfy and the toolkit after upscaling and the layer is retained
it also made a new one successfully ๐
thank you for the help
Np!
Good to know I'm not crazy lol, have the workflows been updated on the ComfyUI-RTX repo?
i made a pull request, but it hasn't been merged yet
it should work ๐
Sweet, thanks again for helping with this, you and NV_Pete are legends
new release tomorrow! it'll only be one model, a new upscaler that's roughly 8x faster than the current one, but with superior quality
the improvements of that model cascade to PBR generation as well. it all looks a decent bit better ๐
PBRify 1.7.1 Update
This update brings a new upscaling model, 4x-PBRify_RPLKSRd_V3. This model is roughly 8x faster than the current DAT2 model, while being higher quality. It produces far more natural detail, resolves lines and edges more smoothly, and cleans up compression artifacts better.
As a result of those improvements, PBR is also much improved. It tends to be clearer with less defined artifacts.
Download use it in chaiNNer, download this release: https://github.com/chaiNNer-org/chaiNNer-nightly/releases/tag/2024-10-29
If you want to use it in ComfyUI, follow the steps below
Comparisons
Important
The current version of ComfyUI at the time of writing hasn't been updated to the latest spandrel library.
To update ComfyUI to be compatible with the new model:
- Navigate to your ComfyUI installation directory
- go into
python_embedded - Run this command:
.\python.exe -m pip install spandrel --upgrade
๐ If you like my work, please support me on Ko-fi! ๐
it's also far lighter on VRAM, so hopefully there will be no issues with your more limited amount
for a 512x512 texture it should only use ~1.5 GB vs the 4-5 GB DAT2 required
Uh roh, I did a clean install of comfyui, the ComfyUI only version doesn't have the workflow.png 
I accidentally had the old workflow that deleted the ai_upscale layer if the upscale was interrupted halfway through
but it's no worries - I wasn't far in progress lol
it's not supposed to. it's packaged in with the comfy nodes provided by Nvidia
i also have steps to install it properly here: https://github.com/Kim2091/PBRify_Remix?tab=readme-ov-file#comfyui
Ahhhh that's right, I forgot nvidia made one, thank youu 
Fun fact you can also use the ComfyUI Manager to install the Remix nodes & it'll copy over the workflows as well
ah cool
Yeah It should hopefully simplify your install instructions ๐
Ohh cool, it also helps keep things up to date 
Yeah and if you open a workflow for which you're missing nodes it can "normally" download all the missing nodes for you
It can also download some models but I've found it to be less reliable for that
that's great
Oh wait I lied, it was the the pbrfusion workflow that deleted the layer.
If you get the chance, do you think you could assist Nightraven to adjust the delete layer to how you fixed it kim? 
sure
could you send the workflow so i don't need to download the whole zip?
Yeah!
looks like i can't work with it as i'm missing some nodes
and i don't have enough space right now for the download ๐ฆ
That's ok! I tried adjusting it earlier but I failed
If I make it an exact match to how PBRify is setup would it work? 
the main changes to mine were in the first block
this one
i'm not sure if night based it on the PBRify workflow or if he made it from scratch
Ahh looks like it was! Got it all done/tested, it seems to work
Does it just add to your existing aiupscale_textures.usda layer and not create something like aiupscale_textrues_01 or anything like that?
yeah. once an ai layer is there, it'll just open and add to it ๐
Hmm, I went to "batch" ingest mym entire scene by turning off the return_selection on the Get Textures node, but got this error, not sure why 
Def a spandrel problem
Maybe updating pressing the "Update All" on the ComfyUI manager menu wasn't a good idea 
I'll clean install them both and see if that fixes it - and not press update 
did you update spandrel?
Ahhhhhh, I figured the "update all" was going to do all that for me (scary it doesn't), manually doing that step fixed it, thanks y'all

@vagrant moon you could try deepbumps normal to height via MTB node pack
o.o
i can't find that node in their node pack
at least the info on their wiki or in the code
unfortunately that'd interfere with the "ethical" thing
Where can i get the latest Alpha version of chainner?
The fact it made it look like an actual ceiling tile is amazing, this stuff drops my jaw every time
This is with the default 0.05 height map as well
that's a great result ๐
Is there a simple way to batch process bmp files to just upscale them with no map generation with the latest version of PBRify? Or should I just use the older model and chainner for now?
mhm, hang on
First install the latest chaiNNer: https://github.com/chaiNNer-org/chaiNNer-nightly/releases/download/2024-07-19/chaiNNer-windows-latest-nightly.2024-07-19.exe
- Download this: https://github.com/chaiNNer-org/spandrel/archive/refs/tags/v0.4.0.zip
- Open it
- Navigate to
%AppData%\chaiNNer\python\python\Lib\site-packages\spandrel - In the zip file, navigate to
spandrel-0.4.0.zip\spandrel-0.4.0\libs\spandrel\spandrel\ - Extract the contents to the
spandrelfolder in the chaiNNer install - In the zip file, navigate to
spandrel-0.4.0.zip\spandrel-0.4.0\libs\spandrel_extra_arches\spandrel_extra_arches\ - Extract the contents to the
spandrel_extra_archesfolder in the chaiNNer install
overwrite if it prompts, then start chaiNNer & use the attached chain file
if you don't want to do all of that, you will just have to use the DAT2 model instead. it's slower and doesn't look as good though
Thanks!
https://github.com/chaiNNer-org/chaiNNer-nightly/releases/tag/2024-10-29
latest chaiNNer supports the new PBRify models
@jolly quest if you didn't do the steps above already
Finally
holy crap
what
i come back to this after a while
i do an upscale and wonder "uhh did something go wrong?" because it did it in like a second
no it just kinda actually upscaled in a second
one of the best things about having adhd is with stuff like this
i lose interest for a while, i come back and there's so much that's improved since the last time i used it
Hi
I have some issues with chaiNNer
Traceback (most recent call last):
File "C:\Users\Hosnt\AppData\Local\chaiNNer\app-0.24.1\resources\src\process.py", line 432, in process
return await self.__process(node)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Hosnt\AppData\Local\chaiNNer\app-0.24.1\resources\src\process.py", line 602, in __process
for fn in context.node_cleanup_fns:
RuntimeError: Set changed size during iteration
Would someone help?
sadly i have no idea what would be doing that
Reinstalled to nightly version, same:
Traceback (most recent call last):
File "C:\Users\Hosnt\AppData\Local\chaiNNer\app-0.24.2-nightly2024-10-29\resources\src\process.py", line 466, in process
return await self.__process(node, perform_cache)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Hosnt\AppData\Local\chaiNNer\app-0.24.2-nightly2024-10-29\resources\src\process.py", line 640, in __process
for fn in context.node_cleanup_fns:
RuntimeError: Set changed size during iteration
you unzipped it before opening it ?
xD
oh my god
I realized I didn't have hardware acceleration on in chainner
I turned it on and look how fast it's going 
and chaiNNer is the bottleneck here still. if i ever have the courage i'll make a custom script to do all of these things and it'll probably be 10x faster
Instantanious upscales/pbr. It'd probably be the fastest one out there right now, they're surprisingly rare 
okay unless you have 64 GB of RAM, i'd recommend against selecting everything in a scene and upscaling it with the comfyui workflow ๐
chaiNNer workflow is definitely better for this
it's taking about 30 minutes and it ate 50 GB RAM
the ingestion process is the slowest part
python is from comfy, kit is the toolkit
oof
pbrify is the easiest and fastest, i select so much stuff before clicking start ๐
do have 64g tho
Hey Kim, and anyone else who could help
Could you please take a look at this 17 seconds vid and explain what is happening here? Am I doing something wrong? The question is, shouldn't I notice any difference in the toolkit right away?
It's the first time I'm using ComfyUI so please excuse me for the skill issue
https://youtu.be/FVqCzokuLvg
I'm running PBRify 1.7.1 and NVIDIA App release of RTX Remix
yea it should update the texture in the toolkit
thats less than 1 second for texture upscale? takes at least 10 seconds for me if not a minute
looks like its not doing the upscaling at all perhaps
upscaled version should show up here
do any of the nodes have a red border?
ahh i do see one has a red border
this one
@flint slate change it from dat2 to rkplsd or whatever
Yes! It's working now
Thank you!
awesome! ๐ maybe we should collaborate on texturing PK ?
I'd be glad to help if you told me what to do ๐
I have a little time though
yeah i need to push an update to Nvidia's repository for the workflow
just noticed that issue yesterday
someone wanna sanity check please?
this workflow should fix the issue
well that's not right
Height is a 1 channel image so it's probably just populating R in RGB. You could create a ticket for that. I thought we fixed that a long time ago but apparently not
Thank you!
In the toolkit ?
Could be differing MDL versions ?
this is the newer project, so i'd hope that isn't the issue
just made it yesterday to test
Fresh captures as well ?
yep
it's possible the public toolkit & public runtime are not in proper sync for the MDL versions... That may happen when using ToT
If you create a ticket we can take a look at that too
that's interesting. i was using the latest github actions builds for dxvk-remix and bridge-remix btw, latest builds from yesterday
is there any way i could check MDL versions on my end?
yeah, that's probably it. We still have a separate branch with MDL work for the toolkit
If you open the toolkit's install dir (or the build dir if using the repo), and go to omni_core_materials\Base, you should see the MDL files
You can compare those to the ones in your captures
Yeah no but the MDL contents
Also the bundled runtime (deps\remix_runtime\runtime) may be older
can i just send it here? i don't know what to look for
i can try to upgrade that
ah i had the wrong mdl file open, oops
yeah they're identical
i'll try updating the runtime now
no luck ๐ฆ
Unsure then! You can create a ticket, we'll take a look
might just be something buggy with this capture or game. it's another one of those games that renders everything through shaders
thank ya for the help
You could always try with a "known to work" game like Portal RTX
yeah i'm about to ๐
yup it's working fine in other games
would you still like me to open the issue? or does it seem more like a runtime issue as a whole
If it's game-specific it's probably a runtime issue. You could always open a ticket but it'll probably be low-prio, especially if the game is shader-heavy
For creating albedos, can we infer a direct and ambient light from the diffuse and kind of divide by that
Aka infer an image which looks like a whiteish surface with heights and normals, lit by the inferred lighting, and divide the original by this
mm sadly that wouldn't really work from my understanding
it'd just end up having the effect of making it look washed out
which we could just do with normal filters anyway
@rugged wigeon what was that workflow you mentioned in photoshop to try to remove baked shadows?
Why's that
You duplicate the layer, apply a highpass filter and then set the blend mode to uhh.... Overlay?
hmm
just my experience with it while trying to bake textures that i generated with PBRify
maybe i'm just misunderstanding
didn't quite work
i may have just done it wrong though
I am thinking of trying this, does it offer AI metallic and roughness maps?
PBRify does normal, roughness, and height
metallic is too hard to do, at least for the type of models i train
if you're looking for highest quality results you'll want PBRfusion instead. PBRify prioritizes speed
One more question, does yours have batch conversion? Low-key tired of replacing textures one by one ๐
in theory this is the most mathematically perfect way to remove the lighting
i am doing a test in blender
I have looked into delighting solutions, found one but it works in a 3dscan tool called agisoft delighter
Agisoft Texture De-Lighter utility
i have a good feeling about this
so PBRify has two methods of operating. one is through chaiNNEr, where it'll upscale and generate PBR for all of your dumped textures. it needs a separate script to replace the assets
the second way is through ComfyUI + the toolkit, where you jusy load up comfyui and the toolkit, select the mesh with the texture in the toolkit, then press Queue in comfyui and it'll upscale and replace
either way, it's replaced for you instead of having to do it all manually
I really hope it isn't cpu intensive
the only part that should be is the ingestion process in the toolkit
@sweet dagger you happen to know where that replacement script is?
#general-remix message
there it is. but the hashing method in Remix changed which means it no longer works
that sucks
i haven't found a way to update the hash generation yet. mostly because i can't find the code in the dxvk-repo for it
@acoustic cape for one of the comfyui steps you need to clone this repo instead of Nvidia's: https://github.com/Kim2091/ComfyUI-RTX-Remix
here are the steps: https://github.com/Kim2091/PBRify_Remix?tab=readme-ov-file#comfyui
it works extremely well
i put this metal texture on a lumpy surface with some light and rendered it in blender
then used this method ive been harping on about to remove the shadin
#1231062867697209354 message
could you show what you're doing in blender? an image would help a lot lol
Found it! Thereโs also a little video tutorial a few messages below it, I donโt think you need to adjust the slashes in the address bar thingy anymore though ๐
yeah it's broken unfortunately
the hash method in Remix changed
this is the jpg version of the image i generated to remove the lighting (divide over the original texture to remove the lighting)
the actual one is an HDRI though
in theory you could generate millions of these automatically or procedurally for a training set
we already have datasets for this task
we need a way to remove baked lighting without relying on AI models, because it just isn't working
this method requires accurate normal and height maps to function though, right?
not necessarily
what i was thinking is you get a normal diffuse texture with baked in highlights and shadows
generate a normal and heightmap
use that to generate this division texture?
or maybe just got straight from diffuse to delit by training a model on a massive dataset generated with this method in blender
i guess you already have a dataset though
that's what i was thinking too, but the generated normals and height just aren't accurate enough. at least not with my models
this might work for @limpid flame though
yeah our dataset isn't too dissimilar. we gathered high quality CC0 textures, applied the PBR maps, then baked them with lighting. it's basically the same thing
nothing we train can handle it though
actually i misread the script. no hashing needed. i'll test it
well
i advise you guys not to try to ingest with processor set to 32 in the toolkit
thankfully can confirm the script still works
yeh i was gonna say i didnt know we figured out hashing the first time lol
blueamulet did, i integrated it into my MagicUSDA script before the toolkit was a thing. apparently a few months ago though the hashing method changed to be based on the application name or something
re-reading it all, it seems like what actually happened is that there's an even older hashing system that was being used in some games
so it should actually still work fine
Okay it had a few more steps I might've forgotten about at 4 AM ๐ https://tolas.wordpress.com/2009/05/26/tutorial-how-to-equalize-textures-in-photoshop/
Saved in my bookmark, very useful ๐
i tried it
the average blur thing, at least in affinity photo, just makes my texture totally gray for some reason
Oh it probably calculates the average color of the entire image
You have to use a blur the same size as the high pass.
@steep coyote did you post an image? i thought i saw one
ya it was wrong though
This is how you can do this in blender, of course it's easy when you have the original displacement and lighting information.
if you use the result of the mix shader as a divide layer it cancels the lighting
i posted example in https://discord.com/channels/1028444667789967381/1196836285545971712
Reminds me of this method I saw a while ago https://youtu.be/w6YPbidAAzQ?si=FE6cxlLbMLwcv3Uj
Get the free tutorial files: https://inlightvfx.gumroad.com/l/delight
Get VFX Course updates: https://inlightvfx.gumroad.com/subscribe
My Blender VFX Course (out now!): https://www.inlightvfx.com
When Ian Hubert shared the โde-lightingโ technique in Blender, I was awestruck. De-lighting allows VFX artists to visualize 3D VFX elements integrated...
ha mine's better
possibly ยฏ_(ใ)_/ยฏ
objectively ๐
he is using a fullbright emissive surface for bounce lighting, im using the actual scene lit for bounce
more accurate
theres still room for improvement
I don't know much about kitchen appliances, I use C4D so anything in Blender is foreign to me.
Oh it did?
I swore I just used it the other day. When I get home Iโll send my local version, maybe chatgpt auto fixed it for me without me noticing lol
i wsa wrong
PS & Affinity Photo 2
here's one with different colors using a gaussian blur instead of average
the average method works for surfaces with roughly equal color across the entire surface while gaussian blur will help with maintaining multiple colors but it requires a bit further tweaking with dodge and burn brushes to equalize dark spots
pretty cool
thank ya
these are the kinds of textures i'm really struggling with
it really just needs a lot of dodge brush work i guess
a challenge!
Getting this error when trying to upscale with the captures from the latest github runtime.
Can't get texture type using the USD attribute /RootNode/Looks/mat_F08851FC9EC2F174/Shader.inputs:diffuse_texture and texture type ROUGHNESS
yeahhh that's a Remix issue most likely, not this tool
I don't see where remix would throw this error. Maybe it's in the ComfyUI node.
The texture type name in Remix itself for roughness is "Roughness" so if you set that anywhere you may just need to fix the caps, otherwise I don't know why you'd be gettin that error
I have no idea if it's relevant, but this roughness stuff reminds of this crazy bug
https://github.com/NVIDIAGameWorks/rtx-remix/issues/703
Describe the bug A bug happened where... Upon inspecting remix-dxvk.log I noticed that there was an error loading a texture called "...noughness..". I performed a search through all of th...
I couldn't believe my own eyes when I saw "noughness" in the attached logs
at what point does this happen?
Any idea where would that be set? I didn't change anything like that at all that I can recall. I have also reinstalled,The toolkit,Comfyui, and PRBify several times now since this started happening. Even wiped all My kit settings at least twice.
There's a ComfyUI node to get the input path for newly created textures. Probably there
hmm yeah it is all capitals there in the texture node.. I'll report back in a minute.
yeah I'm at a loss for what I'm doing wrong here. I can't seem change the capitalization at all even. So I don't even know how this got messed up in the first place if I can't change it. I just reinstalled everything the toolkit,Comfyui,the depndances ,the emmedded thing... Python... and My web browser so Can't even fathom how this is carrying over.
Wonder what's happening and why other users aren't seeing this error
I'm gonna say user error but I just don't know where lol. like I had this working fine.
here's the full log
bleh
uploaded the wrong log
Well wiped My drives,reinstalled windows completely.everything else. fresh.not from back ups... same result. 
You should create a GitHub issue. We have a few high prio issues atm so I may not be able to take a look tomorrow
Well at this point I don't even think anyone else is affected besides Me I guess. I'll try to find something else to use rather then eat up dev time.
Up to you but itโs fine to create a ticket and if itโs deemed low prio weโll just get to it later!
#1289913588852592662 message
nice ha ha still pulling my hair out over this one. thanks. hope it's a easy fix.
#1289913588852592662 message
fix should be merged tonight!
Oh nice,thanks!
@peak dagger Tried the fix .Getting a different error now Unprocessable Entity for url stagecraft/textures. so progress I guess.
That means whatever object is sent in the request is invalid
So itโs not a remix issue per-se
hmm. maybe the workflow needs to be updated. I tried this with this tool and PBRfusion3. That's outside My wheelhouse though so it's back to grabbing everything manually I guess.
well FWIW here's my error report. this is on a fresh install of ComfyUI and set up for remix, latest Remix, fresh captures,and clean install of the latest github toolkit.
I'm getting the same issue, it definitely seems to be an outdated workflow, but I'm not sure at which node it happens specifically
๐ค
the node should be highlighted with a red border
It is in roughness section specifically
mm
well that makes sense but i don't know what the issue is either, lol
๐ฆ
what triggers this error, using latest comfyui + latest toolkit?
I'm actually not quite sure how to use toolkit, I have only used the nodes from the project above
ahhh
you need the toolkit running to use this workflow
you click on what you want to upscale in the toolkit, then queue it in comfy
Oh that's what you mean by toolkit. Yes, I do run RTX Remix app

Oh is the ingest error that pete mentioned still happening? #1289913588852592662 message
Damn, at least that keeps me from getting everything set up and not letting it eat the rest of my day while upscaling so thats good lol
This only seem to be happening for roughness tho, I have ran another workflow that just switches albedo texture and it works fine
Yeah IDK, I've tried just about everything I can think of, save make a new workflow(tempting but ha ha no).
Hoping Pete can figure it out Monday.
Also sorry Kim for clogging up this thread. I know it's not You're fault! Luck of the draw. It was either this thread or Nightravens.
lol it's okay. it is an issue directly related to it, so i'm glad you posted it
its affecting me too? ๐ฆ
Uuuh not sure but its affecting both BlenderToRemix and PBRify
I assume it would
yeah any tool that used the rest api I'd say. the blender tool is affected as well
thats aight only the 5090 can run pbrfusion and toolkit at same time 
lol yeah
For the most part unless it's a 8k texture I can still keep the toolkit open. 4 k still gets a bit laggy though
Primarily I use both Yours and Kims tool. PBRify is great for those small odd dimension ones PBRfusion doesn't like.
Anyone still having issues with PBRify or other workflows after the recent commit?
Just built the toolkit and get this, not sure if its the same error as before because I never tried it
Seems to be failing here, so no fix yet or did I do something stupid? At least I can manually ingest them
Aaah but since it failed at the diffuse ingestion thats all I end up with in the assets/ingested folder, fuuuuuugggg
Havenโt taken a look at that yet but Iโd be surprised if that endpoint was brokenโฆ I should get through everything by EoW
No worries man, thanks again for looking into all this
try this i wasnt able to test it, it will only be able to do one at a time since ittl overwrite file names, output will be in ComfyUI/output
well no ittl be able to more since comfy appends numbers i think
Can confirm it works and allows for multiple textures at once without overwriting, thank you sir ๐
Also this just shows how slow the ingestion process is, upscaling takes only a few seconds while ingestion makes the whole process take minutes per texture
Is ingestion set to process and 1 by any chance?
the ingestion process is automatic with these workflows, and it is going one by one afaik ๐ฆ
i don't think that can be changed?
Oh this isn't via the toolkit?
it uses the REST API. the toolkit sends textures to comfyui to be processed, which then sends them back to the toolkit to be ingested & replaced
The toolkit can spawn multiple processes to ingest in parallel
i'm aware, but i'm not sure if the REST API allows that to be configured
Yeah, whatever config the toolkit uses to ingest you have full control of in the REST API. The node may not have all the options implemented but the API supports it
So everything works? Or is there something still broken ?
The edited adhoc non toolkit ingestion one I made for temporary uses was working they're referring to. Ingest nodes are still not working in comfyui remix nodes
I see! Thank you ๐
Hey guys, now I'm getting these too. Diffuse maps are the only ones that are not affected (they get upscaled and ingested just fine)
I kinda updated my whole environment in one go and it's broken now, so here's all the changes in case it's good to know:
GPU driver: 572.70 - 572.83
bridge-remix: 126th - 129th
dxvk-remix: 738th - 750th
Toolkit: 2024.5 (nvidia app) - 1.0.0 (nvidia app)
Curiously working diffuse
FYI I'm currently in this part of the code, "executor": 1 is how you would use the "external" processor (multiprocessing), and normally you should be able to call that endpoint many times and all the assets should be processed in parallel.
If your calls to the API are Async, which they should be, it should be as simple as sending many requests one after the other and gathering the results of the futures (which basically equates to launching a bunch of tasks in parallel and waiting for all of them to complete).
That said, you may need to update the max number of processors in the Toolkit's combobox for that to work as expected. I don't think that part can be controlled via the API
Got the fix with tests for basically all endpoints (except ingestion atm) so the API should be more stable now ๐
Will be merged somewhat soon!
Gotta look at this one now
Hmm, seems to work on my side... Can you try to ingest using the API directly?
http://localhost:8011/docs#/Ingestion/add_item_to_queue_ingestcraft_mass_validator_queue_material_post
That's all you need to put in the body. You can replace everything with:
{
"context_plugin": {
"data": {
"input_files": [["D:\\Tests\\Assets\\Textures\\invalid.png", "DIFFUSE"]],
"output_directory": "D:\\Tests\\Assets\\AI Tools"
}
}
}
And of course change the file paths and texture type to whatever you want to ingest
@proud robin
That seems to work, took a second to figure out its double slashes lol but yeah that looks like it worked hmmm
Let me double check everything is up to date with my copy of comfyui and all that, the toolkit is "current"
okay some progress, it completed the upscale in ComfyUI and assigned the diffuse texture but nothing else, the roughness and everything else is present in the ingested folder though
Gonna triple check that my toolkit is up to date real quick
yeah that's the current behavior I think most of us are getting.
And latest toolkit build crashes on launch uuuuuuhhhhh
The one I was running before was the first commit for the endpoint fixes
Yeah thatโs what I fixed today. Waiting for it to get merged
You can submit the crash and send the logs but Iโm guessing itโs the same issue other have been seeing with Glyphs
Aaah okay makes sense now, for a moment I was getting confused wondering if I was still on a previously broken build. Thanks again for working on this and keeping us updated ๐
Should be good to retry using that commit
Lets fuckin gooooo everything appears to be working now with the latest build, you're the fuckin man Pete, thanks for the speedy fix ๐ซก
Awesome! Great news!
tyvm for all the hard work Pete
just got home and installed. looks like everything is fine for Me as well! thanks Pete!
Yes, it's completely fine now! Thanks a lot
Is API being released separately from toolkit?
No the REST API is part of the Toolkit
@peak dagger this PR has been open for a while now, it includes a pretty important fix for PBRify (loading the correct model): https://github.com/NVIDIAGameWorks/ComfyUI-RTX-Remix/pull/8
is there any way that this could be merged soon? ty
Woop, I donโt think weโve been monitoring that repo actively sorry! Iโll check it out today !
Approved! You should be able to merge whenever. Let me know if you can't
Actually looks like our process requires me to merge on our interal repo and the changes will be pushed to GitHub ๐
thank you
Hmm any ideas? fresh clean install / build of everything, comfyui, remix nodes, workflow, pbrify, toolkit
huh.. i try again and now I get this one:
๐ฆ not again
naaaah i'm pretty sure this is on the toolkit side again ๐
did i do the right stuff? i git clone toolkit and built
yeah
is there meant to be a .png on that filename maybe
that included a fix for this issue before
i don't know what's happening tbh and i don't have much time to look into it ๐ฆ
2025-03-29T23:36:32.863375 - Requested URL: http://127.0.0.1:8011/ingestcraft/mass-validator/queue/material
Raw Response:
{'detail': 'The validation did not complete successfully. See the logs for '
'more information.'}
Anyone know where I can find these logs?
The regular toolkit logs
Cheers Pete
These ones right:
toolkit-remix_build\windows-x86_64\release\logs
I'll have a look through this
If you open the toolkit thereโs a โshow logsโ button on the home page. The logs should be called kit_*
i think it might have been either my firewall or antivirus or port in use
very strange. every time I try to upscale, one of three things happens seemingly randomly
500 server error
Works normally
Can't get the ingested texture with name AutoUpScale_.... from the folder ....
Sometimes I'll get those errors but if I try again on the same queue it works without issue, not sure what causes the intermittent error
Happens maybe 1 out of every 10 upscales
all textures are darker than their original versions. What i should do to keep original colors?
can you post an example of the issue
Sorry I've didn't did it before.
I'l post ss's tomorrow
the only thing i've changed in default chain is exported format from png to dds
that might be causing the issue. you don't need to do that
are you using it through chaiNNer? or ComfyUI
chainNNer
okay. definitely don't use DDS
PNGs should work with remixed Gmod?
you need to export as PNG, then ingest with the toolkit. then it'll work
the problem is, upscaled textures doesn't work in-game if i use this script w/png's. Only with .dds
yeah
you need to ingest the PNGs in the toolkit first, then run that script on the output DDS files
in convention, i should select source normals dx or octahedral?
dx
is it working now?
i've faced a strange issue and im trying to figure out for myself why that's happened
Okay, nvm, it's works
but i need to test 1 thing
some certain textures if they were upscaled via pbrify - caused game to crash
but that was when i made them .dds in chain
so i need to test how they would work now
but atm everything works nice. Thanks
Hey @vagrant moon, it seems that PBRify reduces the alpha somewhat on all textures.
First image is original texture, second is after PBRify
ie. the original texture had no alpha transparency, but after pbrify it is reduced to 99 ish percent opaque
could cause some weird issues in remix rendering
here is the alpha channel with contrast boosted.
Before pbrify it was completely 100% white (totally opaque)
Same thing happens with PBRFusion @limpid flame
BUSTED
now y'all have to make me a script that fixes this on a few thousand textures ๐คฃ
(not really)
We both split the alpha and upscale it with her Span model, which I never thought about till you brought it up,
On images with 100% opaque, ig any upscaler would upscale into noise even most of the algorithmic ones
Which means we both need to add logic to detect if the alpha is opaque then to upscale it with point sampling or nearest neighbor instead of span. Or make a full white alpha at new res
something like if original image has no transparent pixels just drop alpha channel and export as BC1 maybe
half the file size, only 4bpp though
might be imperceptible?

Probs keep at PNG since remix import will compress again to dds
Don't wanna compress more then once
true
it may not actually matter at all, i tried using a 75% alpha channel on an albedo texture and it looked the same. as soon as I went below 50% the model with the texture became completely invisible
maybe remix is just using a binary visibility threshold or something
the default mode is alpha test which would explain that behavior, if you toggle the blend option then it would act like a translucent object
so crisis averted! (probably)
not sure if there could be some other weird ramifications of 99% alpha on all albedo textures
ok well this is relevant:
"BC7 varies on a per block basis as needed, allowing it to use the unused alpha bits for additional color definition"
https://www.nexusmods.com/fallout4/mods/25799?tab=posts
so having the alpha in there unneccessarily is probably reducing quality somewhat
The purpose of this guide is to give modders the information they need to maximize visuals and lower vram. There is great confusion about what to do, how to do, when to do with regard to texture form
unfortunately it's not really possible to strip alpha in specific scenarios without greatly harming performance in the chaiNNer workflow, and i don't know enough about ComfyUI to attempt it there. at the very least you'd need additional node packs for that
wasn't there a split channel node?
there is, i already utilize that. but from my understanding binq is suggesting removing the alpha layer under specific conditions. the math for that is extremely costly, i know because i tried it before for something else
it took 5x longer per image
huh interesting
should be as simple as taking the original image and doing a if texture.a < 1 then process, else discard
i'll see if i can do that
that specific setup shoooould maybe work in a way that would only be like a 15% additional cost
the problem is i have to split the alpha layer in a specific way ahead of time, so it's doing a lot of calculations twice
could always do a branch for people that want to use it
very doable
i wouldnt stress about it for my sake at least
never say that
say "yes do it yes do it I need it yes I do"

fixify
it looks like you downloaded an old version of the pbrify models
or didn't download them at all
you need these
follow these instructions: https://github.com/Kim2091/PBRify_Remix?tab=readme-ov-file#comfyui
ah, let me try this. thanks
I downloaded the new release and placed it where it suppose to go.
I select the objects with texture than open ComfyUI and open the workflow .png in there but after that nothing really happens. If I click run in ComfyUI I now get only two errors:
right, so that's the other common error. you need a new build of the toolkit from github i think
this is a prebuilt copy of it someone made a few days ago
download that and extract, and it should work
ok thanks, let me try that right now
still same rror
could be it be due to rtx 5080?
do I need to install creator drivers?
I also see this error:
@peak dagger any idea what's going on here?
it's happening even on the toolkit build from a few days ago
Thos errors are not related and also not a big deal
would need more info than that
I am trying to execute the workflow through compfyui on a texture in rtx remix and keep getting these errors when I click run on ComfyUI:
yeah I mean it's trying to get the layers in your project and doesn't find any. Not too sure what that's about. The endpoint works find on my end.
The only thing I can think of is if no project is opened but otherwise not too sure
You can always try to debug by running the function directly:
http://localhost:8011/docs#/Modding/get_layers
Actually looks like the layer_count argument of that endpoint is not a number ?
I am new to rtx remix, not sure where to find that?
that's in the ComfyUI node code, it's not in the Toolkit UI
@vagrant moon may be able to assist
tbh i'm not really sure what to do here
downloading the latest toolkit and testing on my end though
After the latest toolkit is running, just go here and execute the endpoint. You should see it work fine. From there you can set layer_count to -1, 1, 2, etc.
If all that works then the ComfyUI node is the culprit. Idk if there was a ComfyUI update recently that may have broken the node
Using the endpoint directly ?
latest toolkit + comfy has the issue
yeah I was more asking about the toolkit specifically
trying to use the link you sent to debug, but i'm not very familiar with these types of things unfortunately
Click Try and Execute
you can also set layer_type to "autoupscale" since it seems to be what comfyUI uses
it works as long as it is number
it is already set to that in the workflow:
yeah worked fine too
so the issue is with ComfyUI cause you tested the entire endpoint
yeah I meant in the docs website
my guess is ComfyUI broke something
because Remix works as intended, as you just proved haha
well finger-crossed. Anyway to get older build of comfyui that was working with rtx remix
can confirm my older version of comfy works fine
So someone will have to debug the ComfyUI nodes and push a fix MR ๐
Anyway you can share the installer for older version
looking for it
this is the version i have
Thanks
@limpid flame heads up for you. latest versions of comfy seem to be causing issues with the remix comfy extension
I am using this, I uploaded the upscale models and copyed the files from old custom_nodes over to this portable version. I guess no luck or it just doesn't want to work for me:
I loaded older upscaler models v1.7.0 and that seem to have gotten rid of the error but here is what I see when I Queue Prompt:
Nothing really changes on the RTX side related to textures but there is a new layer now under mod.usda called aiupscale_textures.usda
New error, lol:
yeah. you need to download and add the rplksrd model
this can happen if you have shadowplay on, recording the desktop or something else
I literally just have comfyui and rtx remix open :P. I will play around with it a little more to see if I can figure this out
i think i need to use my rtx toolkit build
the one you linked me might not have support yet for 5080
nope still same error
๐ฆ
i think it has to do with portable build of comfyui
I haven't kept up with 50series support on comfy but for a time you had to build it with a specific pytorch version.
You can try the prebuilt old comfy version with 50 series environment from pbrfusion I built awhile ago
https://huggingface.co/NightRaven109/PBRFusion/blob/main/PBRFusion3.0.2_portable_50seriesonly.zip
Rtx remix node is already installed
If I find time this weekend ill look into the new version problem
that'd be awesome
so I it generating textures now in comfyui but I get this:
man. why are there so many issues ๐ฆ
idek how to go about fixing that one
i can't reproduce it on my end
i guess time to give up and pick up in couple week in hopes that some how magic happens on my machines ๐
๐ฆ sorry
I think if you update rtx remix node it will work now
On top right you can hit manager, custom node search and click update on it
I am still trying to figure out how to first make it all work ๐
PBRify 1.7.2 Update
This update brings another new upscaling model, 4x-PBRify_UpscalerV4. This model does a much better job at refining existing detail, and more accurately removes artifacts.
Download use it in chaiNNer, download this release: https://github.com/chaiNNer-org/chaiNNer-nightly/releases
To use it in ComfyUI, follow these steps: https://github.com/Kim2091/PBRify_Remix?tab=readme-ov-file#comfyui
๐ If you like my work, please support me on Ko-fi! ๐
just tried it, new upscaler looks great so far
FYI the comfyUI node will be updated soon as they will not work on the latest latest commit of the Toolkit.
See #1289913588852592662 message
I'll take care of updating the nodes but you'll need to update them in your provided workflows
thanks for the heads up ๐
ComfyUI Nodes (& Toolkit) have been updated to work with the latest version of ComfyUI & Toolkit
https://github.com/NVIDIAGameWorks/ComfyUI-RTX-Remix/commit/711583119ff6a788ceca8b77689837c4d783f712
it'll be a while before i'm able to update the workflow
well, i regret to inform you all of this, but there's no time for me to maintain PBRify
if someone else is willing & able to update the comfyui workflow, i'd greatly appreciate it. i'm dealing with too much right now to be able to dedicate time to this
FYI the example workflow in the remix comfyUI node repo uses pbrify so it should be usable as-is
Pleasure ๐
i tried giving it a go after swapping the diffuse upscaler (likely not relevant)
and i ended up getting these errors in the get layers part of the workflow
This is super useful! Thank you
You can try getting the latest workflow from the GitHub repository (update the nodes)
thanks, i hadn't noticed it was different :D
@peak dagger
Hey, i am using comfyui with the rtx remix template workflow/rest api, using pbrify. and i keep getting this error:
422 Client Error: Unprocessable Entity for url: http://127.0.0.1:8011/stagecraft/layers/target/G%3A%2FRTX+Doom+3%2FDOOM+3+RTX+MOD%2Faiupscale_textures.usda
, it created the .usda in my poject, i am not sure what to do here.
Are you able to execute this correctly outside ComfyUI?
http://localhost:8011/docs#/Modding/set_edit_target_layer
You can use the GetLayers endpoint to get the list of LayerIDs easily
You can test the set edit target this way
And then in the toolkit you should see the layer you set as the edit target in the layers panel
If you have issues during any of these steps it should give you a better idea of where the issue comes from.
cheers for helping.
yeah that all worked fine, it changed the edit layer target to the new .usda
hmmm
Seems like it's a ComfyUI flow issue then. Maybe @limpid flame would know more since he's been working on improving it ๐
Ok thanks..
First time I used.
I installed comfyui.
Git cloned comfyui remix. And installed.
Grabbed the pbrify models.
Didn't seem like anything else needed doing
Should still be like that just with new updates ๐ Maybe something broke in the mean time on the ComfyUI side though. They've been updating lots of things
Yeah i noticed the model name they used for the upscale node didnt match any from the pbrify model folder. So I changed that, that solved earlier issue, but then hit this. Does sound like needs update.
@limpid flame do you have any idea about this error?
using comfyui with the rtx remix template workflow/rest api, using pbrify. and i keep getting this error:
422 Client Error: Unprocessable Entity for url: http://127.0.0.1:8011/stagecraft/layers/target/G%3A%2FRTX+Doom+3%2FDOOM+3+RTX+MOD%2Faiupscale_textures.usda
hmm not seeing this with latest comfyui and latest remix comfy node. can you please send whole comfyui console readout?
hi, yeah sure:
@peak dagger seems odd shouldnt it make layer
The layer was made, it seems to not recognise it
And rest api by itself allows to select layer
I've never even used comfyui before today, so I haven't been messing with stuff either
can you send the usda file
btw i am am aware chatgpt could be spewing bs here, but jsut in case, this is what it thought:
โก Explanation:
The RTX Remix REST API is saying: โThe layer does not existโ.
The file path appears incorrectly parsed:
vbnet
Copy
Edit
G:\RTX+Doom+3\DOOM+3+RTX+MOD\aiupscale_textures.usda
Note that the path separator + is being used instead of a space โ this happens when:
Improper URL encoding is done
Or the system is double-encoding or not decoding %20 back into spaces.
๐ฏ Root Cause Breakdown
๐น 1. Improper Encoding
The file path was originally:
vbnet
Copy
Edit
G:/RTX Doom 3/DOOM 3 RTX MOD/aiupscale_textures.usda
But the REST call tried:
perl
Copy
Edit
G%3A%2FRTX+Doom+3%2FDOOM+3+RTX+MOD%2Faiupscale_textures.usda
%3A = :
%2F = /
- = improperly used for space
โ Correct encoding should use %20 for spaces, not +, especially in URL path components.
no its getting and parsing the request fine
I wonder if you're the first that tried to use the ComfyUI node with a path that has spaces
mmm
you can try using a path with no spaces and see if you get the error
so just to be clear. if i had RTX DOOM 3, i should try RTXDOOM3?
a quick and easy way to try that without breaking all your paths would be to create a symlink
and yeah correct
oh ok
you can run something like mklink /J "G:/TEST/DOOM_3_RTX_MOD" "G:/RTX Doom 3/DOOM 3 RTX MOD"
it'll create a "folder" "G:/TEST/DOOM_3_RTX_MOD" but it'll just be a symlink to your existing project
then you can open "G:/TEST/DOOM_3_RTX_MOD/PROJECT.USDA" in the toolkit and try in comfyUI
well it seem like a symlink day, as i have been creating a bunch today to free up space on my c drive lol
ok lets try that
it worked
@limpid flame
@peak dagger thanks
๐ 
So we have an issue with spaces in paths in the ComfyUI node
good news but we gotta fix that haha
Pete the toolkit allows for spaces now right?
yeah!
well it felt good to help
ok lets try and fix it in this new pull then lol
how on earth am i the only one using spaces?
I think ChatGPT is right and the issue is with how spaces are encoded
wellatleastwegotitsortedrightguys
ChadGPT
Good question lol
ok well thansk for your help both of you, i'm excited to use comfyui. I couldn't keep doing my workflow, was killing me
@peak dagger you reckon i am ok to keep using symlink or shouldi change my path name?
Up to you! Whatever you prefer. There should be no problem using Symlinks but if you just want 1 instance of the dir then you can rename your folders
oh my i feel the power
@young plaza can you try replacing layers.py with this file in ComfyUI\custom_nodes\ComfyUI-RTX-Remix\nodes
and trying again on the project with spaces? , make sure to restart comfy
yes, but gimme a few mins
all good, preciate' it
ignore last message, i didnt restart comfyui beforehand
@limpid flame Well done, it's fixed
i am going to use this so much, so thank so much for making it
Well its an effort on everyones part! enjoy!
probably wanna make sure we also mark no characters as safe but yeah that's an acceptable solution ๐ Do you wanna add it to your PR ?
Awesome! Thank you !!
yeah! otherwise "/" is safe by default and that'll break the URL parsing
Im confused when it comes to the get layer parts. How do I set this?
@peak dagger anyway you can help me out with the getlayers functions in the workflow? Im not sure how to specify a replacement layer and an aiupscale layer.
You don't need to make any changes to the comfyui workflow (you can skip specific parts like Height map generation if needed)
You just select materials in the Toolkit viewport and run the workflow
It will upscale, generate PBRs, ingest, everything
If I wanted to change it to where instead of upscaling the texture, I have an ai models completely generate a different one, how could I do that?
You just give a layer type, which you can get from the โget layer typeโ node
Depends on the implementation of the model. Youโll have to look at ComfyUI documentation and simply replace the upscale node with your own model inference
@vagrant moon is there a metallic map pth anywhere?
no, it wasn't possible to train a model for that
decided to try out the low vram workflow and I'm getting this error on the 4th node
I am using the toolkit build from 7 days ago
yup, i've got the same issue
and it's only related to the low vram one
layer_types=1 is not valid, it would need to be layer_types=AUTOUPSCALE. Not sure if that's a workflow issue or node issue.
FYI @limpid flame
Using Latest Toolkit, Latest Comfy, Latest nodes, i dont see this problem
Context ^ this was from using portable version of PBRFusion to run this, but nodes have been updated since that
Open a new workflow with that + button
alr
click in the empty space and search for upscale
I'm not at my computer rn so if there's a lot of options u can sc and ill tell u which
?
Uh try double clicking
Lets do load upscale model top one
And then select Kim's upscale model in list for node
Yeh! Now choose upscaler
Safe tensor is full fat latest upscaler, span is faster but lower qual
Ok now click and drag out the bubble on the right next to UPSCALE_MODEL
And release it in space
It should come up with options
Yeh choose ImageUpscaleWithModel
ImageUpscaleWithModel!
Now do same to left blue image bubble and select load image
Nice now same with right image bubble and select save image
Nice now you can drag in images into left load image node, and hit queue to run
Note when you drag in a DDS the image name will change but it won't preview it like it is that green particle board and particle board img preview may stay
lets see
Then it will be in ComfyUI/output or you can right click the done img and hit save
Ok now to save, hit file on top right and click export
To Save the workflow
All of pbrifys models go through that upscale node, so if ya want you can make the output of the upscale into 3 more of those nodes to do the pbr
And that's essentially what ComfyUI is, each node is a Python script, with input and outputs, with it you can easily combine alot of cool things to make workflows
PBRify my sweet - its so incredibly fast with good quality 
?
Hey guys looking for some assistance getting RESTAPI_PBRify working with Remix and cant seem to get it to link up. am i doing something wrong?
@sullen hatch are You making the workflow Yourself? or Is this with the workflow provided on Kim's Github? If it's the latter, afaik The toolkit changed a lot of stuff many months ago that broke that workflow.
ah thats prob why its not working
how do i replace my existing Workflows?
i just updated the readme to point to the correct workflow
๐ going to be honest. i don't use comfy at all and haven't in over a year now
Yeah I don't know either. I'd like to know though... tried getting AI to make Me a PBRfusion4 one the other day with no success.


