Unity'deki Prefebi Sprite Render özellikleri kullanılamıyor

Lokantacı

Decapat
Katılım
28 Ocak 2022
Mesajlar
168
Çözümler
1
Daha fazla  
Cinsiyet
Erkek
X ekseninde döndürme ya da saydamlık değerlerini kullanamıyorum, sadece bu de değil Sprite Renderer'daki bütün özellikler.
 
Prefab'a nasıl eriştiniz? Kod dosyanızı atma şansınız var mı? Birde son olarak Console'da herhangi bir hata alıyormusunuz?
 
Prefab'a nasıl eriştiniz? Kod dosyanızı atma şansınız var mı? Birde son olarak Console'da herhangi bir hata alıyormusunuz?
Hazır asset yüklemiştim. Orada kol, gövde, bacak vs. şeyleri Char ismindeki bir objede toplayıp birleştirdim. Sonrasında Prefabs isimli bir klasör açıp Char isimli objeyi Prefabs isimli dosyaya attım ve bütün bir karakter elde ettim. Dün biraz araştırdım prefab override diye bir olay var galiba. Kullanamadığınız özelliklerin yanında mavi bir çizgi beliriyor. Console'de hata yok. Zaten yeni başladığım için öyle karışık kodlar yazmadım. Sadece yürüme zıplama ve havada ise zıplamama kodlarını yazdım
C#:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class CharScript : MonoBehaviour
{
    public Rigidbody2D rgbd;
    public float hiz = 1f;
    public float ziplamahiz = 1f;
    public bool havada_mi;

    void Update()
    {

        if (Input.GetKey(KeyCode.D))
        {
            rgbd.velocity = Vector2.right * hiz;
        }
        if (Input.GetKey(KeyCode.A))
        {
            rgbd.velocity = Vector2.left * hiz;
        }
        if (Input.GetKey(KeyCode.Space) && havada_mi == false)
        {
            havada_mi = true;
            rgbd.velocity = Vector2.up * ziplamahiz;

        }

    }
}
C#:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class havada_mi : MonoBehaviour
{
    public CharScript Char;
    
    private void OnCollisionEnter2D(Collision2D target)
    {
        if(target.gameObject.name == "Char")
        {
            Char.havada_mi = false;
        }
    }
}

Kodlar ise böyle.
 
Gönderdiğiniz kodlarda transform veya spriterenderer ile ilgili bir etkileşim yapmamışsınız. Transform veya spriterenderer'i kullandığınız kodu atarmısınız diye sormuştum.

Eğer bilmiyorsanız;
transform.position = new Vector3(x, y, z); ile pozisonu

prefab.GetComponent<SpriteRenderer>(); ile SpriteRenderer özelliklerini kullanabilirsiniz.
 
Gönderdiğiniz kodlarda transform veya spriterenderer ile ilgili bir etkileşim yapmamışsınız. Transform veya spriterenderer'i kullandığınız kodu atarmısınız diye sormuştum.

Eğer bilmiyorsanız;
transform.position = new Vector3(x, y, z); ile pozisonu

prefab.GetComponent<SpriteRenderer>(); ile SpriteRenderer özelliklerini kullanabilirsiniz.
Ben Inspector kısmından X eksenine göre yansımasını almak istiyordum ama alamıyorum. Kodla herhangi bir şey yapmadım.
 
Ekran Görüntüsü (7).png
 

Geri
Yukarı