Langsung ke konten utama

TEXTURING DAN RENDERING



A. TEXTURING

Dalam dunia visual, texturing adalah proses pemberian karakteristik permukaan pada objek. Maksud dari karakteristik adalah termasuk pewarnaan, kilauan, dan lainnya. Pada umumnya teksturing adalah pemberian warna pada permukaan objek atau pengecatan, walaupun ada proses yang mengubah geometri objek. Dalam software seperti 3DSMax dan Blender, untuk menambahkan tekstur pada objek, kita bisa menggunakan tools Map.

Teknik teksturing adalah termasuk langkah terakhir dalam pendesaian 3D. Hal ini dikarenakan setelah langkah teksturing ini langkah selanjutnya hanyalah tinggal melakukan rendering jika ingin dijadi objek 2D. Untuk desain tekstur itu sendiri terdiri dari berbagai macam tipe. Secara default biasanya hanya disediakan tekstur sederhana seperti Wood, metal. Sedangkan untuk tekstur tingkat tinggi seperti tekur manusia kita bisa mendesainnya sendiri atau mendownload di website-website.

Teksturing sangat penting dalam desain 3D atau animasi, karena dengan teksturing inilah objek akan terlihat menjadi hidup. Karena jika hanya dengan warna biasa, suatu objek tidak akan terlihat hidup, namun dengan tekstur kita bisa mengubah gambar biasa menjadi hidup. Dengan adanya tekstur juga bisa mengubah objek yang sebenarnya kurang halus menjadi terlihat lebih halus, jika dibandingkan dengan objek tanpa tekstur.

Texturing pada citra yakni frekuensi perubahan rona pada citra yang dinyatakan dengan kasar (coarseness), sedang (regularity), dan halusnya (smoothness) suatu permukaan pada citra tersebut. Aspek tekstural dari sebuah citra dapat dimanfaatkan sebagai dasar dari segmentasi, klasifikasi, maupun interpretasi citra. Tekstur dapat didefinisikan sebagai fungsi dari variasi spasial intensitas piksel (nilai keabuan) dalam citra.

Terdapat tiga masalah utama yang berhubungan dengan tekstur yaitu :
  1. Segmentasi Tekstur (Texture segmentation) merupakan masalah yang memecah suatu citra ke dalam beberapa   komponen dimana tekstur dianggap konstan. Segmentasi tekstur melibatkan representasi suatu tekstur, dan penentuan dasar dimana batas segmen akan ditentukan.
  2. Sintesis Tekstur (Texture synthesis) yaitu berusaha untuk membangun region tekstur besar yang berasal dari contoh citra kecil yang ada. Dengan menggunakan contoh citra akan dibangun model probabilitas tekstur tersebut, dan kemudian menggambarkannya pada model probabilitas untuk menentukan tekstur citra
  3. Bentuk Tekstur (Shape from Texture) yaitu melibatkan perbaikan orientasi permukaan atau bentuk permukaan dari tekstur. Di sini diasumsikan bahwa tekstur “kelihatan sama” pada titik-titik yang berbeda pada suatu permukaan, ini artinya bahwa deformasi tekstur dari titik ke titik adalah petunjuk  bentuk permukaan.
Berdasarkan strukturnya, tekstur dapat diklasifikasikan dalam 2 golongan yaitu :
  1.  Makrostruktur; tekstur ini memiliki perulangan pola local secara periodik dalam suatu daerah citra, biasanya terdapat pada pola-pola buatan manusia dan cenderung mudah untuk direpresentasikan secara matematis
  2.  Mikrostruktur; pada tekstur ini, pola-pola lokal dan perulangan tidak terjadi begitu jelas, sehinggga tidak mudah untuk memberikan definisi tekstur yang komprehensif.
Secara garis besar teksturing merupakan salah satu teknik rendering yang pada intinya ingin merubah gambar geometris untuk menghasilkan gambar yang lebih realistis.
  1. Texture Mapping


