ZBrushCentral

Applying multiple displacement maps to one mesh in Maya?

Applying multiple displacement maps to one mesh in Maya?

Ok, sorry for all of the questions today. I have looked all over the forums, and have watched several Gnomon movies today to try and figure this out but I am having no luck.

So, the question I have now: I have a model that has five separate 0 to 1 UV regions that make up my mesh. I.E Head, body, arms, legs, etc. I created separate displacement maps for each of these sections and I am now trying to apply these displacements back to my mesh in Maya 8.5. According to the Gnomon movie I should convert my mesh to a sub divisional surface. I did this. Now I am trying to assign the individual shading networks to my mesh. I have selected each of the 0 to 1 regions converted the selections to faces and assigned the shading networks. I was able to do this fine. However, when I try and render in Mental ray, I am getting an error saying that there are no displacements at sub-div level 0.

So, I made sure the next time that each of my displacements were assigned at level 0. Or so I think. Again I am getting the same error. The only way I am able to get Mental ray to see my shader networks is if I drag and drop my shader to the selected surface. However, I am only able to do this to one of my five shaders. Mental Ray will render. So, what I want to know is do I need to create only one shader network will all of my displacements assigned to only one Lambert? How do I get around this error? I am at a loss, and getting very frustrated!

Any help out there.

Cc909

You might wanna look at the last part of this. Basically, you’d want to assign the shader to the faces (UV islands), not the mesh.

Behold! A half-lambert half-blinn poly!
[Capture.JPG](javascript:zb_insimg(‘62188’,‘Capture.JPG’,1,0))

This is because maya’s textures repeat 0-1 on areas greater or less than 0-1 on the scale of 0-1. So, in multidispmap mesh, it’s like assigning different shaders on uvs stacked all on 0-1s. . . . . :smiley:

feureau

I am not sure I follow what you are saying. What to you mean that I should assign the shader to the faces ( UV islands ) What is UV islands? The only way I have been able to assign multiple shaders to a single mesh is to select the previously defined faces that make up my UV 0 to 1 spaces.

According to a Gnomon DVD they said that I needed to convert my poly mesh into a sub-d mesh. And this is were I think that I am having the problems. In the control panel I am making sure that my sub-d is at base 0 before I start trying to assign my multiple shaders.

By selecting each of my UV 0 to 1 shells and converting them to faces I am able to apply all of my maps and have it look right. But once I try and render, this is when the error happens.

The only way I can get mental ray to see my shader is to select my mesh and drag and drop one shader network to mesh. Then and only then will Mental Ray render out.

I know that I am not getting a good render out of my displacements… However, I want to have all of my displacements applied before I begin dialing them in.

So is there something I can do to fix this problem. All of the tutorials I have run across have only one map that they are using for their mesh. So, I am not even sure if it is possible to have multiple displacement maps assigned to one single mesh.

I hope that by having these screen snap shots, helps to depict my problem better.

Thanks again for the help feureau

Sorry, wrong term for maya users, UV island is UV shell. :smiley:
[Capture.JPG]test1.jpg

File is attached at the bottom.

Btw, on an unrelated note: you might wanna check the direction of the normal on your mesh. It might be flipped without you realizing it, causing blowups and other head-scratching head-banging problems…

Hope that helps.:wink:

Attachments

Untitled-1.jpg

