Why do blueprint components have black texture on mobile & mobile preview?

Hello,

My problem is, if I add a component (let’s say a cube) in a blueprint then put that blueprint in a scene and launch “Mobile Preview”, the cube’s texture is black. (Mobile HDR is off and sets as default)

  • I removed all the shadows (static, dynamic) => black texture
  • Sets the cube to static or movable => black texture

I’m very disapointed with all mobile stuff in this version of Unreal, in Unity, I got everything running smoothly with one click … let’s say this editor is still “for now” focused on early adopters.

Anyways, anybody has a clue ?

Thank you

2 possible reasons:

-you using inpompatble texture format (but thats unlikely as everything would be black)

-some shader doing someting that your GPU does not support

You might find some hints in logs and logcat

Thanks Shadowriver for the answer but it’s kinda weird because when I put the same blueprint to the scene and set it to static, it does appear with the correct texture, but when I generate it (spawn from class), its texture is black, I found out that it must be a light problem as it’s static so, I set it to movable but I got the same behavior as I the one described in my initial comment (black texture).
=> could be light bug with movable objects when on mobile ?

For the GPU, I’ve a Geforce gtx 680.

P.S. The texture is the simple UE predefined white texture.

Use comment to comment anwser insted of doing your own anwser as comment ( you can convert it to comment i think)

Mobile Preview simulates Mobile GPU capabilities, by texture format i mean compression format, there few to pick each have there own pros and cons, you can build Android app to have all of them, ETC1 is supported by all Android devices.

Hi,

I was at work and couldn’t hit the Reply link :slight_smile:

It didn’t work on my Nexus 4 (ETC1, tried them all), same black texture, will investigate more deeply tonight and let you know.

Thank you

I’m having the exact same problem. It has nothing to do with incompatible texture formats since it happens in the preview as well, and I can’t imagine a simple shader (just one constant color node connected to base color) doing something my Xperia Z can’t handle (I did compile and run the Mobile Temple on it, everything was fine).
Another funny thing is that sometimes this happens and sometimes it doesn’t. Whenever it does, it’s on movable objects which probably means it has something to do with dynamic lighting. However, I can’t quite figure out what it is…

Yeah, I’m not alone :slight_smile:

It sure has something to do with the lighting, however, I did disable all the shadow, static and dynamic lighting on both my lights and models but still got the black texture, and this happens everytime with Movable objects. (even with the simplest material possible)

It’s not a black texture being projected onto stuff by accident, I think it’s some sort error in the shaders or something… Maybe something we didn’t set up right? I imported the same mesh into two different projects:

One was the top-down template, where I imported a simple sphere (exported from 3ds max), and assigned a simple material with only a single constant color. It worked as expected.

The next was the very same mesh imported into another project (this one was the base code template) with the exact same material applied. This time, it was black. I’m starting to think it might have something to with the specific project’s settings, but I can’t figure out what it is.

I somehow get it working by removing all the lights of the scene and adding new lights, the problem that remains is with a Text (Text Render), it isn’t shown :frowning: … any help would be appreciated.

So, here’s what I’ve found out:

I copied the same assets (one skel mesh, one stat mesh and one material) between projects. It works fine in every project I create, except under one condition: When using the basic code template, it all appears as black. I’m starting to think this is a bug of some sort.


Scratch this and everything I’ve said yet, see my answer.

So, I’ve finally got it! It’s not a bug, and it’s not shadows being miscalculated, it’s light. As it would seem, on mobile platforms UE4 uses light probes (or shadow volumes or whatever they’re called in UE) for lighting dynamic objects. The reason why every dynamic object is black, is that without lightmass importance volumes (LIV), there is no spatial light information available (though I must admit this is all guesswork, don’t hold it against me if I’m wrong). So the way to fix it, is to add an LIV around your level, bake lighting, and… VOILA! It works like a charm. For me at least. Can you tell me whether this fixes the problem for you too, @Singleton?

Will test it and see if my Texts (text render) appear …

Anyways, I’m glad it worked for you!

An very interesting doc :
https://docs.unrealengine.com/latest/INT/Engine/Rendering/LightingAndShadows/Lightmass/index.html

So, did it work?

Did work for the meshes but not for the text render

Someone stated somewhere else, that textRenderer component is not supported on mobile platforms yet.

If textRenderer doesn’t work, which text component should we use ? (I hope there’s something better than HUD’s Draw Text)

textRenderer works on mobile platform (iOS in my case) but couldn’t be achieve with masked material. Look at the TappyChicken sample, it use transluscent material with opaticity set to the font alpha! I did it work like a charm with a custom font (Ubuntu light).

Setting the font material to Transluscent and Unlit works like a charm (tested on Android) !!!
Thanks metamato

In 4.5, even though I used LIV and set text material to translucent and unlit, my text is still showing lit on Android.

Is it possible to get detailed steps for how you did the setup and I’ll document?