# util.GetModelMeshes

- **Ortam:** İstemci, Sunucu
- **İngilizce aslı:** https://wiki.facepunch.com/gmod/util.GetModelMeshes
- **Çeviri tarihi:** 2025-10-17

```lua
table, table util.GetModelMeshes( string model, number lod = 0, string or number bodygroupMask = 0, string or number skin = 0 )
```

## Açıklama

Belirtilen bir modelin görsel mesh'leri için köşe (vertex), üçgen (triangle) ve kemik (bone) verilerini alır.

> **NOT:** Bu, fırça (brush) modellerinde (`*sayı` formatında isme sahip modeller) çalışmaz.

## Argümanlar

1. [string](https://gmod.tr/wiki/string) **model**: Görsel mesh'lerini almak için modelin tam yolu.
2. [number](https://gmod.tr/wiki/number) **lod** = 0: Modelin hangi Detay Seviyesi (Level of Detail - LOD) modelinin alınacağı. `0` en iyi kalitedir, daha yüksek sayılar kaliteyi giderek düşürür.
3. [string](https://gmod.tr/wiki/string) or [number](https://gmod.tr/wiki/number) **bodygroupMask** = 0: Mesh'leri alınacak bodygroup'ların kombinasyonu. Bu aynı zamanda özel olarak biçimlendirilmiş bir bitflag de olabilir. Daha fazla bilgi için, bkz: [Entity:SetBodyGroups](https://gmod.tr/wiki/Entity:SetBodyGroups).
4. [string](https://gmod.tr/wiki/string) or [number](https://gmod.tr/wiki/number) **skin** = 0: Skin indeksi. [ModelMeshData yapısı](https://gmod.tr/wiki/Structures/ModelMeshData)'nın `.material` alanını etkiler. Daha fazla bilgi için, bkz: [Entity:GetSkin](https://gmod.tr/wiki/Entity:GetSkin). > **NOT:** Bu özellik (2025.10.16) sürümünde yeni eklenmiştir. Şu anda sadece [Geliştirici Sürümü (Dev Branch)](https://gmod.tr/wiki/Dev_Branch) üzerinde mevcut olabilir.

## Dönen Değerler

1. ardışık [table](https://gmod.tr/wiki/table)<[ModelMeshData yapısı](https://gmod.tr/wiki/Structures/ModelMeshData)> **modelMeshes**: Bu tablodaki her bir indeks, bu fonksiyona argüman olarak verilen modelin içindeki bir mesh'e karşılık gelir. Mesh verisi hamdır ve kemik dönüşümleriyle dönüştürülmemiştir. İkinci dönen değer bu iş için vardır.
2. ardışık [table](https://gmod.tr/wiki/table)<[BoneBindPose yapısı](https://gmod.tr/wiki/Structures/BoneBindPose)> **modelBindPoses**: Bu tablonun indeksleri, her bir indekste saklanan [BoneBindPose yapısı](https://gmod.tr/wiki/Structures/BoneBindPose) için kemik ID'leridir.

### Örnek

Modelin mesh'ini alarak ve bunu yeni bir mesh oluşturmak için kullanarak tel kafes (wireframe) bir helikopter bombası çizen bir Entity kod parçacığı.

```lua
-- Bir sebepten dolayı bir materyalimiz olmazsa diye varsayılan olarak kullanılacak materyal
local myMaterial = Material( "models/wireframe" ) -- models/debug/debugwhite

function ENT:CreateMesh()
	-- Önceki mesh'leri yok et
	if ( self.Mesh ) then self.Mesh:Destroy() end

	-- Bir modelin tüm mesh'lerinin listesini al
	local visualMeshes = util.GetModelMeshes( "models/combine_helicopter/helicopter_bomb01.mdl" )

	-- Devam etmeden önce modelin var olduğundan emin ol
	if ( !visualMeshes ) then return end

	-- İlk mesh'i seç
	local visualMesh = visualMeshes[ 1 ]

	-- Mesh'i çizmek için kullanılacak materyali model verisinden ayarla
	myMaterial = Material( visualMesh.material )

	-- Burada visualMesh.verticies tablosunda istediğiniz değişiklikleri uygulayabilir, mesh'i bozabilir
	-- veya aklınıza gelen diğer değişiklikleri yapabilirsiniz

	-- Mesh'i oluştur ve inşa et
	self.Mesh = Mesh()
	self.Mesh:BuildFromTriangles( visualMesh.triangles )
end

-- Normal mesh'i çizim için geçersiz kılmak üzere özel bir hook
function ENT:GetRenderMesh()
	-- Eğer mesh yoksa, oluştur!
	if ( !self.Mesh ) then return self:CreateMesh() end

	return { Mesh = self.Mesh, Material = myMaterial }
end

function ENT:Draw()
	-- Varlığın modelini normal şekilde çiz, bu dahili olarak ENT:GetRenderMesh() fonksiyonunu çağıracaktır
	self:DrawModel()
end
```

- [GMod Wiki ana sayfası](https://gmod.tr/wiki)

---

[Tüm sunucular](https://gmod.tr/) · [GmodTR Launcher](https://gmod.tr/launcher) · [Rehber](https://gmod.tr/rehber) · [GMod Wiki](https://gmod.tr/wiki) · [GmodTR nedir?](https://gmod.tr/hakkinda) · [Sunucu ekle](https://gmod.tr/sunucu-ekle) · [Discord](https://discord.gg/gmodtr)

Kaynak: https://gmod.tr/wiki/util.GetModelMeshes
