Blender'da strateji nasıl oluşturulur? GE Visual Control – Sensör, Aktüatör ve Kontrolör mantık blokları

Gözden geçirilmiş ve genişletilmiş ikinci baskı


Bu ders size sıfırdan basit bir 3D oyunun nasıl oluşturulacağını anlatacaktır (tabii ki Blender'da). Dillerde kesinlikle herhangi bir programlama yapılmadan da mümkündür. Blender hakkında temel bilgiye sahip olmanız gerekir. Arayüzü ve imleci gezdirmek, sol tıklamak, sol fare düğmesini bırakmak, hareket etmek için G düğmesine basıp bırakmak ve ardından tıklamak gibi küçük şeyleri zaten iyi bir şekilde anlamanızı bekliyorum. Oyalanmayacağım.

Rusça çeviriye karşı bireysel hoşgörüsüzlüğü olanlar için:

Rus resimleri
İngilizce resimler


Oyun motoru özelliklerine erişmek için oluşturucuyu oyun motoruna geçirmeniz gerekir.

Daha sonra kendinize uygun bir arayüz oluşturabilirsiniz ancak her şey zaten Blender'da hazırlanmıştır. "Oyun Mantığı" düzenini seçerek kullanıcı dostu bir arayüz elde edeceksiniz.

Oyunun istediğimiz gibi görünmesi için Doku görüntüleme modunu açın.


İmleci istediğiniz 3D görünümün üzerine getirerek (birkaç tane oluşturmayı başardıysanız) ve P tuşuna (İngilizce, Rusça Z, Ш ve Х :) arasında) basarak oyuna başlayabilirsiniz. Oyunu Game - Game Engine'i Başlat menüsünden de başlatabilirsiniz. Oyuna şimdi başlamayı denerseniz ilginç bir şey olmayacak, yalnızca gri arka plan üzerinde gri bir küp olacak. Oyundan çıkmak için Esc tuşuna basın. Ancak oyunda bu anahtarı kullanırsanız bunun bir faydası olmayacaktır, bu yüzden dikkatli olun;)

Oyuna başlamadan önce, imlecin bulunduğu pencereyi tam ekrana genişletmek ve oyunu küçük, zar zor fark edilen bir 3D pencerede kontrol etmemek için Shift+Boşluk Çubuğu veya Ctrl+Yukarı/Aşağı tuşlarına basabilirsiniz. 3B görünümün sol ve sağ panellerini sırasıyla gizlemek için T veya N tuşuna da basabilirsiniz.

N tuşuna basarak (3B görünümün üzerine geldikten sonra) ve görüntülenen panelde Görüntü sekmesinde Yalnızca Oluştur'u seçerek kuklalar, 3B imleç, ağ vb. gibi "gereksizleri" gizleyebilirsiniz. Bu durumda arka planın rengi Dünya ayarlarında belirlenen renkle değişecektir.


Aynı panelde, Gölgelendirme menüsü aracılığıyla, daha güzel grafikler (örneğin gölgeler) oluşturmanıza olanak tanıyan çoklu doku yerine GLSL'yi etkinleştirebilirsiniz.

Oyun için materyal oluşturmak genellikle Blender Internal Render için oluşturmakla aynıdır (bu şimdilik varsayılan oluşturucudur, ancak yakında yerini Cycles alacaktır), ancak sınırlamalar vardır. Örneğin, tüm prosedür dokuları, ışın izleme (ve bunun sonucunda bazı lambalarda gölge yoktur) ve haleler çalışmaz. UV dokular oluşturulması tavsiye edilir. Parçacık yoktur ancak kullanılarak simüle edilebilirler. büyük miktar nesneler (hayır, bunları manuel olarak kopyalamanıza gerek yoktur; bunları oyun sırasında eklemek aşağıda tartışılmıştır). GLSL olmadan daha da fazla kısıtlama olur ve aydınlatma tamamen çirkindir.

Makale, oyun geliştiricilerine yeni başlayanlar için faydalı olacaktır. Örnek olarak Blender'ı kullanarak izometrik 2D oyunlar için üç boyutlu nesneler oluşturmanın ve işlemenin avantajlarına ve yöntemlerine bakacağız. Makale herhangi bir karmaşık işlem içermeyecek, 3D editörün temel bilgisi yeterlidir. Render ve animasyon örneği olarak Dune2'den bir kule aldım ve tek başına bu kadar sıkıcı olmaması için ona Desert Strike'tan iki bina ekledim.

