x

Search in
Sort by:

Question Status:

Search help

  • Simple searches use one or more words. Separate the words with spaces (cat dog) to search cat,dog or both. Separate the words with plus signs (cat +dog) to search for items that may contain cat but must contain dog.
  • You can further refine your search on the search results page, where you can search by keywords, author, topic. These can be combined with each other. Examples
    • cat dog --matches anything with cat,dog or both
    • cat +dog --searches for cat +dog where dog is a mandatory term
    • cat -dog -- searches for cat excluding any result containing dog
    • [cats] —will restrict your search to results with topic named "cats"
    • [cats] [dogs] —will restrict your search to results with both topics, "cats", and "dogs"

[Closed] Decals not rendered without direct lighting?

I experienced some issues with decals not being rendered. It turned out that decals on brushes and meshes that were not directly exposed to sunlight did not render or render in an unexpected way:

Imgur

I would expect the decal to render much more like that red box, that I just applied the same material to.

Am I doing something wrong? I tried the Decals content example map and they behave in a similar way. Is this intended?

Product Version: Not Selected
Tags:
more ▼

asked Apr 06 '14 at 06:08 PM in Rendering

avatar image

Bajee
290 21 33 138

avatar image mjay85 Apr 07 '14 at 02:58 PM

I'm experiencing the same problem. The decal is visible as expected in direct light, but any indirect lighting or shadows causes the diffuse to disappear. I noticed that I can still see reflected light from the decal in the indirect lighting.

Judging from other similar threads, it seems as though this is a bug, I haven't read of any possible solutions, so I am waiting along with you.

avatar image Martin Mittring STAFF Apr 07 '14 at 09:04 PM

see answer here: https://udn.unrealengine.com/questions/163838/decals-not-being-rendered-in-shadows.html (look for the green block and follow the instructions precisely)

avatar image mjay85 Apr 07 '14 at 09:16 PM

Hello Martin,

Thank you for the quick response. Unfortunately, the link provided above requires a login / password which I do not have. Is there any information for this decal issue that is available elsewhere?

Thanks again

avatar image Bajee Apr 07 '14 at 09:41 PM

I can't access that page either unfortunately :-/

avatar image MOP88 Apr 21 '14 at 06:13 PM

Bumping this for the UDN solution. Can anyone post it somewhere where we could read it?

avatar image Martin Mittring STAFF Apr 21 '14 at 08:51 PM

From the other thread: To solve this problem we create the DBuffer decal feature. Other implementations would be possible but they have problems we would to avoid (break physical based lighting). Documentation is coming but this is the short version:

New Experimental Feature: DBuffer Deferred Decals •Deferred decals now work with baked/lightmass lighting. That has a cost - not all projects make use of baked lighting or need proper decals so this can be enabled as a project setting and you need to change the decal blend mode.

How to activate the feature: • To try DBuffer locally, put this into BaseEngine.ini under [SystemSettings]

r.EarlyZPassMovable=1

r.EarlyZPass=2

r.DBuffer=1

Use new DBuffer decal blend mode

•Similar changes can be made in the project settings in case you want that use that feature in your project.

avatar image MOP88 Apr 24 '14 at 11:46 PM

I added the lines under the [SystemSettings] section in the BaseEngine file but the decals are still invisible without direct lighting. I can pick the DBuffer decal blending modes, but to no effect. Here's a pic of my material: http://i.imgur.com/AAHpC19.png

avatar image Martin Mittring STAFF Apr 25 '14 at 02:46 PM

Make sure you restart the editor after chnaging the ini and save the material.

avatar image bigzer Apr 26 '14 at 10:54 AM

'That has a cost' what does that means?

Does it means the DBuffer Deferred Decals performance cost is high or did he mean the cost is that its only working with baked lightmass lighting?

Thank you

avatar image MOP88 Apr 27 '14 at 07:55 AM

I saved the material and re-started the editor. The decal is now not showing up at all when Decal Blending Mode is set to DBuffer Translucent, Color, Normal, even under a direct Stationary spotlight.. Any other setting does nothing as well. If I set the Decal Blending Mode back to just Translucent, the familiar issue of the decal appearing only under a Stationary light. Is there more documentation on this? I'm starting to lose patience with this bug and it's blocking my progress.

avatar image Martin Mittring STAFF Apr 26 '14 at 06:31 PM

DBuffer decals cost is:

  • full earlyz pass is required (mostly CPU performance, some optimizations possible, sharing for other features possible),

  • extra full screen buffers, at the moment 10 bytes per pixel (GPU memory)

  • extra bandwith for reading in the DBuffer during base pass (possibly slower base pass rendering) and some minor ALU/math cost to apply the properties.

More details will be the the documentation of the feature.

avatar image jseverson Aug 10 '14 at 04:02 PM

