New Editor Restriction to Prevent Island Instability Caused by Using Certain Textures

With 27.10, we’ll be introducing new editor restrictions on textures that can be used in UEFN islands. This will prevent creators from using unoptimized textures that cause instability and poor performance on their islands. Once these restrictions are introduced, it will not be possible to republish your island until any restricted assets have been updated.

Many islands will not use any of these textures, since only textures that use non-standard sizes are affected. However, we encourage all creators to check their projects for restricted textures ahead of attempting to publish post-27.10.

The new editor restriction will ensure that all textures outside the “UI” group meet the following condition:

  • Textures must have a power of two size for their height and width. For example, 256x256 or 512x512.

Identifying affected assets

You can check your projects for these textures now and fix the affected assets by following the steps below.

  1. Open the Content Drawer or the Content Browser, and make sure to select your project’s root content folder on the left-side file tree panel named FortniteGame.
  2. Find the folder named YourProjectName Content, right under All.
  3. In the search bar at the top of the Content Drawer, enter NeverStream == true and TextureGroup != UI . This runs a query to identify any affected assets.

All assets that appear in this filtered view are impacted and need to be fixed. This will take a bit of time but will improve your level’s performance.

Fixing affected assets

For textures not in the UI group, there are two ways you can update the affected textures once you have identified them.

Option A is the quickest and enables you to let the editor automatically correct your textures by padding them to the correct aspect ratio; however, this padding could result in unnecessary memory usage.

Option B takes a little longer but will make the best use of your memory budget if you have multiple affected textures you need to resolve. Option B walks you through how to edit and reupload your textures so you can avoid any unnecessary padding.

Option A

  1. Double-click the texture to open the texture editor.
  2. In the search bar at the top of the Details panel, enter Power of Two Mode and select Pad to square power of two from the dropdown menu.
  3. In the texture editor, search using the search bar at the top of the details panel for Never Stream and set it to Off.
  4. Using the same search bar, search for Mip Gen Settings, and select From Texture Group from the dropdown menu.
  5. Then search for Compression Settings, and select Default (DXT1/5) from the dropdown menu.

Once you’ve completed these steps, you can check you have successfully removed the restricted texture by searching NeverStream == true and TextureGroup != UI. The asset(s) you have updated should no longer appear.

Option B

  1. Double-click the texture to open the texture editor.
  2. In the search bar at the top of the Details panel, enter source file. The original source file for this texture will be shown here.
  3. Using an image editor such as GIMP or Paint.NET (or even Paint if the texture doesn’t feature an alpha layer), resize the texture to the closest power-of-two size.
  • A power-of-two size includes 256, 512, 1024, etc.
  • For example, a 500x500 texture should be 512x512, and a 600x256 texture could be 512x256.
  • Changes in aspect ratio should not have adverse effects on your island.
  1. You can now reimport the texture in the editor. If the original image is missing, right click the texture in the Content Browser and pick Asset Actions > Export to get a new copy. Resize and right-click to reimport With New File.
  2. In the texture editor, search using the search bar at the top of the details panel for Never Stream and set it to Off. If it cannot be selected as Off, make sure your image has a power-of-two size in the Imported field at the top.
  3. Using the same search bar, search for “Mip Gen Settings”, and select “From Texture Group” from the dropdown menu.
  4. Then search for “Compression Settings”, and select “Default (DXT1/5)” from the dropdown menu.

Once you’ve completed these steps, you can check you have successfully removed the restricted texture by searching “NeverStream == true and TextureGroup != UI”. The asset(s) you have updated should no longer appear here now.

4 Likes

I love when epic makes terrible changes and doesn’t warn us in advance, GREAT WORK EPIC, WE LOVE YA!!!

8 Likes

Why is this told only 12 hours before the update even is suppose to come out?, earlier would of been great.

6 Likes

So anyone who is not a gamedev and doesn’t know about the power of two texture compression has to redesign all their custom content, which can be hundreds of files per project?

8 Likes

Rip to all my 500x500 textures.

3 Likes

Actually I just checked, and some are not ^2 but 90% are and are setup correctly yet still show up under the provided search bar query.

Ignore me, you’re supposed to enter the query as:
TextureGroup != UI, NeverStream == true

Edit just made the changes to one of my maps:
My custom HDR skyboxes look terrible now lol.

So all my 1920x1080+ billboard & banner artwork is going to break, or am i missing something?

4 Likes

What about decals all showing like this now? We literally have to redesign our games now, talking days of work.

UnrealEditorFortnite-Win64-Shipping_7c8KQb6Ect

4 Likes

How will we be able to make high realism maps if everything is gonna look like minecraft

I mean if this really improves performance it’s a good change but man I have to change so many textures now😭

aww dang

1 Like

The filter query you provided NeverStream == true and TextureGroup != UI doesn’t seem to work. I have a texture with the group World but it doesn’t show up.

I think the right query would be NeverStream == true && TextureGroup != UI

1 Like

Fortnite L

atp, we need to delay all projects 3 years till roadmap is complete :slight_smile: and they won’t do random unannounced changes 1 day before update
exiting to see how many new bugs 27.10 will also introduce like every uefn update does :+1:

EDIT
By setting the Power of Two mode to “Stretch to Power of Two” avoids needing to do any of the below. Hopefully this still passes validation when the time comes, not my fault if it doesn’t, but I am an amount of percent sure it will be fine.

I made this little guide for fixing stretched textures via the material after padding or stretching them.
This will only work if you don’t already have UV math applied to the texture, if you do, you probably know how to fix it anyway.

Note the imported size vs the in game size in the texture details.
image

Divide the X axis of the imported size by the X axis of the in game size.
Do the same for the Y axis.
In this case its ;
1172 / 2048 = 0.572265625
70 / 2048 = 0.0341796875

Add a Texture Coordinates node to the material graph and connect it to the UV pin of the texture.

Expand the Tex Coord node and enter the values in the U and V Tiling areas

And you are good to go.

7 Likes

Thanks! Appreciate the advanced notice of 12 hours :expressionless:

Completely unnecessary change. This forces one to either use a less fidelity image with additional drawbacks or to use a texture size that wastes our cooking memory space which we already have only a little of. If there was no restriction on the download size of the project, I wouldn’t bother with this, but at this stage this is a direct hit.

2 Likes

When is 27.10 getting released? Would be nice to know to let us plan better…

1 Like

I do not support this change at all. I’ve seen multiple islands using large images with no performance issues whatsoever.

So what happens to islands using images for photos or billboards? In my case they’re 1920x1080. Does that mean they can no longer be used? Because if so, this change is NOT the way to go with UEFN.

2 Likes

Can anyone confirm if the images NEED to be square or if each side just needs to be a power of two? Different things.

Are these texture sizes ok to use:
2048x1024, 256x1024, 1024x512, etc.

Thank you

1 Like