Menurut Alan Watt (Komputer Grafis 3D, bagian 7.3), texture mapping atau pemetaan texture merupakan salah satu perkembangan pertama untuk membuat gambar tiga dimensi menjadi benda yang lebih menarik dan lebih kompleks. Pemetaan tekstur secara umum dapat diartikan sebagai proses “melukis” sebuah gambar ke permukaan, dimana gambar yang dilukis akan ditampilkan pada model yang diinginkan. Karena gambar yang telah diberikan texture itu bisa sangat kompleks - tetapi biaya texture mapping gambar kompleks persis sama dengan texture mapping gambar sederhana. Penggunaan tekstur-pemetaan memungkinkan bentuk yang cukup sederhana untuk diberikan penampilan yang sangat realistis. Contoh sederhana, misalkan dinding planar dapat memiliki tekstur batu dan dipetakan ke model untuk gambar yang sangat meyakinkan dari tiga-dimensi dinding batu, salah satu permainan komputer yang menggunakan texture mapping yang baik adalah check out 3D.
Dengan menggunakan tekstur pada model akan memungkinkan untuk membuat sebuah desain menjadi seperti nyata. Gambar dengan resolusi yang lebih tinggi akan menghasilkan hasil yang lebih baik bila dilihat dari jarak kecil hal ini dikarenakan daerah permukaan yang dilihat tidak berubah, gambar resolusi tinggi juga menyediakan lebih banyak data untuk pemeteaan pada model tersebut. Untuk mencoba contoh tersebut, coba berjalan ke dinding dalam salah satu permainan 3D dan amati cara dinding menampilkan texturenya untuk mendapatkan efek realistis nyata (dengan asumsi tidak memiliki kartu video/VGA yang memiliki texture mapping pada perangkat keras).
Texture mapping merupakan teknik pemetaan sebuah tekstur pada pola gambar wireframe, dimana wireframe yang telah dibuat akan ditampilkan memiliki kulit luar seperti tekstur yang diinginkan.
Pada bidang komputer grafik, dikenal istilah Environment Mapping yang merupakan teknik untuk mensimulasikan sebuah objek agar dapat merefleksikan lingkungan sekitarnya. Blinn dan Newell ma kali mengajukan teknik ini pada tahun 1976. Dalam environment mapping, dikenal juga Cube Mapping yang merupakan bagian dari metode tersebut, dimana fungsi dari cuba mapping adalah untuk merepresentasikan lingkungan sekitarnya dengan cara “menempelkan” enam buah gambar yang berbeda di keenam sisi objek. Hal ini membuat objek seolah memiliki enam sisi pantul, yaitu depan, belakang, kanan, kiri, atas, dan bawah. OpenGL sebagai kumpulan library, fungsi, dan prosedur untuk bidang komputer grafik telah mendukung Cube Mapping sebagai salah satu teknik Texture Mapping. Kemampuan OpenGL dalam mendukung Cube Mapping membuat dunia komputer grafik memiliki fitur tambahan untuk dapat lebih menghasilkan sesuatu yang lebih realistis. Keunggulan OpenGL yang platform-independent memungkinkan kita untuk membuat grafik yang dapat dijalankan di semua sistem operasi dengan hanya sedikit penyesuaian. 

      2.  Reflection Mapping

Reflection Mapping adalah teknik yang dapat membuat gambar/objek menjadi terlihat semakin nyata dengan cara merefleksikan lingkungan sekitar di permukaan objek. Dua metode Reflection Mapping yang dikenal adalah Chrome Mapping dan Environment Mapping. Pada metode Chrome Mapping, refleksi/pantulan lingkungan sekitar objek direpresentasikan dengan gambar yang dikaburkan (blurred) seperti halnya melihat pantulan pada benda-benda logam. Metode ini memberikan kesan mengkilap pada objek. Metode lainnya, yaitu metode Environment Mapping merepresentasikan lingkungan sekitarnya dengan benar-benar “mencerminkan” lingkungannya. Tidak seperti metode Chrome Mapping yang hanya membuat objek sekedar mengkilap, Environment Mapping memberikan kesan seolah-olah objek tersebut merupakan “cermin” dari lingkungan sekitarnya.

