I’ve had UE4 for about a month now and have been having tons of fun with it. I have never done any modeling, programming, texturing, etc. before so I am a bit of a noob when it comes to all of . I’ve learned how to blueprint and make models in blender but I’ve hit my next road block and was wondering if someone would be nice enough to help me out.
I just bought an indie license to Substance Painter today. I imported a simple box that I am hoping to use as a mesh for a wall spline. I made a test and drew some things on it with their example mats. I then imported the maps into UE4 and made a new material. The diffuse map seems to be working fine as the mesh is painted the same as it is in SP. The problem I have been having is that in the metallic and roughness maps, they don’t seem to work in the 3d view window when I apply them to the mesh. Everything is matte. They show up fine in the preview window of the material editor but not when I apply it to the mesh, or any surface for that matter. That is the main problem that I am having atm.
Another question is should I get the substance designer? I have a subscription to gametextures.com for PBR mats. I thought I could just drag and drop these into the painter but it seems to not be that easy(unless I’m missing something) as there seems to be no place to hook up all the maps like I can do in UE4, mainly the normal map. Any help or comments would be greatly appreciated.
Also I wasn’t sure if was the proper place to post question. If its not please feel free to let me know.
I use SP for texturing many of my assets, had no problems importing them into UE4. Since the material editor shows your textures fine I’m guessing you haven’t generated lightmap UVs (UV 2) for your mesh. Unless your mesh uses fully dynamic lighting I think it needs setup for the material to show up right (I had exact a while back)
Indeed you can use textures created elsewhere in SP.Use the import image option to get your texture in and then drag and drop it onto the desired channel’s title bar. Eg: to set a diffuse texture import it and drag and drop it from your Shelf under Decals and onto the title bar that says ‘Base Color’. is is super clunky and easy to miss, took me a couple of tries myself at first.
Regarding Substance Designer, I would recommend getting it as well - I’ve been able to procedurally generate nearly anything I’ve needed for my textures and the indie pack is cheap too (and often on sale on Steam).
Hello and thank you so much for the very helpful and speedy replies. I got it up and working thanks to you guys. I knew it would be something small that I was missing and would have taken me forever to figure out. I must say so far that I have been really impressed of how nice and helpful the game development community is to new comers.
One quick question for VSZ or anyone else that knows. I did figure out how to import the diffuse into SP and set it as the base color. I’m just curious is there any place to put the normal map for that diffuse or is that where SD comes in?
The normal map would be baked onto your mesh in the 3d editor program (like blender / 3dsmax or SD / xNormal), but you will need to have the high-poly version of the mesh to bake a normal map. From there you can import the normal into SP and assign it as the normal for your project (in the edit - project settings window), doing will allow you to export the finished normal out after painting. Any Height values that were painted in SP would be added to the normal map you export out of SP, but if you do not have one set before painting, it will not export one out for you. It will export the Height channel, but without a normal map isn’t very useful.
Hey . Sorry not the normal map for the mesh but the normal map for the texture that I’m using. Like when I open the material editor in UE4 you have a node slot for the normal map. When I get a PBR mat from the site im using it comes with Diffuse map, Normal Map, Heightmap, etc. Is there any way to hook that up with just SP or do i need SD for that. Sorry if I wasn’t clear on my terminology.
The only problem with connecting a normal map from the texture itself is that it will cause your entire object to have the normal map applied to it. was a test paint job for a vehicle I did a while ago in painter, you can see that when I apply a texture normal map, it affects everything instead of only where the texture is painted:
In order to get the normal map to only apply to the area where you painted the corresponding diffuse texture, is to import a normal map for your object (as described above), and then paint onto the model with the texture (**EDIT: and import the heightmap as well as the diffuse, and hook them up to their respective channels, then when you paint it will apply the height values correctly, and you can export out the finished normal afterwards), then when you export out the maps it will only apply it to the specific areas. requires a normal map to use as a ‘base’ for the painted height data though.
If you want the whole object to only have one texture applied to it, then you can hook it up in the material editor using the diffuse/roughness/normal maps you got from gametextures and apply the material to the object, but that defeats the purpose of using SP to paint onto the model with multiple materials.
As said, SP allows you to import a normal map per project which is you where you get your high-poly detail in.
For your scenario I think you can import the height map image corresponding to your texture (instead of normal map), and plug into the height channel for that layer. SP will automatically generate normals from these and combine it with the main normal map at the time of export (normal,height export are both supported).
If you don’t have height maps for your texture you should be able to convert it in any image editing software (or SD) although I’m not sure whether intricate detail will be fully preserved. In fact someone asked exact question in the SP steam forums (the OP had a large library of normal maps from prior projects that they didn’t want to convert) and I think the conclusion of the thread was that there isn’t a way to use the normal maps directly.
Hey Guys thanks for the responses. Both of those posts answer my question perfectly. I have one more and if you guys have the time I would love an answer. When i do export the channels and then import them to UE4 and set up a new material it seems like its very fuzzy compared to how it is in SP. I attached them as best I could to the corresponding nodes. Saying that tho I’m probably doing it completely wrong. I’ve taken mats from gametextures before and made a new mat and have had them come out looking great. I figured would be the same just plug in and go. I exported in 2k as well. Any advice would be greatly appreciated. Am i just missing something simple?
Ya i opened up the texture from the SP export next to the one from the gametextures file and they look exactly the same. I must be doing something wrong once i get them into the engine. One thing i just noticed is that when i get further away it gets more blurry in stages kinda like LOD. However i don’t see any lod settings when i click on the mesh nor in in the mat editor. Is something i have to set up in SP? If you have any ideas let me know other wise thanks you so much for the help you’ve given me.
Pretty sure SP doesn’t deal with things like LOD level, etc. I think your best bet is to open both texture properties side by side and compare every single attribute including the compression type used for each image, etc. I’m assuming the file sizes of the both diffuse textures are comparable as well. Maybe post the material editor graph’s screenshots as well in case someone has an idea.