Wiki 9Minecraft Elytra Contrails Wiki
Elytra Contrails WikiDocumentation › Advanced Trail Specific Settings

Advanced Trail Specific Settings

This is where settings start to get a bit more technical so I split them up into a seperate section. Check Trail Specific Settings for the "normal" settings. Some of the example images here have other settings changed to more clearly demonstrate the one being shown.

Wireframe Trails

Name in preset/config: "wireframeTrails", Default Value: false

Makes the trail render as a wireframe. This was initially added to debug a UV mapping issue (Thanks Flamgop) but we thought it looked cool so we kept it. These are 1 pixel thin so they might be hard to see!

Wireframe Trail

Dynamic Wingtip Position

Name in preset/config: "trailMovesWithElytraAngle", Default Value: true

This shifts where the trail is emitted from based on the elytra's spread. This exists because without it, the contrails would not be coming from the edge of the elytra in that angle! (This does not apply if there is a custom emitter with an elytra model. They can re-add this with EMF animations if they want)

trailMovesWithElytraAngle

Wingtip AOA Correction

Name in preset/config: "trailMovesWithAngleOfAttack", Default Value: true

This shifts the vertical position of the wingtip depending on your pitch relative to your velocity angle. This is here in order to make sure the trail doesn't go "through" the wing when rapidly pitching down. This is really hard to show, so the pictures aren't 1 to 1.

Ignore the wobbling of the trail, focus on where the trail is being emitted from:

trailMovesWithAngleOfAttack

Vertical Wingtip Position

Name in preset/config: "wingtipVerticalPosition", Default Value: 0.5

Requires "Wingtip AOA Correction" to be false!

This lets you define a specific vertical position for trails to emit from. Wingtip AOA Correction must be off for this to work! This is used in the "actionsandstuff" preset to account for the thicker trail start. It is also a useful setting if you are using certain capes that dont have the same wingtip as vanilla (For example the 15 year anniversary cape, its best so set this value to 1.0 for that one and disable AOA correction!). The default is 0.5 as to prevent the clipping that Wingtip AOA Correction tries to reduce.

Note for resource pack creators: the following wingtip position settings are different than the offsetX, offsetY, and offsetZ for non-EMF entity trails, as these have two very different scales and meanings.

0.0 is the bottom of the elytra, and 1.0 is the top of the elytra.

trailMovesWithAngleOfAttack

Horizontal Wingtip Position

Name in preset/config: "wingtipHorizontalPosition", Default Value: 1.0

This lets you define a specific horizontal position for trails to emit from

0.0 is the base of the elytra, and 1.0 is the end of the elytra.

wingtipHorizontalPosition

Depth Wingtip Position

Name in preset/config: "wingtipDepthPosition", Default Value: 1.0

Requires "Dynamic Wingtip Position" to be false!

This lets you define a specific depth position for trails to emit from

0.0 is the front of the elytra, and 1.0 is the back of the elytra.

wingtipDepthPosition

Thickness Start Ramp Distance

Name in preset/config: "startRampDistance", Default Value: 4.0

The distance along the trail in blocks that it takes for the trail to get from width 0 to maxWidth.

startRampDistance

Thickness Start End Distance

Name in preset/config: "endRampDistance", Default Value: 10.0

The distance along the trail in blocks that it takes for the trail to go from maxWidth to 0 at the end of the trail

endRampDistance

Width Variation Amount

Name in preset/config: "randomWidthVariation", Default Value: 0.5

The amplitude of the width variation. I might in the future make an option to change the frequency as well, but I think the frequency being any different would look strange (Image uses maxWidth 0.2)

randomWidthVariation

Trail Fade-in at Start

Name in preset/config: "fadeStart", Default Value: false

Requires "translucentTrails" to be true

Makes trail fade in at the start of the trail.

fadeStart

Fade-in Distance

Name in preset/config: "fadeStartDistance", Default Value: 1.0

Requires "fadeStart" to be true

REQUIRES "translucentTrails" to be true

Makes trail fade in at the start of the trail

fadeStartDistance

Trail Fade-out at End

Name in preset/config: "endDistanceFade", Default Value: false

REQUIRES "translucentTrails" to be true

Makes trail fade out at the end of the trail based on distance from the end.

endDistanceFade

Fade-out Distance

Name in preset/config: "endDistanceFadeAmount", Default Value: 1.0

REQUIRES "endDistanceFade" to be true

REQUIRES "translucentTrails" to be true

Distance at which to fade the trail out.

endDistanceFadeAmount

Trail Lifetime Fadout

Name in preset/config: "lifeTimeFade", Default Value: true

REQUIRES "translucentTrails" to be true

Whether or not the trail should fade out over time. This is different to endDistanceFade because this affects every trail point from start to finish. The opacity proportional to age divided by lifetime.

lifeTimeFade

Width Changes Over Lifetime

Name in preset/config: "increaseWidthOverTime", Default Value: false

This makes the width change over the trail's lifetime. Can be useful for simulating the contrail "dissipating" if paired with lifetime fadeout

increaseWidthOverTime

Width Start Multiplier

Name in preset/config: "startingWidthMultiplier", Default Value: 1.0

REQUIRES "increaseWidthOverTime" to be true

