Пример #1
0
    public override void DrawEditorGUI()
    {
        GUILayout.BeginVertical();
        foreach (Camera tracking_camera in cameras_)
        {
            GUILayout.Label(tracking_camera.name);
            for (int i = 0; i < tracked_objects_.Count; ++i)
            {
                GameObject tracked_object      = tracked_objects_[i];
                string     tracked_object_name = tracked_object.name;
                if (i < tracked_object_aliases_array_.Length)
                {
                    tracked_object_name = tracked_object_aliases_array_[i];
                }
                Vector3 viewport_position = tracking_camera.WorldToViewportPoint(tracked_object.transform.position);
                float[] bounds_2D         = GetBounds2DViewPoint(tracking_camera, tracked_object);

                GUILayout.BeginHorizontal();
                GUILayout.Label(tracked_object.name, GUILayout.Width(200));
                GUILayout.Label(string.Format("x:{0:0.000###}", viewport_position.x), GUILayout.Width(100));
                GUILayout.Label(string.Format("y:{0:0.000###}", viewport_position.y), GUILayout.Width(100));
                GUILayout.EndHorizontal();

                GUILayout.Label("Bounds: " + string.Join(", ", bounds_2D));
                RendererComponent.GUIHorizontalLine(1);
            }
        }
        GUILayout.EndVertical();
    }
Пример #2
0
    public override void DrawEditorGUI()
    {
        GUILayout.BeginVertical();
        RendererComponent.GUIField("material_prefix", ref material_prefix_);
        RendererComponent.GUIField("material_blacklist_prefix", ref material_blacklist_prefix_);
        RendererComponent.GUIHorizontalLine(1);

        RendererComponent.GUISlider("hue_radius", ref hue_radius_, 0.0f, 0.5f);
        RendererComponent.GUIHorizontalLine(1);

        RendererComponent.GUISlider("saturation_radius", ref saturation_radius_, 0.0f, 1.0f);
        RendererComponent.GUISlider("min_saturation", ref min_saturation_, 0.0f, max_saturation_);
        RendererComponent.GUISlider("max_saturation", ref max_saturation_, min_saturation_, 1.0f);
        RendererComponent.GUIHorizontalLine(1);

        RendererComponent.GUISlider("value_radius", ref value_radius_, 0.0f, 1.0f);
        RendererComponent.GUISlider("min_value", ref min_value_, 0.0f, max_value_);
        RendererComponent.GUISlider("max_value", ref max_value_, min_value_, 1.0f);
        RendererComponent.GUIHorizontalLine(1);

        RendererComponent.GUISlider("emission_probability", ref emission_probability_, 0.0f, 1.0f);
        RendererComponent.GUISlider("emission_radius", ref emission_radius_, 0.0f, 10.0f);
        RendererComponent.GUISlider("min_emission", ref min_emission_, 0.0f, max_emission_);
        RendererComponent.GUISlider("max_emission", ref max_emission_, min_emission_, 10.0f);
        RendererComponent.GUIHorizontalLine(1);

        RendererComponent.GUISlider("min_metallic", ref min_metallic_, 0.0f, max_metallic_);
        RendererComponent.GUISlider("max_metallic", ref max_metallic_, min_metallic_, 1.0f);
        RendererComponent.GUIHorizontalLine(1);

        RendererComponent.GUISlider("min_glossiness", ref min_glossiness_, 0.0f, max_glossiness_);
        RendererComponent.GUISlider("max_glossiness", ref max_glossiness_, min_glossiness_, 1.0f);
        GUILayout.EndVertical();
    }
Пример #3
0
 public override void DrawEditorGUI()
 {
     GUILayout.BeginVertical();
     RendererComponent.GUIVector3("translate", ref translate_);
     RendererComponent.GUIQuaternion("rotate", ref rotate_);
     RendererComponent.GUIVector3("scale", ref scale_);
     GUILayout.EndVertical();
 }
