Skip to content

Blender Ağırlık Boyama: Herkesin Karşılaştığı 7 Sorun, Bunların Çözümü ve Bu Adımı Atlamanın Yolu ​

Son güncelleme: Eylül 2026.

Ağırlık Boyama modundaki Blender karakter kolunda, dirsek boyunca maviden kırmızıya uzanan ısı gradyanı

Blender’daki ağırlık boyama sorunlarının neredeyse tamamı şu yedi sorundan biridir: otomatik ağırlıklar çalışmayı reddeder, ağırlıklar bir uzuvdan diğerine taşar, bir verteksi dörtten fazla kemik çeker, ağırlıkların toplamı bire ulaşmaz, iki taraf birbiriyle eşleşmez, bilek dönerken çöker veya gövde hareket ettiğinde ceket geride kalır. Her biri için Ağırlık Boyama Modu’nun Weights menüsünde belirli bir araç (Normalize All, Clean, Limit Total, Smooth, Mirror Vertex Group, Transfer Weights) ya da bir değiştirici ayarı vardır; bu rehber her biri için izlenecek tam yolu verir. Hiç boyama yapmak istemiyorsanız karakteri sizin için skinleyen iki eklenti de var; ikisini de yazının sonunda ele alıyoruz.

Kısa cevap ​

  • Otomatik ağırlıklar Bone Heat Weighting: failed to find solution for one or more bones hatasıyla başarısız oluyorsa: mesh’i temizleyin. Mesh > Clean Up > Merge by Distance, Degenerate Dissolve, Delete Loose, ardından Select > Select All by Trait > Non Manifold komutlarını kullanın. Tek parça hâlindeki gövdeyi rigleyin, giysileri daha sonra bağlayın.
  • Ağırlıklar yanlış uzva taşıyorsa: etkilenen yüzleri seçin, ardından yalnızca bu yüzleri kontrol etmesi gereken kemikler için Weights > Assign Automatic from Bones komutunu kullanın veya ağırlıkları boyayarak kaldırıp Weights > Smooth ve Weights > Clean komutlarını çalıştırın.
  • Verteks başına çok fazla kemik varsa: Limit değerini 4 yaparak Weights > Limit Total, ardından Weights > Normalize All komutunu çalıştırın.
  • Ağırlıkların toplamı bir etmiyorsa: Lock Active kapalıyken Weights > Normalize All komutunu çalıştırın, ardından araç seçeneklerinde Auto Normalize’ı açın.
  • Bir taraf doğruyken diğeri değilse: Mirror Weights ve Flip Group Names seçenekleriyle Weights > Mirror Vertex Group komutunu kullanın veya Symmetry panelinde Mirror Vertex Groups açıkken boyayın.
  • Şeker ambalajı gibi bükülen bilek: render için Armature değiştiricisinde Preserve Volume’u, oyun motoru için twist kemiklerini kullanın.
  • Giysi gövdeyi takip etmiyorsa: giysiye bir Data Transfer değiştiricisi ekleyin; Vertex Groups ve Nearest Face Interpolated seçeneklerini kullanıp kaynak olarak gövdeyi ayarlayın.
  • Bu adımı atlamak için: Voxel Heat Diffuse Skinning (yaklaşık 30 $), Blender’ın çözücüsünün reddettiği mesh’leri skinler. Cinevva Rig eklentisi (çıkış fiyatı 29 $; kendi bilgisayarınızda çevrimdışı çalışır; Windows, macOS ve Linux’ta Blender 4.2+ sürümlerini destekler) iskeleti ve ağırlıkları birlikte yerleştirir.

Hızlı başvuru ​

SorunGördüğünüz şeyÇözümKonumu
Otomatik ağırlıklar başarısız oluyorBone Heat Weighting: failed to find solution for one or more bonesMerge by Distance, Degenerate Dissolve ve Delete Loose uygulayın, manifold olmayan kenarları düzeltin, yalnızca gövdeyi rigleyinEdit Mode, Mesh > Clean Up, Select > Select All by Trait
Ağırlıklar taşıyorKolu kaldırmak kaburgaları da kaldırıyor, el kalçayı sürüklüyorYüz seçiminde Assign Automatic from Bones uygulayın, ardından Smooth ve Clean kullanınYüz maskeleme açıkken Weight Paint Mode, Weights menüsü
4’ten fazla etkiMotor veya görüntüleyici, modeli Blender’dan farklı deforme ediyorLimit Total 4, ardından Normalize AllWeight Paint Mode, Weights menüsü
Normalize edilmemiş ağırlıklarBlender’da doğru görünüyor, dışa aktarıldıktan sonra bozuluyorNormalize All (Lock Active kapalı), Auto Normalize açıkWeights menüsü, araç Options paneli
Asimetrik ağırlıklarSol taraf düzgün bükülüyor, sağ taraf bükülmüyorFlip Group Names ile Mirror Vertex GroupWeights > Mirror Vertex Group
Şeker ambalajı bükülmesiBilek döndüğünde ön kol sivrilerek sıkışıyorPreserve Volume veya twist kemikleriArmature değiştiricisi veya rig
Giysi kabuklarıCeket ya da etek geride kalıyor, bacaklar içinden çıkıyorData Transfer değiştiricisi, Vertex Groups, Nearest Face InterpolatedGiysi nesnesindeki değiştirici

