Beispiel #1
0
        protected override void Initialize()
        {
            // Inputs
            InputSlot.CreateOrResetRequired <Surface>(ref surfaceInputSlot, this);
            InputSlot.CreateOrResetRequired <Topology>(ref topologyInputSlot, this);
            InputSlot.CreateOrResetRequired <IVertexAttribute <Vector3> >(ref vertexPositionsInputSlot, this);

            // Outputs
            OutputSlot.CreateOrReset <UniversalFaceSpatialPartitioning>(ref partitioningOutputSlot, this, "Face Spatial Partitioning");
        }
Beispiel #2
0
        protected override void Initialize()
        {
            // Inputs
            InputSlot.CreateOrResetRequired <DynamicMesh>(ref dynamicMeshInputSlot, this);

            // Fields
            meshPrefab = null;

            // Outputs
            OutputSlot.CreateOrReset <GameObject>(ref prefabOutputSlot, this, "Prefab");
        }
Beispiel #3
0
        protected override void Initialize()
        {
            // Inputs
            InputSlot.CreateOrResetRequired <Surface>(ref surfaceInputSlot, this);
            InputSlot.CreateOrResetRequired <Topology>(ref topologyInputSlot, this);
            InputSlot.CreateOrResetRequired <IEdgeAttribute <Vector3> >(ref vertexPositionsInputSlot, this);
            InputSlot.CreateOrResetRequired <IFaceAttribute <Vector3> >(ref facePositionsInputSlot, this);

            // Outputs
            OutputSlot.CreateOrResetGrouped <IEdgeAttribute <Vector3> >(ref bisectorsOutputSlot, this, "Face Edge Bisectors", "Attributes");
        }
Beispiel #4
0
        protected override void Initialize()
        {
            // Inputs
            InputSlot.CreateOrResetRequired <Surface>(ref surfaceInputSlot, this);
            InputSlot.CreateOrResetRequired <Topology>(ref topologyInputSlot, this);
            InputSlot.CreateOrResetRequired <IVertexAttribute <Vector3> >(ref vertexPositionsInputSlot, this);

            // Fields
            flatten = false;

            // Outputs
            OutputSlot.CreateOrResetGrouped <IFaceAttribute <Vector3> >(ref faceCentroidsOutputSlot, this, "Face Centroids", "Attributes");
        }
Beispiel #5
0
        protected override void Initialize()
        {
            // Inputs
            InputSlot.CreateOrResetRequired <Topology>(ref topologyInputSlot, this);
            InputSlot.CreateOrResetRequired <IEdgeAttribute <Vector3> >(ref vertexPositionsInputSlot, this);
            InputSlot.CreateOrResetRequired <IEdgeAttribute <Vector3> >(ref offsetsInputSlot, this);

            // Fields
            scale = 1f;

            // Outputs
            OutputSlot.CreateOrResetGrouped <IEdgeAttribute <Vector3> >(ref offsetVertexPositionsOutputSlot, this, "Offset Vertex Positions", "Attributes");
        }
        protected override void Initialize()
        {
            // Inputs
            InputSlot.CreateOrResetRequired <Topology>(ref topologyInputSlot, this);
            InputSlot.CreateOrResetRequired <IFaceAttribute <Color> >(ref faceColorsInputSlot, this);

            // Fields
            colorSource   = ColorSource.Constant;
            constantColor = Color.black;
            blendWeight   = 0.5f;

            // Outputs
            OutputSlot.CreateOrResetGrouped <IEdgeAttribute <Color> >(ref faceEdgeColorsOutputSlot, this, "Face Edge Colors", "Attributes");
        }
        protected override void Initialize()
        {
            // Inputs
            InputSlot.CreateOrResetRequired <Topology>(ref topologyInputSlot, this);

            // Fields
            groupCount = 1;
            randomness.Initialize(this);

            // Outputs
            OutputSlot.CreateOrResetGrouped <FaceGroupCollection>(ref faceGroupCollectionOutputSlot, this, "Random Face Groups", "Face Groups");
            OutputSlot.CreateOrResetGrouped <IFaceAttribute <int> >(ref faceGroupIndicesOutputSlot, this, "Random Face Group Indices", "Attributes");
            faceGroupOutputSlots = new OutputSlot[0];
        }
        protected override void Initialize()
        {
            // Inputs
            InputSlot.CreateOrResetRequired <Surface>(ref surfaceInputSlot, this);
            InputSlot.CreateOrResetRequired <Topology>(ref topologyInputSlot, this);
            InputSlot.CreateOrResetRequired <IVertexAttribute <Vector3> >(ref vertexPositionsInputSlot, this);
            InputSlot.CreateOrResetRequired <IFaceAttribute <Vector3> >(ref facePositionsInputSlot, this);
            InputSlot.CreateOrResetRequired <IFaceAttribute <Vector3> >(ref faceNormalsInputSlot, this);

            // Fields
            calculationMethod = CalculationMethod.FromSurfaceNormal;

            // Outputs
            OutputSlot.CreateOrResetGrouped <IVertexAttribute <Vector3> >(ref vertexNormalsOutputSlot, this, "Vertex Normals", "Attributes");
        }
