C# Koddaki hata nerededir?

Kod:
using UnityEngine;

public class RaycastFromClick : MonoBehaviour
{
    void Update()
    {
        // Sol fare düğmesine tıklandığında veya dokunmatik giriş olduğunda kontrol et
        if (Input.GetMouseButtonDown(0))
        {
            // Kamera üzerinden dokunma/tıklama pozisyonundan bir raycast oluştur
            Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
            RaycastHit hit;

            // Raycast atma işlemini gerçekleştir
            if (Physics.Raycast(ray, out hit))
            {
                // Eğer raycast bir çarpışma algılarsa, çarptığı nesnenin adını logla
                Debug.Log("Çarptığı Nesnenin Adı: " + hit.collider.gameObject.name);
                //Burada objeyle ilgili napmak istiyorsanız ekleyebilirsiniz.
            }
        }
    }
}
 
Kod:
using UnityEngine;

public class RaycastFromClick : MonoBehaviour
{
    void Update()
    {
        // Sol fare düğmesine tıklandığında veya dokunmatik giriş olduğunda kontrol et
        if (Input.GetMouseButtonDown(0))
        {
            // Kamera üzerinden dokunma/tıklama pozisyonundan bir raycast oluştur
            Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
            RaycastHit hit;

            // Raycast atma işlemini gerçekleştir
            if (Physics.Raycast(ray, out hit))
            {
                // Eğer raycast bir çarpışma algılarsa, çarptığı nesnenin adını logla
                Debug.Log("Çarptığı Nesnenin Adı: " + hit.collider.gameObject.name);
                //Burada objeyle ilgili napmak istiyorsanız ekleyebilirsiniz.
            }
        }
    }
}
Teşekkürler. Eve geçtiğim gibi kodu deneyeceğim.

Kod:
using UnityEngine;

public class RaycastFromClick : MonoBehaviour
{
    void Update()
    {
        // Sol fare düğmesine tıklandığında veya dokunmatik giriş olduğunda kontrol et
        if (Input.GetMouseButtonDown(0))
        {
            // Kamera üzerinden dokunma/tıklama pozisyonundan bir raycast oluştur
            Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
            RaycastHit hit;

            // Raycast atma işlemini gerçekleştir
            if (Physics.Raycast(ray, out hit))
            {
                // Eğer raycast bir çarpışma algılarsa, çarptığı nesnenin adını logla
                Debug.Log("Çarptığı Nesnenin Adı: " + hit.collider.gameObject.name);
                //Burada objeyle ilgili napmak istiyorsanız ekleyebilirsiniz.
            }
        }
    }
}
Yine olmadı yeni input sistemini kullanmadığım için olabilirmi?
 
Son düzenleme:
Teşekkürler. Eve geçtiğim gibi kodu deneyeceğim.


Yine olmadı yeni input sistemini kullanmadığım için olabilirmi?
Yine olmadı derken hata olarak ne mesaj alıyorsunuz? Çeşitli yerlere debug.log ile yazılar koyabilir misiniz? Hangi kısımlara giriyor çıkıyor bakalım. Ayrıca seçmeye çalıştığınız objenin üzerinde Collider var mı?

Yeni input sistemi için kodu düzenledim.

C#:
using UnityEngine;
using UnityEngine.InputSystem; // Import the New Input System namespace

public class RaycastFromClickNewInputSystem : MonoBehaviour
{
    private void Update()
    {
        // Dokunma ya da mouse tıklama var mı diye kontrol etme
        if (Mouse.current.leftButton.wasPressedThisFrame || Touchscreen.current.primaryTouch.press.wasPressedThisFrame)
        {
            Vector2 touchPosition = Vector2.zero;

            // Dokunulan pozisyonu hem mouse hem dokunmatik için belirleme
            if (Touchscreen.current.primaryTouch.press.isPressed)
            {
                touchPosition = Touchscreen.current.primaryTouch.position.ReadValue();
            }
            else if (Mouse.current.leftButton.isPressed)
            {
                touchPosition = Mouse.current.position.ReadValue();
            }

            // Kameradan dokunulan yere doğru bir ışın gönderme
            Ray ray = Camera.main.ScreenPointToRay(touchPosition);
            RaycastHit hit;

            // Raycast kısmı
            if (Physics.Raycast(ray, out hit))
            {
                Debug.Log("Çarptığı Nesnenin Adı: " + hit.collider.gameObject.name);
            }
        }
    }
}
 

Benzer konular

Technopat Haberler

Yeni konular

Geri
Yukarı