util.TraceHull
Açıklama
Verilen izleme verileriyle bir AABB (eksen hizalı sınırlayıcı kutu, yani döndürülmemiş) kabuk izlemesi gerçekleştirir.
Bu izleme türü hitbox'lara isabet edemez.
Basit bir çizgi ("ışın") izlemesi için util.TraceLine sayfasına bakın.
Bu fonksiyon, istemcide belirli fizik mekanizmalarının bulunmaması nedeniyle istemci tarafında her zaman istenen sonuçları vermeyebilir. Doğru sonuçlar için sunucu tarafında kullanın.
Argümanlar
Dönen Değerler
Örnek
Bir Kabuk İzlemesinin (Hull Trace) görsel temsili.
function ENT:Draw()
self:DrawModel()
-- Varlık modelinin sınırlayıcı kutusu
local mins = self:OBBMins()
local maxs = self:OBBMaxs()
local startpos = self:GetPos() -- İzleme için başlangıç noktası
local dir = self:GetUp() -- İzleme yönü, birim vektör olarak
local len = 128 -- İzlemenin maksimum uzunluğu
-- İzlemeyi gerçekleştir
local tr = util.TraceHull( {
start = startpos,
endpos = startpos + dir * len,
maxs = maxs,
mins = mins,
filter = self
} )
-- Gerçekleştirilen izlemenin başlangıcı ve sonu arasında bir çizgi çiz
render.DrawLine( tr.HitPos, startpos + dir * len, color_white, true )
render.DrawLine( startpos, tr.HitPos, Color( 0, 0, 255 ), true )
-- Bir renk seç, eğer izleme isabet ettiyse - rengi kırmızı yap
local clr = color_white
if ( tr.Hit ) then clr = Color( 255, 0, 0 ) end
-- İzleme sınırlarını başlangıç ve bitiş pozisyonlarında çiz
render.DrawWireframeBox( startpos, Angle( 0, 0, 0 ), mins, maxs, Color( 255, 255, 255 ), true )
render.DrawWireframeBox( tr.HitPos, Angle( 0, 0, 0 ), mins, maxs, clr, true )
end
Çıktı: 

Örnek
Bir oyuncunun herhangi bir şeyin içinde sıkışmadan burada doğup doğamayacağını tespit etmek için oyuncu boyutunda bir kabuk izlemesi yapın.
Örnek
Bir SWEP:PrimaryAttack() fonksiyonundan
local tr = util.TraceHull( {
start = self:GetOwner():GetShootPos(),
endpos = self:GetOwner():GetShootPos() + ( self:GetOwner():GetAimVector() * 100 ),
filter = self:GetOwner(),
mins = Vector( -10, -10, -10 ),
maxs = Vector( 10, 10, 10 ),
mask = MASK_SHOT_HULL
} )
Tüm sunucular · GmodTR Launcher · Rehber · GMod Wiki · GmodTR nedir? · Sunucu ekle · Discord