【发布时间】:2026-01-10 04:05:02
【问题描述】:
我正在为我的相机编写一个脚本,以使自身和角色之间的对象透明。
我设法让它与 RayCast 一起工作,但是我不知道如何在物体逃离光线后重新建立 alpha 值。
这是我当前的代码:
private void XRay() {
float characterDistance = Vector3.Distance(transform.position, GameObject.Find("Character").transform.position);
Vector3 fwd = transform.TransformDirection(Vector3.forward);
RaycastHit hit;
if (Physics.Raycast(transform.position, fwd, out hit, characterDistance)) {
// Add transparence
Color color = hit.transform.gameObject.renderer.material.color;
color.a = 0.5f;
hit.transform.gameObject.renderer.material.SetColor("_Color", color);
}
}
【问题讨论】: