Skip to content
← Tüm yazılar

Web3D / Grafik Engine

Three.js: Tarayıcıda 3D Dünyalar, WebGL & WebGPU Devrimi

Web grafik dünyasının efsane kütüphanesi mrdoob/three.js'in mimarisini, WebGL/WebGPU işleyicilerini ve modern web projelerinde 3D deneyim oluşturma yöntemlerini inceledik.

Yayın 10 Ağustos 20269 dk okuma

Ricardo Cabello (mrdoob) tarafından başlatılan three.js, tarayıcı üzerinde yüksek performanslı 3D grafikler oluşturmayı her geliştirici için erişilebilir kılan efsanevi bir JavaScript kütüphanesidir. Ham WebGL kod yazmanın karmaşıklığını ortadan kaldırarak sahne, kamera, ışık ve materyal soyutlamaları sunar.

Proje Özeti & Özellikler

ÖzellikAçıklama
Geliştirici / Oluşturanmrdoob (Ricardo Cabello) & Topluluk
Depomrdoob/three.js
Render MotorlarıWebGLRenderer, WebGPURenderer (Eklenti: CSS3DRenderer, SVGRenderer)
Yükleyiciler (Loaders)gLTF (.gltf / .glb), OBJ, FBX, STLExporter ve daha fazlası
LisansMIT

Three.js Temel Mimarisi

Bir Three.js sahnesi kurarken 4 temel bileşen bir araya gelir:

  1. 1
    Scene (Sahne): İçerisinde nesnelerin, ışıkların ve kameraların bulunduğu 3 boyutlu evren.
  2. 2
    Camera (Kamera): Sahneye hangi açıdan ve perspektiften bakılacağını belirleyen bileşen (ör. PerspectiveCamera).
  3. 3
    Mesh (Geometri + Materyal): Küp, küre veya özel 3D model nesnesinin biçimi (Geometry) ve yüzey görünümü (Material).
  4. 4
    Renderer (İşleyici): Sahneyi ve kamerayı alarak piksel bazlı kareler üreten WebGL / WebGPU motoru.

WebGL'den WebGPU'ya Geçiş

Three.js son sürümlerinde WebGPU desteğini standartlaştırmıştır. WebGPU, GPU donanımına doğrudan erişim sağlayarak çok daha düşük işlemci yüküyle milyonlarca poligonu ve karmaşık compute shader işlemlerini çalıştırma imkanı sunar.