Bu yaklaşımın 2D görüntülemeye kıyasla avantajları: Animasyon oluşturmanın hızı ve kolaylığı, modelleri yükseltme kolaylığı (örneğin, bina yükseltmeleri oluşturmak için), düşük zaman yatırımıyla oldukça iyi sonuçlar.

Kusurlar: Görüntülerin "duygusallığını" ve aslında 3D modelleme bilgisine duyulan ihtiyacı azaltmak.

Başlarken, sahneyi hazırlıyoruz

Varsayılan olarak, üç nesneden oluşan "boş" bir Blender dosyası oluşturulur: bir kamera, bir ışık kaynağı ve merkezdeki bir küp. Kamerayı kurmaya başlayalım, özelliklerinde Perspektif modundan Ortografik moduna geçelim, ardından Özellikler panelinde kamera için aşağıdaki parametreleri belirleyelim:

Dönüştür
X: 12.0
Y: -12.0
Z: 12.0

(görebileceğiniz gibi, koordinatlar N, -N, N gibi görünürken N herhangi bir şey olabilir, çünkü dik bir kameramız var)

Döndürme
X: 54,8°
Y: 0°
Z: 45°

Her şey doğru yapılırsa, sahneye kameradan bakmak (bunu yapmak için tuşuna basmanız gerekir) Sayı0), küpümüzü izometride göreceğiz.

Oluşturmayı denedikten sonra ( F12) ilk izometrik testte küpün yüzlerinin çok dengesiz bir şekilde aydınlatıldığını göreceksiniz. Hadi ışıkla meşgul olalım! İlk olarak, dünya özelliklerinde (Dünya sekmesi), Ortam Tıkanmasını etkinleştirin ve bunun için gerekli Faktör değerini belirtin (örnekte 0,5 olarak ayarlanmıştır). İkinci olarak ışık kaynağı tipini Noktadan Güneşe değiştirelim. Bu, tüm gölgelerin tek yöne yönlendirilmesi ve nesnenin ışık kaynağına göre konumuna bağlı olmaması için gereklidir.


Nokta ışık kaynağıyla örnek oluşturma


Güneş ışığı kaynağıyla örnek oluşturma

Gölgelerden bahsetmişken, benim yaptığım hatayı yapmayın! Herhangi bir nedenle tüm oyun nesnelerinin aynı sahnede olmasını ve aynı anda oluşturulmasını istiyorsanız (örneğin, ayrı görüntülerden bir model sayfasını yapıştırmamak için), bu durumda bunların birbirlerini hiçbir şekilde etkilemediklerinden emin olun. ve gölgelerinin ve ışıklarının (neon tabelalar, ışıklar vb.) diğer nesnelerle örtüşmediğini. Yazının başındaki görselde kulenin gölgesinin gözetleme kulesinin üzerine düştüğü dikkat çekiyor.