After Adding the three lines to the BaseEngine.ini file, restart the editor. Then go to the Project Settings menu. Under Engine - Rendering/Optimizations change Early Z-Pass setting to Opaque and masked meshes. This worked for me. I hope this helps. Thanks!

avatar image tharmine Feb 27 '15 at 09:03 PM

Hi,

  1. and still the same problem. I get the solution mentioned, I just think it should be in the new version by now.

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

The question has been closed Jun 01 '16 at 04:08 PM by Tim Hobson for the following reason:

The question is answered, right answer was accepted


2 answers: sort voted first

That is unfortunate - we try to get that resolved. meanwhile I repost:

To solve this problem we create the DBuffer decal feature. Other implementations would be possible but they have problems we would to avoid (break physical based lighting). Documentation is coming but this is the short version:

New Experimental Feature: DBuffer Deferred Decals •Deferred decals now work with baked/lightmass lighting. That has a cost - not all projects make use of baked lighting or need proper decals so this can be enabled as a project setting and you need to change the decal blend mode.

How to activate the feature:

• To try DBuffer locally, put this into BaseEngine.ini under [SystemSettings] r.EarlyZPassMovable=1 r.EarlyZPass=2 r.DBuffer=1

• Use new DBuffer decal blend mode

•Similar changes can be made in the project settings in case you want that use that feature in your project.

EDIT: As of 4.6, you can set these console variables from above via the Project settings, as shown in the image below. You will need to restart your editor for the variables to take effect.

DBDecal

dbdecal.jpg (105.7 kB)
more ▼

answered Apr 07 '14 at 09:47 PM

avatar image Bajee Apr 07 '14 at 09:49 PM

Ah, so you have to enable it for the project? That's why it didn't work. Thanks!

avatar image mjay85 Apr 07 '14 at 10:04 PM

Got it, thank you for the information, everything seems to be working now.

  • Michael

avatar image bigzer Apr 26 '14 at 11:45 AM

I can't make it work on my end.

Ive added in BaseEngine.ini both the one from the engine and the one from my project under [SystemSettings] :

  • r.EarlyZPassMovable=1

  • r.EarlyZPass=2

  • r.DBuffer=1

I've set my deffered shader to "dbuffer transucent color, roughness" and the decal response to "Color roughness". I tried different combinations.

When I started the project it seems all my scene shaders have been recompiled. This said unfortunately it seems it's not working ; decals don't show at all. I'm using UE 4.1.0. If I switch the Decal blend mode to translucent they show up again but of course I still have to issue I hope to avoid; see decals on items under shadows.

avatar image Bajee Apr 26 '14 at 12:22 PM

@bigzer Did you try to put it in DefaultEngine.ini in YourGame/Config? That's where I put it and it works fine for me.

avatar image MOP88 Apr 27 '14 at 08:02 AM

@Bajee this method did not work for me. The DefaultEngine file in the project directory was also just three lines total.

avatar image Hyperloop Jul 30 '14 at 02:40 AM

I see this is a relatively old comment thread, but I'm seeing the same issue in 4.3.1 - is the solution in this thread still the preferred one?

avatar image Adam Davis STAFF Jul 30 '14 at 05:08 PM

Hi Hyperloop,

Yes, as it stands this is still the current workaround.

avatar image JohanL Aug 14 '14 at 09:17 PM

So how do I edit the engine.ini file? Every time I add the three lines and restart engine.ini just seems to reset itself to how it was befor.

avatar image Pirog Dec 15 '14 at 02:06 PM

it's still there, in 4.5.1, guys! alt text

01.jpg (169.3 kB)
avatar image Lovecraft_K ♦♦ STAFF Jan 08 '15 at 09:20 PM

Hey Pirog -

