KeyShot Forum

Technical discussions => Data Import => ZBrush => Topic started by: ghostweeble on March 18, 2015, 03:37:07 PM

Title: Transfer polypaint to keyshot WITHOUT material information?
Post by: ghostweeble on March 18, 2015, 03:37:07 PM
Hello,

I would like to know how to transfer just the pure polypaint info from my model in ZBrush into Keyshot without the matcap material information being baked into the color texture that is created for keyshot.

Thanks!

slothkins
Title: Re: Transfer polypaint to keyshot WITHOUT material information?
Post by: guest84672 on March 19, 2015, 02:56:49 PM
You can always swap out the underlying material and keep the polypaint as a texture. Does that help?
Title: Re: Transfer polypaint to keyshot WITHOUT material information?
Post by: tqped on March 20, 2015, 06:56:19 AM
or use flat material

grtz p
Title: Re: Transfer polypaint to keyshot WITHOUT material information?
Post by: ghostweeble on April 06, 2015, 06:27:47 PM
Hi guys,

Sorry I didn't see your replies until today. For some reason I wasn't notified, even though I subscribed to this thread.

thomasteger:
Swapping out the material in keyshot (by ALT+dragging onto the model) doesn't work. The matcap shading seems  to be retained.

tqped:
In doing some tests you're right! Using flat material is the only way to transfer the polypaint to Keyshot without shading/specular of the matcap so that the materials can be truly changed in Keyshot.

There are some workflow issues that I'm hoping you might be able to address:

I currently use a material called ZbroPaint in zbrush to do my polypainting (it's a material that's good for painting textures as the shading is not strong). My findings are that after I have sent a model through to Keyshot, the material will not change, even if I change the material in Zbrush and resend to Keyshot. Interestingly, the polypaint does update in Keyshot correctly, so that leads me to believe that Keyshot actually does handle the polypaint and Matcap separately.

I think this may be a bug, as I can't imagine that this is the intended behavior?

What I'd like to be able to do is polypaint in ZBrush using the ZbroPaint material while doing test renders in Keyshot to preview my work. Then, when I've finished, change the material to flat color so that I can properly change the material in Keyshot.

Right now there doesn't seem to be a way to do this, which is limiting. I hope that this can be fixed or there's some workaround I'm missing?

Let me know if this makes sense, I'm happy to explain further or create example files to illustrate the issue more clearly.

Thanks!

mm



Title: Re: Transfer polypaint to keyshot WITHOUT material information?
Post by: tqped on April 07, 2015, 04:03:13 AM
hm, it's not a bug.

you know there are 3 ways of polypainting in zbrush?
that's why there are 3 buttons in de toolbar.
mrgb: material plus color,
rgb: color only
m: only material.

i guess you are polypainting with mrgb on, thus material and rgb color.

only way to export this from polypaint to texture is with the excellent plugin from J. Drust, matcapbaker.
you can find it here http://www.zbrushcentral.com/showthread.php?170886-MatCap-Baker!-unofficial-Information-Installation.

let me know if this helps or if you need more info.
and do not mind my bad english. (i am dutch speaking)

grtz p
Title: Re: Transfer polypaint to keyshot WITHOUT material information?
Post by: ghostweeble on April 07, 2015, 09:36:18 AM
Hi tqed,

I do understand the difference between "M" material painting, "RGB" color painting and "MRGB" material and color.

1. I don't want the materials from zbrush transferred to keyshot, only RGB information, so that I can then change the materials in zbrush and retain the pure RGB info from zbrush.

2. The flat material in zbrush is the only material that transfers the RGB information without zbrush material specular/shading/matcap information.

3. The first time a model is transferred through the keyshot bridge, the zbrush material that was transferred initially is permanent! If I subsequently change the material in zbrush (for example if i fill the model with MatCapRedClay) and resend it to keyshot, the material does not update in keyshot, even if I modify the RGB in zbrush (which does update in keyshot correctly). This is what I'm calling a 'bug' or limitation.

I think communicating the issues I have verbally is difficult for me and I'll have to put together visual reference and files.

Thanks,

