What is an Ambient Occlusion Map?

Поділитися
Вставка
  • Опубліковано 9 гру 2019
  • In this episode, we cover the Ambient Occlusion map and its application in the shadow details of a material.

КОМЕНТАРІ • 16

  • @feloparedes2152
    @feloparedes2152 4 роки тому +3

    Thanks for the info. Regards

    • @GetLearnt
      @GetLearnt  4 роки тому +1

      Happy to help, friend! Cheers!

  • @Pac0Master
    @Pac0Master 4 роки тому +3

    Should the AO be baked into the Diffuse map/Albedo in older engines that do not support AO?

    • @GetLearnt
      @GetLearnt  4 роки тому

      Definitely a good question! Ultimately, it depends. Conceptually, no it shouldn't because baking shadow info into your colour info means you can't actually ever get rid of the AO on a model. Assuming that the engine does not provide options such as Screen Space Ambient Occlusion or shader AO properties, I would advise only baking the AO into Diffuse maps of static objects, because this way you are less likely to encounter a moment where you will have light directly shine onto those areas, which in a newer engine would remove the AO entirely. As well, I would suggest not baking in harsh black shadows, but rather use it to provide darker values of the hue/colour of the affected area. This way, you are even less likely to see gross lighting irregularities if your model is moving between differently lit environments. It certainly is not ideal, but sometimes we need to cheat to get it looking good. :)

    • @Pac0Master
      @Pac0Master 4 роки тому +1

      ​@@GetLearnt
      I had in mind more like for texture of World Geometry not model
      Most of the time those engines don't use models for terrain,
      It's a texture applied directly to a brush

    • @GetLearnt
      @GetLearnt  4 роки тому +2

      @@Pac0Master Ah, I see. If you're thinking about using a texture for creating world terrain, I'd instead recommend using a Height Map. Pretty much all engines, even older ones, allow for the input of Height Maps to be used for terrain creation. An AO map can do basically the same thing, but its purpose is not the same and will therefore give you some unexpected results. Definitely take a look at my Height Map video of you haven't already!: ua-cam.com/video/fkcrNDf8zYM/v-deo.html

    • @Pac0Master
      @Pac0Master 4 роки тому

      @@GetLearnt
      Fair point.

  • @matbroomfield
    @matbroomfield 4 роки тому +2

    Forgive me, and I'm sure I've asked something similar before, but if you are using PBR ray tracing, why would you need to fake lighting with an ambient occlusion map? Surely if the lighting is being accurately traced, it will reveal or hide shadowed areas? A few videos ago, you said that the reason to create PBR materials was to create surfaces that behave predictably in different lighting environments. Surely an ambient occlusion map is the antithesis of that?

    • @GetLearnt
      @GetLearnt  4 роки тому +4

      That's a pretty good question! So the AO map is used to denote areas where shadows would be when light is not directly hitting it. With current shaders in games, when we have a light source directly hitting the hidden area, the shadows will go away like they would in real life. It's merely a means to determine where shadows would appear on a micro level, as it would be a little more resource intensive to have it calculate procedurally. If you are using a ray-tracing engine such as Arnold or Cycles or the like (any offline renderer), AO maps wouldn't be as integral because you are using a more accurate light-path tracer which can define these smaller areas of light occlusion (since you aren't required to do it realtime, who cares how long it takes to render them). If the engine allows you to plug in an AO map, it will have taken into consideration the PBR guidelines I've mentioned earlier, so it will still operate in a PBR-condusive way. The real reason we have AO maps is for games where all of our rendering has to be done in realtime (online renderer). :)

    • @matbroomfield
      @matbroomfield 4 роки тому +1

      @@GetLearnt Ahh of course, games again. I must remember that that is the primary perspective you are approaching everything from. I wonder if they will still be needed now tha5t ray tracing graphics cards for games are on the verge of going mainstream? What an amazing piece of progress!

    • @GetLearnt
      @GetLearnt  4 роки тому

      @@matbroomfield Ya this channel is mostly game specific, as games have more of the stricter limitations due to being real-time. The RTX cards blow my mind, Its basically witchcraft to me! I'm definitely excited for them.

    • @matbroomfield
      @matbroomfield 4 роки тому

      @@GetLearnt Yeah, I didn't think we'd get real-time ray tracing till 2030 or later. Add that to VR and the future of games is truly stunning. Can wait for a full VR, photo-real version of Skyrim!

  • @keegankochis
    @keegankochis 2 місяці тому

    Should the occlusion map only affect the ambient light contribution towards the diffuse color or should it affect the diffuse color contribution from all of the light sources in a scene? (directional light, point lights, spot lights)

    • @GetLearnt
      @GetLearnt  2 місяці тому +1

      Ultimately it would depend on the shader that you are using, and how it is utilizing the AO map. The AO map itself is just used to denote areas that are obscured and could create areas of shadow.
      Now, my understanding is that most common use-cases for the AO maps are that they interact all light sources that are cast upon the object, and use the positions of those lights to determine what areas are facing away from the light source and darken them. This creates the 'self shadowing' look. I think you are going to find most if not all shaders you use with an AO map will work this way, however since shaders are just pieces of code, there is nothing to stop someone from writing one that only considers the ambient lighting in the AO display calculations.

    • @keegankochis
      @keegankochis 2 місяці тому

      ​@@GetLearnt Thanks for the quick reply!

    • @GetLearnt
      @GetLearnt  2 місяці тому

      @@keegankochis No prob! :)