c.                  3. Environment Mapping


            Seperti penjelasan sebelumnya tentang environement pada bagian sebelumnya, teknik ini merupakan teknik untuk mensimulasikan sebuah objek agar dapat merefleksikan lingkungan sekitarnya. Blinn dan Newell ma kali mengajukan teknik ini pada tahun 1976. Pada bentuk yang paling sederhana, teknik environment biasanya menggunakan objek yang permukaan yang terlihat seperti krom. Konsep dari teknik ini ialah menggunakan beberapa gambar yang diambil dari lingkungan sekitarnya ataupun gambar rekaan untuk dijadikan lingkungan yang akan direfleksikan oleh objek. Ada beberapa teknik Environment Mapping, diantaranya adalah Sphere Mapping, Dual Paraboloid Mapping, dan Cube Mapping.

d.                4.  Sphere Mapping

Sphere Mapping merupakan salah satu tipe dari Environment Mapping, di mana irradiance image’ ekuivalen dengan apa yang mungkin terlihat pada sphere (bola) saat dilihat dengan proyeksi ortografik’.
Walaupun Sphere Mapping terlihat bagus, akan tetapi, teknik ini belum begitu sempurna. ldealnya, jika objek yang akan direfleksikan berada dekat dengan objek yang akan merefleksikan, refleksi yang didapat akan terlihat berbeda ketika dilihat dari titik yang berbeda pula. Tetapi, hal itu tidak akan terjadi jika menggunakan Sphere Mapping. Hasil dari Sphere Mapping hanya akan benar jika semua objek yang akan direfleksikan berada jauh dari objek yang merefleksikan. Teknik ini membutuhkan gambar yang berbeda untuk setiap sudut pandang yang berbeda, sehingga tidak tertutupnya semua permukaan objek dengan gambar tekstur. Dengan menggunakan teknik ini juga kadang menimbulkan “lubang” pada pinggiran objek.

e.                 5.  Dual Paraboloid Mapping


Dual Paraboloid Mapping dapat mengatasi keterbatasan yang ada pada Sphere Mapping, akan tetapi dengan menggunakan teknik ini akan menjadi lebih rumit bila dibandingkan dengan Sphere Mapping, hal ini dikarenakan Paraboloid Mapping membutuhkan 2 unit tekstur atau 2 tahap rendering.

f.                  6.  Cube Mapping

Cube Mapping sebagai bagian dari metode Environment Mapping merepresentasikan lingkungan sekitarnya dengan cara “menempelkan” enam buah gambar pada keenam sisi objek. Dengan menggunakan Cube Mapping, maka seolah-seolah objek yang akan dibuat memiliki enam sisi pantul, yaitu depan, belakang, kanan, kiri, atas, dan bawah.
Cube Mapping muncul sebagai pengganti dua metode mapping sebelumnya yaitu Sphere dan Paraboloid Mapping. Cube Mapping menawarkan kelebihan yang tidak bisa dilakukan seperti 2 teknik sebelumnya seperti ketergantungan sudut pandang (view dependency), keterbatasan cangkupan tekstur (wraping & distortion). Selain alasan-alasan tersebut, kerumitan dalam penerapan tekstur juga menjadi alasan menggunakan teknik mapping ke Cube Mapping. Dengan mentransformasikan tekstur ke dalam enam sisi kubus, Cube Mapping lebih menawarkan kemudahan implementasi karena pantulan pada permukaan objek cukup dikonsentrasikan di keenam sisi objek.
Tidak seperti Dual Paraboloid Mapping, teknik Cube Mapping hanya membutuhkan satu unit tekstur dan satu tahap rendering. Selain itu, teknik Cube Mapping juga mengurangi resolusi gambar (teknik Sphere Mapping dan Dual Paraboloid Mapping dapat mengurangi resolusi gambar sampai 78% dari resolusi semula). Secara konsep, Cube Mapping memang lebih “fo fhe point’ dibandingkan dengan dua teknik lainnya. Proses texturing pada Cube Mapping membutuhkan kemampuan yang lebih agar dapat mengakses enam gambar secara bersamaan.