Skin ağırlıkları nedir? ​

Karakterdeki her verteks küçük bir liste taşır: onu hangi kemiklerin ve ne ölçüde hareket ettirdiği. Blender bu listeyi, kemiklerin adını taşıyan verteks grupları olarak saklar; her grupta verteks başına bir ağırlık bulunur ve Armature değiştiricisi bunları okur: “‘forearm’ adlı bir kemik yalnızca ‘forearm’ verteks grubundaki verteksleri etkiler. Bir kemiğin belirli bir verteks üzerindeki etkisi, bu verteksin ilgili gruptaki ağırlığı tarafından kontrol edilir.” Ağırlık Boyama Modu, bu sayıları renklerle görüp düzenlemenin bir yoludur. Kılavuzdaki renk koduna göre: “düşük değerli alanlar (ağırlıkları 0.0’a yakın olanlar) mavi (soğuk), yüksek değerli alanlar (ağırlıkları 1.0’a yakın olanlar) ise kırmızı (sıcak) gösterilir”; aralarında yeşil ve sarı bulunur.

İyi bir eklemde kısa bir gradyan vardır. Kötü bir eklemde ise ya kâğıt gibi katlanan sert bir geçiş ya da ulaşmaması gereken bir yere uzanan gradyan bulunur.

Dirsek boyunca ağırlıklarÖn kol kemiğinin verteks grubu, Blender’ın soğuktan sıcağa renkleriyle gösteriliyor. Mavi 0.0, kırmızı 1.0’dır.Dirsek gibi bükülürKatlanır ve göğsü çekerdirsek eklemi0.01.0üst kolön kolAğırlık, üç veya dört kenar döngüsüne yayılır.Her döngü bükülmeyi paylaşır, böylece kıvrım eğri olur.Kolun dışında hiçbir yer kırmızı değildir.dirsek eklemi0.01.0göğse taşmaAğırlık tek bir döngüde 0’dan 1’e sıçrar.Tek döngü tüm bükülmeyi üstlenip düz biçimde sıkışır.Göğüsteki kırmızı bölge ön kolla birlikte hareket eder.
Aynı ön kol kemiği, iki verteks grubu. Solda geçiş dirseğin çevresindeki birkaç kenar döngüsüne yayılır, dolayısıyla kıvrım eğri olur. Sağda geçiş yalnızca bir döngü genişliğindedir; bu yüzden kâğıt gibi katlanır. Ayrıca göğüste başıboş bir ön kol ağırlığı bölgesi vardır; Ağırlık Boyama Modu’nda “taşma” böyle görünür.

Herhangi bir şeyi düzeltmeden önce elinizdekini görün ​

Görünümü kılavuzdaki iş akışında anlatıldığı gibi ayarlayın: armature’ı seçin, Ctrl-Tab ile Pose Mode’a geçin, ardından mesh’i seçip Weight Paint Mode’a geçin. Üst çubuktaki Edit > Lock Object Modes işaretli olmamalıdır; aksi takdirde ikinci adım başarısız olur. Görünüm alanı başlığında Bone Selection’ı işaretleyin, ardından mesh üzerinde ilgili verteks grubunu göstermek için bir kemiğe Alt-LMB ile tıklayın. Kemikler gövdenin içinde gizlendiğinden, armature’ın Viewport Display ayarlarında In Front’u açın.

Ardından Viewport Overlays’i açıp Zero Weights seçeneğini All olarak ayarlayın. Kaplama belgelerine göre verteksler, “herhangi bir verteks grubunda ağırlıkları yoksa siyah gösterilir”. Karakter hareket ettiğinde geride kalan verteksler bunlardır.

CGDive’ın ağırlık boyama iş akışı eğitimi aynı kurulumu adım adım gösteriyor: armature’a poz verin, bir kemik seçin, boyayın ve kemiği hareket ettirerek sonucu kontrol edin.

Sorun 1: Otomatik ağırlıklar başarısız oluyor ​

Ctrl-P tuşlarına basıp Armature Deform > With Automatic Weights seçeneğini seçiyorsunuz ve Blender şu yanıtı veriyor:

Bone Heat Weighting: failed to find solution for one or more bones

