BREAKING NEWS

Friday, 29 September 2017

Tugas Pengantar Bisnis Informatika

Biodata Narasumber

Nama : Aditya Nugroho
Tempat, tanggal lahir : Yogyakarta, 20 Juli  1990
Jumlah saudara : 3 bersaudara
Motto : L'argent est fait pour être gardé pas dépensé
Pendidikan:
SMA 36 RAWAMANGUN 2003-2006
SASTRA PRANCIS | UNIVERSITAS INDONESIA 2006-2011
Riwayat Pekerjaan:
-          Kampus Update
CEO & Founder · 21 Juni 2012 hingga sekarang · Daerah Khusus Ibukota Jakarta
-          PT. DANONE AQUA
1 Oktober 2013 sampai 2 April 2014 · Daerah Khusus Ibukota Jakarta
-          detikcom
Product Management · 1 Mei 2013 sampai 2 September 2013 · Daerah Khusus Ibukota Jakarta
-          DealGoing.com
PR & Social Media Specialist · Februari 2013 sampai April 2013
-          detikcom
Admin · 17 Juli 2012 sampai 2 November 2012 · Daerah Khusus Ibukota Jakarta
-          PT KOALISI TUBINDO
Intern/Admin · 8 Juni 2011 sampai 1 Juni 2012
-          Indonesian Student Job
COO/Co-Founder · Juni 2011 sampai Juli 2012 · Daerah Khusus Ibukota Jakarta
-          Indonesian Future Leaders
Funding Division · Mei 2011 sampai Juli 2012 · Daerah Khusus Ibukota Jakarta
-          CEDS UI
Director of Business Startup · Januari 2007 sampai Februari 2010 · Kota Depok

Dialog Wawancara

Moderator : “Selamat siang ka Aditya Nugroho saya Yoga dari Universitas Gunadarma ingin mewawancarai ka Adit sehubungan dengan tugas Mata kuliah Pengantar Bisnis Informatika..”

Narasumber : “Iya selamat siang juga, silahkan.”

Moderator : “Saya ingin menanyakan tentang Kampus Update yang didirikan oleh ka Adit. Bisa ceritakan sedikit kak tentang Kampus Update?”

Narasumber : “Kampus Update merupakan Startup media platform yang memberikan informasi bermanfaat dan inspirasi bagi anak muda Indonesia bisa berupa info volunteer, magang, tips-tips dan pengalaman inspirasi dalam berbagai kegiatan sehingga followers Kampus Update lebih siap untuk berkompetisi kedepannya.”

Moderator : “Bidang startup ya, wah menarik sekali ya ka sepertinya, kalau boleh tau bisnis startup itu apa ya ka?”

Narasumber :”Jadi startup itu suatu usaha di bidang teknologi seperti contohnya GoJek, contoh seperti itu dinamakan bisnis Startup dan bisnis startup ini sebenarnya membantu menyampaikan  suatu informasi melewati media-media teknologi seperti social media, pembuatan aplikasi, engine-engine aplikasi dan lainnya.”

Moderator :”Jadi bisa dibilang berarti ka Adit ini bekerja sebagai platform media berbasis online ya dengan memanfaatkan teknologi menjadi bisnis?”

Narasumber :”Yap, betul jadi kita di sini memanfaatkan teknologi informatika seperti website, media sosial dan nantinya kita sedang mengembangkan aplikasi berbasis android sebagai platform informasi.”

Moderator :”Passion ka Adit sendiri berhubungan gk ka dengan berdirinya Kampus Update?”

Narasumber :” Saya suka berbagi dengan orang lain. Pengalaman sharing saya yang pertama adalah ketika mendapatkan tugas kuliah untuk mebaca novel bahasa Perancis, kemudian saya berinisiatif membuat akun twitter dengan nama novel tersebut dengan harapan bisa berbagi isi novel ke teman-teman saya yang belum membacanya. Di akhir kuliah, saya punya ide untuk mendirikan Kampus Update,” tambah lulusan Sastra Prancis Universitas Indonesia ini.”

Moderator :”Wih berarti cocok ya sama passionnya ka Adit? Kalau ide awal sampai terbentuknya Kampus Update seperti apa ya kak?”