B. RENDERING


Dalam pemodelan geometris baik yang 2D ataupun 3D maka kita mengenal istilah rendering. Sebenarnya apa sih yang di maksud rendering itu?? Rendering adalah suatu proses yang di lakukan untuk menghasilkan citra yang lebih solid dari model yang telah di bentuk.

Rendering merupakan salah satu sub topik utama dalam 3D computer graphics. Dan pada prakteknya selalu berhubungan dengan aspek-aspek yang lain. Seperti Graphic pipeline, yang merupakan tahapan terakhir, memberikan tampilan akhir pada model dan animasi.

Rendering tidak hanya digunakan pada game programming. Rendering juga sering digunakan untuk desain arsitektur, simulator, movie atau juga spesial effect pada tayangan televisi, dan design visualization. Setiap bidang tadi mempunyai perbedaan dalam keseimbangan antara features dan tehnik dalam rendering. Terkadang rendering juga diintegrasikan dengan model yang lebih besar, paket animasi, terkadang juga berdiri sendiri dan juga terkadang free open-source product.

3D rendering adalah sebuah proses kreatif yg mirip seperti fotografi atau sinematografi, karena Anda akan memberi pencahayaan pada gambar dan mengatur adegan lalu memproduksi sebuah ataupun beberapa gambar. Tidak seperti fotografi biasa, adegan yg digambarkan biasanya imajiner, dan semua yg muncul dalam 3D rendering perlu untuk diciptakan (atau diciptakan ulang) dalam sebuah komputer sebelum gambar tersebut bisa di render. Ini melibatkan banyak pekerjaan yg harus dilakukan, tetapi mengizinkan renderer jumlah kontrol kreatif yg tidak terbatas terhadap apa yg akan muncul di dalam adegan, atau bagaimana gambar tersebut dijabarkan.

Data tiga dimensional yg digambarkan bisa berupa sebuah adegan lengkap termasuk dengan model geometris dari tiga objek dimensional seperti gedung-gedung, pemandangan, atau karakter animasi - seniman 3D perlu untuk menciptakan adegan ini dengan Modeling dan Animasi sebelum Rendering dapat dilakukan. Proses 3D rendering menggambarkan adegan tiga dimensional ini sebagai sebuah gambar, diambil dari lokasi dan persektif yg telah ditentukan. Proses rendering bisa termasuk simulasi dari pencahayaan realistis, bayangan, atmosfir, warna, tekstur, dan efek optikal seperti misalnya pembiasan cahaya ataupun efek buram yg terlihat pada objek yg bergerak cepat, atau bahkan rendering bisa tidak terlihat realistis sama sekali dan memang dirancang untuk ditampilkan sebagai lukisan ataupun gambar abstrak. 

Dalam bidang 3D Graphics sendiri rendering harus dilakukan secara cermat dan teliti. Maka dari itu terkadang dilakukan pre rendering sebelum rendering dilaksanakan. Per rendering sendiri adalah proses pengkomputeran secara intensif ,yang biasanya digunakan untuk pembuatan film, menggunakan graphics card dan 3D hardware accelerator untuk penggunaan real time rendering.

Rendering merupakan sebuah proses untuk menghasilkan sebuah citra 2D dari data 3D. Prose ini bertujuan untuk untuk memberikan visualisasi pada user mengenai data 3D tersebut melalui monitor atau pencetak yang hanya dapat menampilkan data 2D.

Metode Rendering
Metode rendering yang paling sederhana dalam grafika 3D :
         1. Ray Tracing Rendering

