render.DepthRange
Açıklama
Yaklaşan görüntülemenin derinlik aralığı ayarlandı.
Görünüm modelleri derinlik aralığı ile çizilir.
0 ...ya da 0.1 Normal yerine. 0 ...ya da 1Değeri yanlış ayarlamak görüntüleme sorunlarına neden olabilir.Argümanlar
Örnek
Müşteri bağlandıktan sonra tüm şeffaf olmayan nesnelere aşağıya doğru bir ekran silme etkisi uygulayın.
local depthmin = 1.0
hook.Add( "PreDrawOpaqueRenderables", "simple_effect", function( bDrawingDepth, bDrawingSkybox )
render.DepthRange( depthmin, 1.0 )
if ( depthmin > 0.0 ) then
depthmin = depthmin - 0.001
end
end )
Örnek
Yukarıdakiyle aynı etki ancak modelin çizildiği yerde koyu bir gölge deri var.
local depthmin = 1.0
local spawn_copies = {} -- Gölge kopyaları
local custom_white_color = Color( 255, 255, 255, 92 )
hook.Add( "PreDrawOpaqueRenderables", "advanced_effect", function( bDrawingDepth, bDrawingSkybox )
render.DepthRange( depthmin, 1.0 )
if ( !spawn_copies ) then return false end
if ( depthmin > 0.0 ) then
depthmin = depthmin - 0.001
else
local alpha = 0
local valid_copies = 0
- Gölge kopyalarını sil ve çıkar.
for _, spawncopy in ipairs(spawn_copies) do
if ( IsValid( spawncopy ) ) then
alpha = spawncopy:GetColor().a
if ( alpha > 0 ) then
spawncopy:SetColor( Color( 255, 255, 255, alpha - 1 ) )
else
spawncopy:Remove()
end
valid_copies = valid_copies + 1
end
end
-- Artık kullanmadığımız için masayı iptal edin.
if ( valid_copies == 0 ) then
spawn_copies = nil
end
end
end )
hook.Add( "OnEntityCreated", "advanced_effect", function( ent )
if ( !spawn_copies ) then return end
- Sonsuz döngü ve diğer hataları engeller.
if ( ent:GetClass() ~= "class C_BaseFlex" and
ent:GetRenderGroup() == RENDERGROUP_OPAQUE and
ent:GetClass() ~= "gmod_hands" ) then
local mdl = ent:GetModel()
- Varlığın bir model olup olmadığını kontrol edin.
if ( string.EndsWith( mdl, ".mdl" ) ) then
local spawncopy = ClientsideModel( mdl )
- $ignorez'in 1'e ayarlandığı bir madde burada en iyi şekilde çalışır.
spawncopy:SetMaterial( "models/overlay_rendertarget" )
spawncopy:AddEffects( EF_BONEMERGE )
spawncopy:SetParent( ent )
spawncopy:SetRenderMode( RENDERMODE_TRANSALPHA )
spawncopy:SetColor( custom_white_color )
table.insert( spawn_copies, spawncopy )
end
end
end )
Çıkış:
Tüm sunucular · GmodTR Launcher · Rehber · GMod Wiki · GmodTR nedir? · Sunucu ekle · Discord