Bu metin Blender’ın kaynak kodunda, source/blender/editors/armature/meshlaplacian.cc dosyasında bulunur ve çevresindeki fonksiyon neyin yanlış gittiğini açıklar. Otomatik ağırlıklar her kemiği bir ısı kaynağı olarak ele alır ve mesh yüzeyi üzerinde bir difüzyon problemi çözer. Kılavuz bu etkiyi, “verteksler ile belirli bir kemik arasındaki mesafeye (‘kemik ısısı’ algoritması) dayalı” olarak açıklar. Koddaki iki ayrıntı önemlidir: mesh önce üçgenleştirilir (“bone heat needs triangulated faces”) ve bir kemik yalnızca görebildiği bir verteksi ısıtır; bu da mesh’e karşı ışın gönderilerek test edilir. Bir kemiğe yönelik doğrusal çözüm başarısız olduğunda hata tetiklenir ve mesh çözücüye dejenere bir sistem verdiğinde çözüm başarısız olur. Pratikte bunun anlamı şunlardan biridir:

  1. Çakışan köşeler ve sıfır alanlı yüzler. FBX veya OBJ içe aktarımlarından ya da Boolean işleminden sonra sık görülür. Düzenleme Modu'nda tümünü seçin, ardından Mesh > Clean Up > Merge by Distance komutunu kullanın (kılavuz: "Birbirine belirli bir mesafeden daha yakın olan seçili köşeleri birleştirir"); sonra Mesh > Clean Up > Degenerate Dissolve komutunu çalıştırın. Bu komut, "belirli bir uzunluktan daha kısa olan seçili kenarları daraltır. Bu işlem küçük yüzlerin kaldırılmasını da sağlar."
  2. Bağlantısız geometri. Mesh > Clean Up > Delete Loose.
  3. Manifold olmayan kenarlar ve iç yüzler. Select > Select All by Trait > Non Manifold; "herhangi bir yüze ait olmayan kenarları", "sınırlardaki ve deliklerdeki kenarları" ve "üç veya daha fazla yüze ait kenarları" seçer. Select > Select All by Trait > Interior Faces, "yanlışlıkla ağın yüzeyi yerine içinde oluşturulmuş olabilecek yüzleri" bulur. İşaretlenen yerleri düzeltin. İçinden kemik geçen bir delik sorundur ve Mesh > Clean Up > Fill Holes bu deliği kapatır.
  4. Çok sayıda ayrı parça. Gövde, saç, gözler, dişler, botlar ve kemerin ayrı adacıklar hâlinde bir araya getirildiği bir karakter bunun klasik tetikleyicisidir ve Voxel Heat Diffuse Skinning eklentisinin var olma nedenidir. Önce yalnızca gövdeyi rigleyin ve geri kalanını Sorun 7'deki Veri Aktarımı yöntemiyle bağlayın ya da parçaları Ctrl-J ile birleştirip Merge by Distance uygulayın.
  5. Ölçek. Rigify belgeleri varsayımı açıkça belirtir: "Rigify, 1 birimin 1 metreye karşılık geldiğini varsayar. Dolayısıyla bir insan yaklaşık 2 birim boyundadır." 180 birimlik bir karakter bunun çok dışındadır. Ağı ve armatürü ölçeklendirin, Object > Apply > All Transforms komutunu uygulayın, ardından yeniden üst öğeye bağlayın.

Hata devam ederse sorunu bölün: yüz seçimi maskelemesiyle ağın bir bölümünü seçin ve her seferinde birkaç kemik için Weights > Assign Automatic from Bones komutunu çalıştırın. Ağırlık Boyama araçları sayfasındaki her araç "Köşe Seçimi Maskelemesi ve Yüz Seçimi Maskelemesiyle" çalışır; böylece çözümü bozan bölgeyi bulabilirsiniz.

Sorun 2: Ağırlıklar uzuvlar arasında taşıyor ​

Kol yukarı kalktığında göğüs kafesi de onunla birlikte geliyor. Uyluk büküldüğünde pantolonun ağ kısmı içeri doğru katlanıyor. Bağlama pozunda el kalçaya yakın durduğu için el kemiği kalçanın bir bölümünü çekiyor. Kılavuz, nedeni açıkça belirtiyor: otomatik ağırlıklar "çoğu zaman armatürlerin alt nesneleri istediğiniz şekilde deforme etmemesine yol açabilir. Belirli köşeleri hangi kemiklerin etkilemesi gerektiği belirlenirken çakışmalar oluşabilir."

En temiz çözüm, çözücüyü ağın bir alt kümesinde yeniden çalıştırmaktır. Ağırlık Boyama Modu'nda yüz seçimi maskelemesini açın, kola ait olması gereken yüzleri (ve yalnızca onları) seçin, Poz Modu'nda kol kemiklerini seçin ve ardından Weights > Assign Automatic from Bones komutunu çalıştırın. Kılavuza göre bu işlem, "Üst Öğe armatür menüsünde bulunan 'otomatik ağırlıklandırma' yöntemlerinin aynısını seçili kemiklerden köşe grubuna" uygular; ancak artık göğüs yüzleri seçimin içinde olmadığından onlara hiçbir ağırlık taşamaz. Her uzuv için işlemi tekrarlayın.

Daha küçük taşmaları boyayarak düzeltin. Fırçanın Blend ayarını düşük bir Strength değeriyle Subtract olarak ayarlayın veya Draw fırçasıyla çıkarma yapmak için Ctrl tuşunu basılı tutun ve kol kemiği etkinken göğüsteki istenmeyen ağırlığı boyayarak silin. Ardından, "seçili köşelerin ağırlıklarını komşu köşelerin ortalamasına göre harmanlayan" Weights > Smooth komutunu uygulayın. Başlangıç için 0,5 Factor ve iki ya da üç Iterations iyi bir seçimdir. Sonra Smooth işleminin geride bıraktığı sıfıra yakın kalıntıları kaldırmak için Weights > Clean komutunu kullanın (ayrıntılar aşağıdaki dışa aktarma kontrol listesinde).

Taşmayı başlamadan önleyen iki kontrol şunlardır: karakteri uzuvları birbirinden ayrı olacak şekilde pozlayın (el ile kalça arasında boşluk bulunan bir T pozu veya A pozu) ve kolları yanlarına değen bir ağı riglemeyin. Otomatik rigleme rehberimiz, poz ve tek ağ hazırlığını ayrıntılı olarak ele alır.