Ray tracing sebagai  sebuah metode  rendering pertama kali digunakan pada tahun 1980 untuk pembuatan gambar tiga dimensi. Ide dari metode rendering ini sendiri berasal dari percobaan Rene Descartes,  di mana ia menunjukkan pembentukan  pelangi  dengan  menggunakan  bola  kaca berisi air dan kemudian merunut kembali arah datangnya cahaya  dengan  memanfaatkan  teori  pemantulan  dan pembiasan cahaya yang telah ada saat itu.
Metode  rendering ini  diyakini  sebagai  salah  satu metode  yang  menghasilkan  gambar  bersifat  paling fotorealistik. Konsep dasar  dari  metode ini  adalah  merunut  proses yang  dialami  oleh  sebuah  cahaya  dalam perjalanannya dari  sumber  cahaya  hingga  layar  dan  memperkirakan warna  macam apa  yang  ditampilkan  pada  pixel  tempat jatuhnya  cahaya.  Proses  tersebut  akan  diulang  hingga seluruh pixel yang dibutuhkan terbentuk.

        2. Wireframe rendering

Wireframe yaitu Objek 3D dideskripsikan sebagai objek tanpa permukaan. Pada wireframe rendering, sebuah objek dibentuk hanya terlihat garis-garis yang menggambarkan sisi-sisi edges dari sebuah objek. Metode ini dapat dilakukan oleh sebuah komputer dengan sangat cepat, hanya kelemahannya adalah tidak adanya permukaan, sehingga sebuah objek terlihat tranparent. Sehingga sering terjadi kesalahpahaman antara siss depan dan sisi belakang dari sebuah objek.

            3. Hidden Line Rendering

Metode ini menggunakan fakta bahwa dalam sebuah objek, terdapat permukaan yang tidak terlihat atau permukaan yang tertutup oleh permukaan lainnya. Dengan metode ini, sebuah objek masih direpresentasikan dengan garis-garis yang mewakili sisi dari objek, tapi beberapa garis tidak terlihat karena adanya permukaan yang menghalanginya. 
Metode ini lebih lambat dari dari wireframe rendering, tapi masih dikatakan relatif cepat. Kelemahan metode ini adalah tidak terlihatnya karakteristik permukaan dari objek tersebut, seperti warna, kilauan (shininess), tekstur, pencahayaan, dll.

            4. Shaded Rendering
 
Pada metode ini, komputer diharuskan untuk melakukan berbagai perhitungan baik pencahayaan, karakteristik permukaan, shadow casting, dll. Metode ini menghasilkan citra yang sangat realistik, tetapi kelemahannya adalah lama waktu rendering yang dibutuhkan.

     Proses Rendering dari Objek 3D
     Secara umum, proses untuk menghasilkan rendering dua dimensi dari objek-objek 3D melibatkan  5  komponen utama :
a.       Geometri
b.      Kamera
Dalam grafika 3D, sudut pandang (point of view) adalah bagian dari kamera. Kamera dalam grafika 3D biasanya tidak didefinisikan secara fisik, namun hanya untuk menentukan sudut pandang kita pada sebuah world, sehingga sering disebut virtual camera. Sebuah kamera dipengaruhi oleh dua buah faktor penting.
Faktor pertama adalah lokasi (camera location). Lokasi sebuah kamera ditentukan dengan sebuah titik (x,y,z). Faktor kedua adalah arah pandang kamera. Arah pandang kamera ditunjukkan dengan sebuah sistem yang disebut system koordinat acuan pandang atau sistem (U,N,V). Arah pandangkamera sangat penting dalam membuat sebuah citra, karena letak dan arah pandang kamera menentukan apa yang terlihat oleh sebuah kamera. Penentuan apa yang dilihat oleh kamerabiasanya ditentukan dengan sebuah titik (x,y,z) yang disebut camera interest.
Pada kamera, dikenal field of view yaitu daerah yang terlihat oleh sebuah kamera.Field of view pada grafika 3D berbentuk piramid, karena layar monitor sebuah komputer berbentuk segiempat. Objekobjek yang berada dalam field of view ini akan terlihat dari layar monitor, sedang objek-objek yang berada di luar field of view ini tidak terlihat pada layar monitor. Field of view ini sangat penting dalam pemilihan objek yang akan diproses dalam rendering. Objekobjek diluar field of view biasanya tidak akan diperhitungkan, sehingga perhitungan dalam proses rendering, tidak perlu dilakukan pada seluruh objek.
c.       Cahaya
     Sumber cahaya pada grafika 3D merupakan sebuah objek yang penting, karena dengan cahaya ini sebuah world dapat terlihat dan dapat dilakukan proses rendering. Sumber cahaya ini juga membuat sebuah world menjadi lebih realistis dengan adanya bayangan dari objek-objek 3D yang ada. Sebuah sumber cahaya memiliki jenis. Pada grafika 3D dikenal beberapa macam sumber cahaya, yaitu :

