Announcement

Collapse
No announcement yet.

Make a static Mesh transparent to lighting?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Make a static Mesh transparent to lighting?

    I'm making my first map. A lot of it is made up of cylindrical corridors, because it's an underground facility.

    I found a nice floor mesh to line the corridor floors (so they would be flat rather than curved) - HU_Floors2_SM_Grateset01A

    Because it's a grate, you can see through it, so I could put pipework below it.

    Trouble is, because the see-through parts are only transparent textures, the mesh is opaque to lighting so when I light the corridor, the floor below appears completely black.

    I don't want to have to light beneath the walkway if I don't have to - is it possible to make a static mesh transparent to lighting, so the entire corridor floor beneath the grate will be lit?

    #2
    If you deselect bCastShadows in it's properties, it won't cast shadows and the area beneath it will appear lit.

    Comment


      #3
      That worked, thanks!

      Comment


        #4
        Incidentally, shadow buffer shadows use the alpha of the material which means if the lights you're using are static (meaning they are not movable), the grates are added as InterpActors (or any other dynamic actor type), and the material applied to the grate mesh uses the BLEND_Masked blending mode, then the shadows cast by the grates would (or at least should) take the alpha of the material into account.

        This is not the most efficient scenario so I am not proposing you do this. I am just putting it out there for the sake of providing information.

        Comment


          #5
          I have no idea what you just said...

          But that's ok, having the grate not cast a shadow is exactly what I wanted.

          Comment


            #6
            Originally posted by ffejnosliw View Post
            Incidentally, shadow buffer shadows use the alpha of the material which means if the lights you're using are static (meaning they are not movable), the grates are added as InterpActors (or any other dynamic actor type), and the material applied to the grate mesh uses the BLEND_Masked blending mode, then the shadows cast by the grates would (or at least should) take the alpha of the material into account.

            This is not the most efficient scenario so I am not proposing you do this. I am just putting it out there for the sake of providing information.
            Sorry to bump this thread, but this is exactly the kind of information I'm looking for.

            Could you elaborate on precisely how to do this? I have a 2x1024 SM with a texture of a net that is masked. When I put a spolight above it, it lights what's below the mesh as if it's a complete solid.
            I'm not sure what you mean by "shadow buffered shadows".. is there an option for that or something?

            PS. should I make a flat plane with BPS and convert it to a mesh rather than doing so with the 2x1024 brush?

            Comment


              #7
              Originally posted by Brits__Hit View Post
              Sorry to bump this thread, but this is exactly the kind of information I'm looking for.

              Could you elaborate on precisely how to do this? I have a 2x1024 SM with a texture of a net that is masked. When I put a spolight above it, it lights what's below the mesh as if it's a complete solid.
              I'm not sure what you mean by "shadow buffered shadows".. is there an option for that or something?

              PS. should I make a flat plane with BPS and convert it to a mesh rather than doing so with the 2x1024 brush?
              You need a static mesh with the material applied to it. This can be as simple as a sheet. The material must use the BLEND_Masked blending mode for its transparency. Add the static mesh as an InterpActor in your map. Light the InterpActor with a regular light (i.e., not a movable type) which is set to light the Dynamic LightingChannel and to cast dynamic shadows.

              Doing all that will cause the engine to use shadow buffer shadows for shadows cast by that mesh from that light which should take the transparency of the material into account. The basic rule is: Non-movable light lighting a movable mesh casting dynamic shadows.

              Comment


                #8
                Also look into doing this by other means such as Decals, which may be less of a performance impact, but it does require that you create the appropriate "shadow" texture.
                ffej might know already, I haven't profiled the difference in speed and quality between these methods, but the decals should normally be much faster.

                Comment


                  #9
                  Hmm so I'd have to resort to using dynamic shadows then huh...

                  Ok, well thanks for all the info, it's very informative. I think I'll have to use a projector (or the UT3 equivalent). That's what you mean by decals right DGUnreal?

                  Comment


                    #10
                    Yes. UT2004 Projectors are now UT3 Decals.

                    Comment

                    Working...
                    X