Küplerimiz çirkin gri bir arka plan üzerinde işleniyor ve daha sonra nesnelerin arka planını kesme konusunda endişelenmenize gerek kalmaması için elbette bunun kapatılması gerekiyor. Bunu yapmak için, İşleme sekmesinde Gölgelendirme bölümünü bulun ve Alfa modunu Gökyüzü'nden Şeffaf'a değiştirin (Blender Render kullanıyorsanız) veya Film bölümünde (Cycles Render'da) Şeffaf kutuyu işaretleyin.

Kurulumu bitirdik, örneğin kule gibi nesneler oluşturmaya geçelim. Modelleme sürecini detaylıca düşünmeye gerek yok diye düşünüyorum, üç boyutlu bir nesnenin bize sağladığı avantajlardan hemen yararlanalım.


Kule kuvvetli bir şekilde dönüyor

Pek çok strateji bina inşaatının görsel bir gösterimini kullanır: önce temel inşa edilir, sonra duvarlar vb. Benzer bir şey yapmaya çalışalım. Sahnedeki tüm nesneleri seç ( A), ardından bunları çoğaltın ( Shift-D) ve onu ikinci katmana taşıyın ( M ve istediğiniz katmanı seçin). Operasyon, inşaat aşamalarına ihtiyaç duyduğumuz kadar tekrarlanabilir. İkinci katmana gidelim ve kuleyi "yok edelim".


Gereken sayıda tekrarlayalım, ve işte!

Rötuş

Bu yaklaşımın dezavantajları arasında yazının başında “lamba benzeri” bir his uyandırmamasından bahsetmiştim. Neyse ki, sonradan işleme ve Blender'da yerleşik olan Freestyle motoru kullanılarak kısmen geri yüklenebilir. Detaylı olarak bakmayacağım, sadece neler yapabileceğini göstereceğim.


Serbest stil çalışma örnekleri

Umarım 2D oyunlar için 3D öğeler oluşturmanın çoğu durumda hızlı ve kolay bir süreç olduğunu kanıtlamışımdır. İlginiz için teşekkür ederiz!

Blender, animasyonlu bilgisayar grafikleri ve video prodüksiyonu oluşturmaya yönelik bir programdır. Aslında açık kaynak kodu sayesinde birçok kullanıcı tarafından desteklenen bir 3D editördür. Ancak bu 3D düzenleyicide yerleşik oyun motoru"Blender Oyun Motoru" ile her türden, odak noktasından ve türden oyunlar oluşturabilirsiniz. Görünüşe göre, bazı ihtiyaçlar için mevcut olan (Python) bir komut dosyası diline başvurmadan oyunlar oluşturulabiliyor. Üzerinde oyunların beş dakika içinde oluşturulabileceğini iddia ediyorlar. Oyunların hem kullanımına hem de oluşturulmasına ilişkin referanslar ve kılavuzlar bulunmaktadır. Ayrıca yardım için başvurabileceğiniz geniş bir Blender kullanıcıları topluluğuna da güvenebilirsiniz. 3D grafikler OpenGL'in tüm özelliklerine, çeşitli yüksek çözünürlüklere ve neredeyse tüm popüler ses ve video formatlarını destekler.

Tüm önemli 2D grafik formatları desteklenir: TGA, JPG, PNG, OpenEXR, DPX, Cineon, Radiance HDR, Iris, SGI Movie, IFF, AVI ve Quicktime GIF, TIFF, PSD, MOV, vb.

Tüm önemli 3D grafik formatları desteklenir: 3D Studio, AC3D, COLLADA, FBX Export, DXF, Wavefront OBJ, DEC Object File Format, DirectX, Lightwave, MD2, Motion Capture, Nendo, OpenFlight, PLY, Pro Engineer, Radiosity, Raw Triangle , Softimage, STL, TrueSpace, VideoScape, VRML, VRML97, X3D Genişletilebilir 3D vb.

Bullet Physics Library fizik motorunu kullanmak mümkündür. Oyunlardaki grafikler, becerilerinize bağlı olarak herhangi bir karmaşıklıkta olabilir. Program tamamen ücretsizdir.

İçin işletim sistemleri: Windows 2000, XP, Vista, Mac OS X (PPC ve Intel), Linux (i386), Linux (PPC), FreeBSD 5.4 (i386), SGI Irix 6.5, Sun Solaris 2.8 (sparc).




Programlamaya gerek kalmadan etkileşimli davranışı tanımlamak için grafiksel mantık düzenleyici. Çarpışma tespiti ve dinamik simülasyonu artık Bullet Physics Library'yi destekliyor. Bullet, Play Station 3 için geliştirilmiş açık kaynaklı bir çarpışma algılama ve katı gövde dinamiği kitaplığıdır. Şekil türleri: Dışbükey çokyüzlü, kutu, küre, koni, silindir, kapsül, bileşik ve otomatik devre dışı bırakma moduna sahip statik üçgen ağ. RigidBody simülasyonu için ayrık çarpışma tespiti. Dinamik kısıtlamaların oyun içi aktivasyonu için destek. Yay reaksiyonları, sertlik, sönümleme, lastik sürtünmesi vb. dahil olmak üzere araç dinamikleri için tam destek. Gelişmiş kontrol ve yapay zeka, tamamen tanımlanmış gelişmiş oyun mantığı için Python komut dosyası oluşturma API'si. Şeffaflıklar, Animasyonlu ve yansıma eşlemeli dokular dahil tüm OpenGLTM aydınlatma modlarını destekleyin. Çoklu malzeme desteği, çoklu doku ve doku karıştırma modları, piksel başına aydınlatma, dinamik aydınlatma, haritalama modları, GLSL vertexPaint doku karıştırma, çizgi gölgeleme, animasyonlu malzemeler, Normal Haritalama ve Paralaks Haritalama desteği. Oyunların ve etkileşimli 3D içeriğin derleme veya ön işleme gerek kalmadan oynatılması. Ses, SDL araç setini kullanarak. Kaplama arayüzleri için Sahnelerin çok katmanlı olması.



 

Okumak faydalı olabilir: