Must have been tired the other night. It was because I told it to save out a TGA from a 16-bit PSD. Everything works fine if you're not being stupid! Cheers
Tom no worries, whenever I do things, and I always do when fatigued is setting in I always screw things up, all because I try to squeeze as much as I can in a day.
I have to change my regime and make a PC cut off time !
@r@m Ya looks like they changed the save functionality. Sorry but I'm still on CS5, the subsequent updates have been pretty underwhelming.
Recently started messing with unity metallic/smoothness split map, it uses alpha which doesn't work with the channel mixer trick. People been long requesting alpha automation here, any ideas of a clever workflow for this so I can add to qSave ?
I've been channel mixing a lot. I turn my layer groups into Smart Objects, one for each channel. Each smart object can then use Advanced Blending to set it to Red, Green, or Blue. Double-clicking opens it as a separate PSB, which means I can see in grays while I work.
For the alpha, I use another smart object, but just keep it hidden. I copy it over to Alpha 1 with a hotkeyed Action. For qSave maybe a naming convention would work great. If you could support a single Layer, a Group, or a Smart Object, that would be great too. Everyone's needs are different.
@Eric Chadwick
Afaik for RGB, you can just use the channel mixer layer effect at the top of a layer group, put something like black as the base, and set the entire group to add, which will mix all the channels on the fly.
As for the alpha, I use copy to alpha macro as well, but it's an extra step to then show the other group for the rgb (in this case metallic), it's not too bad but it breaks the workflow a bit.
So I'm trying to think of ways to speed up this workflow. • One idea is just make a shader variant in the engine for tests but that's probably overkill. • Another idea is like you said, we can flag the group as [A], and he other one as [RGB], and let qSave handle the copy to alpha and group toggle, based on your current layer. (this is complex to implement though) • Open to other ideas
Is the channel mixer method better than setting the group's Advanced Blending to be a single channel? I guess you can toggle it on/off faster, rather than opening a smart object.
I just load my PSD directly in Unity, and it understands the alpha. So I don't us qSave. But 3ds Max is crap at reading PSD alpha, so a TGA is required, and thus qSave. Which engine are you using?
Ah that's cool, am using Unity as well. I like to keep everything in the same PSD though, as I personally find it much faster to make textures
Edit: ok got a smart RGB/A split working with qSave, does everything automatically and very fast. Will test it for the next week or so and then release here cheers
Version 2.4 Released • added automatic rgb/a packer on export
About • RGB/A packing is useful for multichannel maps (e.g. unity metallic gloss), and helps avoid constant copy paste to alpha. • when within containing layer with [A] / (A) in the name, it will be automatically copied to alpha channel on export • if it has sibling layers with [RGB] / (RGB), those will be made visible on export, please position above the alpha • if no RGB is present, the alpha will be copied and no image exported
CreativeSheep : sorry for my poor explanation is really simple no need for a video, you just name the containing groups with those tags and it will pack things automatically.
Link works here
@Eric Chadwick : thanks, changed it to packer to be more obvious
Why not have the script read the layers, if the layer has the prefix _diffuse or the layergroup has the prefix _diffuse that layers or layer group is merged and export as an image format ?
I'm going to safely assume this tool is geared towards game artist, but you should include film &tv artist by including EXR as an export option.
I love this script, but having troubles getting it working in PS CC 2015 (2015.1.1 20151209.r.327 to be exact). Has anybody got it working on the latest Photoshop?
EDIT: Ah, got it working and now I feel stupid. Looks like when Photoshop updated to CC 2015, it created a new folder but the scripts weren't copied. Also I got distracted of the Plugins and Presets folders that can be found in Program Files (x86)\Adobe. Oh silly me...
So I can confirm that the script works in PS CC 2015
oh ye you'll get this error if your export path doesn't exist, it has nothing to do with photoshop version I should probably add proper error description for this one
Hi, first of all thanks a lot for creating this plugin! It's a great times savior and therefore I wanted to introduce it to the art department at my workplace. I'm no coder by any means, but although the pipeline requires different .dds formats (DXT1/DXT5) I was able save them with one action and the help of your plugin The only problem in which I ran was, that I realised qSave doesn't create mipmaps for the .dds files. Is there any way I can "enable" mipmaps in the export settings?
Sorry it will be a long time until I can implement this. I'm not sure about this, but you can try open the qSave.jsx in a text editor, scroll down to the line that has "function saveImageDDS" There's a bunch of tags there, could be the "smip" one might be it ... try changing it to 1 instead of 0 and see if it works. could also be "lomm" change to true. Again not sure which one enables mipmaps man sorry wish I wasn't so busy all the time
Does qSave have to rely on the PSD format for metadata it needs? I've noticed it (understandably) not working natively with Tiff files, if that makes any sense.
Hey Chai! Thank you very much for taking the time to responde! Unfortunately neither of your tips worked (I tried all combinations). The only thing that was diffrent when I changed the "lomm", was that on the import of the dds the "load mip map checkbox" was checked.
Good news everyone! Reading through this thread I picked up somewhere, that there is a photoshop script listner. So I installed that, exported two .dds one with/one without mipmaps. Compared the two files and it revealed that setting
Hey Chai. We just made the move from using .TGA's to .SuperPNG's at work and looks like I'm having some problems with .SuperPNG alphas. If I have .TGA format selected and alpha data in the alpha channel, I get a correct result when exporting the bitmap. But when I change the format to .SuperPNG and export, I get a white alpha. Is this issue with everybody else or just in my rig?
UPDATE: I got the SuperPNG working. I changed couple of things in the qSave.jsx: 1. Commented line 809 (var id20 = charIDToTypeID( "alfT" );) 2. Removed comments in line 810 (var id20 = charIDToTypeID( "alfC" );) 3. Changed "alfT" to "alfC" in line 813 Hope this helps others with similar problem.
Related to above. I also tried the new(ish) alpha copy thing, but I could't get it working properly. Looks like I get just empty alpha when exporting. It's not working in either .TGA or .PNG. Here's my test scene. I Think I'm doing everything correctly (I'm using the qSave04 that is 32bit to export).
Atm png & superpng are reading photoshop transparency data, that's why you got a white alpha. haven't gotten around to add switch between both behaviour yet ...
As for the new alpha functionality, put the upper red layer in a folder and name it [rgb]. Then put both groups in another one, that should work. You may also have to give it an actual name e.g. "glow [a]", not sure.
Version 2.5 Released • proper error message if export path doesn't exist
•
added DDS 8.8.8.8 support (thanks JN)
•
rgb/a packer automatically creates alpha channel if needed
•
fixed error when using rgb/a packer with alpha channel selected
•
toggleable mipmap for dds
Love this script but there appears to be a glitch which prevents me from using it. It appears to automatically change load DDS settings to "Convert to 32Bits" and unticks "Load MIPs" i am talking only basically loading up the DDS, i think it exports them fine. When i change the settings it changes it back every time i load PS.. it does not do that when i delete the qSave from my Scripts folder. (running CC 2015) So i basically cannot look at my exported DDSes (i do need to sometimes as the graphics engine i work with sometimes needs some manual mipmaps tweaks)
Hi, trying out your script. I am using Photoshop CS6 and windows 10. When I run the script. All the textures come out with the top most folder only for all the texture output
I've been using that to save .tgas from inside photoshop but I'd rather support a polycount member
qSave is based on a different workflow really, more lowlevel when you want to export what you see on screen to specified texture instantly.
Also some members here apparently figured out to do mass exports with qSave, but many times you still want to quickly export what you're working on (say that glow map) rather than the whole thing.
vTools is more higher level and fullblown to export the whole thing, scaling options and whatnot, but obviously not instant and takes a while to setup as well.
Bottom line use what works best for you, good luck
Just saw this. Must have missed this while going through the thread. This is how I have been using it since I posted, All I need to do is make only the layers or folders I want to save visible and run the scripts it saves out what is visible on screen to the specified qsave script. Simple and clean.
Just wanted to say thank you for this. I am still learning and had been saving manually to tga files, then going over to UE4, right clicking to re-import and waiting for it to update. I now learned to set up UE4 to detect changes and update automatically and so i just hit F12 to save and its so quick to view even minor changes now. What a relief, thanks!
Replies
Btw there's a photoshop plugin called script listener, it outputs stuff you do in photoshop into a script log you can copy pasta from
Any ideas? Thanks!
I have to change my regime and make a PC cut off time !
Running script i get this:
Clicking the panel button I get this:
Any ideas ?
thx
Sorry but I'm still on CS5, the subsequent updates have been pretty underwhelming.
Recently started messing with unity metallic/smoothness split map, it uses alpha which doesn't work with the channel mixer trick.
People been long requesting alpha automation here, any ideas of a clever workflow for this so I can add to qSave ?
For the alpha, I use another smart object, but just keep it hidden. I copy it over to Alpha 1 with a hotkeyed Action. For qSave maybe a naming convention would work great. If you could support a single Layer, a Group, or a Smart Object, that would be great too. Everyone's needs are different.
Afaik for RGB, you can just use the channel mixer layer effect at the top of a layer group, put something like black as the base, and set the entire group to add, which will mix all the channels on the fly.
As for the alpha, I use copy to alpha macro as well, but it's an extra step to then show the other group for the rgb (in this case metallic), it's not too bad but it breaks the workflow a bit.
So I'm trying to think of ways to speed up this workflow.
• One idea is just make a shader variant in the engine for tests but that's probably overkill.
• Another idea is like you said, we can flag the group as [A], and he other one as [RGB], and let qSave handle the copy to alpha and group toggle, based on your current layer. (this is complex to implement though)
• Open to other ideas
I just load my PSD directly in Unity, and it understands the alpha. So I don't us qSave. But 3ds Max is crap at reading PSD alpha, so a TGA is required, and thus qSave. Which engine are you using?
I like to keep everything in the same PSD though, as I personally find it much faster to make textures
Edit: ok got a smart RGB/A split working with qSave, does everything automatically and very fast.
Will test it for the next week or so and then release here cheers
• added automatic rgb/a packer on export
About
• RGB/A packing is useful for multichannel maps (e.g. unity metallic gloss), and helps avoid constant copy paste to alpha.
• when within containing layer with [A] / (A) in the name, it will be automatically copied to alpha channel on export
• if it has sibling layers with [RGB] / (RGB), those will be made visible on export, please position above the alpha
• if no RGB is present, the alpha will be copied and no image exported
The link for qSave 2.4 isn't working ?
http://wiki.polycount.com/wiki/ChannelPacking
@Eric Chadwick : thanks, changed it to packer to be more obvious
Also I usually keep the 1st page of this thread here updated
I'm going to safely assume this tool is geared towards game artist, but you should include film &tv artist by including EXR as an export option.
EDIT: Ah, got it working and now I feel stupid. Looks like when Photoshop updated to CC 2015, it created a new folder but the scripts weren't copied. Also I got distracted of the Plugins and Presets folders that can be found in Program Files (x86)\Adobe. Oh silly me...
So I can confirm that the script works in PS CC 2015
I should probably add proper error description for this one
first of all thanks a lot for creating this plugin! It's a great times savior and therefore I wanted to introduce it to the art department at my workplace.
I'm no coder by any means, but although the pipeline requires different .dds formats (DXT1/DXT5) I was able save them with one action and the help of your plugin
The only problem in which I ran was, that I realised qSave doesn't create mipmaps for the .dds files.
Is there any way I can "enable" mipmaps in the export settings?
Sorry it will be a long time until I can implement this.
I'm not sure about this, but you can try open the qSave.jsx in a text editor, scroll down to the line that has "function saveImageDDS"
There's a bunch of tags there, could be the "smip" one might be it ... try changing it to 1 instead of 0 and see if it works. could also be "lomm" change to true.
Again not sure which one enables mipmaps man sorry wish I wasn't so busy all the time
Does qSave have to rely on the PSD format for metadata it needs? I've noticed it (understandably) not working natively with Tiff files, if that makes any sense.
If you go to File->File Info, you can see all the tags stored in the "keywords" section
Thank you very much for taking the time to responde!
Unfortunately neither of your tips worked (I tried all combinations).
The only thing that was diffrent when I changed the "lomm", was that on the import of the dds the "load mip map checkbox" was checked.
Reading through this thread I picked up somewhere, that there is a photoshop script listner.
So I installed that, exported two .dds one with/one without mipmaps. Compared the two files and it revealed that setting
( idmmty, 32 )
to
does the trick. I now can export with mipmapsThanks again for the great work!
I'll make a note to implement it sometime ...
If I have .TGA format selected and alpha data in the alpha channel, I get a correct result when exporting the bitmap. But when I change the format to .SuperPNG and export, I get a white alpha. Is this issue with everybody else or just in my rig?
UPDATE: I got the SuperPNG working. I changed couple of things in the qSave.jsx:
1. Commented line 809 (var id20 = charIDToTypeID( "alfT" );)
2. Removed comments in line 810 (var id20 = charIDToTypeID( "alfC" );)
3. Changed "alfT" to "alfC" in line 813
Hope this helps others with similar problem.
Related to above. I also tried the new(ish) alpha copy thing, but I could't get it working properly. Looks like I get just empty alpha when exporting. It's not working in either .TGA or .PNG.
Here's my test scene. I Think I'm doing everything correctly (I'm using the qSave04 that is 32bit to export).
Atm png & superpng are reading photoshop transparency data, that's why you got a white alpha. haven't gotten around to add switch between both behaviour yet ...
As for the new alpha functionality, put the upper red layer in a folder and name it [rgb].
Then put both groups in another one, that should work.
You may also have to give it an actual name e.g. "glow [a]", not sure.
• proper error message if export path doesn't exist
• added DDS 8.8.8.8 support (thanks JN)
• rgb/a packer automatically creates alpha channel if needed
• fixed error when using rgb/a packer with alpha channel selected
• toggleable mipmap for dds
It appears to automatically change load DDS settings to "Convert to 32Bits" and unticks "Load MIPs" i am talking only basically loading up the DDS, i think it exports them fine. When i change the settings it changes it back every time i load PS.. it does not do that when i delete the qSave from my Scripts folder.
(running CC 2015)
So i basically cannot look at my exported DDSes (i do need to sometimes as the graphics engine i work with sometimes needs some manual mipmaps tweaks)
I am using Photoshop CS6 and windows 10. When I run the script. All the textures come out with the top most folder only for all the texture output
Just saw this. Must have missed this while going through the thread. This is how I have been using it since I posted, All I need to do is make only the layers or folders I want to save visible and run the scripts it saves out what is visible on screen to the specified qsave script. Simple and clean.
I guess it works well with PS CS6. My apologies.
No problem. Your script is awesome. Simple and straight to the point.