Mutable Texture Project: Layout or block index error

It would be something like this. Take special note of the Param Name. The parameter names a further seperated by the underscore, <ProjectorParameterName>_<InternalParameterName>

[Image Removed]

Unfortunately, there is nothing that we have that documents this. I’ll take that back to the team as well.

Dustin

[Attachment Removed]

oh that is good to know, thank you so much!

since I’m creating the instance at runtime, and there seems to be no option to pre-define layers in the CO node, it seems I also need to create the layers at runtime. but how do I set up the projector parameters for the layers in code?

[Attachment Removed]

No problem,

There is a series of projector layer setting functions on the customizable instance.

[Image Removed]

[Attachment Removed]

and to target a specific layer on the group projector, I suppose I also use FaceMarking__<InternalParameterName(?)> (how do I know the Internal Parameter Name?)

[Attachment Removed]

and hopefully the last question: how is the projector type defined (eg. whether it is cylindrical)? None of the Set Projector functions seems to have that argument

[Attachment Removed]

luckily, I only need cylindrical projections right now, which is the default, so all good :smiley: generally, it works now as intended.

I just noticed some delay issues: I have 3 tattoos that are projected on the head mesh: face, chest and back marking, so I made a layer for each one. The player can customize these markings in the character creator. however, when the player changes let’s say the face layer, the chest part also becomes blurry and after a few seconds both the face and chest marking become sharp. is there a way to avoid that blurry state in between, or generally to make it faster?

[Attachment Removed]

That is your mips loading and streaming in. There are a bunch of strategies around this that you could look up, but they aren’t technically mutable related. Mostly, you want to either preload/cache your textures in memory ahead of time, adjust the texture’s mip load options, or adjust your texture group settings.

[Attachment Removed]

They are in index order. You can use the Multilayer Projector Get function to get them.

[Attachment Removed]

understood!

how would I preload/cache them? having them hard referenced by an actor in a variable doesn’t seem to help.

also would virtual textures be an option here, are they supported?

[Attachment Removed]

very good point, I was not using that on the state.

however, I get some problems:

I cannot see the tattoos at all any more where it uses the group projector “FaceMarking”

also, it crashes when turning off texture streaming and then switching to a different face mesh:

[Image Removed]this is my state setup:

[Image Removed]

[Attachment Removed]

[Attachment Removed]