有一個 單位 和一個單元格 在 一個地理位置,都是碰撞體
怎么設定 層級 能讓 raycast 一定先照到單位 ;而當該位置沒有單位的時候 又能找到 單元格
uj5u.com熱心網友回復:
這個問題我也遇到過,不過因為需求跟你的不一樣,我是直接用Physics.RaycastAll回傳所有碰撞體,然后遍歷判定碰撞體的tag來解決的。參考方法:
function Update () {
var hits : RaycastHit[];
hits = Physics.RaycastAll (transform.position, transform.forward, 100.0);
// Change the material of all hit colliders
// to use a transparent Shader
//改變所有碰到碰撞器的材質,使用透明的著色器
for (var i = 0;i < hits.Length; i++) {
var hit : RaycastHit = hits[i];
var renderer = hit.collider.renderer;
if (renderer) {
renderer.material.shader = Shader.Find("Transparent/Diffuse");
renderer.material.color.a = 0.3;
}
}
}
uj5u.com熱心網友回復:
RaycastAll ()里有個引數填layer層的,動態改轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/64420.html
標籤:Unity3D
