Perenderan 3D

**Perenderan 3D** () merupakan proses grafik komputer 3D untuk menukar model 3D kepada imej 2D dalam komputer, sama ada yang fotorealistik mahupun tidak fotorealistik.

## Kaedah perenderan

Perenderan merupakan proses terakhir dalam menghasilkan imej atau animasi 2D daripada adegan yang disediakan, lebih kurang sama seperti mengambil gambar foto atau merakam adegan selepas selesai kerja persiapan di dunia nyata. Telah dibangunkan pelbagai kaedah perenderan untuk tujuan khusus; ini termasuk pemaparan rangka dawai yang jelas tidak realistik melalui perenderan berasaskan poligon, dan juga teknik-teknik termaju seperti pemaparan garis imbas (), pengesanan sinar () atau radiositi. Mungkin mengambil masa dari sesingkat kurang dari satu saat hingga selama beberapa hari untuk merenderkan satu imej/bidang. Secara umum, pemilihan sama ada perenderan fotorealistik atau perenderan masa nyata menuntut penggunaan kaedah yang berbeza.

## Masa nyata

Perenderan untuk media interaktif seperti permainan dan simulasi adalah dihitung dan dipaparkan dalam masa nyata pada kadar kira-kira 20 hingga 120 bidang sesaat. Perenderan masa nyata bertujuan untuk menunjukkan sebanyak mungkin maklumat yang dapat diproses oleh mata dalam pecahan sesaat (aka "dalam satu bidang": Dalam hal animasi 30 bidang sesaat, satu bidang merangkumi satu 30 saat).

Matlamat utama adalah untuk mencapai tahap fotorealisme setinggi mungkin pada kelajuan pemaparan minimum yang diterima umum (biasanya 24 bidang sesaat, kerana itu adalah minimum yang perlu dilihat oleh mata manusia untuk berjaya mencipta ilusi pergerakan). Malah, cara mata 'mempersepsikan' dunia boleh dikenakan eksploitasi, dan kesannya, imej akhir yang dipersembahkan tidak semestinya sama dengan dunia sebenar, tetapi cukup hampir untuk disenangi mata manusia.

Perisian render boleh mensimulasikan kesan-kesan visual seperti ,  atau **'. Semua ini adalah percubaan mensimulasikan fenomena visual yang terhasil daripada ciri-ciri optik yang terdapat dalam kamera dan juga mata manusia. Kesan-kesan tersebut dapat menerapkan unsur realisme ke dalam adegan, biarpun sekadar hasil simulasi artefak kamera. Inilah kaedah asas yang digunakan dalam permainan, dunia interaktif dan [[VRML]].

Peningkatan pesat kuasa pemprosesan komputer telah membolehkan tahap realisme yang semakin tinggi walaupun untuk perenderan masa nyata; ini termasuk teknik-teknik seperti . Perenderan masa nyata selalunya bersifat poligon dan dibantu oleh [[Unit pemprosesan grafik|GPU]] komputer. 

== Bukan masa nyata ==

Animasi untuk media bukan interaktif seperti filem cereka dan video, boleh mengambil lebih banyak masa untuk dirender. Perenderan bukan masa nyata membolehkan kita untuk memanfaatkan kuasa pemprosesan terhad untuk mendapatkan kualiti imej yang lebih tinggi. Proses perenderan untuk setiap satu bidang mungkin mengambil masa dari beberapa saat hingga beberapa hari untuk adegan yang kompleks. Bidang-bidang yang terhasil itu disimpan pada [[cakera keras]], kemudian dipindahkan ke media lain seperti filem gambar bergerak atau cakera optik. Bidang-bidang ini kemudian dipaparkan secara berurutan pada kadar bidang yang tinggi, biasanya 24, 25 atau 30 [[Kadar bidang|bidang sesaat]] (fps), untuk mencapai ilusi pergerakan.

Jika hendak mencapai fotorealisme, maka digunakanlah teknik-teknik seperti , ,  atau . Inilah kaedah asas yang digunakan dalam media digital dan penghasilan karya seni. Telah dibangunkan teknik-teknik untuk tujuan mensimulasikan kesan-kesan semula jadi yang lain seperti interaksi cahaya dengan pelbagai bentuk jirim. Contoh teknik sedemikian termasuk:

*  (yang boleh mensimulasikan hujan, asap atau api)
*  (untuk mensimulasikan kabus, habuk dan kesan atmosfera ruangan yang lain)
*  (untuk mensimulasikan pemfokusan cahaya oleh permukaan membias cahaya yang tidak rata, seperti riak cahaya yang kelihatan pada dasar kolam renang)
*  (untuk mensimulasikan pantulan cahaya di dalam isipadu objek pepejal seperti [[kulit manusia]]).