Sorun 3: Köşe başına dörtten fazla kemik ​

Blender, bir köşenin kaç gruba ait olduğunu önemsemez. Oyun motorları önemser. glTF 2.0 spesifikasyonu, skinning verilerini JOINTS_0 ve WEIGHTS_0 özniteliklerinde saklar ve "bir köşeyi etkileyen eklem sayısı küme başına 4 ile sınırlıdır" der. Dörtten fazlası ikinci bir küme (JOINTS_1, WEIGHTS_1) anlamına gelir ve birçok çalışma zamanı bunu yok sayar. Unity'nin Skinned Mesh Renderer bileşeni; 1 Bone, 2 Bones, 4 Bones veya Auto Skin Weights seçenekleri sunar ve şu uyarıyı yapar: "Özel sayıda skin ağırlığını içe aktarıyor ve dörtten fazla kemiğin etki etmesine izin vermek istiyorsanız bu seçeneği belirlemeli ve Skin Weights ayarını Unlimited olarak yaptığınızdan emin olmalısınız." Blender'ın kendi glTF dışa aktarıcısında, "4 veya 8 dışında bir değer kullanıldığında modeller birçok görüntüleyicide hatalı görünebilir" notuna sahip bir Bone Influences ayarı bulunur.

Dolayısıyla Blender'da altı etkiye sahip bir köşe, dışa veya içe aktarma sırasında sessizce kırpılır ve karakter oyun motorunda görünüm alanınızdakinden farklı deforme olur. Otomatik ağırlıklar omuzlar, kalçalar ve parmaklar çevresinde düzenli olarak altı ya da yedi etki üretir.

Çözüm iki tıklamadan ibarettir. Weights > Limit Total, Limit 4. Kılavuz: "Köşe başına ağırlık grubu sayısını belirtilen Sınıra düşürür. Araç, sınıra ulaşılana kadar önce en düşük ağırlıkları kaldırır." Ardından Weights > Normalize All komutunu çalıştırın; çünkü en küçük ağırlıkların kaldırılması, kalanların toplamını birden küçük bırakır.

Bir köşe, altı kemik, dört yuvaOtomatik ağırlıklardan sonra bir omuz köşesi; ardından Limit Total 4 ve Normalize All.Otomatik ağırlıklardan sonraLimit Total, Limit 4Normalize All6 etki, toplam 1,004 etki, toplam 0,954 etki, toplam 1,00üst kolomuzgöğüsboyunomurgabaş0.420.310.150.070.030.020.420.310.150.07kaldırıldıkaldırıldıüst kolomuzgöğüsboyunomurgabaşüst kolomuzgöğüsboyun0.440.330.160.07JOINTS_0 / WEIGHTS_0'a sığarDört eklem, dört ağırlık,toplam 1,0, tek öznitelik kümesi.Son adımda ağırlıklar 1/0,95 ile ölçeklenir. Blender anlık olarak normalize ettiği için orta sütun görünüm alanında aynı görünür.
Limit Total en büyük dört ağırlığı korur ve geri kalanını kaldırır; böylece köşenin ağırlık toplamı 0,95 olur. Normalize All, kalanları yeniden 1,0 toplamına ölçekler. Armature değiştiricisi değerlendirme sırasında normalizasyon yaptığı için Blender'ın görünüm alanında üç sütun da aynı görünür; bu nedenle sorun yalnızca dışa aktarımdan sonra ortaya çıkar.

Sorun 4: Ağırlıkların toplamı bir etmiyor ​

Bu sorun gizlenir. Kılavuzdaki normalize edilmiş ağırlık iş akışı bunun nedenini açıklar: "Blender'daki Armature değiştiricisi bunu otomatik olarak yapar; dolayısıyla ağırlıkların boyama aşamasında normalize edildiğinden emin olmak teknik açıdan gerekli değildir." Ağırlıklarının toplamı 0,6 veya 1,7 olan bir köşe Blender'da doğru şekilde deforme olur. glTF spesifikasyonu, ağırlıkların "doğrusal toplamının belirli bir köşe için makul ölçüde 1,0'a mümkün olduğunca yakın OLMASI GEREKTİĞİNİ" söyler ve riskin boyutunu şöyle açıklar: "ağırlık toplamındaki 1/255'lik bir hata, eklem konumunda kabul edilemeyecek kadar büyük bir farka yol açar." Bir dışa aktarıcının bunu sessizce düzelteceğine güvenmeyin.

Weights > Normalize All. Kılavuz: "Bu araç, her köşe için tüm köşe gruplarındaki ağırlıkların toplamının 1'e eşit olmasını sağlar. Kilitli gruplar dışında tüm köşe gruplarını normalize eder." Etkin grubun korunmasını ve diğer her şeyin onun çevresinde yeniden dengelenmesini istemiyorsanız Lock Active seçeneğinin işaretini kaldırın. Ardından araç ayarlarında, "boyama sırasında deforme eden tüm köşe gruplarının toplamının bir olmasını sağlayan" Auto Normalize seçeneğini açın. Bundan sonra her fırça darbesi, üstüne ağırlık eklemek yerine ağırlığı kilidi açık gruplar arasında yeniden dağıtır.

Normalize All ile Weights > Normalize komutunu karıştırmayın. İkincisi "yalnızca etkin köşe grubunda çalışır" ve grubu, "en yüksek ağırlık değeri 1,0" olacak şekilde ölçekler.

