saolsın hocam

XNA 4.0 ile Yazı Yazdırmak 1. Adım : Yeni bir proje olusturarak, C# blümü altında XNA Game Studio 4.0'ı, ardındanWindows Phone Game'i secelim. . NET Framework 4 olarak kalsın. Son olarak projemize birisim verip onayladıktan sonra, bize Windows Phone sürümleri icin bir secim yaptırılacak, ben 7.1, yani Mango sürümünü sectim. 2. Adım : Yeni projemizi olusturduk. Simdi burada dikkatinizi cekmek istedigim bir hususvar, grüldügü gibi Game1. cs icinde bazı kodlar otomatik olarak olusturulmus, eger XNAkullanarak daha nce Windows Game ya da Xbox 360 Game projesi olusturduysanız, kodların benzer oldugunu grebilirsiniz, bu bize XNA'in sagladıgı kolaylıklardan birisidir. 3. Adım : F5 tusuna basarak projemizi derleyip calıstıralım. Biraz bekledikten sonrabilgisayarımızın hızına baglı olarak emülatrümüz acılacak. Acıldıgında mavi ekranımızlakarsılacaksınız. Su an projemizin bos halini grüyoruz, henüz kod yazımına baslamadık. Bir sonrakiadımdan itibaren artık kod yazmaya baslayacagız. 4. Adım : Solution Explorer blümünde Content'e sag tıklayalım. Add New Item diyerekacılan pencerede Sprite Font nesnesini secelim. Nesnenin adı varsayılan olarakSpriteFont1. spritefont olacaktır, siz isterseniz uzantısını degistirmeden baska bir isimverebilirsiniz. Ben anlatacagım rnekte varsayılanı kullanacagım. 5. Adım : Artık kodlamaya gecebiliriz. ncelikle degiskenimizi yazdırmalıyız. Game1. cs dosyasını acıyoruz. public class Game1 : Microsoft. Xna. Framework. Game { GraphicsDeviceManager graphics; SpriteBatch spriteBatch; SpriteFont font1; // font1 adlı degiskenimizi olusturduk. public Game1 6. Adım : Font degiskenimizi olusturduk, peki isimiz bitti mi? Hayır, simdi olusturdugumuz bu degiskeni, LoadContent metodu icinde cagırmalıyız. protected override void LoadContent Burada Content. Load metodunun calısma mantıgına kısaca deginecek olursak, <> simgeleriarasında yüklenecek nesnenin tipini belirliyoruz, yani bir resim cizdirmek isteseydik, degil de olarak yazabilirdik, parantez icindeki blüm de Content klasrümüzeyüklemis oldugumuz nesnenin adını temsil eder. Son olarak font1 de bildiginiz gibi degiskenimizinadıydı. 7. Adım : Degiskenimiz ve yüklemenin yapılacagı LoadContent metodu hazır, simdi neyapacagız? Artık Draw metodunu kullanarak yazdırma islemini yapabiliriz. Bunun icin deSpriteBatch ve SpriteFont nesnelerini kullanacagız. Draw metoduna gelerek asagıdakikodları yazalım. protected override void Draw nce burada yazılan kodları tanıyalım. SpriteBatch nesnesini 3 sekilde kullanıyoruz, bunlarBegin , DrawString ve End metodları. İsimlerinden de anladıgınız gibi, Begin metodu, cizimislemlerini baslatmak icin ekran kartına gerekli parametreleri gnderir, DrawString , ekranacizdirilecek nesnenin zelliklerini kapsar, End metodu da cizdirilecek tüm nesneleri ekledigimizive SpriteBatch nesnesine cizimlerin gerceklestirmesini syler. string tipi bir "yazi" degiskeni olusturduk ve ekranda grülmesini istedigimiz yazıyı yazdık. Vector2 nesnesine dikkat edelim, bu nesneyle 2B konum bilgilerini sonradan kullanmak icinsaklarız. XNA'in 2B projelerinde cok sık kullanılan bir nesnedir. "konum" adlı bir degiskenolusturarak koordinat belirledik, standart bir koordinat düzlemini düsünün, apsis ve ordinatı 300piksel olarak ayarladık. DrawString metodunun bircok kullanım sekli var ama ben bu rnekte kullandıgımız kadarınıanlatacagım. Parantez icine grüldügü gibi 4 adet parametre girilmis, bunlardan birincisi SpriteFontdegiskenimizin adı olan "font1", ikincisi de bu font nesnesini kullanarak yazdırılan "yazi"degiskeni, ücüncü parametremiz de yazının telefon ekranındaki koordinatını belirliyor, son olarak, yazının rengini seciyoruz, Color sınıfı altında White'ı sectik, yani projeyi calıstırdıgımızda yazımızbeyaz olacak, isterseniz baska bir renk secebilirsiniz. 8. Adım : Artık projemizi calıstırabiliriz. Yazımız sorunsuzca gzüküyor ama bir problemvar degil mi? Evet, yazımız cok kücük. Emülatrümüzün sagındaki menülerden rotasyonudegistirelim ve herhangi bir yne yatıralım. Windows Phone projelerinde varsayılanrotasyonumuz Portrait'tir, biz bunu su an emülatrde Landscape olarak grüntülemis olduk, simdi biraz daha okunaklı ama yine yetmiyor. Ne yapmalıyız? 9. Adım : Content klasrü altındaki SpriteFont'a cift tıklayalım. 14 yazansatıra gelip sayımızı 20 olarak degistirelim. Bu blümde fontumuzun büyüklügüne kolaycamüdahale edebiliyoruz. Peki bu büyüklügün sınırı yok mu? Var. 14-36 arası bir sayı secmekdurumundayız. 20 olarak belirledikten sonra projemizi tekrar calıstıralım, simdi dahaokunaklı. Toplamda 9 adımda ekrana nasıl yazı yazılacagını grenmis olduk, ben de elimdengeldigince acıklayıcı anlatmaya calıstım, umarım yararlı olmustur, simdi imaj cizdirmeyegecebiliriz. XNA 4.0 ile Resim Çizdirmek Oyununuzda ekranda bulunmasını istediginiz karakterleri, arka planları ve diger geleri ekranacizdirebilmek icin, resim dosyalarını Content klasrüne yüklememiz gerekir. Content Pipelinebircok imaj formatını destekler, bunlar arasında en sık kullanılanlar tahmin edeceginiz gibi. jpg,. bmp ve. png'dir. PNG formatı transparanlık sagladıgı icin oyun yazılımcılıgı icin gayetkullanıslıdır. Birazdan yapacagımız rnekte PNG formatını kullanacagız. Projelerinize ekleyeceginiz resim, ses veya model gibi dosyalar, uygulama Debug edildigindeContent Importer'ın erisebilecegi bir hale gelir. Bunu bilmeniz cok nemli degil ama teknik bir bilgiolarak aklınızda kalsın. Simdi adım adım ilerleyerek projemize bir imaj cizdirelim. 1. Adım : Bir nceki konumuzda oldugu gibi, yeni bir proje olusturalım. 2. Adım : Content klasrüne sag tıklayarak, Add Existing Item komutunu secelim. Acılanpencerenin sag alt ksesinde Content Pipeline'ın destekledigi dosya türlerini greceksiniz, simdi bilgisayarımıza kaydetmis oldugumuz bir PNG resmini secelim ve Add butonunatıklayalım . 3. Adım : Artık kodlamaya baslayabiliriz, Game1. cs dosyasını acıyoruz. public class Game1 : Microsoft. Xna. Framework. Game { GraphicsDeviceManager graphics; SpriteBatch spriteBatch; Vector2 konum = new Vector(0,0); // konum adlı degiskenimizi olusturduk. Texture2D resim; // resim adlı degiskenimizi Texture2D nesnesiyle olusturduk. public Game1 NOT : "konum" degiskenimizin koordinatını 0'a 0 seklinde belirledik. Bu normalde ekranın sol üstksesine tekabül eder. Fakat varsayılan rotasyon Portrait oldugu icin, resminizi nce sag üst ksedegrebilirsiniz. Landscape yaptıgınız taktirde sol üst kseye gececektir. 4. Adım : LoadContent metodumuza gelerek yükleme islemlerini baslatalım. protected override void LoadContent Bir nceki konumuzda Content. Load'un kullanımına deginmistim, grdügünüz gibi bu sefer bazıdegisiklikler oldu, SpriteFont nesnesi yerine Texture2D nesnesini kullandık ve yükledigimizdosyanın adını parantez icine yazdık. Bunlara dikkat etmeliyiz. Eger dilerseniz Properties penceresinden, yüklediginiz resim üzerinde bazı oynamalaryapabilirsiniz, size kalmıs. 5. Adım : Resmimizi Texture2D nesnesine yükledigimize gre artık ekrana cizdirmeislemini baslatabiliriz. Bunun icin Draw metoduna gidiyoruz. protected override void Draw Yine tanıdık bir kodla karsı karsıyayız, yazı yazdırmada kullandıgımız kodlarla karsılastırırsanız, ufak tefek farklılıklar oldugunu greceksiniz, bu sefer 3 parametre kullandık. İlk parametredekullanılacak olan resmi, yani "texture"u belirttik. İkinci parametrede Vector2 nesnesiyle tanımlanankonum bilgilerini cagırdık. Son olarak Color sınıfını kullandık ama burada dikkat etmeniziistedigim bir sey var, yazı yazdırırken Color sınıfı renk belirliyordu, peki burada neyi belirliyoruz?Bu sefer White olarak nitelendirdigimiz olay resmin glgesidir, daha dogrusu White secilirse, herhangi bir glgelendirme kullanılmayacagını belirtmis olursunuz. Dikkat edilmesi gereken bir baska nemli husus, bu sefer DrawString metodunu degil de Draw metodunu kullandık. Bir sonraki makalemde SpriteSheet kullanarak animasyon olusturmaya ve Gesture kullanımına deginecegim, tesekkürler. Bu doküman, Microsoft Student Partner programına secilen grenciler ve Tahribat. Com adına Andrei tarafından yazılmıstır. İsim belirtmeden sagda solda yayınlayanlara 2 satır kod yazmak nasip olmasın. PDF linki : https://hotfile.com/dl/183502199/cd92d8f/Windows_Phone_ve_XNA_4.0. pdf.html %40 indirimli olarak "Centos Sistem ve Sunucu Ynetimi" adlı kitabımızı satın alarak, Linux üzerine yapılacak olan devam projeleri icin destekte bulunabilirsiniz : http://www.hepsiburada.com/centos-sistem-ve-sunucu-yonetimi-oku-izle-dinle-ogren-p-KKODLAB01579

