Model, tariften doğar
Numex 3D, Numex AI'ın kendi 3B motorudur. Bir modeli piksel ya da fırça darbesiyle değil, parçalarının tarifiyle kurar. Bu sayfa o tarifin nasıl çalıştığını anlatır.
Üç adım
1. Parçalara ayır. Nesne gerçek parçalarına bölünür ve gerçek ölçüleri düşünülür: bir fıçı gövde, kapak, dört demir çember ve tıpadır. Masa 75 cm, fincan 8 cm.
2. Tarifi yaz, motor kursun. Her parça biçimi, ölçüsü, malzemesi ve varsa hareketiyle tarife girer. Motor parçaları kurar, birleştirir ve tek bir GLB dosyası yazar.
3. Bak, düzelt, yeniden üret. Motor modelin önden, yandan, çaprazdan ve üstten görüntüsünü çıkarır. Bu görüntü istenenle karşılaştırılır; eksik ya da oransız parça tarifte düzeltilir.

Tarif nedir
Tarif, bir modeli anlatan düz bir JSON dosyasıdır. Okunabilir, değiştirilebilir ve sürüm kontrolüne girer. Aşağıdaki, galerideki fıçının tarifinin başı:
{
"ad": "Fıçı",
"birim": "m",
"parcalar": [
{"ad": "gövde", "tur": "dondur", "kapali": true, "segment": 48, "malzeme": {"ad": "meşe fıçı", "renk": [0.55, 0.34, 0.18, 1], "puruz": 0.75}, "profil": [[0, 0], [0.25, 0], [0.3, 0.2], [0.32, 0.4], [0.3, 0.6], [0.25, 0.8], [0, 0.8]]},
{"ad": "kapak", "tur": "dondur", "kapali": true, "segment": 48, "malzeme": {"ad": "koyu meşe", "renk": [0.4, 0.24, 0.12, 1], "puruz": 0.8}, "profil": [[0, 0.79], [0.24, 0.79], [0.24, 0.805], [0, 0.805]]},
{"ad": "alt çember", "tur": "dondur", "kapali": true, "segment": 48, "malzeme": {"ad": "dövme demir", "renk": [0.25, 0.25, 0.27, 1], "metal": 0.8, "puruz": 0.5}, "profil": [[0.267, 0.07], [0.279, 0.07], [0.292, 0.12], [0.28, 0.12]]},
… 4 parça daha
]
}
Gövde bir profilin eksen etrafında döndürülmesiyle (torna gibi) oluşur; çemberler de öyle. Profildeki her nokta [yarıçap, yükseklik], birim metre.
Parça türleri
İki aile var: ölçülü, keskin kenarlı mekanik parçalar ve yumuşak birleşen heykel parçalar. Bir model ikisini birlikte kullanabilir.
| Tür | Ne yapar | Örnek |
|---|---|---|
dondur | Bir profili eksen etrafında döndürür (torna). İsteğe bağlı tırtıl dalgası. | Şişe, fincan, objektif, piyon |
uzat | Düz bir şekli kalınlaştırır: çokgen, dişli, yıldız, daire, yuvarlak köşeli dikdörtgen. | Dişli, tabela, masa tablası |
kutu · silindir | Ölçülü temel katılar. | Çekmece, kasa, ayak |
boru | Bir yol boyunca yuvarlak kesit; yarıçap yol boyunca değişebilir. | Kulp, kablo, bisiklet kadrosu |
heykel | Küre, elipsoid, kapsül, eğri, koni, simit gibi hacimleri yumuşakça birleştirir; fark, kesişim, ayna, tekrar ve kabuk işlemleriyle yontar. | Ejderha, kedi, karakter |
Her parça konumlanabilir, döndürülebilir, ölçeklenebilir, aynalanabilir (simetrik kopya ayrı parça olur) ve çoğaltılabilir. Malzemeler gerçek fizik tabanlıdır: renk, metallik ve pürüz.
Hareket
Bir parçaya hareket verildiğinde, motor o parçayı kendi menteşe noktasına (pivot) bağlar ve döngüde oynayan bir animasyon yazar. İki tür var:
- Dönme: kapı, kapak, kanat, tekerlek. Eksen, pivot ve açılar verilir.
- Kayma: çekmece, sürgü. Yön ve mesafeler verilir.
Aynalanmış hareketli bir parçanın kopyası da aynalı hareket eder; ejderhanın iki kanadı birlikte çırpar. Galeride şu an 15 hareketli model var: yalnız hareketlileri göster.
Çıktı: GLB
Her model tek bir GLB (glTF 2.0) dosyasıdır. İçinde parçalar adlarıyla ayrı düğümler olarak, malzemeler PBR olarak ve animasyonlar hazır gelir. Doku dosyası gerekmez; dosyalar küçüktür.
Blender, Godot, three.js ve Babylon.js doğrudan açar; Unity ve Unreal glTF içe aktarma eklentisiyle açar. Hızlı bakmak için GLB görüntüleyici.
Numex AI'da
Aynı motor Numex AI'ın kod ajanının içinde de çalışır. Ajan bir oyun ya da 3B sahne yaparken gerekli modeli kendisi tarif eder, motora ürettirir, çıkan görüntüye bakıp tarifi düzeltir. Bu sırada ekranda “Numex 3D motoru çalışıyor” yazar.
Bu galerideki 41 modelin hepsi aynı motorla üretildi; başka bir yerden alınmış model yoktur.