Kilitleme de bu becerinin tamamlayıcısıdır. Vertex Groups panelindeki asma kilit simgesiyle veya K dairesel menüsüyle bir grubu kilitlediğinizde Auto Normalize, ağırlığı "yalnızca kilidi açık gruplar arasında yeniden dağıtır". Daha önce doğru hâle getirdiğiniz göğsü bozmadan omuzu bu şekilde düzeltebilirsiniz.

Sorun 5: İki taraf birbiriyle eşleşmiyor ​

Sol kolu bir saat boyunca boyadınız ama sağ kol hâlâ ham otomatik sonuca sahip. Weights > Mirror Vertex Group, kılavuzda belirtilen iki koşulla bir tarafı diğerine kopyalar. Birincisi, "Yansıtma yalnızca nesnenin dinlenme pozu X ekseni boyunca kusursuz biçimde simetrik olduğunda çalışır." Ağınız yalnızca yaklaşık olarak simetrikse "tamamen simetrik olmayan ağlar (yaklaşık yansıtma) için" kullanılan Topology Mirror seçeneğini işaretleyin. İkincisi, siz belirtmediğiniz sürece "ağırlıklar karşı taraftaki ilgili kemik ağırlık grubuna aktarılmaz". Flip Group Names tam olarak bunu yapar: simetrik adlara "(‘L’, ‘R’, ‘right’, ‘left’ gibi bileşenlere)" sahip gruplar arasındaki atamaları değiştirir. Karakterin tamamını tek seferde işlemek için Mirror Weights, Flip Group Names ve All Groups seçeneklerini işaretleyin. Bu, kemiklerinizin buna uygun şekilde adlandırılmış olmasına bağlıdır. Adlandırma kuralları sayfası hand_L ve hand_R, hand.l ve hand.r, handLeft ve handRight adlarını ve tarafın öne getirildiği eşdeğerlerini kabul eder; ancak ayırıcı içermeyen handL adını kabul etmez. Mixamo tarzı LeftHand ve RightHand adları çalışır. Bone_012 gibi adlara sahip bir armatürün önce yeniden adlandırılması gerekir; çünkü aynalama, hangi kemiğin hangisiyle eşleştiğini bilemez.

Sorunu önlemek için en baştan simetrik boyayın. Tool ayarlarındaki Symmetry panelinde Mirror Vertex Groups seçeneğini işaretleyin; kılavuz bunu “simetrik adlara sahip gruplar üzerinde aynalanmış boyama” olarak tanımlar. Artık sol kola uygulanan her fırça darbesi, sağ kolun grubuna da uygulanır.

Sorun 6: Şeker ambalajı gibi bükülen bilek ​

Bileği 90 derece döndürdüğünüzde ön kolun ortası sıkışarak incelir. Bu bir boyama hatası değildir. Doğrusal harmanlamalı skinning matematiğinden kaynaklanır: ağırlığının yarısı ön kola, yarısı ele atanmış bir vertex, döndürülmüş ve döndürülmemiş dönüşümlerin ortalamasını alır; bu ortalama da eksene doğru çöker. Armature modifier’ındaki Preserve Volume seçeneği kuaterniyon harmanlamaya geçer ve kılavuz bunun getirdiği ödünleşimi tam olarak şöyle açıklar: “Bu seçenek olmadan eklemlerdeki dönüşler, komşu geometrinin ölçeğini küçültme eğilimindedir ve dinlenme konumundan 180 dereceye ulaşıldığında geometri neredeyse sıfıra kadar küçülebilir. Bu seçenek etkin olduğunda geometrinin ölçeği artık küçülmez; ancak dinlenme konumundan 180 dereceye ulaşırken bir ‘boşluk’, yani süreksizlik oluşur.”

Blender içindeki render’lar için Preserve Volume seçeneğini işaretleyin. Oyunlarda ise bunun mesh verisi değil, bir modifier ayarı olduğunu ve glTF ile FBX’in bu ayarı taşımadığını unutmayın. Başka bir yönteme geçmediğiniz sürece oyun motorları doğrusal skinning kullanır; dolayısıyla model içe aktarıldığında sıkışma geri gelir. Dışa aktarmadan sonra da çalışan çözümler eskiden beri kullanılanlardır: dönüşü daha küçük adımlara bölen ve her birinin kendi geçişi bulunan bir veya iki ön kol twist kemiği ya da bilek ağırlıklarını daha fazla edge loop’a yayarak hiçbir vertex’in tam 50/50 noktasında kalmamasını sağlamak.

Smooth Corrective modifier’ı, Blender içindeki diğer araçtır ve “genellikle Armature modifier’ından sonra, dikkatli ağırlık boyamaya rağmen eklemlerin çevresindeki deformasyonu önlemenin zor olduğu durumlarda kullanışlıdır.” Burada da aynı uyarı geçerlidir: deformasyonu Blender’da uygular ve ağırlık olarak dışa aktarılmaz.

Sorun 7: Kıyafet kabukları gövdeyi takip etmiyor ​

Gövdeyi rig’lediniz ve düzgün hareket ediyor. Ayrı bir mesh olan ceket ya kendi kötü otomatik ağırlıklarını aldı (gövde ile kumaş biraz farklı harmanlandığı için uyluk pantolon paçasının içinden geçiyor) ya da hiç ağırlık almadı ve havada asılı kalıyor. Doğru çözüm, kıyafete kendi ağırlıklarını değil, gövdenin ağırlıklarını vermektir.

