Neler yeni

Foruma hoş geldin, Ziyaretçi

Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak tamamen ücretsizdir.

Türkiye'nin İlk ve tek FiveM forum adresi

Forum adresimize hoş geldin FiveMTürk olarak amacımız siz değerli kullanıcılarımıza en aktif fikir ve paylaşım platformu sunmak bir yana en güvenilir şekilde alışveriş yapabileceğiniz bir platform sunmaktır.
DF DF
DF DF
DF DF

Soru DoorLock Resmon Optimizasyon

AliKaan02

Üye
FT Kullanıcı
Katılım
3 yıl 5 ay 18 gün
Mesajlar
43
esx_doorlock 10,15 resmon alıyor. Scriptin client bölümünde çok fazla white true do döngüsü var. Bunun optimizasyonunu yapabilen var mı
 
bende 30 ile 50 arası kullanmakta nasıl azaltırım :/
 
Konu tarafımca uygun kategoriye taşınmıştır.​
 
bende de kapılar genelde 0.30 - 0.50 arası bunun için birisi yardım ederse çok iyi olur
 
benim doorlock 0.4 0.3 civarlarında atabilirim istersen :)
 
optimize etmektense script değiştirmekmi ?:d

while döngülerinin wait değerleri olur wait değerleri şu şekildedir : Citizen.Wait(milisaniye)
aradaki parantez döngünün kendini kaç milisaniyede bir tekrar edeceğini belirtir.

clientside da bundan birsürü görebilirsiniz.

abartı derecede düşük olan örneğin 0-1-2-3 gibi değerler Citizen.Wait(ms) kısmında kullanıyorsa bu FPS kaybına yol açar.
Bu değerleri editleyerek ciddi bir optimizasyon yapabilirsin

kısacası eğer Citizen.Wait(ms) deki değer düşük ise bu kasmaya donmaya yol açar. Yüksek ise sorun yaratmaz (fps açısından söylüyorum oyuna tabiikide etkisi olacaktır)

anlamadıysan discord üzerinden benimle iletişime geçebilirsin lil.dopeee#9999
 
optimize etmektense script değiştirmekmi ?:d

while döngülerinin wait değerleri olur wait değerleri şu şekildedir : Citizen.Wait(milisaniye)
aradaki parantez döngünün kendini kaç milisaniyede bir tekrar edeceğini belirtir.

clientside da bundan birsürü görebilirsiniz.

abartı derecede düşük olan örneğin 0-1-2-3 gibi değerler Citizen.Wait(ms) kısmında kullanıyorsa bu FPS kaybına yol açar.
Bu değerleri editleyerek ciddi bir optimizasyon yapabilirsin

kısacası eğer Citizen.Wait(ms) deki değer düşük ise bu kasmaya donmaya yol açar. Yüksek ise sorun yaratmaz (fps açısından söylüyorum oyuna tabiikide etkisi olacaktır)

anlamadıysan discord üzerinden benimle iletişime geçebilirsin lil.dopeee#9999
Düşük olunca çalışan bir şeyi yüksek olunca nasıl çalıştırcaz? while döngülerinin bundan dolayı lag yaptıgını biliyorum
 
sleep kodlarını bir discord sunucusunda görmüştüm ama sadece bir örnek atmış. Önceki hali bile yok. Bu sleep olayının detaylı anlatımını bulabileceğim bir yer var mı?
Örnek Bir Kod Satırı;

