İçeriğe atla
Son haberler
3ds Max 2025 viewport rehberi: Mimari sahnelerde görünümü düzenleyinNVIDIA Instant NeRF nasıl kurulur? Görüntüden 3B sahneye adım adımBlender’da armature oluşturma: Kemik ekleme ve Pose Mode’da poz vermeOpenAI mühendislikte yapay zekâyı CAD ve simülasyon iş akışlarına taşıyorRhino 8 Layout rehberi: Ölçekli pafta ve detay görünüşü hazırlamaBlender Python API ile materyal oluşturma ve temel ayarları yapmaBlender F-Curve modifier’larıyla mimari animasyonda hareket kontrolüCozyBlanket Pro çıktı: Retopoloji, UV ve bake araçları tek uygulamadaEast County Library tamamlandı: Holst’un Oregon’daki kütüphanesiBellek talebinde zorlu dönem: Team Group 2026 sonu–2027 ortasını işaret ediyor
EğitimlerBlenderPython

Blender Python API ile materyal oluşturma ve temel ayarları yapma

Blender’ın Python API’siyle materyal veri bloğu oluşturmayı ve renk, metalik, pürüzlülük gibi temel özellikleri düzenlemeyi adım adım öğrenin. Rehber, şeffaflık ayarları ve materyali güvenli biçimde kaldırma konularını da ele alıyor.

Mimari maket yanında beton, ahşap, metal ve cam malzeme örnekleriAI görsel
Temsilî görsel; yapay zekâ ile üretildi.Görsel: 3dsınıfı / FCA AI
KaydetPaylaş0

Kısaca

  1. bpy.data.materials.new(name=...) ile ana veri tabanında yeni bir materyal oluşturulabilir.
  2. diffuse_color, metallic ve roughness özellikleri materyalin temel görünüm ayarları arasındadır.
  3. Güncel API’de şeffaflık ve uyumluluk için surface_render_method özelliği kullanılır.
  4. Materyali kaldırırken do_unlink=True, kullanım bağlantılarının silme öncesinde kaldırılmasını sağlar.

Bu rehberde ne öğreneceksiniz?

Blender’ın Python API’si, materyalleri arayüzde tek tek düzenlemek yerine kodla oluşturup temel özelliklerini ayarlamaya imkân verir. Bu rehberde bir materyal veri bloğu oluşturacak, adını belirleyecek ve renk, metalik miktarı ile pürüzlülük değerlerini düzenleyeceğiz. Ardından API dokümantasyonunda listelenen şeffaflık seçeneklerine ve kullanılmayan materyali veri tabanından kaldırma yöntemine bakacağız.

Blender API belgeleri, Material veri bloğunu geometrik nesnelerin render sırasındaki görünümünü tanımlayan yapı olarak açıklar. Materyaller Blender’ın ana veri tabanındaki bir koleksiyonda tutulur. Aşağıdaki örnekler bu koleksiyon ve materyal özelliklerinin belgelenen kullanımına dayanır; belirli bir sahneye veya nesne türüne materyal atama adımlarını kapsamaz.

Gereksinimler ve sürüm notu

Örnekleri kullanmak için Blender’ın Python API’sine erişilebilen bir Blender ortamı gerekir. Kaynak dokümantasyon API sayfalarını “current” olarak sunuyor ve belirli bir Blender sürümünü şart koşmuyor. Bu nedenle projede kullanılan sürümle API sayfasındaki özelliklerin örtüştüğünü kontrol etmek önemlidir. Kaynaklarda hesap, abonelik veya ayrı bir lisans gereksinimi belirtilmiyor.

Kod parçaları Python dilindedir ve Blender’ın bpy API’sini kullanır. Bunları Blender’ın Python API’sine erişilebilen bir ortamda çalıştırın; örnekler harici bir Python ortamının Blender verisine erişebileceğini garanti etmez. İlk denemeyi önemli bir proje dosyasının kopyasında yapmak, istenmeyen veri değişikliklerinin asıl sahneyi etkilemesini önlemeye yardımcı olur.

Adım adım materyal oluşturma

1. Yeni bir materyal veri bloğu oluşturun

BlendDataMaterials.new(name) ana veri tabanına yeni bir materyal ekler ve oluşturulan Material veri bloğunu döndürür. name parametresi yeni veri bloğuna verilecek addır; dokümantasyona göre bu değer None olamaz.

python
import bpy

mat = bpy.data.materials.new(name="Mimari_Materyal")

Bu adımın sonunda mat değişkeni oluşturulan materyale erişir. Materyal veri tabanına eklenir; ancak kod onu belirli bir geometriye bağlamaz. Bu nedenle materyal oluşturma ve bir nesnenin materyal koleksiyonunda kullanma işlemlerini ayrı adımlar olarak düşünmek gerekir.

