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;
            }
        }
Exemplo n.º 2
0
        public override void GetFields(ref TargetFieldContext context)
        {
#if HAS_VFX_GRAPH
            if (TargetsVFX())
            {
                VFXSubTarget.GetFields(ref context, m_ContextVFX);
            }
#endif
        }
Exemplo n.º 3
0
 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);
 }
Exemplo n.º 6
0
        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;
            }
        }
Exemplo n.º 7
0
 public override void GetFields(ref TargetFieldContext context)
 {
 }
Exemplo n.º 8
0
 public override void GetFields(ref TargetFieldContext context)
 {
     base.GetFields(ref context);
 }
Exemplo n.º 9
0
 public override void GetFields(ref TargetFieldContext context)
 {
     context.AddField(colorField, true);
 }