Kod:
Citizen.CreateThread(function()
    while true do
        local sleep = 2000

        while ESX == nil do
            TriggerEvent('esx:getSharedObject', function(obj) ESX = obj end)
            Citizen.Wait(0)
        end
      
        local playerPed = PlayerPedId()
        local coords    = GetEntityCoords(playerPed)
      
        if Config.UseCarGarages == true then
            -- Car Garages
            for k,v in pairs(Config.CarGarages) do
                if (GetDistanceBetweenCoords(coords, v.GaragePoint.x, v.GaragePoint.y, v.GaragePoint.z, true) < 20.0) then
                    sleep = 5
                end
                if (GetDistanceBetweenCoords(coords, v.GaragePoint.x, v.GaragePoint.y, v.GaragePoint.z, true) < Config.DrawDistance) then
                    DrawMarker(Config.MarkerType, v.GaragePoint.x, v.GaragePoint.y, v.GaragePoint.z, 0.0, 0.0, 0.0, 0, 0.0, 0.0, Config.PointMarker.x, Config.PointMarker.y, Config.PointMarker.z, Config.PointMarker.r, Config.PointMarker.g, Config.PointMarker.b, 100, false, true, 2, false, false, false, false) 
                    DrawMarker(Config.MarkerType, v.DeletePoint.x, v.DeletePoint.y, v.DeletePoint.z, 0.0, 0.0, 0.0, 0, 0.0, 0.0, Config.DeleteMarker.x, Config.DeleteMarker.y, Config.DeleteMarker.z, Config.DeleteMarker.r, Config.DeleteMarker.g, Config.DeleteMarker.b, 100, false, true, 2, false, false, false, false) 
                end
            end
 
Örnek Bir Kod Satırı;

Kod:
Citizen.CreateThread(function()
    while true do
        local sleep = 2000

        while ESX == nil do
            TriggerEvent('esx:getSharedObject', function(obj) ESX = obj end)
            Citizen.Wait(0)
        end
     
        local playerPed = PlayerPedId()
        local coords    = GetEntityCoords(playerPed)
     
        if Config.UseCarGarages == true then
            -- Car Garages
            for k,v in pairs(Config.CarGarages) do
                if (GetDistanceBetweenCoords(coords, v.GaragePoint.x, v.GaragePoint.y, v.GaragePoint.z, true) < 20.0) then
                    sleep = 5
                end
                if (GetDistanceBetweenCoords(coords, v.GaragePoint.x, v.GaragePoint.y, v.GaragePoint.z, true) < Config.DrawDistance) then
                    DrawMarker(Config.MarkerType, v.GaragePoint.x, v.GaragePoint.y, v.GaragePoint.z, 0.0, 0.0, 0.0, 0, 0.0, 0.0, Config.PointMarker.x, Config.PointMarker.y, Config.PointMarker.z, Config.PointMarker.r, Config.PointMarker.g, Config.PointMarker.b, 100, false, true, 2, false, false, false, false)
                    DrawMarker(Config.MarkerType, v.DeletePoint.x, v.DeletePoint.y, v.DeletePoint.z, 0.0, 0.0, 0.0, 0, 0.0, 0.0, Config.DeleteMarker.x, Config.DeleteMarker.y, Config.DeleteMarker.z, Config.DeleteMarker.r, Config.DeleteMarker.g, Config.DeleteMarker.b, 100, false, true, 2, false, false, false, false)
                end
            end
söylediğim gibi bu örnek atılmıstı zaten ama bunun ilk hâli veya tam olarak işlevinin anlatıldıgı bir rehber var mı
 
Düşük olunca çalışan bir şeyi yüksek olunca nasıl çalıştırcaz? while döngülerinin bundan dolayı lag yaptıgını biliyorum
genelde scripti yapan kişiler scriptleri mükemmel olsun diye 0 gibi değerler yazarlar. Sen bun abartmadan arttırdığındaa hiçbir sorun olmayacaktır
 
100 milisaniye arttırırsan doğaldır bozulması :d
100ms sizce yüksek bir değer mi?

Diyelim ki citizen.wait(0) olan bir şeyi citizen.wait(10) olarak değiştirdik.

Resmon değerinde nasıl bir değişiklik olur sizce?
Ben sizin için denedim ve hiçbir değişiklik olmadı.

citizen.wait(20) den sonra da zaten bozulmaya başlıyor
 
100ms sizce yüksek bir değer mi?

Diyelim ki citizen.wait(0) olan bir şeyi citizen.wait(10) olarak değiştirdik.

Resmon değerinde nasıl bir değişiklik olur sizce?
Ben sizin için denedim ve hiçbir değişiklik olmadı.

citizen.wait(20) den sonra da zaten bozulmaya başlıyor
1. si döngünün ne olduğuna bağı olarak değeişir
2. si evet çok etkisi oluyor :d

ve son olarak ben burdaki adamlara GetDistancceBetweenCoords u kullanarak markerleri gizleyin 3DTextlerin draw distancelerini editleyin server e manuel olarak gecikme ekleyin falan desem herkes anlıycakmı reyis ?
bende biliyorum optimizesinin nasıl yapıldığını ve emin ol citizen.wait ms editleme olayını olsa olsa 2 scripte falan kullanmışımdır farklı methodlar kullanıyorum genelde
ben en basit ve basitliğine göre oldukça etkili bir yöntem söyledim sen niye bu kadar taktın buna, değişik değişik boş beleş konuşuyon reyis
 

Forumdan daha fazla yararlanmak için giriş yapın yada üye olun!

Forumdan daha fazla yararlanmak için giriş yapın veya kayıt olun!

Kayıt ol

Forumda bir hesap oluşturmak tamamen ücretsizdir.

Şimdi kayıt ol
Giriş yap

Eğer bir hesabınız var ise lütfen giriş yapın

Giriş yap

Bu konuyu görüntüleyen kullanıcılar

Tema düzenleyici

Tema özelletirmeleri

Granit arka planlar

Lütfen Javascript'i etkinleştirin!Javascript'i etkinleştirin!