kardeşim eline sağlık xna konuusnda videolu anlatım sağlanırsa harika olur Beyninizi işlemci olarak kullanın, harddisk olarak değil :) İnsanlar kitap gibidir azizim, nemli olan cildi değil, içerikleridir Tüm ağı çkertmek, bir insanı hacklemekle başlar

bana bir kod ogretenin Allah duasini kabul etsin :)

oldum olası bu oyun programlamadan uzak durmuşumdur ama iyi bilirsen seni iyi yerlere çıkartır. dkümanın için teşekkürler. visual studio da xna harici başka hangi frameworkları kullanabiliyoruz? mesela directx ile c# da oyun yazabilir miyim? + konu dkümanlar kısmına taşınsa iyi olur. gerçi çok kişinin ilgisini çekeceğini sanmıyorum ama ciddi emeğin için teşekkürler tekrar. Ülkesini Seven Her Türk Vatandasi, Ülkesinin Sessiz Istilasi'na karsi durmak zorunda.

ellerine sağlık hocam bu aralar bu konu çok ilgimi çekmekteydi çok faydalı oldu Benim evim valizimdir. http://efecetir.info

oldum olası bu oyun programlamadan uzak durmuşumdur ama iyi bilirsen seni iyi yerlere çıkartır. dkümanın için teşekkürler. visual studio da xna harici başka hangi frameworkları kullanabiliyoruz? mesela directx ile c# da oyun yazabilir miyim? + konu dkümanlar kısmına taşınsa iyi olur. gerçi çok kişinin ilgisini çekeceğini sanmıyorum ama ciddi emeğin için teşekkürler tekrar. tesekkürler hocam. evet directx kullanabilirsin c# ile. hatta windows phone 8'le beraber microsoft, mobil oyun yazılımcılıgı icin tekrar directx'e nem vermeye baslayacak diye biliyorum. yani wp8 ile birlikte directx desteklemeye basladı mobil platform. @trampfd tesekkürler. aynı seyi düsünüyorum bende lakin bazı sıkıntılar var su an, onları czdügümde umarım. Andrei tarafından 11/Ara/12 00:05 tarihinde düzenlenmiştir %40 indirimli olarak "Centos Sistem ve Sunucu Ynetimi" adlı kitabımızı satın alarak, Linux üzerine yapılacak olan devam projeleri icin destekte bulunabilirsiniz : http://www.hepsiburada.com/centos-sistem-ve-sunucu-yonetimi-oku-izle-dinle-ogren-p-KKODLAB01579

Faydalı, ilerki aşamalarda video anlatım yaparsan eğer daha da faydalı olabilirsin. Ehl-i Byte