·         point light, memancar ke segala arah, namun intensitas cahaya yang diterima objek bergantung dari posisi sumber cahaya. Tipe ini mirip seperti lampu pijar dalam dunia nyata.
·         Spotlight, memancarkan cahaya ke daerah tertentu dalam bentuk kerucut. Sumber cahaya terletak pada puncak kerucut. Hanya objek-objek yang terletak pada daerah kerucut tersebut yang akan nampak.
·         ambient light, cahaya latar/alam. Cahaya ini diterima dengan intensitas yang sama oleh setiap permukaan pada benda. Cahaya latar tersebut dimodelkan mengikuti apa yang terjadi di alam, diaman dalam keadaan tanpa sumber cahaya sekalipun, benda masih dapat dilihat.
·         area light
·         directional light, memancarkan cahaya dengan intensitas sama ke suatu arah tertentu. Letak tidak mempengaruhi intensitas cahayanya. Tipe ini dapat menimbulkan efek seolah-olah sumber cahaya berada sangat jauh dari objek
·         parallel point, sama dengan directional, hanya pencahayaan ini memiliki arah dan posisi.




Model dari pencahayaan, dipakai untuk menghitung intensitas dari cahaya yang terlihat dari setiap posisi pada setiap permukaan benda yang terlihat oleh kamera. Ketika melihat sebuah benda, terlihat cahaya yang dipantulkan dari permukaan benda, dimana cahaya ini merupakan intregrasi dari sumber-sumber cahaya serta cahaya yang berasal dari pantulan cahaya permukaan-permukaan yang lain. Karena itu benda-benda yang tidak langsung menerima cahaya dari sumber cahaya, masih mungkin terlihat bila menerima cahaya pantulan yang cukup dari benda didekatnya.

Model sederhana dari sumber cahaya adalah sebuah titik sumber, dimana dari titik ini cahaya dipancarkan. Perhitungan pencahayaan bergantung pada sifat dari permukaan yang terkena cahaya, kondisi dari cahaya latar serta spesifikasi sumber cahaya.

Semua sumber cahaya dimodelkan sebagai sumber titik yang dispesifikasikan dengan :
·     *Lokasi; Lokasi (x,y,z) dari sebuah sumber cahaya akan menentukan pengaruhnya terhadap sebuah objek.
·     *Intensitas; Intensitas cahaya menyatakan kekuatan cahaya yang dipancarkan oleh sebuah sumber  *cahaya. Parameter ini merupakan angka, yang biasanya makin besar nilainya, makin terang sumber cahaya tersebut.
·      *Warna; Warna cahaya dari sumber ini akan mempengaruhi warna dari sebuah objek, jadi selain warna objek tersebut warna cahaya yang jatuh pada objek tersebut akan mempengaruhi warna pada rendering. Warna cahaya ini biasanya terdiri dari 3 warna dasar grafika komputer, yaitu: merah, hijau, biru atau lebih dikenal dengan RGB.


