C# 选择对象时如何高亮显示?

C# 选择对象时如何高亮显示?,c#,unity3d,C#,Unity3d,我遇到了一个问题,在选中某个对象时,我需要帮助来突出显示该对象。我尝试导入一个圆形图像图标并尝试用c#脚本创建,但效果不太好。所以,有谁能帮我解决这个问题(如果可能的话,用不同的方式)或者改进我的代码,让它工作吗。谢谢你的帮助。如果我需要详细说明,请告诉我。谢谢 这是我的密码: public void Editcomponents() { ClearText(); CircleImageStatus = !CircleImageStatus; var imgs = re

我遇到了一个问题,在选中某个对象时,我需要帮助来突出显示该对象。我尝试导入一个圆形图像图标并尝试用c#脚本创建,但效果不太好。所以,有谁能帮我解决这个问题(如果可能的话,用不同的方式)或者改进我的代码,让它工作吗。谢谢你的帮助。如果我需要详细说明,请告诉我。谢谢

这是我的密码:

public void Editcomponents()
{ 
    ClearText();
    CircleImageStatus = !CircleImageStatus;
    var imgs = reticle.GetComponentsInChildren<Image>(true);
    if (CircleImageStatus)
    { 
        foreach (var img in imgs)
        {
            img.GetComponent<Image>().color = new Color32(235, 210, 52, 255);
        }
    }
    else
    {
        foreach (var img in imgs)
        {
            img.GetComponent<Image>().color = new Color32(255, 255, 255, 255); 
        }
    }
}
public void Editcomponents()
{ 
明文();
CircleImageStatus=!CircleImageStatus;
var imgs=十字线。GetComponentsInChildren(真);
if(CircleImageStatus)
{ 
foreach(imgs中的var img)
{
img.GetComponent().color=newcolor32(235、210、52、255);
}
}
其他的
{
foreach(imgs中的var img)
{
img.GetComponent().color=newcolor32(255、255、255、255);
}
}
}

有一个资产可以为您的对象绘制轮廓:

我以前用过它,它简单又棒

用法: 您只需在对象上启用和禁用大纲脚本即可


如果您仍然想使用圆形之类的东西,可以使用GUI项目,并使用WorldToScreen变换将它们移动到对象位置。对于GUI元素,可以使用以下内置的大纲脚本:
要在对象周围显示一个轮廓,您可以为选择目的打开和关闭该轮廓:D

当我在对象上选择时,轮廓效果可以工作吗?是的:D您只需调用一些函数就可以了非常简单我下载资源后几分钟内编辑我的答案,并将给出更好的解释:D updated so,如果我有多个对象,我是否需要向每个对象添加
大纲
脚本,对吗?这个问题听起来更像是一般的设计问题,而不是具体的实现问题。这对这个社区来说太广泛了。。。