Пример #4
0
 public override void DrawEditorGUI()
 {
     GUILayout.BeginVertical();
     RendererComponent.GUIField("body_prefix", ref body_prefix_);
     RendererComponent.GUIField("geom_prefix", ref geom_prefix_);
     RendererComponent.GUIField("site_prefix", ref site_prefix_);
     GUILayout.EndVertical();
 }
Пример #5
0
 public override void DrawEditorGUI()
 {
     GUILayout.BeginVertical();
     RendererComponent.GUISlider("near_clip", ref near_clip_, 0.001f, far_clip_);
     RendererComponent.GUISlider("far_clip", ref far_clip_, near_clip_, 100.0f);
     RendererComponent.GUISlider("field_of_view", ref field_of_view_, 1.0f, 180.0f);
     GUILayout.EndVertical();
 }
Пример #6
0
 public static GeometryModel3D BuildModel(this RendererComponent renderer)
 {
     return(new GeometryModel3D
     {
         Geometry = renderer.BuildMesh(),
         Material = MaterialHelper.CreateMaterial(Colors.Red),
         BackMaterial = MaterialHelper.CreateMaterial(Colors.Red)
     });
 }
Пример #7
0
 public override void DrawEditorGUI()
 {
     GUILayout.BeginVertical();
     RendererComponent.GUISlider("position_radius", ref position_radius_, 0.0f, 1.0f);
     RendererComponent.GUISlider("fov_radius", ref fov_radius_, 0.0f, 20.0f);
     RendererComponent.GUISlider("quat_radius", ref quat_radius_, 0.0f, 1.0f);
     RendererComponent.GUIVector3("orbit_center", ref orbit_center_);
     GUILayout.EndVertical();
 }
Пример #8
0
 public ComponentInstance(RendererComponent renderer_component, string type, string name, string path,
                          bool enabled)
 {
     this.renderer_component = renderer_component;
     this.type    = type;
     this.name    = name;
     this.path    = path;
     this.enabled = enabled;
     this.hidden  = true;
 }
Пример #9
0
        private RendererComponent CreateCat()
        {
            var entity    = new Entity();
            var transform = new TransformComponent();

            entity.AddComponent(typeof(ITransformComponent), transform);
            var renderer = new RendererComponent();

            entity.AddComponent(typeof(IRendererComponent), renderer);
            return(renderer);
        }
Пример #10
0
 public override void DrawEditorGUI()
 {
     GUILayout.BeginVertical();
     RendererComponent.GUIField("blacklist_prefix", ref blacklist_prefix_);
     RendererComponent.GUIField("whitelist_prefix", ref whitelist_prefix_);
     RendererComponent.GUISlider("min_metallic", ref min_metallic_, 0.0f, max_metallic_);
     RendererComponent.GUISlider("max_metallic", ref max_metallic_, min_metallic_, 1.0f);
     RendererComponent.GUISlider("min_glossiness", ref min_glossiness_, 0.0f, max_glossiness_);
     RendererComponent.GUISlider("max_glossiness", ref max_glossiness_, min_glossiness_, 1.0f);
     RendererComponent.GUIToggle("randomize_textures", ref randomize_textures_);
     GUILayout.EndVertical();
 }
Пример #11
0
 public override void DrawEditorGUI()
 {
     GUILayout.BeginVertical();
     RendererComponent.GUISlider("min_scene_intensity", ref min_scene_intensity_, 0.0f, max_scene_intensity_);
     RendererComponent.GUISlider("max_scene_intensity", ref max_scene_intensity_, min_scene_intensity_, 30.0f);
     RendererComponent.GUISlider("min_light_intensity", ref min_light_intensity_, 0.0f, max_light_intensity_);
     RendererComponent.GUISlider("max_light_intensity", ref max_light_intensity_, min_light_intensity_, 30.0f);
     RendererComponent.GUISlider("min_spotlight_angle", ref min_spotlight_angle_, 1.0f, max_spotlight_angle_);
     RendererComponent.GUISlider("max_spotlight_angle", ref max_spotlight_angle_, min_spotlight_angle_, 120.0f);
     RendererComponent.GUIToggle("randomize_hue", ref randomize_hue_);
     GUILayout.EndVertical();
 }
