Hey merhaba ziyaretçi bize destek olmak ister misin ? Hemen Kayıt Ol Seni hiç sıkmadan kayıt edeceğiz endişelenmek bize destek olduğun için teşekkürler.



  • Toplam: 0 Oy - Ortalama: 0
  • 1
  • 2
  • 3
  • 4
  • 5
NullReferenceException: Object reference not set to an instance (GameManager Hatası)
#1
Herkese merhaba,
Unity ile oyun yapmayı öğrenmeye çalışıyorum. C# ile kendimi biraz biraz geliştirdim. Yani kodları ve kodun ne demek istediğini anlamaya başladım desem daha doğru olacak. Ancak çok basit bir problemle karşı karşıya kaldım.


Game manager scriptimi yazarken her seferinde bu hatayı alıyorum. 
NullReferenceException: Object reference not set to an instance of an object GameManager.Start () (at Assets/GameManager.cs:20)

Bir diğer sorunum ise kod yazarken Text i “using UnityEngine.UI;” kodu ile elle girdim. Çünkü Microsoft Visual Studio Text imi görmedi.
Elle yazmam sorunu çözer mi yoksa başka bir şey mi yapmam gerekir? Aşağıya bir örnek kod yazacağım. Bu benim temel başlangıç kodum. Lütfen inceleyip neyi yanlış yaptığımı söyler misiniz? İnternette yerli ve yabancı kaynaklarda pek çok kişinin bu ve benzeri sorunlar yaşadığını gördüm ama çözüm gösteren görmedim. 

Kafayı yedim yiycemSmile Neyi görmüyor olabilirim?
                                                                                 -Örnek Kod-
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;


