FindObjOnRayWithIgnoreList(ray,ignoreTable)
FindPartOnRay的变体,返回射线打中的对象和终点坐标,忽略输入表格中的对象。
名称 | 类型 | 描述 |
---|---|---|
ray | Ray | 射线 |
ignoreTable | table | 忽略检查的对象 |
类型 | 描述 |
---|---|
RWObject | 射线打中的对象 |
Vector3 | 射线碰撞点坐标 |
Vector3 | 射线碰撞点与接触面的法线 |
在工作区创建零件1和零件2,调整大小便于射线检测。脚本的功能是不停从摄像机打出到鼠标位置的射线,在射线打中对象后,将当前物体颜色改变,并观察打印返回值的是否正常。
local function MyUpdate()
local ray = WorkSpace.摄像机:ScreenToRay(Mouse.MousePosition)
local mt = {WorkSpace.零件1,WorkSpace.新底板}--在工作区的零件2和新底板
local e,p = WorkSpace:FindObjOnRayWithIgnoreList(ray,mt)
if e then
e.Color = Vector3.New(255,0,0)
print(tostring(e.Name))
print(tostring(p))
end
end
local function coroutineUpdate()
while true do
coroutine.wait(0.1)
MyUpdate()
end
end
coroutine.start(coroutineUpdate)