commit428243f4a6Author: AsanoRema <asanorema2036@gmail.com> Date: Sat Aug 29 13:43:13 2026 +0300 Squashed commit of the following: commit68e78fa464Author: AsanoRema <asanorema2036@gmail.com> Date: Sat Aug 29 13:41:49 2026 +0300 Updated .gitignore commit9f87122a34Author: AsanoRema <asanorema2036@gmail.com> Date: Sat Aug 29 13:34:57 2026 +0300 Added Dohya commitf6a7547e84Author: AsanoRema <asanorema2036@gmail.com> Date: Fri Aug 21 17:59:13 2026 +0300 Fixed commitb98901c366Author: AsanoRema <asanorema2036@gmail.com> Date: Tue Aug 18 17:37:22 2026 +0300 Added new particle Package commitbb2f4a3b16Author: AsanoRema <asanorema2036@gmail.com> Date: Tue Aug 18 17:17:48 2026 +0300 Map mehanic ready to multiplayer commitc01ff800f6Author: AsanoRema <asanorema2036@gmail.com> Date: Tue Aug 18 16:16:19 2026 +0300 Squashed commit of the following: commit173bbb165cAuthor: henjkey <henjkey@gmail.com> Date: Fri Aug 14 18:51:23 2026 +0500 Mappp commitd559ab338aAuthor: henjkey <henjkey@gmail.com> Date: Thu Aug 13 18:42:41 2026 +0500 Map Controller Coordinates Target System Crosshair System Radar System
54 lines
1.4 KiB
C#
54 lines
1.4 KiB
C#
using UnityEngine;
|
|
|
|
namespace VLB_Samples
|
|
{
|
|
[RequireComponent(typeof(Collider), typeof(Rigidbody), typeof(MeshRenderer))]
|
|
public class CheckIfInsideBeam : MonoBehaviour
|
|
{
|
|
bool isInsideBeam = false;
|
|
Material m_Material = null;
|
|
Collider m_Collider = null;
|
|
|
|
void Start()
|
|
{
|
|
m_Collider = GetComponent<Collider>();
|
|
Debug.Assert(m_Collider);
|
|
|
|
var meshRenderer = GetComponent<MeshRenderer>();
|
|
if (meshRenderer)
|
|
m_Material = meshRenderer.material;
|
|
Debug.Assert(m_Material);
|
|
}
|
|
|
|
void Update()
|
|
{
|
|
if (m_Material)
|
|
{
|
|
m_Material.SetColor("_Color", isInsideBeam ? Color.green : Color.red);
|
|
}
|
|
}
|
|
|
|
void FixedUpdate()
|
|
{
|
|
isInsideBeam = false;
|
|
}
|
|
|
|
void OnTriggerStay(Collider trigger)
|
|
{
|
|
var dynamicOcclusion = trigger.GetComponent<VLB.DynamicOcclusionRaycasting>();
|
|
|
|
if (dynamicOcclusion)
|
|
{
|
|
// This GameObject is inside the beam's TriggerZone.
|
|
// Make sure it's not hidden by an occluder
|
|
isInsideBeam = !dynamicOcclusion.IsColliderHiddenByDynamicOccluder(m_Collider);
|
|
}
|
|
else
|
|
{
|
|
isInsideBeam = true;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|