public class GameManager : MonoBehaviour
{
public Text mainText;
public Button option1;
public Button option2;

void Start()
{
mainText.text = “Giriş Metni!”;
option1.GetComponentInChildren<Text>().text = “Birincil Buton”;
option2.GetComponentInChildren<Text>().text = “İkincil Buton”;
}
  Cevapla
#2
(12-11-2020, Saat: 19:58)Kromozom1 Nickli Kullanıcıdan Alıntı: Linkleri görüntüleyebilmek için Kayıt ol manız veya Giriş yapmanız gerekiyor.Anlayışınız için teşekkürler.!Herkese merhaba,
Unity ile oyun yapmayı öğrenmeye çalışıyorum. C# ile kendimi biraz biraz geliştirdim. Yani kodları ve kodun ne demek istediğini anlamaya başladım desem daha doğru olacak. Ancak çok basit bir problemle karşı karşıya kaldım.


Game manager scriptimi yazarken her seferinde bu hatayı alıyorum. 
NullReferenceException: Object reference not set to an instance of an object GameManager.Start () (at Assets/GameManager.cs:20)

Bir diğer sorunum ise kod yazarken Text i “using UnityEngine.UI;” kodu ile elle girdim. Çünkü Microsoft Visual Studio Text imi görmedi.
Elle yazmam sorunu çözer mi yoksa başka bir şey mi yapmam gerekir? Aşağıya bir örnek kod yazacağım. Bu benim temel başlangıç kodum. Lütfen inceleyip neyi yanlış yaptığımı söyler misiniz? İnternette yerli ve yabancı kaynaklarda pek çok kişinin bu ve benzeri sorunlar yaşadığını gördüm ama çözüm gösteren görmedim. 

Kafayı yedim yiycemSmile Neyi görmüyor olabilirim?
                                                                                 -Örnek Kod-
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;


public class GameManager : MonoBehaviour
{
public Text mainText;
public Button option1;
public Button option2;

void Start()
{
mainText.text = “Giriş Metni!”;
option1.GetComponentInChildren<Text>().text = “Birincil Buton”;
option2.GetComponentInChildren<Text>().text = “İkincil Buton”;
}

public Text mainText;
public Button option1;
public Button option2;


Bu üç satırda verdiğiniz referansları unity editorde sürükle bırak ile referanslamalısınız. Yani GameManager scriptinizi eklediğiniz nesneyi seçtiğinizde sağ tarafta inspector penceresinde scriptte verdiğiniz referansları görürsünüz.


Diğer sorunuz using UnityEngine.UI; bu yaptığınız doğru. Text i kullanmak için bağı olduğu UI sınıfını scriptinize dahil etmiş oluyorsunuz.
  Cevapla
#3
(13-11-2020, Saat: 12:48)mtat0640 Nickli Kullanıcıdan Alıntı: Linkleri görüntüleyebilmek için Kayıt ol manız veya Giriş yapmanız gerekiyor.Anlayışınız için teşekkürler.!
(12-11-2020, Saat: 19:58)Kromozom1 Nickli Kullanıcıdan Alıntı: Linkleri görüntüleyebilmek için Kayıt ol manız veya Giriş yapmanız gerekiyor.Anlayışınız için teşekkürler.!Herkese merhaba,
Unity ile oyun yapmayı öğrenmeye çalışıyorum. C# ile kendimi biraz biraz geliştirdim. Yani kodları ve kodun ne demek istediğini anlamaya başladım desem daha doğru olacak. Ancak çok basit bir problemle karşı karşıya kaldım.


Game manager scriptimi yazarken her seferinde bu hatayı alıyorum. 
NullReferenceException: Object reference not set to an instance of an object GameManager.Start () (at Assets/GameManager.cs:20)

Bir diğer sorunum ise kod yazarken Text i “using UnityEngine.UI;” kodu ile elle girdim. Çünkü Microsoft Visual Studio Text imi görmedi.
Elle yazmam sorunu çözer mi yoksa başka bir şey mi yapmam gerekir? Aşağıya bir örnek kod yazacağım. Bu benim temel başlangıç kodum. Lütfen inceleyip neyi yanlış yaptığımı söyler misiniz? İnternette yerli ve yabancı kaynaklarda pek çok kişinin bu ve benzeri sorunlar yaşadığını gördüm ama çözüm gösteren görmedim. 

Kafayı yedim yiycemSmile Neyi görmüyor olabilirim?
                                                                                 -Örnek Kod-
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;


public class GameManager : MonoBehaviour
{
public Text mainText;
public Button option1;
public Button option2;

void Start()
{
mainText.text = “Giriş Metni!”;
option1.GetComponentInChildren<Text>().text = “Birincil Buton”;
option2.GetComponentInChildren<Text>().text = “İkincil Buton”;
}

public Text mainText;
public Button option1;
public Button option2;


Bu üç satırda verdiğiniz referansları unity editorde sürükle bırak ile referanslamalısınız. Yani GameManager scriptinizi eklediğiniz nesneyi seçtiğinizde sağ tarafta inspector penceresinde scriptte verdiğiniz referansları görürsünüz.


Diğer sorunuz using UnityEngine.UI; bu yaptığınız doğru. Text i kullanmak için bağı olduğu UI sınıfını scriptinize dahil etmiş oluyorsunuz.

Merhaba,
Sorunumu bu sabah çözmüş bulunuyorum. Zaten sorunum referansı sağlayamıyor oluşumdu. Meğer metinler ve opsiyonlar arası virgül kulanımında hata yapıyormuşum. Ama bu sayede çok şey öğrendim. C# meğerse göz korkuttuğu kadar da zor bir dil değilmiş. Mantığı anladıktan sonra ve "imla" kurallarına uyduktan sonra dili kullanmak çok kolay. En azından mantığı anladım. Şuan ingilizcesi başlangıç seviyesinde olan ve konuşma kılavuzu yardımı ile bir turiste yol tarif etsem de en azından "go,go. Right and left" diyebiliyorum. Smile
Geri dönüşünüz için teşekkür ederim.
Saygılar...
  Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Unity 2d silah mouse takip sistemi hatası onurbilgin1104 0 73 21-03-2021, Saat: 21:15
Son Yorum: onurbilgin1104
  Visual Studio hatası nacinur 0 90 03-02-2021, Saat: 11:45
Son Yorum: nacinur
Exclamation CS1061 Hatası ihsanclk 2 338 15-10-2020, Saat: 12:42
Son Yorum: ihsanclk
  build hatası minor 1 551 14-05-2020, Saat: 18:53
Son Yorum: Outlier
  NullReferenceException Hatası Dovahkiin 1 628 15-04-2020, Saat: 21:09
Son Yorum: Dovahkiin

Hızlı Menü:


Konuyu Okuyanlar: 1 Ziyaretçi