Narasumber :” Ide pembentukan Kampus Update berawal ketika Adit masih kuliah dan merasa kesulitan mencari media platform untuk mencari informasi magang dan lowongan kerja. “Saya pikir masih banyak mahasiswa merasakan hal sama seperti yang saya rasakan. Kemudian saya punya ide untuk membentuk media platform yang bisa memenuhi kebutuhan seperti apa yang saya rasakan. Awalnya saya belajar dulu mengenai media dari perusahaan tempat saya bekerja kemudian baru mendirikan Kampus Update yang tujuannya untuk menjadi penghubung antara mahasiswa dengan perusahaan dalam penyediaan informasi dan inspirasi”

Moderator : “Apakah ka Adit sudah memiliki kantor untuk mengelola bisnis startup ini?”

Narasumber :”Untuk bisnis ini kami masih homeworking, jika bertatap muka secara virtual itu belum ada tapi kami masih bekerja secara mobile yang berarti bisa mengerjakannya dimanapun. Jadi kita belum memiliki kantor pusat maupun kantor cabang.”

Moderator :”Kampus Update sendiri cakupannya seberapa luas ya ka?”

Narasumber :”Kampus Update secara online cakupannya sejauh ini nasional, tapi untuk kegiatan offline kita fokuskan di kota – kota besar seperti Jakarta, Bandung & Jogjakarta. Kedepannya kita akan luaskan cakupan kita”

Moderator : “Untuk orang yang bekerja di balik Kampus Update sendiri itu berapa orang ya ka?”

Narasumber :”Sekitar 8 orang”

Moderator :”Kalau boleh tau nih kak Adit, omset perbulannya dari Kampus Update ini kira – kira berapa ya ka?”

Narasumber :”Kalau dari omset pendapatan dari startup saya itu dihitung dari per kerja sama dengan suatu event, rata – rata sekitar 10-18 juta perbulan, tergantung dengan banyaknya permintaan untuk kerja sama sebagai media partner.”

Moderator :”Cara ka Adit untuk mengembangkan startup ini seperti apa?”

Narasumber :”Perlunya inovasi baru dengan menambah fitur-fitur baru di bidang dan kegiatan offline, agar followers kita tidak bosan.”

Moderator :”Ngomong – ngomng inovasi fitur dan program apa aja ka yang sudah berjalan sampai saat ini di Kampus Update?”

Narasumber :” Program rutin yang dilaksanakan Kampus Update berbeda dengan konten penyedia informasi lainnya, yaitu adanya program online dan offline, untuk program online ada #Kulive yaitu online seminar dengan kerja sama Cozora webseminar dan Community Ambassador Jakarta Bandung dan Yogja, sedangkan program offline terdiri dari #KUtalk, yaitu kampus update talkshow, #SuperTalk yaitu mentorship program untuk tim internal Kampus Update, #KUclass yaitu mentorship program untuk followers Kampus Update. .”

Moderator :”Harapan ka Adit kedepannya dengan bisnis yang sedang ka Adit jalani ini?”

Narasumber: “Saya berharap kedepannya Kampus Update bisa mengjangkau seluruh Indonesia dalam menyebarkan inspirasi dan informasi. Saat ini ada program Kampus Update Associate Partner yang bertujuan untuk mengenalkan Kampus Update melalui perwakilan ini kepada komunitas di daerah masing-masing.”

Moderator: “Pertanyaan terakhir ya ka, ada gk ka pesan yang ingin di sampaikan untuk kaum muda Indonesia?”

Narasumber :” Sebelum mau berkarya apa, cari tahu dulu passion kamu dan lihat masalah yang ada di sekitarmu. Pastikan karya yang akan kamu buat bisa bermanfaat untuk sekitarmu. Nggak akan ada ruginya apabila karya kita bisa berdampak positif buat orang lain. And the last is take action right now.”

Moderator :”Terima kasih banyak ka Adit atas waktunya sudah berkenan untuk diwawancara dengan kami hari ini. Sukses selalu untuk ka Adit & Kampus Update. Semoga terus melahirkan inovasi-inovasi baru.”

Narasumber :”iya mas sama –sama. Semoga hasil wawancara ini dapat memberikan manfaat.”

Resume

Generasi Z mudah beradaptasi terhadap perubahan teknologi dan mampu mengikuti arah perkembangan teknologi terkini begitu cepat. Mereka juga mampu mengaplikasikan kemudahan tersebut ke arah postif dengan menjadi seorang creator, baik lewat blog,cuitan di Twitter, hingga video di YouTube. 

Aditya Nugroho adalah penggagas Kampus Update yang selalu memberikan informasi seputar magang, volunteer, part time, freelance, beasiswa, kompetisi lowongan pekerjaan dan event pendidikan. Sebagai digital platform, Kampus Update, menurut Aditya, sudah dibentuk sejak 2012 dari Twitter. 