2. Rengi ve yüzey karakterini ayarlayın

Dokümantasyonda diffuse_color, metallic ve roughness materyal özellikleri arasında yer alır. diffuse_color dört öğeli bir dizi olarak tanımlanmıştır. Metalik miktarı ve pürüzlülük 0 ile 1 aralığında değer alır; belgelerde varsayılan pürüzlülük 0,4, varsayılan metalik miktarı ise 0 olarak belirtilir.

python
mat.diffuse_color = (0.72, 0.64, 0.52, 1.0)
mat.metallic = 0.0
mat.roughness = 0.4

Bu değerler örnek başlangıç değerleridir; belirli bir ürün veya gerçek yapı malzemesi için doğrulanmış bir reçete değildir. Renk dizisinin dört bileşenini ve sayısal özellikleri ihtiyaçlarınıza göre değiştirebilirsiniz. Birden fazla varyant hazırlarken materyal adlarını ayırt edilebilir seçmek, veri tabanındaki öğeleri yönetmeyi kolaylaştırır.

3. Şeffaflık yöntemini seçin

Güncel Material API’sindeki surface_render_method, yüzeylerin nasıl karıştırılacağını ve yöntemin bazı özelliklerle uyumluluğunu belirler. Belgelerde DITHERED ve BLENDED olmak üzere iki seçenek bulunur. DITHERED, şeffaflığı gri tonlu bir dağılımla işler ve render geçişleriyle ışın izleme desteğiyle uyumlu olarak tanımlanır. BLENDED ise renkli şeffaflık sağlar; ancak dokümantasyona göre render geçişleri ve ışın izlemeyle birlikte kullanılamaz.

python
mat.surface_render_method = 'DITHERED'

Bu satır şeffaflık için kullanılacak yöntemi seçer; tek başına belirli bir opaklık miktarı ayarlamaz. Renkli şeffaflık gerekiyorsa BLENDED seçeneği değerlendirilebilir. Karar verirken render geçişleri veya ışın izleme uyumluluğunun iş akışında gerekli olup olmadığını göz önünde bulundurun.

alpha_threshold da materyalin belgelenmiş özelliklerinden biridir. Alfa değeri bu sınırın üzerine çıkan pikseller render edilir. Özellik 0 ile 1 aralığında çalışır ve dokümantasyonda başlangıç değeri 0,5 olarak verilir. Bu değeri değiştirecekseniz hedeflenen görünümü test edin ve kullandığınız Blender sürümündeki API açıklamasını kontrol edin.

4. Materyali gerektiğinde kaldırın

Bir materyal artık gerekmiyorsa BlendDataMaterials.remove ile mevcut blend dosyasından kaldırılabilir. do_unlink=True, silme işleminden önce materyalin kullanıldığı bağlantıların kaldırılmasını sağlar. Diğer parametreler kullanıcı sayaçlarının güncellenmesi ve arayüzün silinen materyale referans vermemesini sağlamakla ilgilidir.

python
bpy.data.materials.remove(mat, do_unlink=True)

Bu kodu çalıştırmadan önce kaldırılacak materyalin doğru olduğundan emin olun. do_unlink=True kullanım bağlantılarını da silme öncesinde kaldırır; materyalin sahnede kullanılmaya devam etmesi gerekiyorsa bu davranış istenmeyen sonuç doğurabilir. Silme adımını önce dosyanın bir kopyasında denemek güvenli bir kontrol yöntemidir.

Sık yapılan hatalar

  • Eski özelliği güncel yöntem sanmak: blend_method, şeffaf yüzeyler için eski bir özelliktir ve dokümantasyonda surface_render_method kullanılması önerilir. Yeni bir çalışma hazırlarken güncel API’deki yöntemi esas alın.

  • use_nodes özelliğini ayar anahtarı gibi kullanmak: Belgelerde bu özellik Blender 5.0’dan itibaren kullanımdan kaldırılmış olarak işaretleniyor. Ayarlamanın etkisi olmadığı, okunduğunda da her zaman True döndürdüğü ve kaldırılmasının Blender 6.0 için planlandığı belirtiliyor. Bu nedenle örnek iş akışında bu özelliği kullanmıyoruz.

  • Renk ve sayısal aralıkları karıştırmak: diffuse_color dört öğeli bir dizidir; metallic ve roughness ise 0–1 aralığında değerler alır. Beklenen veri türünü ve aralıkları API belgesinden kontrol edin.

  • Materyal oluşturmayı nesneye atamayla aynı sanmak: Yeni veri bloğu oluşturmak materyali ana veri tabanına ekler; bu işlem onu bir geometri nesnesine otomatik olarak atamaz.

  • Silme işleminde kullanım bağlantılarını gözden kaçırmak: do_unlink=True, materyalin tüm kullanımlarını silmeden önce kaldırır. Bu seçeneğin etkisini anlamadan temizlik kodunu mevcut dosyada çalıştırmayın.