[color=#333300]feureau

Thank you so much for all of your help. Unfortunately, I have followed all of your examples and assigned my maps they way you said, and also the way in the zb to Maya examples. If I apply my maps to just a poly mesh as you suggested Mental ray has no problems seeing my maps.

Its only when I take my mesh and convert it to a sub-div surface that Mental ray has a problem with the textures that are assigned. I reassigned all of my maps once my mesh was converted. By selecting the uv shells and converting them to faces and then selecting my shader net work and then selecting assign to selected. This works and I can apply all of my maps. But Mental ray will not see them.

I did in fact have all of my Normals reversed, so thank you for that advice. But I am still stuck with not being able to apply multiple maps to my Sub-div model. I can only still drag and drop only one map to the sub-div. This is the only way I can some how assign the maps to sub div level 0. I know that it has something to do with were the maps are being assigned to the level of the sub-mesh. But for some reasoned I can’t figure out what is going on.

Cc909

feureau

So, I have compiled my Maya files into a .rar There are three files.

The first file (6_30_07_SlagSloth_Poly_4p278.mb )

is a poly mesh with all of my textures and displacement maps applied to my mesh. This is the only Mesh that I have been able to add all of my displacements and have them render in Mental Ray. The only problem with this file is the fact that I cant get my mesh to sub-divide enough. According to a Gnomon DVD Zbrush production pipeline. They say that to get the best displacements you need to convert your mesh to a sub-divisional surface. Is this in fact true? If not I guess that I will just keep messing with this file to see if I can get the render better.

The Second file (6_30_07_SlagSloth_Sub_d_4p278_all_maps_error.mb )

Is my base mesh from Zbrush at level 1 and converted to a cage before I exported. Once I imported my mesh into Maya I converted it to a sub-div mesh. I then selected each of my UV shells one at a time by selecting the UV’s and converting my selection to faces. I then went into Hypershader and selected the appropriate shader and assigned each one. I did not have any problem doing this. I then selected my mesh and went into Mental Ray Approximatio Editor and created a displace approx, and a Subdivission Aprox as well. I then set all of the appropriate setting according to Zb to Maya tutorials. Every time I try and render with Mental Ray I get this error

( //Error: ( Mayatomr.Geometry) :stuck_out_tongue: olyToSubDShape1,no material assigned to faces in subdivision surface base mesh, ignored // )

- I looked at the script editor while I was applying my displacement maps and I saw this

sets -e -forceElement lambert6SG;

// Result: lambert6SG //

select -cl ;

The Third file (6_30_07_SlagSloth_Sub_d_4p278_single_map_draged_and_dropped_works.mb )

Is the same mesh cage converted to a sub-division mesh. This file is showing that if I just select the mesh and middle mouse drag one of my shader networks to my mesh I am then able to render in Mental Ray. However, I am not able to assign all of my displacements. Only the one.

  • I looked at the script editor while I was applying this displacement maps and I saw this

-

defaultNavigation -source head_slagsloth -destination |polyToSubd1|polyToSubdShape1.instObjGroups[0] -connectToExisting;

// Result: Dropped head_slagsloth onto polyToSubd1 //

Notice how on this third file the script editor shows that the displacement map is placed on the obj Group [ 0 ]. I think this is what mental ray is freaking out on in my second file. Notice that the script editor in the second file has no mention of sub div level’s not to mention level [ 0 ].

So, sorry for the long post and all of the questions. I know that I am being a pain in the %$#%% But I would really appreciate any help or advice you could provide me. I am at a complete loss. I have been trying for over two days now to get this to work.

Thanks a lot. It would mean the world to me.

I hope that this all means sense.

Sincerely

CC909

http://cc909.files-upload.com/files/336853/SlagSloth_Displace_issues.rar

This is an old post so this may be no longer useful.

I ran into the same problem with subd’s not rendering when multiple displacements were mapped on them. I also did a similar test using a square deformed and detailed in zbrush and then displaced back in Maya. Likewise that worked.

Long story short… I found that because my Zbrush model was far more detailed, the subd model had multiple levels. There were enough faces per UV shell so that the easy way to select a whole shell was through the UV texture Editor. It turns out that when selecting the faces this way, at least in Maya 2008, it selects faces at all the subd levels, or at least more than just level 0. Instead I selected the faces using the scene view. I was then able to apply the displacement just to level 0. My renders turned out fine.

–tip-- To make it faster… select the faces at level 0 in the scene view and then deselect faces that may have been selected in bordering shells through the UV editor.
cheers,
Sky

I think I got the same error as you this time around importing a mesh. Strangly while the error says that it is because there are no displacements at level 0, the fix in my case was that my imported mesh ended up having several triangles. I had apparently been sloppy when filling in the eyes before exporting the mesh to zbrush. With the triangles removed before converting to subd’s it renders fine.

Because you are using maya 2008 and multiple uv sets you will need to run a script to remove the bumps where the uv seams are. It can be found at
http://www.zbrushcentral.com/zbc/showthread.php?t=54042
or search for “maya displacement issues”

Sky