Download - Tugas Akhir Teori Grafkom

Transcript

TUGAS AKHIR TEORIGRAFIKA KOMPUTERDisusun untuk Memenuhi Matakuliah Praktikum Grafika KomputerYang Dibimbing oleh Bapak Heru Wahyu Herwanto, S!, MKom"#$H%PUTRI RIZKY RAHMANIA130533608286S1 PTI 2013 OFF AUNIVERSITAS NEGERI MALANGFAKULTAS TEKNIKJURUSAN TEKNIK ELEKTROS1 PENDIDIKAN TEKNIK INFORMATIKAApr! " 2015TUGAS AKHIR TEORI#RUMAH 3D $ESERTA LIGHTING%1& S'RIPT#include #include //pendeklarasian variable globalint w = 400, h = 400;int sudut=0, o=0, p=0, q=0;int a, b; void rendercene!void"#gl$lear!%&'$(&()'*+,,-)'*./ 0 %&'1-2/3'*+,,-)'*./";gl&oad.dentit4!";%&5oat &ight2osition67 = #80.09, :0.09, ;0.09, 0.09?/-).?&"; //dinding ru@ahgl2ush>atriA!"; //,ungsi untuk @en4i@pan nilai @atriAgl-nable!%&'$(&()'>?/-).?&";gl/ranslate9!0, 0, B800"; //9ungsi translasigl)otate9!C0, 0, 8 ,0"; //9ungsi rotasigl$olor;9!0, 0, 8";glutolid$ube!:0"; //9ungsi pe@buatangl1isable!%&'$(&()'>?/-).?&";gl2op>atriA!"; //atapgl2ush>atriA!";gl-nable!%&'$(&()'>?/-).?&";gl/ranslate9!0, 80, B800";glcale9!:0, 80, :0";gl)otate9!C, 0, 8, 0";gl$olor;9!0, 8, 0";glutolid(ctahedron!";gl1isable!%&'$(&()'>?/-).?&";gl2op>atriA!"; //pintugl2ush>atriA!";gl-nable!%&'$(&()'>?/-).?&";gl$olor;9!8, 0, 0";gl/ranslate9!BD,BC, BDC";gl)otate9!840, 0, 8, 0";glcale9!E,80,8";glutolid$ube!8";gl2op>atriA!"; //Fendelagl2ush>atriA!";gl-nable!%&'$(&()'>?/-).?&";gl$olor;9!8, 8, 0";gl/ranslate9!BC,B;, BD0";gl)otate9!8;0, 0, 8, 0";glcale9!:,:,8";glutolid$ube!8";gl1isable!%&'$(&()'>?/-).?&";gl2op>atriA!"; gl2ush>atriA!";gl-nable!%&'$(&()'>?/-).?&";gl$olor;9!8, 8, 0";gl/ranslate9!B:,B;, BG0";gl)otate9!8;0, 0, 8, 0";glcale9!:,:,8";glutolid$ube!8";gl1isable!%&'$(&()'>?/-).?&";gl2op>atriA!"; gl2ush>atriA!";gl-nable!%&'$(&()'>?/-).?&";gl$olor;9!8, 8, 0";gl/ranslate9!B:,0, BG0";gl)otate9!8;0, 0, 8, 0";glcale9!:,:,8";glutolid$ube!8";gl1isable!%&'$(&()'>?/-).?&";gl2op>atriA!";gl2ush>atriA!";gl-nable!%&'$(&()'>?/-).?&";gl$olor;9!8, 8, 0";gl/ranslate9!BC,0, BD0";gl)otate9!8;0, 0, 8, 0";glcale9!:,:,8";glutolid$ube!8";gl1isable!%&'$(&()'>?/-).?&";gl2op>atriA!";//pagargl2ush>atriA!";gl-nable!%&'$(&()'>?/-).?&";gl$olor;9!0, 8, 0";gl/ranslate9!B;0, BC, B880";gl)otate9!C0, 0, 8, 0";glcale9!:C,C,8";glutolid$ube!:";gl1isable!%&'$(&()'>?/-).?&";gl2op>atriA!";gl2ush>atriA!";gl-nable!%&'$(&()'>?/-).?&";gl$olor;9!0, 8, 0";gl/ranslate9!80, BC, B880";gl)otate9!840, 0, 8, 0";glcale9!;0,C,8";glutolid$ube!:";gl1isable!%&'$(&()'>?/-).?&";gl2op>atriA!";gl2ush>atriA!";gl-nable!%&'$(&()'>?/-).?&";gl$olor;9!0, 8, 0";gl/ranslate9!:C, BC, BG:";gl)otate9!C0, 0, 8, 0";glcale9!:0,C,8";glutolid$ube!:";gl1isable!%&'$(&()'>?/-).?&";gl2op>atriA!";gl2ush>atriA!";gl-nable!%&'$(&()'>?/-).?&";gl$olor;9!0, 8, 0";gl/ranslate9!B;:, BC, BH4";gl)otate9!840, 0, 8, 0";glcale9!80,C,8";glutolid$ube!:";gl1isable!%&'$(&()'>?/-).?&";gl2op>atriA!";//lantaigl2ush>atriA!";gl-nable!%&'$(&()'>?/-).?&";gl$olor;9!8, 8, 8";gl/ranslate9!0, B88, B800";gl)otate9!D0, 8, 0, 0";glcale9!C0,C0,8";glutolid$ube!:";gl1isable!%&'$(&()'>?/-).?&";gl2op>atriA!"; //9ungsi untuk ke@bali ke koordinat sebelu@ dipushglutwap*uIers!";< //9ungsi untuk pengaturan window agar obFek tetap pada posisi dan ukuran/perbandingann4a ketika window diperbesar atau diperkecilvoid resiJe!int w8, int h8"#glKiewport!0,0,400,400";gl>atriA>ode!%&'2)(L-$/.(="; //9ungsi @ode pro4eksi,@engatur penglihatan kubusgl&oad.dentit4!";//sudut pandangan, aspek ratio, kedekatan M, Fauh Mglu2erspective!E0.0,!5oat" w8/!5oat" h8, 8.0,:00.0";gl>atriA>ode!%&'>(1-&K.-N";gl&oad.dentit4!"; //deOnisi obFek< void @ouse!int button, int state, int A, int 4"# // interaksi @ousea = AB!w/:";b = !h/:"B4;