Mimarlık ve görselleştirme iş akışında kullanım

Bu yöntem, benzer materyal veri bloklarını kodla üretmek veya temel özellikleri tekrarlanabilir biçimde düzenlemek isteyen mimarlık ofisleri, iç mimarlar ve görselleştirme ekipleri için bir başlangıç noktasıdır. Aynı adlandırma ve temel değer düzenini birden fazla materyalde kullanmak gerektiğinde kodla oluşturma, elle tekrarlanan işlemleri azaltabilir. Ancak bu rehber nesneye atama, belirli render motorlarının davranışı veya harici materyal kütüphaneleri hakkında bir iş akışı tarif etmez.

Projeye geçmeden önce kullanılan Blender sürümü ile güncel API belgesini karşılaştırın; şeffaflık yönteminin render geçişleri ve ışın izlemeyle uyumluluğunu da kontrol edin. Kaynaklar donanım gereksinimi, performans ölçümü, ücret veya lisans bedeli belirtmediğinden bu konularda kesin bir sonuç çıkarılamaz. Ofis içinde paylaşılacak kodlarda, silme işlemi gibi veri değiştiren adımları önce kopya dosyada sınamak yerinde olur.

Sonraki adımlar

Temel oluşturma ve ayar adımları çalıştıktan sonra, kullanılan Blender sürümünün Material ve BlendDataMaterials API sayfalarını proje ihtiyaçlarına göre inceleyin. Dokümantasyonda materyal veri bloğunun node_tree özelliği ve materyallere referans veren farklı koleksiyonlar da listeleniyor; bu rehber bunların nasıl düzenleneceğini açıklamıyor. Bir sonraki geliştirme aşamasını belirlerken belgelenmiş özelliklere ve projenin doğrulanmış gereksinimlerine dayanmak, uyumluluk sorunlarını azaltır.

Kaynak ve lisans

Bu rehber, Blender API belgelerindeki BlendDataMaterials ve Material sayfalarından Türkçeye uyarlanmıştır. Her iki kaynak da CC BY-SA 4.0 lisansıyla sunulmaktadır. Örnek kodlar bu rehber için yazılmıştır; kaynaklardan kod alıntısı yapılmamıştır.

Sık sorulan sorular

Blender Python API ile materyal nasıl oluşturulur?

`bpy.data.materials.new(name="...")` çağrısı ana veri tabanında yeni bir materyal oluşturur ve materyal veri bloğunu döndürür.

Blender’da materyalin metalik ve pürüzlülük değerleri nasıl ayarlanır?

`Material` veri bloğundaki `metallic` ve `roughness` özelliklerine değer atanabilir. API dokümantasyonunda ikisi için de 0 ile 1 aralığı verilir.

Blender materyalinde güncel şeffaflık yöntemi hangisidir?

Güncel API, karıştırma yöntemi ve uyumluluk için `surface_render_method` özelliğini listeler. Seçenekler `DITHERED` ve `BLENDED` olarak belirtilir.

Kaynaklar

2 kaynak
D(
docs.blender.org (CC BY-SA 4.0)docs.blender.org/api/current/bpy.types.BlendDataMaterials.html
Özet
D(
docs.blender.org (CC BY-SA 4.0)docs.blender.org/api/current/bpy.types.Material.html
Özet

Kaynak metinler yeniden yayımlanmaz; kısa alıntılar tırnak içinde verilir, geri kalanı özgün özet ve yorumdur.

3dsınıfı yorumu
3dEditörün değerlendirmesi

Blender Python API’siyle materyal oluşturmak, tekrarlanan temel ayarları standartlaştırmak isteyen ofisler ve görselleştirme ekipleri için pratik bir başlangıç sunuyor. Renk, metalik ve pürüzlülük değerlerinin kodla belirlenmesi, dosyalar arasında aynı başlangıç düzenini korumayı kolaylaştırabilir.

Bununla birlikte dokümantasyon bu özelliklerin belirli render motorlarındaki sonucunu, performans etkisini veya Türkiye’deki lisans maliyetlerini açıklamıyor. Ekipler kullandıkları Blender sürümünü, şeffaflık uyumluluğunu ve mevcut sahne bağlantılarını kontrol etmeli; özellikle materyal silme adımını proje kopyasında denemeli. Bu yaklaşım, kaynaklarda donanım yükseltmesi gerektiren bir özellik olarak tanımlanmıyor.

Bu habere tepkin ne?

Yorumlar 0

İlk yorumu sen yazKendi test sonuçlarını ya da sorunu paylaş.
+

İlgili haberler