Kıyafet nesnesine bir Data Transfer modifier’ı ekleyin. Source olarak gövdeyi belirleyin, Vertex Data seçeneğini işaretleyin, Vertex Groups öğesini seçin, eşlemeyi Nearest Face Interpolated olarak ayarlayın ve Generate Data Layers düğmesine tıklayın. Kılavuz bu düğmenin önemli olduğu konusunda uyarır: “Modifier bunu otomatik olarak yapmaz; bu nedenle bu düğmeye tıkladığınızdan (veya eksik katmanları kendiniz eklediğinizden) emin olun. Aksi hâlde aktarım çalışmayabilir.” Nearest Face Interpolated, “en yakın kaynak yüzündeki en yakın noktayı bulur, ardından o yüzün vertex değerleri arasında enterpolasyon yapmak için bu noktayı kullanır”; derinin birkaç milimetre üzerinde duran bir kabuk için tam olarak gereken budur. Layer Mapping ayarını By Name yapın; böylece gövdedeki LeftArm, ceketteki LeftArm grubunu besler. Ardından bunun altına, aynı armatürü gösteren bir Armature modifier’ı ekleyin. Ağırlıkların gerçek vertex gruplarına dönüşmesi için dışa aktarmadan önce Data Transfer modifier’ını uygulayın.

Aynı işlem bir operatör olarak da bulunur: Weight Paint Mode’da önce gövdeyi, ardından kıyafeti (aktif nesne olacak şekilde) seçin, Weights > Transfer Weights yolunu izleyin ve Adjust Last Operation panelinde Source Layers Selection ayarını By Name yapın. Kılavuz, nesnelerin “aynı konumda olması gerektiğini” belirtir. “Yan yana yerleştirilirlerse ağırlık aktarımı çalışmaz.”

Kabuk, vücuda oturan ince bir kıyafet yerine kalınsa (ağır bir palto veya zırh gibi), aktarılan ağırlıklar yine de otomatik ağırlıklardan daha iyidir; çünkü alttaki gövdeyle farklı hareket edemezler.

Oyun dışa aktarımı için ağırlıkları sırayla temizleme ​

Her aracın tüm mesh’i etkilemesi için bunları Weight Paint Mode’da, yüz veya vertex maskelemesi etkin değilken yapın.

  1. Kemik olmayan grupları silin. Vertex Groups panelinde deforme eden bir kemikle eşleşmeyen tüm grupları kaldırın. Armature modifier’ı belgeleri, “Boş vertex gruplarını kaldırmak bağımlılıkları azaltmaya yardımcı olur” diye belirtir.
  2. Önce taşmayı ve asimetriyi düzeltin (Sorun 2 ve 5). Aşağıdaki araçlar, istenmeyen bir ağırlığı doğru bir ağırlıktan ayıramaz.
  3. Weights > Limit Total, Limit 4. glTF, three.js, Babylon.js, varsayılan ayarlardaki Unity ve çoğu mobil hedef için. Hem oyun motorunuz hem de dışa aktarma ayarınız sekiz etkiyi destekliyorsa 8 kullanın.
  4. Weights > Normalize All, Lock Active kapalı. Limit Total, düşük ağırlıklı kuyruğu kaldırdıktan sonra toplamlar yeniden 1,0 olur.
  5. Weights > Clean, Limit 0.001, Keep Single açık. Clean, “ağırlıkları Limit değerinin altında kalan vertex’lerin Vertex Groups atamalarını kaldırır.” 0,0004’lük bir ağırlık görünür hiçbir şey yapmaz ama yine de dört yuvadan birini işgal eder. Keep Single, “her vertex’in en az bir ağırlığı korumasını” garanti eder. glTF ağırlıkları çoğunlukla normalize edilmiş byte’lar olarak saklar ve en küçük adım 1/255’tir; dolayısıyla 0,004’ün altındaki her şey zaten sıfıra yuvarlanır.
  6. Weights > Normalize All işlemini tekrar yapın. Clean, bir vertex’i 0,999 toplamla bırakabilir.
  7. Zero Weights kontrolü yapın. Overlay’i All olarak ayarlayın ve siyah bölgeleri arayın.
  8. Dışa aktarın. glTF dışa aktarıcısında Data, Skinning bölümünde Bone Influences değerini 4 olarak bırakın ve Include All Bone Influences seçeneğini kapalı tutun. Data, Armature bölümünde Use Rest Position Armature seçeneğini işaretleyin; böylece bind pozu geçerli kare değil, dinlenme pozu olur.