“Awal mula tertarik membuat konten penyedia informasi karena saat itu saya kesulitan mendapat informasi magang dan beasiswa karena saat itu belum ada satu platform anak muda untuk memberikan informasi seputar magang, volunteer, part time, freelance, kompetisi lowongan pekerjaan dan event pendidikan,” tutur Aditya. “Hal ini yang mendorong saya ingin membagikan informasi yang dibutuhkan mahasiswa, hanya dengan mengakses akun media sosial Kampus Update,” tambahnya.

Respons positif yang didapatkannya membuat Adit ingin terus berbagi informasi penting bagi mahasiswa. Hingga saat ini, akun media sosial Kampus Update tekah memiliki banyak Updaters (sapaan untuk pengikutnya) seperti website, Twitter dengan 106.026 pengikut, Instagram 17.400 pengikut, serta Line sebanyak 4.715 pengikut yang ingin mengetahui berbagai informasi event pendidikan dan lain-lainnya. 
Untuk mengembangkan pengalaman diri bagi generasi Z khususnya mahasiswa, Kampus Update memiliki dua program yang dapat diikuti secara gratis dan diharapkan dapat melatih soft skillsberbagai bidang, selalu konsisten mengadakan praktik langsung dan mengundang para praktisi profesional hingga public figureuntuk berbagi informasi di bidangnya kepada mahasiswa.

Program rutin yang dilaksanakan Kampus Update berbeda dengan konten penyedia informasi lainnya, yaitu adanya program online dan offline, untuk program online ada #Kulive yaitu online seminar dengan kerja sama Cozora webseminar dan Community Ambassador Jakarta Bandung dan Yogja, sedangkan program offline terdiri dari #KUtalk, yaitu kampus update talkshow, #SuperTalk yaitu mentorship program untuk tim internal Kampus Update, #KUclass yaitu mentorship program untuk followers Kampus Update. 
Adit menyebut beberapa hal yang dapat dilakukan generasi muda untuk menjadi generasi cerdas di tengah kemudahan teknologi, di antaranya :
*Manfaatkan peluang yang ada di sekitar, hingga peluang itu dapat menciptakan karya yang bermanfaat bagi banyak orang.
*Konsisten menggali potensi dengan melakukan pengembangan diri. n Generasi muda sebaiknya mampu melakukan manajemen informasi.
*Mampu mengelola dan memfilter informasi dengan tepat.
*Jangan hanya menjadi konsumen informasi, juga harus menjadi produsen informasi seperti website dan blog.
Adit berharap kedepannya Kampus Update bisa mengjangkau seluruh Indonesia dalam menyebarkan inspirasi dan informasi. Saat ini ada program Kampus Update Associate Partner yang bertujuan untuk mengenalkan Kampus Update melalui perwakilan ini kepada komunitas di daerah masing-masing.

Pesan Inspirasi Adit untuk Anak Muda Indonesia. Sebelum mau berkarya apa, cari tahu dulu passion kamu dan lihat masalah yang ada di sekitarmu. Pastikan karya yang akan kamu buat bisa bermanfaat untuk sekitarmu. Nggak akan ada ruginya apabila karya kita bisa berdampak positif buat orang lain. And the last is take action right now.

Sunday, 22 January 2017

KONSEP DAN TEORI PADA LIGHTING & SHADING MODELLING

            Shading mengacu pada penggambaran kedalaman suatu objek dalam model 3D atau ilustrasi dengan mengubah-ubah tingkat dari kegelapan suatu object(darkness).

            Menggambar Shading merupakan suatu proses yang digunakan dalam menggambar dengan tingkat darkness tertentu pada sebuah kertas dengan memakai media yang lebih padat atau menampilkan bayangan yang lebih gelap untuk area yang lebih gelap dan memakai media yang tidak terlalu padat atau menampilkan bayangan yang lebih terang untuk area yang lebih terang. Ada berbagai macam teknik shading, misalnya cross hatching dimana garis-garis tegak lurus dengan jarak satu sama lain (kedekatan) yang berbeda-beda digambar pada pola grid untuk membentuk bayangan area. Semakin dekat garis-garis tersebut, semakin gelap area yang muncul. Begitu pula sebaliknya, semakin jauh garis-garis tersebut, semakin terang area yang muncul.

            Pola-pola yang terang (misalnya objek yang memiliki area terang dan area berbayang) akan sangat membantu dalam pembuatan ilusi kedalaman pada kertas dan layar komputer.


