public override void GetFields(ref TargetFieldContext context) { // Only support SpriteColor legacy block if BaseColor/Alpha are not active var descs = context.blocks.Select(x => x.descriptor); bool useLegacyBlocks = !descs.Contains(BlockFields.SurfaceDescription.BaseColor) && !descs.Contains(BlockFields.SurfaceDescription.Alpha); context.AddField(CoreFields.UseLegacySpriteBlocks, useLegacyBlocks); // Surface Type context.AddField(UniversalFields.SurfaceTransparent); context.AddField(Fields.DoubleSided); // Blend Mode switch (target.alphaMode) { case AlphaMode.Premultiply: context.AddField(UniversalFields.BlendPremultiply); break; case AlphaMode.Additive: context.AddField(UniversalFields.BlendAdd); break; case AlphaMode.Multiply: context.AddField(UniversalFields.BlendMultiply); break; default: context.AddField(Fields.BlendAlpha); break; } }
public override void GetFields(ref TargetFieldContext context) { #if HAS_VFX_GRAPH if (TargetsVFX()) { VFXSubTarget.GetFields(ref context, m_ContextVFX); } #endif }
public override void GetFields(ref TargetFieldContext context) { // Surface Type & Blend Mode // These must be set per SubTarget as Sprite SubTargets override them context.AddField(UniversalFields.SurfaceOpaque, target.surfaceType == SurfaceType.Opaque); context.AddField(UniversalFields.SurfaceTransparent, target.surfaceType != SurfaceType.Opaque); context.AddField(UniversalFields.BlendAdd, target.surfaceType != SurfaceType.Opaque && target.alphaMode == AlphaMode.Additive); context.AddField(Fields.BlendAlpha, target.surfaceType != SurfaceType.Opaque && target.alphaMode == AlphaMode.Alpha); context.AddField(UniversalFields.BlendMultiply, target.surfaceType != SurfaceType.Opaque && target.alphaMode == AlphaMode.Multiply); context.AddField(UniversalFields.BlendPremultiply, target.surfaceType != SurfaceType.Opaque && target.alphaMode == AlphaMode.Premultiply); }
public override void GetFields(ref TargetFieldContext context) { var descs = context.blocks.Select(x => x.descriptor); // Only support SpriteColor legacy block if BaseColor/Alpha are not active bool useLegacyBlocks = !descs.Contains(BlockFields.SurfaceDescription.BaseColor) && !descs.Contains(BlockFields.SurfaceDescription.Alpha); context.AddField(CoreFields.UseLegacySpriteBlocks, useLegacyBlocks); // Surface Type & Blend Mode context.AddField(Fields.SurfaceTransparent); context.AddField(Fields.BlendAlpha); }
public override void GetFields(ref TargetFieldContext context) { // Decal properties context.AddField(AffectsAlbedo, decalData.affectsAlbedo); context.AddField(AffectsNormal, decalData.affectsNormal); context.AddField(AffectsNormalBlend, decalData.affectsNormalBlend); context.AddField(AffectsMAOS, decalData.affectsMAOS); context.AddField(AffectsEmission, decalData.affectsEmission); context.AddField(AffectsDBuffer, decalData.affectsAlbedo || decalData.affectsNormal || decalData.affectsMAOS); context.AddField(DecalDefault, decalData.affectsAlbedo || decalData.affectsNormal || decalData.affectsMAOS || decalData.affectsEmission); context.AddField(Fields.LodCrossFade, decalData.supportLodCrossFade); context.AddField(AngleFade, decalData.angleFade); }
internal static void GetFields(ref TargetFieldContext fieldsContext, VFXContext context) { fieldsContext.AddField(Fields.GraphVFX); // Select the primitive implementation. switch (context.taskType) { case VFXTaskType.ParticleMeshOutput: fieldsContext.AddField(VFXFields.ParticleMesh); break; case VFXTaskType.ParticleTriangleOutput: case VFXTaskType.ParticleOctagonOutput: case VFXTaskType.ParticleQuadOutput: fieldsContext.AddField(VFXFields.ParticlePlanarPrimitive); break; } }
public override void GetFields(ref TargetFieldContext context) { }
public override void GetFields(ref TargetFieldContext context) { base.GetFields(ref context); }
public override void GetFields(ref TargetFieldContext context) { context.AddField(colorField, true); }