Hard to create tileable materials

There’s a lot of trial and error, and in the end I have to go in manually to update the texture to create tileable textures.
One of my hopes was that, through the right prompt I would be able to state at least that the texture should be tileable.
Otherwise the textures generated are great!

Hi @ranirastabout! All outputs should be tileable by default. The only main failure case we are aware of is if you supply your own shape/pattern image that is not tileable. Can you share a few examples of where it is failing?

Sure! Here is the prompt:
“Concrete jetty in a tropical sea.”
Although it is tileable in the main, you get spots close to the edge that need manual fixing.
To be honest, I’m trying out 2k resolutions now because the surface area is actually quite large, in the hopes that the repetitions do not create patterns that are too noticeable.

Thanks, great work by the way!

Edit:
By the way, I’m using Pro-Builder materials in this instance, although it’s the same with Unity specific material usage.

I just tested it with text-only input and also with shape/pattern control and I don’t see any seams. On the prompt you provided there are some vertical lines in most of the outputs but I can’t see any visible seams. Should be easy to fix the lines in the inpaint/refinement mode by regerating the area where the line appears. The next version of the model will have less outputs with vertical lines like that.

Here are some of the outputs I just tested, tiled 5x5 on a plane:

Concrete jetty in a tropical sea.


cat fur

gray bricks (with shape control)

marble paving stones (with shape control)

copper tile (with shape control)

Can you please share an image showing what the seams look like for you? If you prefer not to share publicly you can email me at alex.reid@unity3d.com

You’re right, of course.

I guess what I’m trying to do is get a texture that doesn’t have repeating textures at a high level, but enough detail (small holes cracks etc.) and hoping that the AI would generate that given the size context of the object.

No issues, I’ll just look at the LODs then.

There’s no ability to generate LOD textures/materials right now is there? Maybe future functionality?

Edit: I did this error exporting the PBR, want me to raise another topic for it?
NullReferenceException: Object reference not set to an instance of an object
Unity.Muse.Texture.PbrFactory.EvaluateJobsCompleteness () (at ./Library/PackageCache/com.unity.muse.texture@0.3.1/Runtime/Pbr/Previewers/PbrFactory.cs:182)
Unity.Muse.Texture.PbrFactory.b__14_1 (UnityEngine.Texture2D _, System.Byte rawData, System.String message) (at ./Library/PackageCache/com.unity.muse.texture@0.3.1/Runtime/Pbr/Previewers/PbrFactory.cs:146)
Unity.Muse.Common.Artifact`1+<>c__DisplayClass8_0[T].g__HandleReceiveArtifactData|0 (System.Object data, System.String msg) (at ./Library/PackageCache/com.unity.muse.common@0.3.0/Runtime/Artifacts/Artifact.cs:60)
Unity.Muse.Common.GenerativeAIBackend+<>c__DisplayClass30_0.g__PollForRequestCompletion|0 () (at ./Library/PackageCache/com.unity.muse.common@0.3.0/Runtime/Backend/GenerativeAIBackend.cs:373)
Unity.GenerativeAI.Editor.EditorCloudContext+<>c__DisplayClass4_0.<Unity.Muse.Common.ICloudContext.RegisterNextFrameCallback>b__0 () (at ./Library/PackageCache/com.unity.muse.common@0.3.0/Editor/EditorCloudContext.cs:24)
UnityEditor.EditorApplication.Internal_CallDelayFunctions () (at <9920ff0c944845d7b9f9a61ef1478edc>:0)

Ah ok! Yea upscaling will help but with a large enough area you will see the texture repeating if it has any prominent features.

We are working on a feature that lets you create tile sets. It takes any texture and creates additional textures that are still seamless with the first one, essentially letting you go to any resolution you want and in any aspect ratio. We are just figuring out the best way to let the user interact with this through the UI so they do not have to manually stitch them together afterwards.

2 Likes

That sounds great. My thoughts would be:

  1. If the prompt context was taken into account, along the lines of “Looks like you’re creating a large thingy! I’ll go ahead and create these tilesets for you”
  2. And if we could give Muse Texture a reference to the object/scene, so it can essentially use the shape/size/number of occurrences as a context prompt.
    All out of scope I’m sure, but if you never ask… :).

yes, also, we’d like some inputs on how people usually do those imperfections on materials, do they really generate it on the material itself, or they usually use a decal or paint some imperfection over it. It would be interesting to know that too :slight_smile:

1 Like

I guess it depends. I’m not a fan of decals although I have used them in the past.
I’m not sure if procedural materials are in scope of this beta, but it would be amazing if Muse had that on the road map.
Depending on the size of the surface area I sometimes go into the shader and randomize parameters.

2 Likes