Komputer grafis

Pada komputer grafis, shading mengacu pada proses mengubah warna berdasarkan sudut terhadap cahaya dan jarak dari cahaya untuk menciptakan efek photorealistic. Shading dilakukan selama proses penggambaran.


Sudut terhadap sumber cahaya

            Shading mengubah warna tampilan dalam model 3D berdasarkan sudut permukaan terhadap cahaya matahari atau sumber cahaya lainnya.

            Gambar pertama di bawah ini menunjukkan permukaan-permukaan kotak yang digambar dimana semuanya memiliki warna yang sama. Garis tepi telah digambar sehingga memudahkan gambar dilihat dan dibedakan.

            Gambar kedua merupakan model yang sama, namun tidak memiliki garis tepi. Sangat sulit membedakan permukaan kotak yang satu dengan yang lainnya.

            Gambar ketiga memiliki shading dimana membuat gambar menjadi lebih realistis dan lebih mudah dilihat serta dibedakan.








Sumber cahaya

Ada berbagai jenis cahaya:

•          Ambient light – Ambient light menyinari semua objek dalam suatu scene secara merata, membuat objek menjadi terang tanpa menambahkan bayangan.

•          Directional light – Directional light menyinari semua objek secara merata dari suatu arah tertentu. Ia bagaikan suatu area terang dengan ukuran dan jarak yang tidak terbatas dari scene. Ada bayangan, tetapi itu bukan merupakan distance falloff.

•          Point light – Point light berasal dari satu titik dan menyebar dalam berbagai arah.

•          Spotlight – Spotlight berasal dari satu titik dan menyebar mengikuti arah kerucut.

•          Area light – Area light berasal dari satu bidang datar dan menyinari semua objek dalam arah tertentu yang berasal dari bidang datar tersebut.

•          Volume light – Volume light merupakan suatu ruang tertutup yang menyinari objek dalam ruang tersebut.

            Shading diinterpolasikan berdasarkan bagaimana sudut dari sumber cahaya mencapai objek dalam suatu scene. Tentu saja sumber-sumber cahaya tersebut mungkin dan seringkali dikombinasikan dalam sebuah scene. Pelukis atau ilustrator kemudian menginterpolasikan bagaimana cahaya-cahaya ini dikombinasikan dan memproduksi gambar 2D yang akan ditampilkan di layar.


Distance fall off

            Secara teoritis, dua permukaan paralel disinari jumlah cahaya yang sama dari sumber cahaya yang jauh, seperti matahari. Walaupun permukaan yang satu jauh, mata kita melihat permukaan tersebut lebih banyak di ruang yang sama sehingga penyinarannya tampak sama.

            Perhatikan gambar pertama dimana warna pada permukaan depan dari kedua kotak benar-benar sama. Tampaknya ada sedikit perbedaan ketika kedua permukaan tersebut bertemu, tetapi ini merupakan ilusi optikal yang disebabkan oleh garis tepi vertikal di bawah dimana kedua permukaan ini bertemu.

            Perhatikan gambar kedua dimana permukaan kotak tampak lebih terang pada bagian depan dan tampak lebih gelap pada bagian belakang. Selain itu, permukaan lantai juga tampak semakin gelap seiring makin jauhnya jarak.

            Efek distance falloff membuat gambar tampak lebih realistis tanpa harus menambahkan cahaya tambahan untuk menimbulkan efek yang sama. Distance falloff dapat dihitung dalam beberapa cara:

•          Tidak ada
•          Linier – Untuk setiap unit x jarak suatu titik dari sumber cahaya, jumlah cahaya yang diterima adalah unit x dikurangi bright.
•          Kuadratik – Ini menunjukkan bagaimana cahaya kira-kira bekerja di kehidupan nyata. Suatu titik yang dua kali jauhnya dari sumber cahaya dibandingkan titik lainnya akan menerima cahaya empat kali lebih sedikit.  
•          Faktor n – Suatu titik yang jaraknya sebesar unit x dari suatu sumber cahaya akan menerima cahaya sebesar 1/xn.
•          Fungsi matematis lainnya juga dapat digunakan.


Flat vs smooth shading

            Flat shading merupakan teknik pencahayaan yang digunakan dalam komputer grafis 3D. Ia membentuk bayangan setiap polygon dari suatu objek berdasarkan sudut antara permukaan normal polygon dan arah dari sumber cahaya, warna-warna respective, dan intensitas sumber cahaya. Ini digunakan dalam pembuatan gambar dengan kecepatan tinggi dimana menggunakan teknik-teknik shading yang lebih sulit dan secara perhitungan lebih mahal. Akan tetapi, di akhir abad ke-20, kartu grafis yang terjangkau menawarkan smooth shading yang dapat digunakan dalam proses penggambaran cepat, membuat flat shading tidak diperlukan lagi.

            Kekurangan dari flat shading adalah ia memberikan tampilan model yang low-polygon.  Terkadang tampilan ini dapat menguntungkan juga, misalnya dalam membuat model objek berbentuk kotak. Pelukis terkadang menggunakan flat shading untuk melihat polygon dari model padat yang mereka ciptakan. Teknik-teknik pencahayaan dan shading lanjutan dan lebih realistis meliputi Gourad shading dan Phong shading.


Model Shading

Model shading menentukan bagaimana suatu permukaan objek muncul dalam kondisi pencahayaan yang berbeda-beda. Beberapa model matematis dapat digunakan untuk menghitung shading. Setiap model shading memproses relasi dari permukaan normal terhadap sumber cahaya untuk menciptakan efek shading tertentu.

Phong

Description: https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEirgXTOJVy5_wXIMdSIb7BdeEjI50RLwcwLKvjYX0nvkZY62-pr9MUN4xyrBe1aJPHpoamSAEiHZkyqQjjvrokxQoy5-koLtI2-rfRHWhUZ4vCT7ohmJiM6VFuAHJWWZooI7CejUdyYLD0/s1600/Gambar+2.1.jpg

            Menggunakan warna-warna ambient, diffuse, dan specular. Model shading ini membaca orientasi permukaan normal dan menginterpolasikannya untuk menciptakan tampilan smooth shading. Ia juga memproses relasi antara normal, cahaya, dan sudut pandang kamera untuk menciptakan specular highlight.

            Hasilnya adalah suatu objek dengan bayangan smooth, permukaan area yang disinari diffuse dan ambient, serta suatu specular highlight sehingga objek tampak bersinar seperti bola biliar atau bola plastik. Pemantulan, transparansi, refraksi, dan tekstur dapat diterapkan pada objek yang menggunakan Phongshader. 

Lambert

Description: https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgPCCnABIYt4dnUbD_LVKlU0nl67JdIBYSjZaA6vbNr1TLJw8laBzonIEgnaq_ljjZ_bjIIyuCtMT3DoqACm3At_NAgGO9XhsAhgo2QZrb2X2efP5aK2yxQk10QwCd3svcR87xmg5jUvPQ/s1600/Gambar+2.2.jpg

            Menggunakan warna-warna ambient dan diffuse untuk menciptakan permukaan matte tanpa specular highlight. Ia menginterpolasikan normal dari permukaan segitiga yang berdampingan sehingga shading berubah secara progresif, menciptakan suatu permukaan matte.

            Hasilnya adalah suatu objek dengan smooth shading, seperti telur atau bola ping-pong. Pemantulan, transparansi, refraksi, dan tekstur dapat diterapkan pada objek yang menggunakan Lambert shader.

Blinn

Description: https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjYc59cPjSGXI45vrayS3irENeuCUCaKalf5jpDAAZRS8SfhYmuK77vmrrfMvtb3RIOxR3vZwx55f-YV33l5QkQrx3gmC7J_847x399kiol-IbtFvuX2qV60ao5GEuddrNTc6nDP8usaNo/s1600/Gambar+2.3.jpg

            Menggunakan warna-warna diffuse, ambient, dan specular, serta refractive index untuk menghitung specular highlight. Model shading ini identik dengan model shading Phong, kecuali bentuk specular highlight-nya merefleksikan pencahayaan lebih akurat ketika ada sudut tinggi antara kamera dan cahaya. 

            Model shading ini berguna untuk tepian yang kasar atau tajam dan untuk mensimulasikan permukaan logam. Specular highlight-nya tampak lebih terang dibandingkan model Phong. Pemantulan, transparansi, refraksi, dan tekstur dapat diterapkan pada objek yang menggunakan Blinnshader.

Cook-Torrance

Description: https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3an_VL4OZuyAoAiTfkkH8SVC3EWozsl_FxPyLXuOgqxPVI0b6Zl8b0vR6H3oDqOASjmhgFZzQpPBTqSD-S8sJnneCsyJGTdnzb8_lxGBKnrxdxYJaO07N43ijLWsCQ4Je8uE5tBpGQT0/s1600/Gambar+2.4.jpg

            Menggunakan warna-warna diffuse, ambient, dan specular, serta refractive index untuk menghitung specular highlight. Ia membaca orientasi permukaan normal dan menginterpolasikannya untuk menciptakan tampilan smooth shading. Ia juga memproses relasi antara normal, cahaya, dan sudut pandang kamera untuk menciptakan specular highlight.

            Model shading ini memproduksi hasil yang berada diantara model shading Blinn dan Lambert, serta berguna untuk mensimulasikan objek yang lembut dan reflektif seperti kulit. Pemantulan, transparansi, refraksi, dan tekstur dapat diterapkan pada objek yang menggunakan Cook-Torrance shader.

            Karena model shading ini lebih kompleks untuk dihitung, ia memakan waktu lebih lama dalam pelukisan daripada model shading lainnya.

// Copyright (c) 2007 PIXAR.  All rights reserved.  This program or
// documentation contains proprietary confidential information and trade
// secrets of PIXAR.  Reverse engineering of object code is prohibited.
// Use of copyright notice is precautionary and does not imply
// publication.
//
// RESTRICTED RIGHTS NOTICE
//
// Use, duplication, or disclosure by the Government is subject to the
// following restrictions: For civilian agencies, subparagraphs (a) through
// (d) of the Commercial Computer Software--Restricted Rights clause at
// 52.227-19 of the FAR; and, for units of the Department of Defense, DoD
// Supplement to the FAR, clause 52.227-7013 (c)(1)(ii), Rights in
// Technical Data and Computer Software.
//
// Pixar Animation Studios
// 1200 Park Avenue
// Emeryville, CA 94608
//
//------------------------------------------------------------------------------------------------------//
//------------------------------------------------------------------------------------------------------//
//         SCRIPT:            CookTorrance.sl
//         AUTHOR:         Scott Eaton
//         DATE:              July 3, 2007
//
//         DESCRIPTION: A simple implementation of the Cook-Torrance     
//  shading model describe in: 
//  A Reflectance Model for Computer Graphics
//  R. L. Cook, K. E. Torrance, ACM Transactions on Graphics 1982
//
//------------------------------------------------------------------------------------------------------//
//------------------------------------------------------------------------------------------------------//

surfaceCookTorrance(
floatKa = 1;
float Ks = .8;
floatKd = .8;
float IOR = 1.3;
float roughness = .2;
color opacity = 1;
colorspecularColor = 1;
colordiffuseColor = (.6, .6, .6);
floatgaussConstant  = 100;

){
        //the things we need:   
        // normalized normal and vector to eye
normalNn = normalize(N);
vectorVn = normalize(-I);
float F, Ktransmit;
float m = roughness;
fresnel( normalize(I), Nn, 1/IOR, F, Ktransmit);


color cook = 0;
floatNdotV = Nn.Vn;

illuminance( P, Nn, PI/2 ){
                //half angle vector
vector Ln = normalize(L);
vector H = normalize(Vn+Ln);

floatNdotH = Nn.H;
floatNdotL = Nn.Ln;
floatVdotH = Vn.H;

float D;
float alpha = acos(NdotH);

                //microfacet distribution
                D = gaussConstant*exp(-(alpha*alpha)/(m*m));

                //geometric attenuation factor
float G = min(1, min((2*NdotH*NdotV/VdotH), (2*NdotH*NdotL/VdotH)));

                //sum contributions
cook += Cl*(F*D*G)/(PI*NdotV);                              
        }
cook = cook/PI;

Oi = opacity;
Ci = (Kd*diffuseColor*diffuse(Nn)+Ks*specularColor*cook) * Oi;
}









Strauss

Description: https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhE7wxkTxZwZG0O-moY8rYqIXd7eEdGkV0BvNe3cNIm_-dW0nrQpYvLRtKcMWISG-mIQSuMg3Y24Md1NNqbkhkMClpYUegSnWNLR9PTsA7pMPo2kTa1yUJNf7fb1nW-2sZDlha80aYxDuQ/s1600/Gambar+2.5.jpg

            Hanya menggunakan warna-warna diffuse untuk mensimulasikan suatu permukaan logam. Surface’s specular dikaitkan dengan parameter smoothness dan “metalness” yang mengontrol warna-warna diffuse berdasarkan specular ratio seperti pemantulan dan highlight.

Pemantulan, transparansi, refraksi, dan tekstur dapat diterapkan pada objek yang menggunakan Strauss shader.


Anisotropic

Description: https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTth_YowS1Iz8wbHQbWs43-N1-zq8LavGo8wz5P8spglYBPUhvXK7b9F4pPt1Qjw6MEiOU3nSiPQtXuIzKryC80NgHrtI25MtrFhZl_Ygp190IFeQ45_iDqq9FYBuSZ996hi6pq0wQpDs/s1600/Gambar+2.6.jpg

            Terkadang disebut juga ward. Model shading ini mensimulasikan permukaan glossy dengan menggunakan warna-warna ambient, diffuse, dan glossy. Untuk menciptakan efek “digosok” seperti aluminium yang diamplas, dapat menggunakan orientasi specular color berdasarkan orientasi permukaan objek. Specular dihitung menggunakan koordinat UV.

 Pemantulan, transparansi, refraksi, dan tekstur dapat diterapkan pada objek yang menggunakan anisotropic shader.


Constant

Description: https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFTYyJu5RBBaFEQPtJjKTy2uOLBMqnjCjbROPwzgXQgPEIxs3N8bRj9Wp4ZK_ZfTOtzLuE_Os2_mf6pn-NgyOotkpe1ueOwYWACJqc7A-30AtW_IUw9uv_HxIzWlybGcTRabcsxzripCQ/s1600/Gambar+2.7.jpg

            Hanya menggunakan warna-warna diffuse. Ia mengabaikan orientasi permukaan normal. Semua permukaan segitiga objek dianggap memiliki orientasi yang sama dan memiliki jarak yang sama dari cahaya.

            Ia menghasilkan suatu objek yang permukaannya tidak ada shading, tampak seperti suatu potongan kertas. Ini berguna jika kita ingin menambahkan static blur pada suatu objek sehingga tidak ada cahaya specular atau ambient. Ia juga mendukung tekstur sebab tidak ada atribut yang mengganggu definisi tekstur.

            Model shading Blinn–Phong (disebut juga model pemantulan Blinn–Phong atau model pemantulan Phong termodifikasi) merupakan suatu modifikasi dari model pemantulan Phong yang dikembangkan oleh Jim Blinn. 

            Blinn-Phong merupakan model shading default yang digunakan di OpenGL dan Direct3D fixed-function pipeline (sebelum Direct 3D 10 dan OpenGL 3.1), serta digunakan pada setiap vertex selagi ia melewati pipa grafis; nilai piksel antara diantara vertice diinterpolasikan oleh Gouraud shading by default, daripada menggunakan Phong shading yang lebih mahal.

            Dalam Phong shading, secara kontinu harus menghitung ulang produk skalar  diantara viewer (V) dan sinar dari sumber cahaya (L) reflected (R) pada suatu permukaan.

Jika kita menghitung halfway vector antara vector viewer dan sumber cahaya,

            Kita dapat mengganti   dengan   dimana   adalah permukaan normal yang telah  dinormalisasikan. Pada persamaan di atas,   dan   adalah vector yang telah dinormalisasikan, dan   adalah solusi terhadap persamaan   dimana  adalah matriks Householder yang merefleksikan suatu titik di hyperplane yang memiliki origin dan memiliki   normal.

            Produk dot ini merepresentasikan cosinus dari suatu sudut yang merupakan setengah dari sudut yang direpresentasikan oleh produk dot Phong jika V, L, N, dan R semuanya berada di bidang datar yang sama. Relasi antara sudut-sudut tersebut diperkirakan benar jika vektor-vektor tidak berada di bidang datar yang sama, terutama ketika sudut-sudutnya kecil. Oleh karena itu, sudut antara N dan H terkadang disebut halfway angle.

            Dengan pertimbangan bahwa sudut antara halfway vector dan permukaan normal kemungkinan lebih kecil daripada sudut antara R dan V yang digunakan dalam model Phong (kecuali permukaan ditampilkan dari sudut yang sangat curam atau bersudut besar) dan karena Phong menggunakan   eksponen ditetapkan   seperti   yang lebih mendekati expression sebelumnya.

            Untuk permukaan front-lit (pemantulan specular pada permukaan berhadapan dengan viewer),   akan menghasilkan specular highlight yang sangat dekat kecocokannya dengan pemantulan Phong. Namun demikian, di saat pemantulan Phong selalu bulat untuk permukaan datar, pemantulan Blinn-Phong menjadi elips ketika permukaan dilihat dari sudut yang curam. Ini dapat dibandingkan terhadap kasus dimana matahari dipantulkan di permukaan laut yang dekat dengan horizon atau ketika lampu lalu lintas yang sangat jauh dipantulkan di trotoar yang basah dimana pantulannya akan selalu tersebar lebih vertikal dari pada horizontal.
