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.
İyi günler ben bu kodlarla veri tabanından x y z değerlerini çekiyorum bu xyz değerlerini anlık olarak küpe aktarmak istiyorum bunu nasıl yapabilirim teşekkürler.
Kod:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
İyi günler arkadaşlar Behaviors Ders Serimizin 2 bölümü ile karşınızdayım bu videoda bir diğer behaviors olan Bullet behaviorsumuzu inceledik umarım beğenirsiniz iyi izlemeler.
İyi günler arkadaslar yeni bir seri olan Behaviors dersimizin ilk video'su ile karsınızdayım. Bu dersde flashı inceledik bir kac örnek yaptık. Ses için kusura bakmayın. İyi yayınlar
Konuya girmeden önce sunları belırteyim, konuyu rehber olarak belki birilerinin işine bir nebze yarar sağlaması amacıyla açıyorum. Kendimi tanıtacak olursam 23 yasındayım Omü Mak Lisans öğrencisiyim profesyonel olarak grafıkerlık yapıyorum bunun yanında ayrıca İllüstrasyon, 3d modelleme ile uğraşıyorum.
Hepimizin bildiği gibi grafik oyunlarda önemli bir konuma sahiptir. Gerek oyun içi olsun gerekse oyun menüsü yaptığımız her tasarım aslında bizi grafiğe götürüyor. Gelin hep beraber bakalım nedir bu grafik dediğimiz şey ?
Grafiği şöyle tanımlarsak daha genel ve açıklayıcı olacaktır: "Her Şey" evet evet her şey. aklınıza gelebılecek her turlu harf renk çizgi bir grafiktir aslında.
yaptığımız çalışmalarda öyle güzel ahenk olur ki bu harfler renkler şekiller sanata dönüşüverir. Peki grafiğin oyunlarımıza etkisi nedir? Tabii ki çok fazla.
Kimse oyunu açtığında karsısındaki beyaz ekran uzerinde duran "Yeni oyun" butonunu görmeyi cazip bulmaz. Bu yüzdendir ki uyum ahenk ve renk ve sizin yaratıcılığınızla yapacağınız o eserler kim bilir belkı yenı bır tür ortaya cıkartacak belkı olan bır turu geliştirecek belki de değiştirecek.
"E bu kadar anlattın da kardeş sonuç" dediğinizi duyar gibiyim. öncelikle herhangi bir tasarım yaparken neyi amaçladığınızı iyi bilin. karakter mi yapacaksınız silah mi olacak yoksa bir arkaplan mı? Bu kararlar bizi sonuca daha kolay ulaştıracaktır. İkinci öncelik renk paleti cok detay verip sizleri sıkmak ıstemıyorum ama paletlerin grafık uzerındeki etkisini tarife gerek yoktur dıye umuyorum. Paletinizdeki renkleri denemekten korkmayın nasıl sevdıysenız oyle kalsın bırakın yok ya sevmedım dersenız basın değişsin. Renk onemlidir. Renkler arası uyum da öyle çalışmalarınızda yapacağınız renklendirme uyumlu olmalı kı goze hoş görünsün. Küçük bir tavsiye calışmalarınızı yaparken renklendirme işine öncelikle ortamda bulunan renklerden kulanmaya başlayın. Duymuşsunuzdur "damlalık" diye bir araç çoğu tasarım programında bulunur kendısı ve baş tacıdır.
Renkler hakkında bu kadar konuştuktan sonra gelelim bu grafık calışmaları nasıl yapılır? Bildiğiniz gibi bunun binbir türlü alternatifi var. En basiti hepimizin kullandığı paint. Bunun yanında önerebileceğim programlar tabiiki var. İlki herkesin bildiği Adobe Photoshop. Her türlü işinizi görebilecek profesyonel anlamda da coğu tasarımcının işini kolaylaştıran bu programda yapamayacağınız yok. Sadece hayal edin. Bir diğer önereceğim program ise CorelDraw. Bilenleriniz vardır mutlaka ama bilmeyenler için anlatacağım birazcık.
CorelDraw vektör tabanlı bır grafık programıdır."hobaa bir de vektör çıktı!" hemen açıklayayım vektör "çözünürlükten bağımsız, herbir nesnenin matematiksel ifadelerle oluşturulduğu ve en önemlisi detay kaybetmeden herhangi bir boyuta yeniden ölçeklendirilebilen grafik türüdür." <vektorelcizim.net>
yanı vektör tabanında yaptığınız çalışmaları ister bir A4 kağıdına çıktı alın ister 5 metreye 7 metre bir afiş ilanına hiçbir şekilde bozulma olmayacaktır. Bu durum genelde logo tasarımcılarının işine geldiği için kullanılır.
"Ne gerek var vektöre zaten adını sevmedim" Vektör işinizi bi nebze de olsa kolaylaştırır. he istemiyorsanız vektorle ugrasmak yine Corel diyorum. Bu kez CorelPhoto-Paint. Adobe Photoshop kadar olmasa da fazlasıyla işinizi görecektir.
Sabredip azimle buraya kadar okuyan herkese teşekkür ederim. Herhangi bir sorunuz ya da sorununuz olursa yardımcı olmaya çalışırım.
Bugün sizlere dünya çapında oldukça popüler olan a-star algoritmasından bahsetmek istiyorum.
A-Star Nedir?
Kısaca 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.!, yol bulma ve veri görselleştirme gibi konularda kullanılan yaygın bir arama algoritmasıdır. Belirlenmiş node (grid) bir düzlem üzerinde arama yapmada kullanılan ideal yöntemlerden biridir. 1968 yılında Stanford Araştırma Enstitüsü (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.!) tarafından paylaşılmış, dünya çapında kabul görmüş bir algoritmadır.
Nerelerde Kullanılır?
Kullanım alanları çok yaygındır. Fakat bu forumda bizi ilgilendiren elbette oyun geliştirme eğilimli kullanımıdır.
Grid düzleme sahip oyunlarda (2D RPG, 2D/3D RTS benzeri) kullanımı yaygındır. Ağırlıklı olarak "nesnelerin hedefledikleri noktaya olan yollarını bulması" amacıyla kullanılmaktadır.
(Resim 1: Grid düzlem üzerinde çalışan örnek bir oyun - 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.!)
A-Star algoritmasının aktif bir demosunu aşağıdaki linkte bulabilirsiniz: 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.!
En basit anlatımı ile, bir RTS oyununda X noktasına tıkladığınızda, seçili karakterin ilgili noktaya olan yolunu, aradaki engellerin etrafından dolaşarak bulması sistemini yazarken kullanabileceğiniz bir algoritmadır.
Algoritma Mantığı Algoritma çok ileri seviyede kompleks olmamasına rağmen yazılı olarak anlatılması oldukça zor. Okumaya geçmeden önce aşağıdaki videoyu izlemenizi tavsiye ederim:
(Video 1: Kıskanılası aksanı ile "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.!" - Serinin devamında kendisi algoritmayı Unity'ye uyarlıyor, izlemenizi öneririm)
Kısaca birkaç tanım yaparak anlatımı kolaylaştırmak istiyorum:
Grid/Node Düzlem: Karelerden oluşan bir harita, alan.
Grid/Node: Düzlemdeki karelerden biri.
x: Anlatımda geçerli olacak olan başlangıç noktası
y: Anlatımda geçerli olacak olan hedef noktası
Algoritmaya göre,
bir grid düzlemde X ile Y noktaları arasındaki en kısa mesafeyi, aralardaki engellerin etrafından, bulmanın yolu her bir noktanın kendi etrafındaki kareleri bir puanlama sistemi ile kontrol etmesi ve diğer karelerin puanları ile yaptığı karşılaştırmaya göre işleme devam edip etmeyeceğine karar verilmesi.
Çalışma sırasına göre,
İşleme alınacak nokta başlangıç noktası olarak belirlenir
İşleme alınan nokta etrafındaki 8 noktayı (yukarı, aşağı, sağ, sol ve 4 çapraz) belirler.
Belirlenen gridler işleme alınır.
İşleme alınan her bir nokta üç değeri (puan) hesaplar: G, H ve F.
G: Karenin başlangıç noktasına olan uzaklığı
H: Karenin varış noktasına olan uzaklığı
F: G+H
Bulunan F sonucuna göre, işleme alınmış olan tüm karelerin F değerlerinin karşılaştırılıp, F değeri en düşük olan karelerin tekrar belirlenmesi ve her biri için 2. adıma dönülmesi. İşleme alınan gridlerden biri ne zaman varış noktası olan grid olursa, 5. adıma geçilmesi
Varış noktasına erişildiğinde algoritma tamamlanmış olur
Notlar:
2. adımda belirtilen 8 grid, gereklilik durumuna göre değişebilir.
4. adımda belirlenen puanlama sistemi aşağıdaki şekilde yürür:
- Bir gridin sağındaki, solundaki, üstündeki, altındaki gridlere olan uzanlığı aradaki grid başına 10 birim olarak hesaplanır. Örneğin A gridi B gridinin 3 birim solundaysa, (arada 3 grid daha varsa) uzaklıkları 3*10=30 puan olarak hesaplanır.
- Bir gridin çaprazındaki gridlere olan uzaklığı 14 puan olarak hesaplanır. Örneğin C gridi D gridinin 2 birim çaprazındaysa (arada 2 grid daha varsa) gridlerin uzaklığı 2*14=28 puan olarak hesaplanır.
5. adımda, değeri en düşük değere eşit olmayan hiçbir grid tekrar işleme alınmaz
Hedef gride ulaşılana kadar 2-5 numaralı maddeler arasında döngü oluşur
Engel olarak tanımlanmış bir grid asla işleme alınmaz
(Resim 2: A-Star Puanlama Algoritması çalışma örneği - 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.!)
Yukarıdaki resimde, A noktası başlangıç, B noktası hedef olarak belirlenmiştir. Gridlerin sol üzerinde yazan sayı A noktasına olan uzaklığı (G), Gridlerin sağ üzerinde yazan sayı B noktasına olan uzaklığı (H), Gridlerin ortasında yer alan sayı ise F değeri (G+H) olarak tanımlanmaktadır. A noktasının etrafındaki 8 grid hesaba alınmıştır. 8 gridden F değeri en küçük olan kırmızı grid, en küçük değere (42) sahip olduğu için merkez noktası olarak kabul edilmiş ve bu kez de onun etrafındaki 8 grid işleme alınmıştır. Eğer 42 değerine sahip başka bir grid olsaydı, eş zamanlı olarak onun etrafındaki gridler de işleme alınacaktı. Varış noktası (B) işleme alınana dek döngü bu şekilde devam edecektir.
Yazılı olarak zannediyorum anlatabileceklerim bu kadar, ilgili videoyu ve aşağıdaki kaynakları okuyarak devamını keşfedebilirsiniz: 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.! | Sebastian Lague - A* Pathfinding EP01 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.! | A* Search Algorithm Wiki 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.! | Stanford A* Documentation