Şimdi Ara

Unity TextUI yazı kalitesi sorunu

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
11
Cevap
1
Favori
997
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Merhaba,

    Amatör olarak Unity kullanıyorum. Aslında bir temelim vardı ancak uzun zamandır hiç başına oturup bir proje ile ilgilenemedim. Dün ise uzun zamandır üzerinde kafa yorduğum senaryomu bitirip Metin Tabanlı oyun yapmaya başladım. Aslında herşey hazır ama oyunun girişinde bir hikaye betimlemem gerekiyor. Ancak TextUI ile yazdığım metin ne yaparsam yapayım çok bozuk kaliteli çalışıyor. Metni büyütmek yazıyı okunur yapsa da hala bozuk bir çözünürlükte görüntüleniyor. TextMeshPro kullandığımdaysa yazdığım kodlarla birlikte kullanamıyorum. Kısacası TextUI ile yapmayı biliyorum diyelim. İnternette bu soruna dair bir çözüm de bulamadım. Bu engeli aştığım taktirde oyun temelde tamamlanmış olacak. Yardıma ihtiyacım var. Biri söyleyebilir mi TextUI ike yazılan bir metin neden bu kadar bozuk olur ya da nasıl okunur hale getirebilirim?

    Şimdiden teşekkür ederim. Saygılar.








  • Tam olarak sorunu anlamasam da genelde canvas ve text objesi ayarlarıyla ilgili oluyor. Benim kullandığım Canvas ve Text objesi ayarları aşağıdaki gibi. Bilmiyorum faydası olur mu ama deneyebilirsin.


    Canvas;


    Unity TextUI yazı kalitesi sorunu


    Text;


    Unity TextUI yazı kalitesi sorunu




  • takami59 kullanıcısına yanıt
    Teşekkür ederim. Bakacağım. Sorunum tam olarak şu. Canvas üzerine açtığım panele uzun bir metin koymam gerekiyor. TextMeshPro ile yazdığımda metin tamamen sorunsuz ve boyutunu istediğim gibi ayarlıyorum. Ama bana lazım olan TextUI. Maalesef TextUI de yazdığım şeyler çok bozuk çözünürlükte oluyor. Öyle ki hiç okunamayacak gibi. Ve sanki önünde transparan bir obje varmış gibi silik oluyor. Olabilecek en büyük fonta aldığımda bu sefer metin okunsada ekrana sığmıyor ve bana lazım olan ölçü 1/20 si. Neyse. Önerdiğin şey benim de aklıma yattı. Onu deneyeceğim. Çok ama çok teşekkür ederim. Şimdilik :)
  • Kromozom1 K kullanıcısına yanıt

    TextMeshPro hiç kullanmadım. Bu boyut ve çözünürlük olayını Canvas Scaler kısmındaki UI Scale Mode çözüyor diye biliyorum. Scale with screen size yapıp kendi çözünürlüğüne göre ayalarsan belki bir çözüm olur. Umarım işe yarar.

  • takami59 kullanıcısına yanıt
    Hocam halloldu. Teşekkür ederim. Nedendir bilmem. Hiç aklıma canvas ayarlarını kurcalamak gelmedi. İlk aklıma o gelmişti aslında ama üstünde durmamıştım :)
  • Hocam bir fikrim var da nasıl çözsem bilemedim. Sana sorsam "yeter ulan" der misin bilmem ama :)


    Benim projem basit dokunmatik ekran kontrollü bir text oyunu. Biraz özgün olması adına oyunu envanter istemli tasarladım. Ama şimdi aklıma şöyle bir tarz geldi. Oyun para kazanmak amaçlı değil zaten. Sadece neler yapabilirim diye fikirler üretiyorum. Ancak bu fikri nasıl unity e aktarabilirim bilemedim.


    Bütün metin tabanlı oyunlarda olduğu gibi ben de olasılıklar belirledim. Öyle yalandan 2-3 olasılık değil de olaya ve ortama göre mantığa uygun seçenekler bunlar.

    Ama şimdi diyorum ki acaba oyunu ihtimaller arasından seçim yapmak değil de yazarak mı belirlesem.

    Örneğin (tamamen sallıyorum)


    Kendine geldiğinde karanlık ve pis kokan bir koridorda yerde uzanıyordun. Koridorun sonunda bir kapı var. Arkanda ise yukarı çıkan merdivenler.

    (Oyun ekranın altında bir text kutusu olduğunu hayal et. Oraya istediğin şeyi yazabiliyorsun. Ve sen yazdıkça Yukarıdaki hikayeye ekleme oluyor ve sen örneğin kapıya git yazıyorsun ve metin şu şekilde değişiyor.)


    Kendine geldiğinde karanlık ve pis kokan bir koridorda yerde uzanıyordun. Koridorun sonunda bir kapı var. Arkanda ise yukarı çıkan merdivenler.

    *Kapıya git

    Kapıya yaklaştığında kapının üzerinde bir asma kilit olduğunu görüyorsun. Kapının sağında yerde ise bir fener var.


    (Eğer feneri almak istersen de şöyle oluyor.)


    Kendine geldiğinde karanlık ve pis kokan bir koridorda yerde uzanıyordun. Koridorun sonunda bir kapı var. Arkanda ise yukarı çıkan merdivenler.

    *Kapıya git

    Kapıya yaklaştığında kapının üzerinde bir asma kilit olduğunu görüyorsun. Kapının sağında yerde ise bir fener var.

    *Feneri al

    Feneri aldın ama pilinin olmadığını gördün. Ama ne olur ne olmaz saklamayı düşünüyorsun. Kapı ise hala kilitli. Şu an iki opsiyonun var gibi görünüyor. Kapıyı kırmayı deneyebilir ya da merdivenlere yönelebilirsin.

    *Merdivene git


    Falan gibi.

    Ancak Bu düzende metin Ekranın altından başlayacak şekilde yukarıya doğru güncellenecek. En altta ise oyuncunun yazacağı metin kutusu olacak. Bunu yapmak mümkün mü? ya da nasıl bir asset kullanmalıyım. Aklıma chat odası geliyor ama nasıl yaparım bilemedim. Aklında bir fikir var mı? Seni de meşgul etmek istemem ama çok yardımın dokunmuş olur yanıtlarsan.

    Saygılar.





  • Kromozom1 K kullanıcısına yanıt

    Problemin çözülmesine sevindim. Diğer soruna gelecek olursam, ben de çok tecrübeli değilim aslında Unity konusunda. Anlatmak istediğin mekaniğine gelirsek ilk aklıma gelen anahtar kelimeler oluşturmak. Daha da açacak olursam;

    sen hikayene uygun yazını yazarsın " kendine geldiğinde karanlık..." ardından bir buton koyarsın.

    Örneğin "Ne yapacaksın?".

    Oyuncu butona bastığında text gireceği kısım açılır.

    Belirli anahtar kelimeleri arka tarafta tutarsın. Yani kod kısmında. Örneğin,kapı,git,yürü,fener,al tarzı. Tabi oyuncu bunları görmez.

    Oyuncu yazısını yazar. Enter ya da başka bir buton koyarsın. OK resmi de olabilir şu an aklıma bişey gelmedi.

    Oyuncu butona basınca kod tarafında aralarından "kapı-git-yürü" kelimelerinin yazılıp yazılmadığını kontrol edersin. Ona göre bir sonraki hikayeye uygun yazını oyuncuya gösterirsin.

    Yani kodlarda "eğer "kapı-git-yürü varsa şu yazıyı getir, eğer "fener-ışık-lamba-al" varsa şu yazıyı getir. gibi gibi...Bunun için sanırım "Switch Statements" işini görür. https://learn.unity.com/tutorial/switch-statements#


    Dediğim gibi ben de çok tecrübeli değilim ilk aklıma gelen bu oldu. Ama youtube da araştırırsan belki daha iyi örnekler karşına çıkar ya da forumda daha bilgili arkadaşlar yardımcı olur.


    Şunu söylemeden geçemeyeceğim, anlattığın tarzda oyun yapmaya kalkarsan her ne kadar sadece text tabanlı olsa da seni yorabilir çünkü çok fazla ihtimal çıkıyor karşına. Oyuncunun orada verdiğimiz örnekteki gibi "kapı-git" anahtar kelimelerini kullanmazsa örneğin "kapıya omuz at" yazar ve oyun buna " bunu yapamazsın " tarzı geri dönüş sağlarsa bu pek keyifli olmayabilir. ya da "kapıyı tıkla" da yazabilir. sen bunu arka tarafta kodlamazsan sıkıcı olabilir. ha fikir güzel ama ciddi zaman alır gibi geldi bana. eğer ben olabildiğince bir çok ihtimali eklerim diyorsan keyifle oynanır ben de oynamak isterim :)





  • Teşekkür ederim kardeşim. Ne güzel moral verdin :)

    Yok beni yormaz. İspanyadayım ve virüs yüzünden iş bulamıyorum. Allahtan eşim çok anlayışlı ve iyi biri ki o "ev işi yapsan bana yeter" diyor :)

    O yüzden kod yazacak bol bol vaktim var. Dün gece A4 e vuracak olsan 20 sayfaya yakın kod yazdım. Dediğim gibi 2 ve 3 şıklı seçimler bana heyecan vermiyor. Ben oyuncuya özgürlük vermek istiyorum. Hadi yapamadım daha çok seçim ve daha çok son ve daha çok hikaye olsun istiyorum. O yüzden üşenmeyip baya bildiğin kitap gibi "hikayeyi>olasılıkları>olasılıklardan doğan sonuçları>mekan etkenli sonuçları>envanter etkenli sonuçları" gibi dallı budaklı bir oyun sistemi için hazırlık yaptım. Karşına çıkan pek çok yararlı ve yararsız hatta yararsız gibi görünüp bir işe yaramayan ya da tam tersi pek çok obje ile işimi daha da zorlaştırdım. Ha sonunda değecek mi? İnan hiç bilmiyorum. İşi öğrenmek istiyorum zaten. Bunda yaramazsa sonrakinde yarar. Ya da projemi geliştirir daha uzun vadeye yayılmış bir iş çıkartırım günün birinde. İşi olmayan boş bir adamım sonuçta :)





  • quote:

    Orijinalden alıntı: Kromozom1

    Teşekkür ederim kardeşim. Ne güzel moral verdin :)

    Yok beni yormaz. İspanyadayım ve virüs yüzünden iş bulamıyorum. Allahtan eşim çok anlayışlı ve iyi biri ki o "ev işi yapsan bana yeter" diyor :)

    O yüzden kod yazacak bol bol vaktim var. Dün gece A4 e vuracak olsan 20 sayfaya yakın kod yazdım. Dediğim gibi 2 ve 3 şıklı seçimler bana heyecan vermiyor. Ben oyuncuya özgürlük vermek istiyorum. Hadi yapamadım daha çok seçim ve daha çok son ve daha çok hikaye olsun istiyorum. O yüzden üşenmeyip baya bildiğin kitap gibi "hikayeyi>olasılıkları>olasılıklardan doğan sonuçları>mekan etkenli sonuçları>envanter etkenli sonuçları" gibi dallı budaklı bir oyun sistemi için hazırlık yaptım. Karşına çıkan pek çok yararlı ve yararsız hatta yararsız gibi görünüp bir işe yaramayan ya da tam tersi pek çok obje ile işimi daha da zorlaştırdım. Ha sonunda değecek mi? İnan hiç bilmiyorum. İşi öğrenmek istiyorum zaten. Bunda yaramazsa sonrakinde yarar. Ya da projemi geliştirir daha uzun vadeye yayılmış bir iş çıkartırım günün birinde. İşi olmayan boş bir adamım sonuçta :)

    ScriptableObject kullarak her seçimi basitce kayıt altına tutabilirsin.Seçimlerin tutuldugu SC listesi ile oyunucunun cevabı ile karsılastırıp denk gelen yola oyuncuyu taşırsın

    En basit yapıdan en komplike yapıya kadar tasarlaman mümkün ama bunu yapmak tabi ki kolay degil.

    Onlarca seçimi if else vb yollar ise yapmak yerine bir for ile halledersin.






  • Çok teşekkür ederim. Hemen inceliyorum :)
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.