Description: https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXITIqKs_58sKnSAMnao-e5BcABgYj-OJVxAykvi-j2qZ8PZCIKSvcqpWxhSU1qnN7fcrh8vVlsbRm79uzB6qlhMdQ5sHg6e4T6F2hJnw4bcIWRAn2REWbtt88M8X479rKOIaIPOe8REA/s1600/Gambar+2.8.jpg

Description: https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXITIqKs_58sKnSAMnao-e5BcABgYj-OJVxAykvi-j2qZ8PZCIKSvcqpWxhSU1qnN7fcrh8vVlsbRm79uzB6qlhMdQ5sHg6e4T6F2hJnw4bcIWRAn2REWbtt88M8X479rKOIaIPOe8REA/s1600/Gambar+2.8.jpg

            Walaupun model Blinn-Phong menyerupai model Phong, ia menghasilkan model yang lebih akurat secara empiris dari fungsi bidirectional reflectance distribution. (lihat: Experimental Validation of Analytical BRDF Models, Siggraph 2004).

            Dalam banyak kasus, model pelukisan ini kurang efisien dibandingkan Phong shading karena ada perhitungan kuadrat dan akar. Jika model Phong original hanya memerlukan pemantulan vektor yang simple, bentuk modifikasi ini memerlukan lebih banyak perhitungan. Namun demikian, karena banyak CPU dan GPU sudah memiliki fungsi kuadrat dan akar yang lebih akurat (sebagai fitur standar), serta instruksi lain yang dapat mempercepat proses pelukisan, masalah waktu sudah tidak terlalu dipermasalahkan lagi.

            Model Blinn-Phong akan lebih cepat digunakan dalam kasus dimana viewer dan cahaya tidak memiliki keterbatasan. Ini adalah contoh kasus untuk directional light. Dalam kasus ini, half-angle vector bebas berada di posisi dan permukaan apapun. Vektor dapat dihitung satu kali untuk setiap cahaya, kemudian digunakan untuk keseluruhan frame atau ketika cahaya dan sudut pandang relatif tetap berada di posisi yang sama. Hal ini tidak berlaku bagi vektor cahaya dipantulkan pada model Phong dimana ia vektor bergantung pada rata tidaknya permukaan dan harus dihitung ulang untuk setiap piksel gambar (atau untuk setiap vertex model dalam kasus pencahayaan vertex).

            Pada kasus dimana cahaya terbatas, misalnya ketika menggunakan point light, model Phong original akan lebih cepat digunakan.

            Sampel di bawah ini dalam High Level Shader Language merupakan suatu metode penentuan cahaya diffuse dan specular dari suatu point light. Struktur cahaya, posisi dalam ruang pada suatu permukaan, tampilan arah vektor dan permukaan normal merupakan faktor penentu.


A Lighting structure is returned;
struct Lighting
{
float3 Diffuse;
float3 Specular;
};

structPointLight
{
float3 position;
float3diffuseColor;
floatdiffusePower;
float3specularColor;
floatspecularPower;
};

Lighting GetPointLight(PointLight light, float3 pos3D, float3 viewDir, float3 normal )
{
        Lighting OUT;
if(light.diffusePower>0)
{
float3lightDir=light.position- pos3D;//3D position in space of the surface
float distance = length(lightDir);
lightDir=lightDir/ distance;// = normalize( lightDir );
distance= distance * distance;//This line may be optimised using Inverse square root

//Intensity of the diffuse light. Saturate to keep within the 0-1 range.
floatNdotL= dot( normal,lightDir);
float intensity = saturate(NdotL);

// Calculate the diffuse light factoring in light color, power and the attenuation
OUT.Diffuse= intensity *light.diffuseColor*light.diffusePower/ distance;

//Calculate the half vector between the light vector and the view vector.
//This is faster than calculating the actual reflective vector.
float3 H = normalize(lightDir+viewDir);

//Intensity of the specular light
floatNdotH= dot( normal, H );
intensity=pow( saturate(NdotH),specularHardness);

//Sum up the specular light factoring
OUT.Specular= intensity *light.specularColor*light.specularPower/ distance;
}
return OUT;

}