Yedi sorun, yedi araçYolda aksi belirtilmedikçe Weight Paint Mode. Her araç yüz ve vertex maskelemesine uyar.SorunAraçYolBone heat hatasıUzuvlar arası taşma4'ten fazla etkiAğırlık toplamı 1 değilAsimetrik ağırlıklarŞeker ambalajı bileğiKıyafet kabuklarıbir veya daha fazla kemik için çözüm bulunamadıkol kaburgaları kaldırıyor, el kalçayı çekiyormotor Blender'dan farklı deforme ediyorBlender'da iyi, dışa aktarınca yanlışsol doğru, sağ yanlışbilek dönerken ön kol sıkışıyorceket geride kalıyor, bacaklar içinden geçiyorMerge by Distance, DegenerateAssign Automatic from BonesLimit Total 4, Normalize AllNormalize All, Auto NormalizeMirror Vertex GroupPreserve Volume, twist kemikleriData Transfer modifier'ıDissolve, Delete Loose, Non Manifoldyüz seçiminde, ardından Smooth, Cleanönce en düşük ağırlıklar kaldırılırLock Active kapalı, sonra normalize boyamaMirror Weights, Flip Group NamesBlender için modifier, motorlar için kemikVertex Groups, Nearest Face InterpolatedEdit Mode, Mesh > Clean UpSelect > Select All by TraitWeights > Assign Automatic from Bonesbaşlık: yüz seçim maskelemesi açıkWeights > Limit TotalWeights > Normalize AllWeights > Normalize AllTool settings > Options > Auto NormalizeWeights > Mirror Vertex GroupTool > Symmetry > Mirror Vertex GroupsModifiers > Armature > Preserve Volumeveya armatüre twist kemikleri ekleyinModifiers > Add > Data Transferveya Weights > Transfer Weights
Yedi sorun, her biri için kullanılacak araç ve tıklanacak yer. Birinci ve yedinci satırlar Weight Paint Mode dışında gerçekleşir: mesh temizliği Edit Mode’da yapılır, Data Transfer modifier’ı ise kıyafet nesnesinde bulunur.

Bu adımı atlayın ​

İnsanlar bunları yapmamak için para ödüyor. İki ürün bunu farklı şekillerde kanıtlıyor.

Mesh Online’ın Voxel Heat Diffuse Skinning eklentisi, otomatik ağırlıklar çalışmayı reddettiğinde Blender kullanıcılarının satın aldığı çözümdür. Superhive listelemesinde $30 fiyatlı Indie lisansı, 12.500’den fazla satış ve eklenti olarak Blender 3.6’dan 5.1’e kadar destek gösteriliyor. Listeleme doğrudan şu sorunla başlıyor: “Blender şu mesajı gösteriyor: ‘bone heat weighting: failed to find solution for one or more bones’.” Yöntemi, adında belirtildiği gibidir. Blender’ın yerleşik çözücüsü ısıyı yüzey boyunca yayar; bu nedenle temiz bir yüzeye ihtiyaç duyar. Bu eklenti karakteri voxel’lerden oluşan katı bir forma dönüştürür ve “ısının katı heykelin içinde yayılmasını” sağlar; böylece üst üste binen yirmi kabuktan yapılmış bir karakter, tek bir gövdeymiş gibi skin’lenir. Geliştirici ödünleşim konusunda açık sözlüdür: yerleşik yüzey yöntemi “parmaklar ve ayak parmakları gibi ayrıntılı bölgelerde çok daha iyi sonuç verebilir”; bu nedenle eklenti iki yöntemi birleştirir. En az 8 GB belleğe ihtiyaç duyar. Mesh’iniz dağınıksa ve Blender’ın kendi iskeletini kullanmak istiyorsanız satın almanız gereken eklenti budur.

Cinevva Rig eklentisi diğer yolu izler: ağırlıkları düzeltmeyin, kemikleri de yerleştirmeyin. Bir mesh seçip Rig düğmesine basın; eklenti Mixamo adlandırmasına sahip insansı bir iskelet yerleştirir ve mesh’i tek geçişte skin’ler. Ağırlıklar oyun motorları için önceden sınırlandırılmış, normalize edilmiş ve temizlenmiştir. Yaklaşık 2,4 GB’lık motoru bir kez indirdikten sonra kendi bilgisayarınızda ve çevrimdışı çalışır. Rig başına ücret olmadan, $29’luk tek seferlik lansman fiyatıyla sunulur ve Windows, macOS ve Linux’ta Blender 4.2 ve üzerini destekler. Ayrıca sonuca Blender içinde retarget edilebilen 260 CC0 animasyon klibi ile Bone Influences, dinlenme pozu, eksenler ve ölçek ayarlarını sizin için yapılandıran ücretsiz Web, Unity, Unreal ve Godot dışa aktarma hazır ayarlarını içerir. Özel bir iskelet, kuyruk veya yüz rig’i için ağırlık boyamanın yerini almaz. Cuma gününe kadar oyuna yetiştirmeniz gereken insansı karakterlerde onun yerini alır. Ayrıntılar Blender eklentisi sayfasında yer alıyor.

Blender’ı açmadan tek bir karakter hazırlamak için web tabanlı Auto Rigger, 50 MB’a kadar GLB, FBX veya OBJ dosyasını alıp rig’lenmiş bir GLB döndürür. İlk karakter ücretsizdir ve sonuç, bu rehberin orta üçte birlik bölümünde ulaşmaya çalıştığı dört etkili, toplamı bir olan yapıya zaten sahiptir.

Rigify, Blender ile birlikte gelen ücretsiz seçenektir ve belgeleri beklentileri adil şekilde belirler: “Kemikleri doğru yerleştirirseniz (ve çalışmak için yeterli topoloji varsa!), otomatik ağırlıklara sahip Armature deformasyonu genellikle ilk hâliyle gerçekten iyi sonuç verir.” Parantez içindeki ifade, bu makalenin tüm hikâyesidir.