mm
Title: Re: Transfer polypaint to keyshot WITHOUT material information?
Post by: tqped on April 07, 2015, 12:40:55 PM
jep, i did some tests, and your right.
didn't know that and i do not know if this is a bug.
it certainly is a limitation.

on the other hand, why whould you change your material in zbrush while polypainting?

as long as the changes you polypaint in rgb are correctly send to keyshot to preview, everything is ok, not?
after the polypaintingjob is finished you can then bake a texture from the polypaint in zbrush, (texture>create>texture from polypaint),
export it, and use that in most of keyshot material-colorslots. (some of the keyshotmaterials don't have a slot for colortextures)


Title: Re: Transfer polypaint to keyshot WITHOUT material information?
Post by: ghostweeble on April 07, 2015, 01:20:30 PM
EUREKA!!!!

I've found that if I turn "Group by materials" ON under external render in ZBrush, then the material updates in keyshot with no problem. I'm not sure if this is the default and I somehow turned this parameter off accidentally? It still seems like a bug to me, as this doesn't seem to make sense in what this parameter is supposed to do.

Either way I can now just switch to Flat color and transfer the model over. I would still prefer to have only the RGB info stay when swapping materials in Keyshot, but this will work.

tqped, the point is I do not always want to make a texture as many times I do not even have UV's on my models sent to keyshot. This is for concept illustrations and also just for quick workflow (Which is the whole point of using Keyshot vs. exporting to another 3d app). My goal is to transfer JUST the RGB polypaint to keyshot, so that I can then switch the material in keyshot and not have the matcap shading included. Using flat color does this and now with "Group by materials" on so that I can update the material in keyshot, this will work.

Thanks,

mm
Title: Re: Transfer polypaint to keyshot WITHOUT material information?
Post by: tqped on April 08, 2015, 02:29:14 AM
nice find.
testing it now.

glad i could help (a little)

grtz p
Title: Re: Transfer polypaint to keyshot WITHOUT material information?
Post by: bobKotlinski on December 15, 2016, 07:43:12 AM
Thank you so much! this was driving me crazy!!
Title: Re: Transfer polypaint to keyshot WITHOUT material information?
Post by: soren on December 15, 2016, 11:44:07 AM
If I understand the ZBrush terms correctly, the poly-paint information is transferred using vertex color into KeyShot.

After you have imported your model, change the texture type to Vertex Color and you should have the RGB paint only. You can use the vertex color texture like any other in the material graph for full flexibility (i.e. use with labels etc etc). You may want to apply a color adjust node in the material graph to adjust the contrast.

Søren
Title: Re: Transfer polypaint to keyshot WITHOUT material information?
Post by: ghostweeble on January 20, 2017, 03:07:47 PM
Hi Søren,

I just saw your reply now. I thought I was subscribed to this thread but I guess not!

I'd never seen that vertex color mode under the texture, thanks for pointing it out. It's still not working as I'd expect and I'm confused at how Keyshot is actually translating the colorspace from Zbrush into Keyshot.  I still cannot get pure RGB vertex color info transferred into Keyshot via the bridge. (See my attached image that shows the issue.)

Please let me know if you have any questions I could clarify.

EDIT: I wonder if I should post this as a new thread?

Thanks!

Title: Re: Transfer polypaint to keyshot WITHOUT material information?
Post by: soren on January 23, 2017, 01:05:37 AM
I do not know exactly how ZBrush transfers material information to KeyShot- we simply render it.

MatCap's are not physically based materials so when using them in KeyShot you will at times get peculiar results.

As I wrote above, I do not know how ZBrush converts their data to our format, but I a wild guess would be to add a color adjust node between the diffuse channel and the vertex color node and set the color adjust node contrast to 2 (see attached).

If you have any further issues, I suggest you contact ZBrush support.

Søren
Title: Re: Transfer polypaint to keyshot WITHOUT material information?
Post by: ghostweeble on January 23, 2017, 10:54:57 PM
Thank you,

I'll try to inquire with Pixologic support. There really shouldn't be a need for wild guesses I would imagine?

Title: Re: Transfer polypaint to keyshot WITHOUT material information?
Post by: soren on January 23, 2017, 11:21:33 PM
Did you try the color adjust node as I described? To reproduce the effect of the texture map, you will have to add that node.

Søren
Title: Re: Transfer polypaint to keyshot WITHOUT material information?
Post by: dylanpanther on February 14, 2017, 12:00:02 PM
Hello, I made an account to reply to this. I'm having the same issues as GhostWheeble. Your fixes Soren don't help at all unfortunately. The color adjust node doesn't do anything. Also, my nodes aren't called "vertex color" nodes, they're called "texture map"

Also, your tip to change texture type to "vertex color" isn't even possible. There's one option that it's on currently called "matcap+vcol"(even when I send the model over with no material).
i'm using "keyshot 6.3 pro for zbrush"

Honestly, it simply feels like this wasn't beta tested with an advanced artist user that regularly uses zbrush and keyshot. I've ran into so many issues with keyshot bridge it's extremely frustrating, I regret purchasing, and it wasn't cheap.

Bugs I've experienced:
-materials don't update properly. There's like ten different ways to reproduce this. If you send a model to keyshot, tweak materials, then go back to zbrush and edit the model and resend- all your materials get bugged in 5 different ways, even if you don't rename or move any subtools(if you do, it breaks it even further)

-polypaint doesn't come over as just a texture, it brings matcaps. I'm using a nice renderer. I don't want crappy matcaps, ever. Why is this even default behavior??? I simply want to use my polypaint texture for texture slots. Can't for the life of me figure out how to seperate the vertex color simply. I want to use the materials in zbrush really as just IDs for parts of my model.

-Documentation is embarassing, unless I'm using the wrong kind, which I got from help>manual within keyshot. https://luxion.atlassian.net/wiki/pages/viewpage.action?pageId=8061092 - the material parameters don't match mine, and the parameters they do explain are very "surface level," not deep, and don't include any pictures to show differences in say translucency depth or whatever.

-tried to submit ticket, and it never loaded. Had to write my ticket twice, to again not have it load. It was stuck with a rotating circle for over 5min. I guess I'll just use this program in hacky manners and paint a bunch in photoshop.

This is really ranty, but seriously hire someone that's a professional working in the film industry/game industry, listen to his feedback, and fix this half-baked keyshot bridge stuff. I've spent like 1-2 work days now sending emails to get help that doesn't help at all, or is simple as "try reinstalling." At first I thought my program was bugged, but after going through support/question forums here and on pixologic, the program simply doesn't work as advertised. Iteration and having materials work perfectly is vital to this bridge. Not recommending this product to anyone until it works as advertised.

Cheers,
Dylan
Title: Re: Transfer polypaint to keyshot WITHOUT material information?
Post by: guest84672 on February 14, 2017, 12:07:58 PM
Thanks for the feedback, Dylan. Have you contacted Pixologic's support hotline for this? Pixologic has developed the bridge and should be able to address these concerns.

I will also contact them and make them aware of these issues.

Thanks,
Thomas

Title: Re: Transfer polypaint to keyshot WITHOUT material information?
Post by: soren on February 15, 2017, 04:25:08 AM
Hi Dylan,

To access the Vertex Color texture you should change the texture type to Vertex Color (not the Mapping Type where "matcap" is written). Vertex Color is located just below Spots in the Texture type dropdown in the section "3D Textures".

The underlying issue is that the vertex colors sent over from ZBrush does not using linear RGB. This is compensated by "Contrast = 1" on the default texture map. If you switch to use Vertex Color directly, you will get the non-linear RGB values as the texture. By apply the Color Adjust node with contrast = 2 (this is essential), the same compensation is applied to the Vertex Color [the need to use a different contrast value for texture map and color adjust is historical and unfortunate).

Søren
Title: Re: Transfer polypaint to keyshot WITHOUT material information?
Post by: dylanpanther on February 23, 2017, 11:46:46 AM
Soren, you are awesome. I was a total dope and was doing what you said, that works!!! I have received further support from both keyshot and zbrush and solved most of my issues, and will definitely be recommending this product to people. I apologize if I initially came off rude, you guys rock.

Thanks!!
Dylan