Multiple Normal Maps on One Model

Hello,
Quick question, I have a room with five different textures made in blender. 3 Normal maps (Floor, Wall, Ceiling) and 2 Diffuse Textures (Floor and Wall, The Ceiling is only a normal map). So after exporting using Chicken, then loading and using the Automatic Shader Generator, Only my wall is normal mapped.
Lines of Code in Python:

room = loader.loadModel("Room")
room.reparentTo(render)
render.setShaderAuto()

Interesting Part of .egg File:

<Material> Wall {
  <Scalar> diffr {0.800000011921}
  <Scalar> diffg {0.800000011921}
  <Scalar> diffb {0.800000011921}
  <Scalar> specr {0.25}
  <Scalar> specg {0.25}
  <Scalar> specb {0.25}
  <Scalar> shininess {12.5}
}
<Material> Tile {
  <Scalar> diffr {0.800000011921}
  <Scalar> diffg {0.800000011921}
  <Scalar> diffb {0.800000011921}
  <Scalar> specr {0.25}
  <Scalar> specg {0.25}
  <Scalar> specb {0.25}
  <Scalar> shininess {12.5}
}
<Material> Ceiling {
  <Scalar> diffr {0.800000011921}
  <Scalar> diffg {0.800000011921}
  <Scalar> diffb {0.800000011921}
  <Scalar> specr {0.25}
  <Scalar> specg {0.25}
  <Scalar> specb {0.25}
  <Scalar> shininess {12.5}
}
<Texture> Ceiling_00_Tex.002 {
  "./Textures/Ceiling-Normal.jpg"
  <Scalar> envtype { NORMAL }
  <Scalar> minfilter { LINEAR_MIPMAP_LINEAR }
  <Scalar> magfilter { LINEAR_MIPMAP_LINEAR }
  <Scalar> wrap { REPEAT }
}
<Texture> Wall_01_Tex.004 {
  "./Textures/Wall-Normal.jpg"
  <Scalar> envtype { NORMAL }
  <Scalar> minfilter { LINEAR_MIPMAP_LINEAR }
  <Scalar> magfilter { LINEAR_MIPMAP_LINEAR }
  <Scalar> wrap { REPEAT }
}
<Texture> Tile_01_Tex.001 {
  "./Textures/Tile-Normal.jpg"
  <Scalar> envtype { NORMAL }
  <Scalar> minfilter { LINEAR_MIPMAP_LINEAR }
  <Scalar> magfilter { LINEAR_MIPMAP_LINEAR }
  <Scalar> wrap { REPEAT }
}
<Texture> Tile_00_Tex {
  "./Textures/Tile-Diffuse.jpg"
  <Scalar> envtype { MODULATE }
  <Scalar> minfilter { LINEAR_MIPMAP_LINEAR }
  <Scalar> magfilter { LINEAR_MIPMAP_LINEAR }
  <Scalar> wrap { REPEAT }
}
<Texture> Wall_00_Tex.003 {
  "./Textures/Wall-Diffuse.jpg"
  <Scalar> envtype { MODULATE }
  <Scalar> minfilter { LINEAR_MIPMAP_LINEAR }
  <Scalar> magfilter { LINEAR_MIPMAP_LINEAR }
  <Scalar> wrap { REPEAT }
}

Thanks for all of your help!

If you temporarily disable the wall normal map (by changing the envtype to “modulate” for example), does the normal map for the ceiling work?

Changing the wall to normal map just makes the wall have the purple normal map color, and still no normal maps on the floor or ceiling. Should I make the room into 3 separate objects?

SOLVED: By exporting the parts of the room as seperate objects, it works fine.

Hmm. Are there 's in the egg file pointing to Ceiling_00_Tex.002 ?

Thanks for your help, it is fine with 3 different models. By the Way: There were Tref’s pointing to the appropriate texture spaces.

Don’t suppose you could post your not working egg file regardless? (All of it, not just the start.) The original scenario should work and I would rather like to know why it didn’t - if there is a bug its best squashed.

Well, Panda indeed supports just one normal map per render state. Wouldn’t surprise me if that happened to be the problem here (although I do wonder why the ceiling didn’t have the normal map then, with the one on the walls disabled).

EDIT 2017-07-15: Panda now supports multiple normal maps in the shader generator (1.10+)

Sure Thing:

I made a quick page due to the length of some of the files.

http://sites.google.com/site/blendergameenginefun/panda

Room.egg is the Not working original.

Then the 3 others are currently in place working ones.

p.s. Don’t mind the whole BGE thing… I switched away from that one some time back.