Пример #12
0
    public override void DrawEditorGUI()
    {
        GUILayout.BeginVertical();
        // ColorGrading
        RendererComponent.GUIToggle("enable_color_grading", ref enable_color_grading_);
        RendererComponent.GUISlider("cg_min_hue_shift", ref cg_min_hue_shift_, -180.0f, cg_max_hue_shift_);
        RendererComponent.GUISlider("cg_max_hue_shift", ref cg_max_hue_shift_, cg_min_hue_shift_, 180.0f);
        RendererComponent.GUISlider("cg_min_saturation", ref cg_min_saturation_, -100.0f, cg_max_saturation_);
        RendererComponent.GUISlider("cg_max_saturation", ref cg_max_saturation_, cg_min_saturation_, 100.0f);
        RendererComponent.GUISlider("cg_min_contrast", ref cg_min_contrast_, -100.0f, cg_max_contrast_);
        RendererComponent.GUISlider("cg_max_contrast", ref cg_max_contrast_, cg_min_contrast_, 100.0f);
        RendererComponent.GUISlider("cg_min_brightness", ref cg_min_brightness_, -100.0f, cg_max_brightness_);
        RendererComponent.GUISlider("cg_max_brightness", ref cg_max_brightness_, cg_min_brightness_, 100.0f);
        RendererComponent.GUISlider("cg_min_contrast", ref cg_min_contrast_, -100.0f, cg_max_contrast_);
        RendererComponent.GUISlider("cg_max_contrast", ref cg_max_contrast_, cg_min_contrast_, 100.0f);
        RendererComponent.GUISlider("cg_min_temperature", ref cg_min_temperature_, -100.0f, cg_max_temperature_);
        RendererComponent.GUISlider("cg_max_temperature", ref cg_max_temperature_, cg_min_temperature_, 100.0f);
        RendererComponent.GUISlider("cg_min_tint", ref cg_min_tint_, -100.0f, cg_max_tint_);
        RendererComponent.GUISlider("cg_max_tint", ref cg_max_tint_, cg_min_tint_, 100.0f);
        RendererComponent.GUIHorizontalLine(1);

        // Bloom
        RendererComponent.GUIToggle("enable_bloom", ref enable_bloom_);
        RendererComponent.GUISlider("bloom_min_intensity", ref bloom_min_intensity_, 0.0f, bloom_max_intensity_);
        RendererComponent.GUISlider("bloom_max_intensity", ref bloom_max_intensity_, bloom_min_intensity_, 10.0f);
        RendererComponent.GUISlider("bloom_min_diffusion", ref bloom_min_diffusion_, 1.0f, bloom_max_diffusion_);
        RendererComponent.GUISlider("bloom_max_diffusion", ref bloom_max_diffusion_, bloom_min_diffusion_, 10.0f);
        RendererComponent.GUIHorizontalLine(1);

        // Ambient Occlusion
        RendererComponent.GUIToggle("enable_ambient_occlusion", ref enable_ambient_occlusion_);
        RendererComponent.GUISlider("ao_min_intensity", ref ao_min_intensity_, 0.0f, ao_max_intensity_);
        RendererComponent.GUISlider("ao_max_intensity", ref ao_max_intensity_, ao_min_intensity_, 4.0f);
        RendererComponent.GUIHorizontalLine(1);

        // Grain
        RendererComponent.GUIToggle("enable_grain", ref enable_grain_);
        RendererComponent.GUISlider("grain_color_probability", ref grain_color_probability_, 0.0f, 1.0f);
        RendererComponent.GUISlider("grain_min_intensity", ref grain_min_intensity_, 0.0f, grain_max_intensity_);
        RendererComponent.GUISlider("grain_max_intensity", ref grain_max_intensity_, grain_min_intensity_, 1.0f);
        RendererComponent.GUISlider("grain_min_size", ref grain_min_size_, -0.3f, grain_max_size_);
        RendererComponent.GUISlider("grain_max_size", ref grain_max_size_, grain_min_size_, 3.0f);

        GUILayout.EndVertical();
    }
