Example #1
0
        internal void AddAdditionalTargets(GeometryVision geoVision, List <GeometryType> geoTypes)
        {
            var targetingSystems = MakeTargetingSystems();

            AssignTargetingInstructions();

            //Make all currently supported targeting systems and return them in a tuple like object

            void AssignTargetingInstructions()
            {
                foreach (var geoType in geoTypes)
                {
                    if (geoType == GeometryType.Objects)
                    {
                        var targetingInstruction = new TargetingInstruction(GeometryType.Objects, settings.defaultTag,
                                                                            (targetingSystems.Item4, targetingSystems.Item1), true, null);
                        geoVision.TargetingInstructions.Add(targetingInstruction);
                    }

                    if (geoType == GeometryType.Lines)
                    {
                        var targetingInstruction = new TargetingInstruction(GeometryType.Lines, settings.defaultTag,
                                                                            (targetingSystems.Item5, targetingSystems.Item2), true, null);
                        geoVision.TargetingInstructions.Add(targetingInstruction);
                    }

                    if (geoType == GeometryType.Vertices)
                    {
                        var targetingInstruction = new TargetingInstruction(GeometryType.Vertices, settings.defaultTag,
                                                                            (targetingSystems.Item6, targetingSystems.Item3), true, null);
                        geoVision.TargetingInstructions.Add(targetingInstruction);
                    }
                }
            }
        }
 void ProcessorCheckSceneChanges(GeometryVision geoVision)
 {
     foreach (var processor in Processors)
     {
         processor.CheckSceneChanges(geoVision);
     }
 }
        void UpdateEntityOrGameObjectVisibilities(GeometryVision geoVision)
        {
            foreach (var geoEye in geoVision.Eyes)
            {
                geoEye.UpdateVisibility(geoVision.UseBounds);

                if (geoVision.DebugMode)
                {
                    EyeDebugger.Debug(geoEye);
                }
            }
        }
Example #4
0
        public void CreateGeometryVisionRunner(GeometryVision geoVisionComponent)
        {
            var geoVisionRunnerGo = CreateGeometryVisionRunnerGameObject();

            CreateGeometryVisionRunner(geoVisionRunnerGo, geoVisionComponent);
        }