Kısaca
- Python Console komutları Return ile çalıştırır ve önceki komutlara geçmiş üzerinden yeniden ulaşılabilir.
- bpy.context, mevcut sahne ve seçili nesneler gibi bağlama ilişkin bilgilere erişim sağlar.
- Etkin nesnenin konumu Python Console üzerinden değiştirilebilir.
- Blender API belgelerindeki örnekle sahneye bir noktasal ışık eklenebilir.
Blender’ın Python Console aracı, kısa kod parçalarını çalıştırarak sahne verilerini incelemek ve Blender API’sini keşfetmek için kullanılabiliyor. Blender belgelerindeki örnekler; etkin nesnenin konumunu değiştirmeyi, seçili nesneleri görüntülemeyi ve sahneye yeni bir ışık eklemeyi gösteriyor. Aşağıdaki adımlar, Python Console’u küçük ve kontrol edilebilir işlemlerle kullanmaya odaklanıyor.
Bu rehberde neler öğreneceksiniz?
Python Console, yazılan komutu çalıştırmanın yanı sıra komut geçmişi ve otomatik tamamlama özellikleri de sunuyor. İlk aşamada mevcut bağlamı, yani Blender’da etkin olan nesne ve modu sorgulayacağız. Ardından etkin nesnenin konumunu düzenleyecek, seçili nesneleri listeleyecek ve yeni bir ışık nesnesi oluşturacağız.
Bu yaklaşım, her işlem için uzun bir betik hazırlamak yerine küçük denemeler yapmaya uygundur. Bir komut beklendiği gibi çalıştığında Console geçmişi tekrar kullanmayı kolaylaştırır. Blender belgelerine göre geçmişteki komutlar yukarı ve aşağı ok tuşlarıyla çağrılabilir; komut satırında Tab tuşu otomatik tamamlamayı açar.
Gereksinimler ve hazırlık
Bu örnekler Blender’ın Python Console’u ve Blender Python API’si olan bpy üzerine kuruludur. Kaynak belgeler belirli bir Blender sürüm numarası, hesap gereksinimi, donanım alt sınırı veya kurulum yöntemi belirtmiyor. Bu nedenle örneklerin kullanılacağı sürümde API davranışını ayrıca kontrol etmek gerekir.
Console’da komut Return tuşuyla çalıştırılır. Komut yazarken Tab ile mevcut üyeler için otomatik tamamlama önerileri görülebilir. Blender belgeleri, Console ortamını tanımak için dir() komutunu çalıştırmayı da öneriyor. Aşağıdaki ilk örnek, mevcut bağlamdaki modu ve etkin nesneyi sorgular:
bpy.context.mode
bpy.context.active_objectİlk satır mevcut etkileşim modunu, ikinci satır etkin nesneyi verir. Belgeler, doğru sonuçları görmek için 3D Viewport’ta nesne seçilmiş olmasını özellikle belirtiyor. Etkin nesne yoksa nesnenin özelliklerine erişmeye çalışan komutlar beklenen sonucu vermez; bu nedenle düzenleme adımlarından önce sahnede uygun bir nesnenin etkin olduğundan emin olun.
Adım adım: Console’da temel işlemler
1. API üyelerini keşfedin
Blender API’sinde hangi özelliklerin kullanılabildiğini araştırırken otomatik tamamlamadan yararlanabilirsiniz. Console’a aşağıdaki ifadeyi yazıp Tab tuşuna basmak, bpy içindeki alt modüller ile özellik ve metot önerilerini gösterir. Belgelerde metotların önerilerde sonlarında parantezle ayırt edildiği açıklanıyor.
bpy.Bir değişkenin veya modülün üyelerini incelemek, ezberden komut yazmak yerine mevcut API’yi görerek ilerlemeyi sağlar. Console ortamında bpy.context için C, bpy.data için D kısa adları da bulunur. İlk adımda dir() çalıştırarak ortamda tanımlı genel işlev ve değişkenleri incelemek mümkündür.
2. Etkin nesnenin konumunu değiştirin
Etkin nesneye bağlam üzerinden erişilebilir. Belgelerde nesnenin X koordinatını değiştirme ve koordinata küçük bir artış ekleme örnekleri bulunuyor. Önce nesnenin mevcut koordinatını sorgulayın; ardından aşağıdaki komutla X ekseninde 0,5 birimlik artış uygulayın:
bpy.context.object.location.x += 0.5Bu komut etkin nesnenin konum özelliğine müdahale eder. Bir nesne seçilmemişse bpy.context.object uygun bir nesne döndürmeyebilir. Bu yüzden komutu çalıştırmadan önce etkin nesne bulunduğunu doğrulamak önemlidir. Yukarı ok tuşu önceki komutu geçmişten çağırır; ancak bu, sahnede yapılan değişikliği geri almaz. Farklı bir koordinat denemeden önce etkin nesneyi ve sahnedeki sonucu kontrol edin.
3. Üç koordinatı birlikte atayın
Konumun üç bileşenini tek seferde düzenlemek için koordinatlar bir demet olarak verilebilir. Aşağıdaki örnek X, Y ve Z değerlerini sırasıyla 1, 2 ve 3 olarak atar:
bpy.context.object.location = (1, 2, 3)Yalnızca X ve Y bileşenlerini değiştirmek de mümkündür. Bu yöntem, mevcut Z değerini koruyarak iki koordinata birlikte değer vermek gerektiğinde kullanılabilir:
bpy.context.object.location.xy = (1, 2)Bu örnekler, etkin nesnenin konumuna doğrudan erişir. Bir sahne düzenlemesinde hangi nesnenin etkin olduğunu takip etmek, yanlış nesnenin değişmesini önler. Daha kapsamlı işlemler öncesinde tek bir nesneyle deneme yapmak ve sonucu sahnede kontrol etmek temkinli bir çalışma biçimidir.
4. Seçili nesneleri görüntüleyin
Birden fazla nesnenin seçili olduğu durumlarda bpy.context.selected_objects, seçili nesneler listesini verir. Etkin nesne dışındaki seçili nesneleri görmek için şu ifade kullanılabilir:
[obj for obj in bpy.context.selected_objects if obj != bpy.context.object]Bu örnek, seçili nesneleri dolaşır ve etkin nesneyle aynı olmayanları sonuç listesine alır. Böylece etkin nesne ile diğer seçili nesneler arasındaki farkı Console üzerinden inceleyebilirsiniz. bpy.context, o anki sahne, seçili nesneler ve mevcut mod gibi bağlam bilgilerine erişim sağlar; bpy.data ise seçili ya da etkin olup olmadığına bakmaksızın blend dosyasındaki verilere erişir.
5. Sahneye noktasal ışık ekleyin
Blender API belgelerindeki örnek, yeni bir ışık veri bloğu ve onu kullanan nesne oluşturup etkin koleksiyona bağlar. Ardından ışığın konumunu belirler ve nesneyi seçerek etkin hâle getirir. Aşağıdaki kod, belgelerdeki temel noktasal ışık örneğini izler:
import bpy
view_layer = bpy.context.view_layer
light_data = bpy.data.lights.new(name="New Light", type='POINT')
light_object = bpy.data.objects.new(name="New Light", object_data=light_data)
view_layer.active_layer_collection.collection.objects.link(light_object)
light_object.location = (5.0, 5.0, 5.0)
light_object.select_set(True)
view_layer.objects.active = light_objectKod, önce ışık verisini oluşturur; sonra bu veriye bağlı nesneyi sahne koleksiyonuna ekler. Konum ataması ve seçme işlemleri tamamlandığında yeni ışık etkin nesne olur. Belgelerdeki örnek bu tür bir nesne oluşturma, sahneye bağlama, konumlandırma ve etkinleştirme sırasını gösteriyor.
Sık karşılaşılan hatalar
En temel sorunlardan biri, etkin nesne bulunmadan nesne özelliklerine erişmeye çalışmaktır. Konum örneklerinden önce nesne seçildiğini ve etkin olduğunu kontrol edin. Başka bir nesnenin düzenlenmesi de çoğu zaman bağlamda etkin olan nesnenin gözden kaçırılmasından kaynaklanır.
Bir diğer karışıklık, komut geçmişi ile Console ekranını temizlemeyi aynı şey sanmaktır. Blender belgelerine göre Console menüsündeki Clear All görünümü yeniler, ancak komut geçmişini silmez. Önceki ve sonraki komutlar ok tuşlarıyla çağrılabilir. Shift+Return ise komutu çalıştırmadan geçmişe ekler; çalıştırmak için Return kullanılır.
Kısa denemelerden sonra komutları betik olarak saklamak isteyenler, belgelerde belirtilen Copy as Script kısayoluyla tam geçmiş tamponunu panoya kopyalayabilir. Bu içerik bir metin dosyasına yapıştırılarak Python betiği olarak kullanılabilir. Daha büyük bir işe geçmeden önce kodu ve sahnedeki etkisini gözden geçirmek, deneme komutlarının yanlışlıkla üretim dosyasına taşınmasını önlemeye yardımcı olur.
Mimarlık ve görselleştirme iş akışında kullanım
Mimarlık, iç mimarlık ve archviz çalışmalarında Console; etkin nesnenin konumunu hızlıca değiştirmek, seçili nesneleri incelemek veya sahneye bir ışık eklemek gibi küçük, tekrarlı işlemleri denemek için yararlı olabilir. Özellikle Blender sahnesinde Python API’sini tanımaya başlayan öğrenciler ve görselleştirme sanatçıları, tek komutluk denemelerle bağlam ve nesne özellikleri arasındaki ilişkiyi gözlemleyebilir.
Bununla birlikte, burada verilen örnekler temel seviyededir; kaynaklar belirli bir proje şablonu, render ayarı, donanım gereksinimi veya başka yazılımlarla uyumluluk bilgisi sunmuyor. Ofis iş akışında otomasyon planlanıyorsa, kullanılan Blender sürümü ve projedeki nesne yapısıyla örneklerin sınanması gerekir. Komutların sahneye etkisini kontrol etmek ve geçmişi gerektiğinde betik olarak saklamak, küçük denemeleri daha düzenli bir sürece taşır.
Sonraki adımlar
Önce bağlamı sorgulayan komutlarla başlayın; ardından konum ve seçili nesne örneklerini ayrı ayrı deneyin. Birden fazla komutu bir araya getirmek gerektiğinde, Blender API belgelerindeki Object örneğini inceleyerek veri bloğu oluşturma, koleksiyona bağlama ve nesneyi etkinleştirme sırasını takip edin. Operatörler de normalde bir düğme veya menüyle başlatılan işlemlerin programatik olarak çağrılmasına imkân verir; hangi operatörün kullanılacağı için ilgili API belgelerine bakılmalıdır.
Kaynak ve lisans
Bu rehber, Blender Manual içindeki “Python Console” sayfası ile Blender Python API’deki “Object” referansından yararlanılarak uyarlandı. Her iki kaynak da CC BY-SA 4.0 lisanslıdır; içerik Türkçeye çevrilip yeniden anlatılmış, kod örnekleri ilgili API belgelerindeki kullanımlara dayandırılmıştır.
Sık sorulan sorular
Blender Python Console’da komut nasıl çalıştırılır?
Komutu Console satırına yazıp Return tuşuna basın. Tab otomatik tamamlamayı gösterir; yukarı ve aşağı ok tuşları komut geçmişinde gezinir.
Blender’da etkin nesnenin konumu Python ile nasıl değiştirilir?
Etkin nesneye bpy.context.object üzerinden erişilip location özelliği düzenlenebilir. Örneğin X koordinatına 0,5 eklemek için bpy.context.object.location.x += 0.5 komutu kullanılabilir.
Python Console ile Blender sahnesine ışık eklenebilir mi?
Evet. Blender Python API belgesindeki örnek, bir noktasal ışık veri bloğu ve nesnesi oluşturup etkin koleksiyona bağlar, konumlandırır ve etkinleştirir.
Kaynaklar
2 kaynakKaynak metinler yeniden yayımlanmaz; kısa alıntılar tırnak içinde verilir, geri kalanı özgün özet ve yorumdur.
Türkiye’deki mimarlık ofisleri ve öğrenciler için bu rehberin pratik değeri, Blender sahnesinde küçük düzenlemeleri API üzerinden deneyerek öğrenmeye imkân vermesinde. Seçili nesneyi sorgulama, konum değiştirme ve ışık ekleme örnekleri, daha kapsamlı otomasyonlara geçmeden önce temel bir başlangıç sunuyor.
Ancak kaynaklar sürüm uyumluluğu, donanım gereksinimi ya da ürün maliyeti hakkında bilgi vermiyor. Bu nedenle örnekleri üretim dosyalarına taşımadan önce kullanılan Blender sürümünde ve proje sahnesinde doğrulamak; lisans, donanım ve iş akışı kararlarını da ayrı değerlendirmek gerekiyor.




Yorumlar 0