Proses perenderan adalah mahal dari segi pengiraan, memandangkan pelbagai proses fizikal yang kompleks sedang disimulasikan. Kuasa pemprosesan komputer telah meningkat dengan pesat selama bertahun-tahun, membolehkan tahap perenderan realistik meningkat secara beransur-ansur. Studio perfileman yang menghasilkan animasi janaan komputer biasanya menggunakan **' untuk menjana imej dalam tempoh masa yang dikehendaki. Namun begitu, penurunan kos perkakasan telah mewujudkan sepenuhnya keupayaan untuk mencipta sejumlah kecil animasi 3D pada sistem komputer rumah setelah mengambil kira kos penggunaan *render farm*. Hasil output perender sering digunakan sebagai hanya satu juzuk kecil dalam adegan gambar bergerak yang lengkap. Banyak lapisan bahan boleh dipaparkan secara berasingan dan disepadukan ke dalam tangkapan akhir menggunakan perisian penggubahan.

## Model pantulan dan bayangan
Model **pantulan/serakan** () dan **bayangan** () digunakan untuk mencirikan rupa sesuatu permukaan. Hal-hal ini walaupun kelihatan seperti masalah yang umum, tetapi semuanya dikaji dalam konteks perenderan sahaja. Penghasilan grafik komputer 3D moden amat  bergantung pada model pantulan ringkas yang dipanggil  (jangan disamakan dengan ). Dalam pembiasan cahaya terdapat satu konsep penting yang dipanggil indeks biasan; dalam kebanyakan implementasi pengaturcaraan 3D, ia dikenali dengan istilah "" (IOR).

Shading boleh dipecahkan kepada dua teknik berbeza yang selalu dikaji secara berasingan:

* **Pembayangan permukaan** - cara cahaya tersebar ke serata permukaan (selalunya digunakan dalam pemaparan garis imbas untuk perenderan 3D masa nyata dalam permainan video)
* **Pemantulan/penyerakan** - cara cahaya berinteraksi dengan permukaan *pada titik tertentu* (selalunya digunakan dalam hasil renderan terjejak sinar untuk perenderan 3D fotorealistik dan artistik bukan masa nyata dalam CGI baik imej pegun mahupun animasi tak interaktif)

### Algoritma pembayangan permukaan
Antara algoritma pembayangan permukaan yang digunakan secara meluas dalam bidang grafik komputer 3D termasuk:

* : teknik yang membayangkan setiap poligon pada objek berdasarkan "normal" poligon serta kedudukan dan keamatan punca cahaya
* : dicipta oleh Henri Gouraud pada tahun 1971; teknik pembayangan bucu yang pantas dan peka sumber fast, digunakan untuk mensimulasikan permukaan berbayangan licin
* : dicipta oleh Bui Tuong Phong; used to simulate specular highlights and smooth shaded surfaces

### Pemantulan

**Pantulan** atau **serakan** merupakan hubungan antara pencahayaan yang masuk dan keluar pada titik tertentu. Serakan biasanya diperihalkan dari segi  (BSDF).

### Pembayangan
Pembayangan adalah mengenai cara-cara pelbagai jenis serakan tersebar ke serata permukaan (iaitu kesesuaian fungsi serakan dengan bahagian yang dikena). Pemerihalan seperti ini biasanya dizahirkan dengan program yang dipanggil pembayang atau *shader*.  Satu contoh pembayangan yang mudah ialah pemetaan tekstur yang menggunakan imej untuk menentukan warna yang berbaur di setiap titik pada permukaan untuk menghasilkan perincian yang lebih jelas.

Contoh teknik-teknik pembayangan:

* Pemetaan bertompok: Dicipta oleh Jim Blinn, teknik 'pengusikan normal' yang digunakan untuk mensimulasikan permukaan berkedut.
* Pembayangan sel: Teknik yang digunakan untuk meniru rupa animasi lukisan tangan.

### ''Transport''
*Transport* dalam konteks grafik 3D memperihalkan bagaimana pencahayaan dalam adegan beralih dari satu tempat ke satu tempat. Antara komponen utama pengalihan cahaya ialah keterlihatan objek.

### Unjuran

Objek tiga dimensi yang berbayangan mesti diratakan supaya peranti paparan (seperti monitor) dapat memaparkannya pada satah dua dimensi sahaja; proses ini dipanggil unjuran 3D. Ini dilakukan menggunakan unjuran dan, untuk kebanyakan aplikasi, unjuran perspektif. Idea asas di sebalik unjuran perspektif ialah objek yang lebih jauh dibuat lebih kecil berbanding objek yang lebih dekat dengan mata.

Perspektif dihasilkan oleh program dengan mendarab pemalar dilasi (pelebaran) yang dinaikkan kepada kuasa negatif jarak dari pemerhati. Nilai pemalar dilasi satu bermakna tiada perspektif. Nilai pemalar pelebaran yang tinggi boleh menyebabkan kesan "mata ikan" di mana akan berlakunya herotan imej. Unjuran ortografik digunakan terutamanya dalam aplikasi CAD atau CAM di mana pemodelan saintifik memerlukan ukuran yang persis dan dimensi ketiga dikekalkan.

## Enjin perenderan
Enjin perenderan boleh didatangkan secara kendiri atau disepadukan dengan perisian pemodelan 3D. Sesetengah enjin perenderan adalah serasi dengan berbilang perisian 3D, manakala sesetengah lagi serasi dengan satu perisian sahaja.

## Nota dan rujukan