Ø  Karakteristik Permukaan
   Karakteristik permukaan dari sebuah objek adalah sifat dari permukaan sebuah objek. Karakteristik permukaan ini meliputi: warna, tekstur, sifat permukaan, seperti kekasaran (roughness), refleksifitas, diffuseness (jumlah cahaya yang dipantulkan oleh objek), transparansi, dan lain-lain.

     Parameter Warna dalam karakteristik permukaan direpresentasikan dengan tiga warna dasar, yaitu RGB. Saat rendering, warna pada sebuah objek tergantung dari warna dalam karakteristik permukaan dan warna cahaya yang mengenainya. Jadi citra hasil rendering mungkin akan memiliki warna yang sedikit berbeda dengan warna objek tersebut.

Parameter tekstur direpresentasikan dengan sebuah nama file. File ini akan menjadi tekstur pada permukaan objek tersebut. Selain itu juga ada beberapa parameter dalam tekstur yang berguna untuk menentukan letak tekstur pada sebuah objek, sifat tekstur, perulangan tekstur, dan lain-lain.

Sifat Permukaan, seperti diffuseness, refleksisifitas, dan lain-lain direpresentasikan dengan sebuah nilai. Nilai ini menentukan sifat dari parameter-parameter tersebut. Misalnya pada roughness, makin besar nilai parameternya, makin kasar objek tersebut.

è
Ø  Algoritma Rendering
    Algoritma Rendering adalah prosedur yang digunakan oleh suatu program untuk mengerjakan perhitungan untuk menghasilkan citra 2D dari data 3D. Kebanyakan algoritma rendering yang ada saat ini menggunakan pendekatan yang disebut scan-line rendering berarti program melihat dari setiap pixel, satu per satu, secara horizontal dan menghitung warna di pixel tersebut. Saat ini dikenal 3 algoritma :
Ray-Casting
Ray-Tracing
Radiosity


DAFTAR PUSTAKA :

Komentar

Postingan populer dari blog ini

PENGURUTAN (SORTING

Hallo fyee 😋 Kali ini aku mau bahas tentang materi Pengurutan (Sorting) nih. semoga bisa membantu yah buat kalian ------------------------------------------------------------------------------------------------------------------ Apa sih itu Pengurutan (Sorting) ? 😧 Pengurutan (Sorting) adalah proses untuk menyusun kumpulan data seragam dengan aturan urut menaik ataupun menurun. Terdapat banyak jenis metode pengurutan yang dapat digunakan dan memiliki kelebihan masing masing. Pengurutan sangat penting dalam Teknologi Informasi yang tak lepas dari pengolahan data. Pemecahan permasalahan pengolahan data dapat menjadi lebih efektif dan efisien bila data sudah dalam keadaan terurut. Seperti dalam proses pencarian data (searching), algoritma pencarian tingkat lanjut yang lebih efektif daripada cara konvensional seperti Binary Search ataupun Interpolation Search membutuhkan data yang sudah terurut. Contoh lain di mana data terurut dibutuhkan adalah dalam penggabungan data menggu

metode pengurutan data

1.       Selection Sort Algoritma sorting sederhana yang lain adalahSelection Sort. Ide dasarnya adalah melakukan beberapa kali pass untuk melakukan penyeleksianelemen struktur data. Untuk sorting ascending(menaik), elemen yang paling kecil di antara elemen – elemenyang belum urut, disimpan indeksnya, kemudian dilakukan pertukaran nilai elemen denganindeks yang disimpan tersebut dengan elemen yangpaling depan yang belum urut. Sebaliknya, untuksorting descending (menurun), elemen yang  paling. besar yang disimpan indeksnya kemudian ditukar. Algoritma selection sort dapat dirangkum sebagaiberikut: 1.)     Temukan nilai yang paling minimum (atau sesuaikeinginan) di dalam struktur data. Jika ascending, maka yang harus ditemukan adalah nilai yang paling minimum. Jika descending, maka temukan nilai yang paling maksimum. 2.)     Tukar nilai tersebut dengan nilai pada posisi pertama di bagian struktur data yang  belum diurutkan. 3.)     Ulangi langkah di atas untuk bagian struktur