Пример #13
0
    public override void DrawEditorGUI()
    {
        GUILayout.BeginVertical();
        RendererComponent.GUIField("camera_name", ref camera_name_);

        string label_text = GetCameraPositionString();

        RendererComponent.GUIField("mujoco_position", ref label_text);

        label_text = GetCameraRotationString();
        RendererComponent.GUIField("mujoco_rotation", ref label_text);

        label_text = GetCameraFovString();
        RendererComponent.GUIField("mujoco_fov", ref label_text);

        RendererComponent.GUIHorizontalLine(1);
        RendererComponent.GUIVector3("local_position_delta", ref local_position_delta_);
        RendererComponent.GUIQuaternion("local_rotation_delta", ref local_rotation_delta_);
        RendererComponent.GUIHorizontalLine(1);
        RendererComponent.GUISlider("dolly_x", ref dolly_x_, -0.03f, 0.03f);
        RendererComponent.GUISlider("dolly_y", ref dolly_y_, -0.03f, 0.03f);
        RendererComponent.GUISlider("dolly_z", ref dolly_z_, -0.03f, 0.03f);
        RendererComponent.GUIHorizontalLine(1);
        RendererComponent.GUISlider("euler_x", ref euler_x_, -2.0f, 2.0f);
        RendererComponent.GUISlider("euler_y", ref euler_y_, -2.0f, 2.0f);
        RendererComponent.GUISlider("euler_z", ref euler_z_, -2.0f, 2.0f);
        RendererComponent.GUIHorizontalLine(1);
        RendererComponent.GUISlider("zoom", ref zoom_, -1f, 1f);
        RendererComponent.GUIHorizontalLine(1);

        GUILayout.BeginHorizontal();
        if (RendererComponent.GUIButton("Colapse"))
        {
            Colapse();
        }
        if (RendererComponent.GUIButton("Reset"))
        {
            Reset();
        }

        GUILayout.EndHorizontal();
        GUILayout.EndVertical();
    }
Пример #14
0
        public void Render_NullListOfNetworkData()
        {
            // arrange
            var argumentHandlerComponentMock = new Mock <ArgumentHandlerComponent>();

            argumentHandlerComponentMock.Setup(x => x.IPV4Only).Returns(true);
            argumentHandlerComponentMock.Setup(x => x.RenderSubnetMask).Returns(true);
            argumentHandlerComponentMock.Setup(x => x.WlanOnly).Returns(true);
            ArgumentHandlerComponent argumentHandlerComponent = argumentHandlerComponentMock.Object;

            RendererComponent  rendererComponent = new RendererComponent(argumentHandlerComponent);
            List <NetworkData> data = null;

            // act
            var output = rendererComponent.Render(data);

            // assert
            Assert.AreEqual(string.Empty, output, "ip address not rendered successfully");
        }
Пример #15
0
        static void Main(string[] args)
        {
            ArgumentHandlerComponent argumentHandlerComponent = new ArgumentHandlerComponent(args);
            INetworker networkComponent = new NetworkComponent(argumentHandlerComponent);

            IRenderer rendererComponent = null;

            if (argumentHandlerComponent.Reversed)
            {
                rendererComponent = new ReverseRendererComponent(argumentHandlerComponent);
            }
            else
            {
                rendererComponent = new RendererComponent(argumentHandlerComponent);
            }


            View = new View(networkComponent, rendererComponent);
            View.Start();
        }
