ZBrushCentral

Need help with ZBrush -> real-time engine (preferebly Unity)

Hey guys, would love some help with this. I’ve never done real-time characters before and only rendered with Arnold in Maya. There I use a displacement map to bring out the details from my low poly mesh. In game engines or real-time rendering, you use normal maps to do that, right?

My issue is that I bring out my low poly .obj into Unity and throw on a material on my mesh, and then throw my normal map on it, and it still looks low poly and it gets this weird shadow/black color on it. The method I’ve tried is from high poly to low poly in ZBrush. I’ve followed like 5 different tutorials and tried two methods so far, over and over again. First method with ZBrush, and second with XNormals, and nothing works. I tried to put my textures into Marmoset, and it still doesn’t work…

Am I stupid? I sure feel dumb. I’ve been struggling with this for like 7 hours today and my brain is mushy…

Hi @umbrellicalcord

Sorry you’re having some trouble. You’re not stupid! But you have encountered an area that frequently requires study from users.

Working back and forth between two different programs requires you to understand both programs with sufficient expertise. Every program (or engine) will require things done a certain way. Some textures may need to be flipped vertically or horizontally or both, depending on the way the program reckons its worldspace. Be sure you can get a simple color texture applied properly, before trying to troubleshoot potential normal map issues.

You best resource is going to be one dedicated to your target application (Unity in this case), to figure out how to get normal maps to display properly in that specific program, and to hear from other users who have already researched and solved this specific workflow. The information you’re likely to get here is going to tend to be more general. I know very little about Unity, and I know nothing about your process to point out potential error.

Can you share some screenshots of what your models and maps look like (including the results you’re getting when you import them into Marmoset and Unity)? This would help isolate whether or not the problem lays with your workflow in creating the maps, if you’re creating the right type of map (tangent space vs world/object space), or if there is a setting within the renderer that you’re missing (such as needed to make sure the right kind of compression setting is being used, or that the model is calculating its normals and tangents correctly).