You will have to input the BaseEngine.ini Variables under the [SystemSettings] and then make sure you are using the DBuffer Decals instead of the default Deferred Decals. (See Martin's Previous Answer.)

Thank You

Eric Ketchum

avatar image Filoppi Apr 06 '15 at 01:07 AM

I've tried everything, but it just doesn't work on 4.7.4, if i recall correctly, on 4.7.0 after changing some of this options: https://answers.unrealengine.com/storage/attachments/33368-dbuffer%20(2).jpg the engine restarted and rebuilt all the materials, but not it doesn't anymore, so maybe that is the reason, because i fixed the problem in 4.7.0 with the same steps.

avatar image Scottsmi Apr 14 '15 at 06:05 AM

I got mine working by following the instructions above, plus a few missing/commented elsewhere steps (see below)

Unreal 4, build 4.7.5:

  1. While your decal-broken project is open, open Project Settings: and change these under 'Rendering': https://answers.unrealengine.com/storage/attachments/33368-dbuffer%20(2).jpg

    • Save & close your project

      • Search for 'DefaultEngine.ini' in your projects folder (not 'BaseEngine.ini' which was likely the old name) & open it.

      • Scroll down, look for '[/Script/Engine.RendererSettings]' & change these (may not be required) FROM: r.EarlyZPass=2 r.EarlyZPassMovable=TRUE r.DBuffer=TRUE TO: r.EarlyZPass=2 r.EarlyZPassMovable=1 r.DBuffer=1

      • Reopen your project

      • Open your decal's Decal Material and change 'Decal Blend Mode' to any of the 'DBuffer...' options [I used 'DBuffer Translucent Color']

      • DONE! - it should now show up properly!

avatar image Orion Petten May 08 '15 at 07:28 AM

Thanks, it works!

avatar image GeoffCoope Jul 06 '15 at 11:25 PM

This worked for me too. Although at first I thought UE had frozen but it was just working things out on re-launch then compiled 5000+ shaders. Decals are now opaque and look much nicer. Also my particles and other effects were great and the Oculus Rift rendering was unaffected.

avatar image Seyroth Oct 01 '15 at 04:37 PM

Is there going to be a not-temporary fix to this problem someday?

I'm sorry if I seem rude but this thread was opened a year and a half ago, and while we now can activate the DBuffer decals/Early Z-pass directly in the project settings, the problem remains.

There is no documentation about this, and you'd have to be a rendering expert to figure out the solution by yourself.

I'm not one, so I just lost my whole afternoon trying to figure out what the problem was, assuming it was my mistake for hours then thankfully stumbling upon this single old lost thread with a temporary fix and year-old promises to resolve the issue or write documentation about it.

And while the fix helps, it's not perfect: DBuffer decals can't be metallic (nor use a specular map), and seemingly have a substantial performance cost.

Decals are important to a lot of games and the problem happens in every single map with indirect lighting so I can only assume countless man hours have been lost because of this issue. It's pretty much a critical bug in my eyes.

I do realize it's easy for me to complain while the solution is probably way beyond my understanding of rendering (the fix already is), but just an annex to the current decal documentation would already be extremely helpful. Thanks.

avatar image C-Arch Jan 24 '16 at 09:15 AM

my projects cannot open once i enable dbuffer true. :/ sad times no workaround then

avatar image devlyn811 Jan 26 '16 at 01:27 AM

Yeah I'm going through this issue as well - but these workarounds do not work in a useful way for me and in fact make it look even worse - the decals are rendered on top of everything in the line of sight making it useless and further, still don't render in indirect light! 4.9.2

avatar image heartlessphil Feb 06 '16 at 12:48 PM

I dunno but decals work for me when I put the texture in emissive instead of base color. https://forums.unrealengine.com/showthread.php?99865-How-to-add-quick-archtectural-details

avatar image imskull Jun 23 '16 at 09:23 AM

You might need to change Directional Lighting from Static to Stationary, though I don't know why as it is.

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

Hello -

The default Deferred Decals with a Decal Blend Mode of Translucent, Stain, Normal or Emissive will NOT render in indirect lighting by design.

In order to get a Deferred Decal to render in indirect lighting you will need to use the Deferred DBuffer Decals. By default this type of decal is not turned on in the engine. Here is a step by step guide on enabling and using this type of decal:

  • Open your Project Settings and go to the Render Section

  • Enable and adjust the highlighted parts of the Render Section:

Project Settings

  • With the changes made above, you will need to restart the editor to make the changes take effect.

  • Now create a Decal Material and select one of the following Decal Blend Modes:

Material Settings

  • After Saving the Material, apply it to a level using default settings and you can achieve a look like this one:

Default Lighting

  • Or even a Night time look like this one:

Night Time

I have attached a 4.9.2 project below which shows the setup and use of both of the light environments from the above examples as well as the Decal setup shown above.

Thank You

Eric Ketchum

Test Project 4.9.2

default.jpg (42.7 kB)
night.jpg (34.7 kB)
testproject_492.zip (790.3 kB)
more ▼

answered Jan 26 '16 at 03:07 PM

avatar image

Lovecraft_K ♦♦ STAFF
36.8k 702 260 736

avatar image rickdlol Jun 01 '16 at 03:41 PM

This doesn't seem like a good long term solution - what if I want a Masked decal that covers seams - how would I achieve that/ What if I don't want to mess around with the project settings purely to get a decal to be visible...

avatar image Baer Mar 16 '17 at 02:54 PM

Version 4.15 and this is still happening.

Wouldn't it be better for your users to have Deferred DBuffer Decals turned on by default? Unless you really know the inner workings of Unreal this is something that no average user would be able to figure out.

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

Follow this question

Once you sign in you will be able to subscribe for any updates here

Answers to this question