Width multiplier (to multiple by maxWidth) when the trail point's age is 0

startingWidthMultiplier

Width End Multiplier

Name in preset/config: "endingWidthMultiplier", Default Value: 5.0

REQUIRES "increaseWidthOverTime" to be true

Width multiplier (to multiple by maxWidth) when the trail point's age is at trailLifetime

endingWidthMultiplier

Distance Before Trail Starts

Name in preset/config: "distanceTillTrailStart", Default Value: 0.0

The distance between the trail's emitter and when the trail should start being visible.

Note: trail points are still 'aging' while they are not visible, so the longer this is the more faded they will be if lifeTimeFade is true.

distanceTillTrailStart

Distance to Subtract from End

Name in preset/config: "distanceTillTrailEnd", Default Value: 0.0

The distance between the trail's actual end and when the trail's perceived end should be

Note: trail points are still 'aging' while they are not visible, so the longer this is the less faded they will be when cut off if lifeTimeFade is true.

distanceTillTrailEnd

Speed Dependent Transparency

Name in preset/config: "speedBasedAlpha", Default Value: false

REQUIRES "translucentTrails" to be true

Whether the alpha of the trail should be dependent on the speed of the entity that emitted that trail point at the time of emission

Note: It might be a bit hard to wrap your head around what speedBasedAlpha and speedBasedWidth entail, so I made a desmos tool to try to visualize it better: Desmos Speed Based Width/Alpha Tool

speedBasedAlpha

0 Alpha Speed

Name in preset/config: "minAlphaSpeed", Default Value: 0.75

REQUIRES "speedBasedAlpha" to be true

REQUIRES "translucentTrails" to be true

The speed the entity should be going at for the alpha of the trail at that point to multiplied 0 (invisible).

Check the Desmos Speed Based Width/Alpha Tool for clarification

Full Alpha Speed

Name in preset/config: "maxAlphaSpeed", Default Value: 2.0

REQUIRES "speedBasedAlpha" to be true

REQUIRES "translucentTrails" to be true

The speed the entity should be going at for the alpha of the trail at that point to be multiplied by 1.

Check the Desmos Speed Based Width/Alpha Tool for clarification

Speed Dependent Width

Name in preset/config: "speedBasedWidth", Default Value: false

Whether the width of the trail should be dependent on the speed of the entity that emitted that trail point at the time of emission

Check the Desmos Speed Based Width/Alpha Tool for clarification

speedBasedWidth

0 Width Speed

Name in preset/config: "minWidthSpeed", Default Value: 0.75

REQUIRES "speedBasedWidth" to be true

The speed the entity should be going at for the width of the trail at that point to be multiplied by 0 (invisible).

Check the Desmos Speed Based Width/Alpha Tool for clarification

Full Width Speed

Name in preset/config: "maxWidthSpeed", Default Value: 2.0

REQUIRES "speedBasedWidth" to be true

The speed the entity should be going at for the width of the trail at that point to be multiplied by 1.

Check the Desmos Speed Based Width/Alpha Tool for clarification

AOA Dependent Transparency

Name in preset/config: "aoaBasedAlpha", Default Value: false

REQUIRES "translucentTrails" to be true

Whether the alpha of the trail should be dependent on the speed of the entity that emitted that trail point at the time of emission

Note: It might be a bit hard to wrap your head around what aoaBasedAlpha and aoaBasedWidth entail, so I made a desmos tool to try to visualize it better: Desmos AOA Based Width/Alpha Tool

speedBasedAlpha

0 Alpha AOA Angle

Name in preset/config: "minAlphaAOA", Default Value: 10.0

REQUIRES "aoaBasedAlpha" to be true

REQUIRES "translucentTrails" to be true

The Angle of attack (in degrees) the entity should be at for the alpha of the trail at that point to multiplied 0 (invisible).

Check the Desmos AOA Based Width/Alpha Tool for clarification

Full Alpha AOA Angle

Name in preset/config: "maxAlphaAOA", Default Value: 90.0

REQUIRES "aoaBasedAlpha" to be true

REQUIRES "translucentTrails" to be true

The Angle of attack (in degrees) the entity should be at for the alpha of the trail at that point to be multiplied by 1.

Check the Desmos AOA Based Width/Alpha Tool for clarification

AOA Dependent Width

Name in preset/config: "aoaBasedWidth", Default Value: false

Whether the width of the trail should be dependent on the angle of attack of the entity that emitted that trail point at the time of emission

Check the Desmos AOA Based Width/Alpha Tool for clarification

speedBasedWidth

0 Width AOA Angle

Name in preset/config: "minWidthAOA", Default Value: 10.0

REQUIRES "aoaBasedWidth" to be true

The Angle of Attack (in degrees) the entity should be at for the width of the trail at that point to be multiplied by 0 (invisible).

Check the Desmos AOA Based Width/Alpha Tool for clarification

Full Width Speed

Name in preset/config: "maxWidthAOA", Default Value: 90.0

REQUIRES "aoaBasedWidth" to be true

The Angle of Attack (in degrees) the entity should be at for the width of the trail at that point to be multiplied by 1.

Check the Desmos AOA Based Width/Alpha Tool for clarification