Пример #16
0
    // Instantiate a component of a given type and name in an object
    // that is located based on the component_path.
    private ComponentInstance InstantiateComponentByType(string type, string component_name, string component_path,
                                                         bool component_enabled)
    {
        GameObject subject = FindSubject(this.gameObject, component_path);

        if (builders_.ContainsKey(type))
        {
            RendererComponent renderer_component = builders_[type].Build(subject);
            if (renderer_component == null)
            {
                Logger.Error("ComponentManager::InstantiateComponentByType::Builder returned null for: {0} type: {1}.",
                             component_name, type);
                return(null);
            }
            return(new ComponentInstance(renderer_component, type, component_name, component_path, component_enabled));
        }

        Logger.Error("ComponentManager::InstantiateComponentByType::Unknown component type: {0}.", type);
        return(null);
    }
Пример #17
0
        public void Render_IPv4AddressOnly()
        {
            // arrange
            var argumentHandlerComponentMock = new Mock <ArgumentHandlerComponent>();

            argumentHandlerComponentMock.Setup(x => x.IPV4Only).Returns(true);
            ArgumentHandlerComponent argumentHandlerComponent = argumentHandlerComponentMock.Object;

            RendererComponent  rendererComponent = new RendererComponent(argumentHandlerComponent);
            List <NetworkData> data = new List <NetworkData>()
            {
                new NetworkData()
                {
                    IP = "10.1.2.3", SubnetPrefix = 8
                }
            };

            // act
            var output = rendererComponent.Render(data);

            // assert
            Assert.AreEqual("10.1.2.3" + Environment.NewLine, output, "ip address not rendered successfully");
        }
Пример #18
0
    public void DrawEditorGUI()
    {
        GUILayout.BeginVertical();
        GUILayout.BeginHorizontal();
        if (GUILayout.Button(" < ", GUILayout.Width(20)))
        {
            PreviousState();
        }
        if (GUILayout.Button(" > ", GUILayout.Width(20)))
        {
            NextState();
        }
        if (playing_ = GUILayout.Toggle(playing_, " Play ", GUILayout.Width(50)))
        {
            NextState();
        }
        GUILayout.Space(10);
        int new_frame = (int)GUILayout.HorizontalSlider(current_frame_, 0.0f,
                                                        states_.Count == 0 ? 0 : states_.Count - 1,
                                                        GUILayout.ExpandWidth(true));

        if (new_frame != current_frame_)
        {
            current_frame_ = new_frame;
            UpdateState(states_[current_frame_]);
        }

        GUIStyle style = new GUIStyle(GUI.skin.label);

        style.alignment = TextAnchor.UpperRight;
        GUILayout.Label(string.Format(" {0} / {1} ", current_frame_, states_.Count), style, GUILayout.Width(80));
        GUILayout.EndHorizontal();

        if (footage_.Count > 1)
        {
            RendererComponent.GUIHorizontalLine(1);
            GUILayout.BeginHorizontal();
            int button_size = Mathf.Min(100, 380 / (footage_.Count + 1));
            if (GUILayout.Button("Clear", GUILayout.Width(button_size), GUILayout.Height(button_size)))
            {
                reference_image_texture_ = null;
            }
            GUILayout.FlexibleSpace();
            foreach (KeyValuePair <string, Texture2D[]> streams in footage_)
            {
                if (streams.Value != null && streams.Value.Length > current_frame_)
                {
                    if (GUILayout.Button(streams.Value[current_frame_], GUILayout.Width(button_size),
                                         GUILayout.Height(button_size)))
                    {
                        reference_image_texture_ = streams.Value[current_frame_];
                    }
                    GUILayout.FlexibleSpace();
                }
            }
            GUILayout.FlexibleSpace();
            GUILayout.EndHorizontal();
            RendererComponent.GUISlider("overlay_alpha_", ref reference_overlay_alpha_, 0.0f, 1.0f);
            RendererComponent.GUIHorizontalLine(1);
        }
        GUILayout.EndVertical();
    }
Пример #19
0
 public override void DrawEditorGUI()
 {
     GUILayout.BeginVertical();
     RendererComponent.GUIVector3("target_offset", ref target_offset_);
     GUILayout.EndVertical();
 }