Beispiel #9
0
        protected override void Initialize()
        {
            // Inputs
            InputSlot.CreateOrResetRequired <QuadrilateralSurface>(ref surfaceInputSlot, this);
            InputSlot.CreateOrResetRequired <Topology>(ref topologyInputSlot, this);
            InputSlot.CreateOrResetRequired <IFaceAttribute <Vector3> >(ref facePositionsInputSlot, this);

            // Fields
            axisDivisions = new IntVector2(1, 1);

            // Outputs
            OutputSlot.CreateOrResetGrouped <FaceGroupCollection>(ref faceGroupCollectionOutputSlot, this, "Rectangular Face Groups", "Face Groups");
            OutputSlot.CreateOrResetGrouped <IFaceAttribute <int> >(ref faceGroupIndicesOutputSlot, this, "Rectangular Face Group Indices", "Attributes");
            faceGroupOutputSlots = new OutputSlot[0];
        }
Beispiel #10
0
        protected override void Initialize()
        {
            // Inputs
            InputSlot.CreateOrResetRequired <Topology>(ref topologyInputSlot, this);
            InputSlot.CreateOrResetRequired <FaceGroupCollection>(ref faceGroupCollectionInputSlot, this);
            InputSlot.CreateOrResetRequired <IFaceAttribute <int> >(ref faceGroupIndicesInputSlot, this);

            // Fields
            colorSource   = ColorSource.Constant;
            constantColor = Color.white;
            randomness.Initialize(this);

            // Outputs
            OutputSlot.CreateOrResetGrouped <IFaceGroupAttribute <Color> >(ref faceGroupColorsOutputSlot, this, "Face Group Colors", "Attributes");
            OutputSlot.CreateOrResetGrouped <IFaceAttribute <Color> >(ref faceColorsOutputSlot, this, "Face Colors", "Attributes");
        }
Beispiel #11
0
        protected override void Initialize()
        {
            // Inputs
            InputSlot.CreateOrResetRequired <Topology>(ref topologyInputSlot, this);
            InputSlot.CreateOrResetRequired <FaceGroupCollection>(ref faceGroupCollectionInputSlot, this);
            InputSlot.CreateOrResetRequired <FaceGroup>(ref faceGroupInputSlot, this);
            ringVertexPositionsInputSlots   = new InputSlot[0];
            ringVertexNormalsInputSlots     = new InputSlot[0];
            ringVertexColorsInputSlots      = new InputSlot[0];
            ringVertexColor32sInputSlots    = new InputSlot[0];
            ringVertexUV1sInputSlots        = new InputSlot[0];
            ringVertexUV2sInputSlots        = new InputSlot[0];
            ringVertexUV3sInputSlots        = new InputSlot[0];
            ringVertexUV4sInputSlots        = new InputSlot[0];
            ringVertexTangentsInputSlots    = new InputSlot[0];
            centerVertexPositionsInputSlots = new InputSlot[0];
            centerVertexNormalsInputSlots   = new InputSlot[0];
            centerVertexColorsInputSlots    = new InputSlot[0];
            centerVertexColor32sInputSlots  = new InputSlot[0];
            centerVertexUV1sInputSlots      = new InputSlot[0];
            centerVertexUV2sInputSlots      = new InputSlot[0];
            centerVertexUV3sInputSlots      = new InputSlot[0];
            centerVertexUV4sInputSlots      = new InputSlot[0];
            centerVertexTangentsInputSlots  = new InputSlot[0];
            UpdateVertexAttributeInputSlots();

            // Fields
            sourceType            = SourceType.InternalFaces;
            triangulation         = Triangulation.Fan;
            ringDepth             = 1;
            maxVerticesPerSubmesh = 65534;

            // Outputs
            OutputSlot.CreateOrReset <DynamicMesh>(ref dynamicMeshOutputSlot, this, "Dynamic Mesh");
            meshOutputSlots = new OutputSlot[0];
        }