Dirt and grime not appearing gradually, but instantly

I have some troubles with setting up the dynamic dirt and grime. I follow the documentation and DA62 example, I have created the mesh decal layers with their materials (same setup as in DA62 example), but they fail to appear gradually. They act like bool, appear when the debug sliders reach 1, anything below 1 turns them off completely.

I also have some warnings during the compilation - the log says:

‘Extension ‘ASOBO_material_detail_map’ is not valid, missing a mandatory texture.’

This is written twice for both mud and regular dirt (I have these two only for now). My material setup is identical to the one in DA62, I’m also using the same textures. These textures are both in Package Sources and in built Package. The code is added to behaviours, as it should.

2 Likes

Bump this up for some clarification in case something is missing from the SDK to get this to transition

Hello @emp3d

Do you also have the associated xml files?

Regards,
Sylvain

Yes, included these two files at the top:

	<Include ModelBehaviorFile="Asobo_EX1\Index.xml"/>
	<Include ModelBehaviorFile="Asobo_EX1\DefaultConfig.xml"/>

And added these nodes in behaviours:

		<Component ID="Regular_Dirt">
			<UseTemplate Name="ASOBO_ET_COMMON_Dirt_Multiple_Template">
				<TYPE>REGULAR</TYPE>
				<SaveParameters ID="Dirt_NODE_IDs">
					<INSECTS_FUSELAGE/>
					<INSECTS_TAIL_1/>
					<INSECTS_TAIL_2/>
					<INSECTS_WINGTIPS/>
				</SaveParameters>
			</UseTemplate>
		</Component>

My bad, I meant the texture XML files: Texture XML Properties

But that’s not the error you would get if this was the issue.

From what I can see in the code, this error happens if one of the material uses the ASOBO_material_detail_map extension but none of the detailColor, detailNormal, detailMetalRoughAO or blendMask texture channels are used.

You mentioned 2 materials from the Da62:

  • Mud :this one is a GeoDecal BlendMasked material and uses the extension, but then you should have the GeometryDecal Blend Mask channel used as the Da62 does

  • Regular_Dirt: this one is a Decal material and does not use the ASOBO_material_detail_map extension. Maybe you have selected the incorrect material type and used GeoDecal BlendMasked instead?

Regards,
Sylvain

Sorry, I misunderstood the xml question. I’m using the xml files and the textures supplied with the SDK (MSFS 2024 SDK\SharedAssets\texture\Dirts).

For materials and dirt mesh layers I have currently set up these:

  • Insects - this is GeoDecal BlendMasked material type - same as DA62 sample - Two textures, albedo, blend mask
  • Mud - same as above GeoDecal BlendMasked, three textures - albedo, normal, blend mask
  • Runway dirt - Decal type - just albedo texture

They all share the same behaviour, no gradual appearance, just switch on when the slider reaches 1.

I also exported LOD00 of the fuselage of DA62 sample just to test, it works fine when loaded into the sim, the dirt work gradually as intended, but the log also shows the same ‘Extension ‘ASOBO_material_detail_map’ is not valid, missing a mandatory texture.’ warning message, so I guess that’s not the problem.

I really don’t see what could cause this.
I will keep doing some tests and try to replicate the issue.

If this is possible, please provide me with your project and I will be able to trace what’s leading to this.
You can do so by following section 3 in these guidelines: How to report a bug or crash - [MSFS 2024] Bug Reports - MSFS DevSupport

Regards,
Sylvain

1 Like

I’ll prepare the package and the source shortly after the weekend.

Message sent. I’ve added stripped 3ds max source and slightly stripped package. If something more is needed please let me know.

1 Like

Hello @emp3d

I noticed the meshes you apply the insects and dirt material on do not seem to have their material ID set correctly.
They seem to have all face multi material IDs set to 1 instead of 20 for Runway_DIrt and 25 for Insects.

Can you double check this?

Regards,
Sylvain

This is correct, the meshes are not merged into multi-sub material, they’re independent from the aircraft meshes, that’s why their IDs are 1. are the material ID numbers 20 and 25 required to function properly?

Another possible reason behind the erratic behaviour could be that our aircraft configuration is not modular, but legacy, single model?

Oh ok my bad, you applied the submaterial directly and not the multi material.
I haven’t seen anything obvious and modular hierarchy is not supposed to have an impact here.
I will have this reviewed by a technical artist.

Regards,
Sylvain

Thank you!

Hello @emp3d

We have identified the problem.
This comes from your ModelBehaviors still being based on version 1.
Version 2 was introduced with MSFS 2024, and one of the changes is that opacity now supports intermediary values.
The dirt and other weathering templates obviously rely on this.

Please also note that we do not recommend to mix Asobo and Asobo_EX1 templates in the same file. This can cause side effects.

Using Model Behaviors
image

So moving your EX1 templates to a dedicated files, in a ModelBehaviors section using version 2 will solve this problem.

Regards,
Sylvain

1 Like

Understood, thank you so much!

1 Like