Sık Sorulan Sorular ​

Blender’da ağırlık boyama neden çalışmıyor? ​

Genellikle üç şeyden biridir. Yanlış tepe noktası grubuna boyama yapıyorsunuzdur; bu yüzden Kemik Seçimi açıkken kemiğe Alt-LMB ile tıklayın ve üst bilgideki etkin grubu kontrol edin. Armatür Poz Modu'nda değildir veya Düzenle > Nesne Modlarını Kilitle işaretlidir. Ya da yüz seçimi maskeleme açıktır ve seçimin dışında boyama yapıyorsunuzdur. Sıfır Ağırlıklar kaplaması, hangi tepe noktalarının herhangi bir ağırlığa sahip olduğunu gösterir.

"Kemik Isısıyla Ağırlıklandırma: Bir veya daha fazla kemik için çözüm bulunamadı" hatasını nasıl düzeltirim? ​

Düzenleme Modu'nda ağı temizleyin: Ağ > Temizle > Mesafeye Göre Birleştir, Bozuk Geometriyi Çöz, Bağımsızları Sil; ardından Seç > Özelliğe Göre Tümünü Seç > Manifold Olmayan komutunu çalıştırın ve vurgulanan yerleri düzeltin. Karakteri, dönüşümleri uygulanmış şekilde yaklaşık 2 metre boyunda yapın ve kıyafetleri eklemeden önce tek parça, bağlantılı bir gövdeyi rigleyin. Yine de başarısız olursa Voxel Heat Diffuse Skinning eklentisi, su geçirmez olmayan ağları kemik ısısı çözücüsünü kullanmadan skinler.

Blender'da ağırlık boyamasını nasıl aynalarım? ​

Ağırlıkları Aynala, Grup Adlarını Ters Çevir ve Tüm Gruplar işaretliyken Ağırlıklar > Tepe Noktası Grubunu Aynala komutunu kullanın; ağ tamamen simetrik değilse Topoloji Aynalama'yı da etkinleştirin. Bunun için X ekseni boyunca simetrik bir dinlenme pozu ve hand.L ile hand.R gibi çiftler hâlinde adlandırılmış kemikler gerekir. Her iki tarafı aynı anda boyamak için araç ayarlarındaki Simetri panelinden Tepe Noktası Gruplarını Aynala'yı işaretleyin.

Blender'da ağırlıkları nasıl normalleştiririm? ​

Ağırlıklar > Tümünü Normalleştir, her tepe noktasının kilitli olmayan tüm gruplardaki ağırlıklarının toplamını 1 yapar. Etkin grubun korunmasını istemiyorsanız Etkini Kilitle seçeneğini kapatın. Ardından yeni fırça darbelerinin toplamı 1'de tutmasını sağlamak için araç Seçenekleri'nde Otomatik Normalleştir'i etkinleştirin. Yalnızca Ağırlıklar > Normalleştir komutu farklıdır: yalnızca etkin grubu, maksimum değeri 1.0 olacak şekilde ölçekler.

Blender'da ağırlık boyamasını nasıl yumuşatırım? ​

Tepe noktası seçimi maskelemesini etkinleştirin, eklemin çevresindeki tepe noktalarını seçin ve Ağırlıklar > Yumuşat komutunu çalıştırın. Faktör, her ağırlığın komşularının ortalamasına ne kadar yaklaşacağını belirler (başlangıç için 0.5 iyi bir değerdir); Yinelemeler işlemi tekrarlar, Genişlet/Daralt ise etkilenen alanı büyütür veya küçültür. Ardından düşük bir Sınır değeriyle Ağırlıklar > Temizle, sonrasında da Tümünü Normalleştir komutunu çalıştırın.

Blender'da bir kemiği hareket ettirdiğimde ağım neden yanlış deforme oluyor? ​

Ya yanlış tepe noktaları o kemiğin grubuna aittir (ağırlık taşması; bir yüz seçiminde Ağırlıklar > Kemiklerden Otomatik Ata kullanılarak veya bu ağırlıklar boyamayla silinerek düzeltilir), ya eklem boyunca geçiş çok serttir (Ağırlıklar > Yumuşat) ya da kemik ağın içinde yanlış konumdadır ve bu nedenle otomatik ağırlıklar en baştan hatalı oluşturulmuştur. Sıfır Ağırlıklar'ı da kontrol edin: hiçbir grupta bulunmayan tepe noktaları, çevrelerindeki her şey hareket ederken yerlerinde kalır.

Isıyla ağırlıklandırma ile voxel ısı yayılımlı skinleme arasındaki fark nedir? ​

Blender'ın kemik ısısıyla ağırlıklandırması, her kemiğin etkisini ağ yüzeyi boyunca yayar; bu nedenle temiz ve bağlantılı bir yüzeye ihtiyaç duyar. Voxel ısı yayılımlı skinleme ise karakterin hacmini voxellerle doldurur ve etkiyi katı hacim boyunca yayar; dolayısıyla ağın su geçirmez olması veya ayrı kabuklardan oluşturulması önemli değildir. Voxel Heat Diffuse Skinning eklentisi (Superhive'da yaklaşık $30), bu yöntemi Blender'a getirir ve parmaklar gibi ince ayrıntılar için iki yöntemi birleştirir.

İlgili içerikler ​