0
$\begingroup$

I made a model that has some reflective surfaces. But since the model is alone in the world, most of those surfaces look flat and not shiny at all. What I want is to add an environment map, probably using some generated sky texture, and "reflect" it on the model.

I created a simple "sky" texture in GIMP using some noise:

enter image description here

I have configured the world nodes as such:

enter image description here

This increased ambient light by a lot, but I am still not seeing any pattern on the reflections facing outside of the model, such as here:

enter image description here

This makes the model look unrealistic when rendered. I suspect the environment map has to be set inside the shader/nodes for the individual materials, but I found no info on that - or really nothing on using environment maps in cycles render at all.

I also tried this setup:

enter image description here

This alters the color somewhat, but it does not reflect the "clouds" and the surface still looks flat:

enter image description here

$\endgroup$
5
  • $\begingroup$ "I suspect the environment map has to be set inside the shader/nodes for the individual materials" -- no, the basic thing you're doing here is the right thing to do to set an environment map. I don't understand your complaint about "pattern on the reflections facing outside the model" so I can't address the question. Most people are going to use equirectangular environment maps, downloaded from someplace like HDRI Haven, and doing so might help you see what's going on. Individual materials matter, but by their color and roughness, which they use to read the environment, and normals matter. $\endgroup$
    – Nathan
    Nov 4 '21 at 16:57
  • $\begingroup$ @Nathan Well, to see what I mean try to make the default cube in blender look "metallic" without having anything reflected on it. It will just show the base colour and be featureless. So what I am trying to do is to add some kind of fake reflection on surfaces that are not reflecting anything else. Observe this example, using the answer I already got: i.stack.imgur.com/EPN05.png $\endgroup$ Nov 4 '21 at 18:42
  • $\begingroup$ Okay-- so you want it to reflect an imaginary environment, but not anything else in the scene? blender.stackexchange.com/questions/2030/… might be what you're after. Notice the note in the first answer: "A glossy node is used instead of an Emission node to get the "real" reflections in addition to the image." If you don't want other reflections, emit your looked up color. $\endgroup$
    – Nathan
    Nov 4 '21 at 19:45
  • $\begingroup$ I kinda want the opposite: When there is no real reflection available, reflect a "fake" environment to make the still image look reflective. I am only making the model to use the final render as a game asset, so I need to fake the reflectivity somehow. $\endgroup$ Nov 4 '21 at 20:21
  • $\begingroup$ That's kind of a weird concept, and there might be some ways to do it in Blender, but it has a lot to do with specifying what you mean by "when there is no real reflection", which isn't perfectly clear. But more importantly, doing this in Blender has absolutely no bearing on doing it in a game. Reflections don't bake right anyways, because they're view dependent. For controlling game reflections, you need to be working with the shaders used in-game, not Blender. $\endgroup$
    – Nathan
    Nov 4 '21 at 21:05
0
$\begingroup$

For a quick and easy solution enable Dynamic Sky in Preferences -> Add-ons

enter image description here

Then the N-panel will have a Create tab, which you can use to create a dynamic sky texture.

enter image description here

Now switch your node viewer to World and you can change the material to the newly created Dynamic_1 and it'll assign this giant mess as your environment.

enter image description here

You can click on the Create tab in the N-panel again to access some settings, but the world environment is now applied.

enter image description here

This doesn't really generate anything below the horizon, so if you don't have a ground plane it might not look great for you out of the box. If you need something more advanced, look into CC0 HDRI environments.

$\endgroup$
6
  • $\begingroup$ Is it possible to render the model without rendering the sky dome, but still have the sky dome reflected on the model? I am planning to use the render result in a 2D game, if the sky was also rendered I would have to manually erase it from the image. $\endgroup$ Nov 4 '21 at 17:20
  • $\begingroup$ I think what you want is to enable Render Properties -> Film -> Transparent. - blender.stackexchange.com/questions/1303/… $\endgroup$ Nov 4 '21 at 17:22
  • $\begingroup$ I have that enabled, I was just worried that if I add sky like that, it will appear in background of the model instead of it being empty. Also, what is the "N panel"? I am not finding any good explanation on google. $\endgroup$ Nov 4 '21 at 17:29
  • $\begingroup$ That's the colloquial name for the panel in the main viewport that slides out when you hit 'N'. I forget what the official name is every time. $\endgroup$ Nov 4 '21 at 17:31
  • $\begingroup$ Ok, so I got it working. I had to update my blender. Now what I see though is this only works for objects facing directly up: i.stack.imgur.com/EPN05.png Is there a way to make the reflection space curved so that it affects the sides as well? Or any other way I can create fake reflections in other directions too? $\endgroup$ Nov 4 '21 at 18:40

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.