• 08-12-2021, 16:15:43
    #1
    Elimde böyle bir script var fakat bunu objeyi yok etme değilde yükleme yapmasını istiyorum. Örnek; bir süre geçtikten sonra kodu hangi objeye eklersem o obje ortaya çıksın istiyorum. Bu konuyla ılgılı alttaki kodu güncelleyip yazabilicek olursa çok sevinirim.
    using System.Collections;
    using System.Collections.Generic;
    using UnityEngine;
    
    public class uzunyok : MonoBehaviour
    {
        // Start is called before the first frame update
        void Start()
        {
            Destroy(this.gameObject, 10);
        }
    
        // Update is called once per frame
        void Update()
        {
            
        }
    }
  • 08-12-2021, 16:22:02
    #2
    Unityde bir objeyi Spawn etmek istiyorsanız kullanacağınız yöntem Instantiate dir
    Burdan referans kullanımlara bakabilirsiniz
    https://docs.unity3d.com/ScriptRefer...stantiate.html



    https://www.youtube.com/watch?v=Q3u0x8VRJS4
  • 08-12-2021, 16:34:59
    #3
    baymobile adlı üyeden alıntı: mesajı görüntüle
    Unityde bir objeyi Spawn etmek istiyorsanız kullanacağınız yöntem Instantiate dir
    Burdan referans kullanımlara bakabilirsiniz
    https://docs.unity3d.com/ScriptRefer...stantiate.html



    https://www.youtube.com/watch?v=Q3u0x8VRJS4
    Melesef bu kaynak işime yaramıyo. Trigger tetiklendiği zaman kodun oldugu obje 10 sanıye sonra ortaya çıkacak. Bunu istiyorum ben
  • 08-12-2021, 17:32:06
    #4
    aktif etmekten kastınız nedir örnek sahnede bir Cube var bunun MeshRender Componentini disable yaparım ardından alttaki kodları eklerim

    Bu Trigger objenizin üzerindeki kod:
    using UnityEngine;
    
    public class TriggerObject: MonoBehaviour
    {
        private void OnTriggerEnter(Collider other)
        {
            Invoke("SpawnObject", 10f);
        }
    
    
        private void SpawnObject()
        {
            FindObjectOfType<YourObject>().EnableObject();
        }
    
    }
    Bu aktif edilecek Cube ün üzerindeki kod
    using UnityEngine;
    
    
    public class YourObject: MonoBehaviour
    {
        public void EnableObject()
        {
            GetComponent<MeshRenderer>().enabled = true;
        }
    }
  • 08-12-2021, 19:09:40
    #5
    baymobile adlı üyeden alıntı: mesajı görüntüle
    aktif etmekten kastınız nedir örnek sahnede bir Cube var bunun MeshRender Componentini disable yaparım ardından alttaki kodları eklerim

    Bu Trigger objenizin üzerindeki kod:
    using UnityEngine;
    
    public class TriggerObject: MonoBehaviour
    {
        private void OnTriggerEnter(Collider other)
        {
            Invoke("SpawnObject", 10f);
        }
    
    
        private void SpawnObject()
        {
            FindObjectOfType<YourObject>().EnableObject();
        }
    
    }
    Bu aktif edilecek Cube ün üzerindeki kod
    using UnityEngine;
    
    
    public class YourObject: MonoBehaviour
    {
        public void EnableObject()
        {
            GetComponent<MeshRenderer>().enabled = true;
        }
    }
    deniyorum hemen cok tesekkur ederım yardımın ıcın
  • 08-12-2021, 19:23:01
    #6
    ahmetnts adlı üyeden alıntı: mesajı görüntüle
    deniyorum hemen cok tesekkur ederım yardımın ıcın
    Malesef olmadı kod hata verdi bende zamanla yok etmek bukadar kolayken zamanla ortaya çıkarmak neden bukadar zorladı benı bılmıyorum.



    Bak mesela bu gorseldekı işlemim şu şekılde başka bir trigger var onun ıcerısınde camera var player triggerla etkileşime girdiği zaman camera aktif oluyo sonra konuda yazdığım kod olan kod devreye giriyo ve 10 sanıye sonra camerayı geri kapatıyo. İşte bunun tam tersini istiyorum bendeki diğer triggera kullanıcı geldıgınde cameradaki script 10 sanıye beklesin ve sonra devreye girsin istiyorum