Tuesday, April 3, 2012

GAME ENGINE

    Dalam kalangan gamer, istilah game engine sudah menjadi salah satu hal yang paling sering di sebutkan. Sebuah game tidak akan menjadi sebuah mahakarya jika tidak ada game engine yang mampu memberikan visual yang menggiurkan. Game engine memberikan kemudahan dalam menciptakan konsep sebuah game yang akan di buat. Mulai dari sistem rendering, physics, arsitektur suara scripting, A.I, dan bahkan sistem networking. Game engine dapat dikatakan sebagai jiwa dari seluruh aspek sebuah game.

    Game Engine adalah sebuah perangkat lunak sistem yang dirancang untuk penciptaan dan pengembangan video game. Ada banyak mesin permainan yang dirancang untuk bekerja pada konsol permainan video dan sistem operasi desktop, seperti Microsoft Windows, Linux, dan Mac OS X. Fungsionalitas inti biasanya disediakan oleh mesin permainan mencakup mesin render ( “renderer”) untuk 2D atau 3D grafis, sebuah mesin fisika atau tabrakan (dan tanggapan tabrakan), suara, script, animasi, kecerdasan buatan, jaringan, streaming, manajemen memori, threading, lokalisasi dukungan, dan sebuah adegan grafik. Proses pengembangan permainan sering dihemat oleh sebagian besar menggunakan kembali mesin permainan yang sama untuk menciptakan permainan yang berbeda.

Ada Berapa Tipe Game Engine?


Game engine biasanya datang dengan berbagai macam jenis dan ditujukan untuk berbagai kemampuan pemrograman. Ada 3 tipe game engine yang ada saat ini, diantaranya :


1. Roll-your-own game engine

 
    Banyak perusahaan game kecil seperti publisher indie biasanya menggunakan engine-nya sendiri. Mereka menggunakan API seperti XNA, DirectX atau OpenGL untuk membuat game engine mereka sendiri. Di sisi lain, mereka kadang menggunakan library komersil atau yang open source. Terkadang mereka juga membuat semuanya mulai dari nol. Biasanya game engine tipe ini lebih disukai karena selain kemungkinan besar diberikan secara gratis, juga memperbolehkan mereka (para developer) lebih fleksibel dalam mengintegrasikan komponen yang diinginkan untuk dibentuk sebagai game engine mereka sendiri. Kelemahannya banyak engine yang dibuat dengan cara semacam ini malah menyerang balik developernya. Tower Games Studio membutuhkan satu tahun penuh untuk menyempurnakan game engine-nya, hanya untuk ditulis ulang semuanya dalam beberapa hari sebelum penggunaannya karena adanya bug kecil yang sangat mengganggu.

2. Mostly-ready game engines
 

  Engine ini biasanya sudah menyediakan semuanya begitu diberikan pada developer/programer. Semuanya termasuk contoh GUI, physiscs, libraries model, texture dan lain-lain. Banyak dari mereka yang sudah benar-benar matang, sehingga dapat langsung digunakan untuk scripting sejak hari pertama. Game engine semacam ini memiliki beberapa batasan, terutama jika dibandingkan dengan game engine sebelumnya yang benar-benar terbuka lebar. Hal ini ditujukan agar tidak terjadi banyak error yang mungkin terjadi setelah sebuah game yang menggunakan engine ini dirilis dan masih memungkinkan game engine-nya tersebut untuk mengoptimalkan kinerja game-nya. Contoh tipe game engine seperti ini adalah Unreal Engine, Source Engine, id Tech Engine dan sebagainya yang sudah sangat optimal dibandingkan jika harus membuat dari awal. Dengan hal ini dapat menyingkat menghemat waktu dan biaya dari para developer game.

3. Point-and-click engines

 
    Engine ini merupakan engine yang sangat dibatasi, tapi dibuat dengan sangat user friendly. Anda bahkan bisa mulai membuat game sendiri menggunakan engine seperti GameMaker, Torque Game Builder dan Unity3D. Dengan sedikit memanfaatkan coding, kamu sudah bisa merilis game point-and-click yang kamu banget. Kekurangannya terletak pada terbatasnya jenis interaksi yang bisa dilakukan dan biasanya hal ini mencakup semuanya, mulai dari grafis hingga tata suara. Tapi bukan berarti game engine jenis ini tidak berguna, bagi developer cerdas dan memiliki kreativitas tinggi, game engine seperti ini bisa dirubah menjadi sebuah game menyenangkan, seperti Flow. Game engine ini memang ditujukan bagi developer yang ingin menyingkat waktu pemrogramman dan merilis game-game mereka secepatnya.

Contoh Game Engine


Banyak sekali game engine yang ada sekarang ini mulai dari yang gratis sampai yang berbayar. Berikut contoh 10 game engine yang bagus berdasarkan banyaknya review yang ada pada situs DevMaster.net tersebut.


- Game engine gratis


1. OGRE

2. Irrlicht

3. Panda3D. Contoh game-nya : Pirates of the Caribbean Online.

4. Crystal Space

5. jME

6. Blender Game Engine

7. Reality Factory

8. The Nebula Device 2

9. RealmForge

10. OpenSceneGraph


- Game engine berbayar


1. C4 Engine

2. Torque Game Engine

3. 3DGameStudio

4. TV3D SDK 6.5

5. Leadwerks Engine 2

6. Unity. Contoh game-nya : Tiger Woods PGA Tour Online.

7. DX Studio

8. NeoAxis Engine

9. Visual3D.NET Game Engine

10. Esenthel Engine

Game engine yang akan saya ambil untuk diperbandingkan adalah C4 Engine (berbayar) dan OGRE (gratis). Berikut perbandingannya.


Perbandingan Game Engine C4 Engine dengan OGRE


Sebelum dibandingkan alangkah lebih baiknya saya berikan gambaran singkat dari kedua game engine tersebut.


• C4 Engine. Telah mendukung banyak sistem operasi. Game engine ini sudah memiliki paket lengkap untuk pembuatan suatu game dengan dilengkapi oleh teknologi musik dan suara 3D, komunikasi jaringan, perangkat input, memori dan manajemen sumber daya, dan masih banyak lagi.


• OGRE. Singkatan dari Object-Oriented Graphics Rendering Engine yang merupakan game engine fleksibel yang berbasis scene ditulis dengan bahasa C++ didesain agar lebih mudah dipakai oleh para developer untuk memproduksi game dan demo yang menggunakan hardware 3D. Library kelas menggambarkan semua rincian dari penggunaan sistem library seperti Direct3D dan OpenGL yang menyediakan sebuah antarmuka berbasis pada objek dunia dan kelas intuitif lainnya.





Sumber :


http://en.wikipedia.org/wiki/Game_engine


http://widilovers.ngeblogs.com/2010/03/28/analisa-game-engine


http://en.wikipedia.org/wiki/List_of_game_engines


http://www.ilhamsk.com


http://fitrairfansyah.blogspot.com/2010/06/komputer-dan-game.html

http://dio-donaika.blogspot.com/2011/03/pengertian-game-engine.html  

Thursday, March 29, 2012

DASAR - DASAR TEORI GAME

DASAR - DASAR TEORI GAME

Teori permainan adalah suatu cara belajar yang digunakan dalam menganalisa interaksi antara sejumlah pemain maupun perorangan yang menunjukkan strategi-strategi yang rasional. Teori permainan pertama kali ditemukan oleh sekelompok ahli Matematika pada tahun 1944. Teori itu dikemukakan oleh John von Neumann and Oskar Morgenstern yang berisi :

“Permainan terdiri atas sekumpulan peraturan yang membangun situasi bersaing dari dua sampai beberapa orang atau kelompok dengan memilih strategi yang dibangun untuk memaksimalkan kemenangan sendiri atau pun untuk meminimalkan kemenangan lawan. Peraturan-peraturan menentukan kemungkinan tindakan untuk setiap pemain, sejumlah keterangan diterima setiap pemain sebagai kemajuan bermain, dan sejumlah kemenangan atau kekalahan dalam berbagai situasi.”

Pengertian Game

Menurut Agustinus Nilwan dalam bukunya “Pemrograman Animasi dan Game Profesional” terbitan Elex Media Komputindo, game merupakan permainan komputer yang dibuat dengan teknik dan metode animasi. Jika ingin mendalami pengunaan animasi haruslah memahami pembuatan game. Atau jika ingin membuat game, maka haruslah memahami teknik dan metode animasi, sebab keduanya saling berkaitan.


Animasi

Animasi dapat dibuat dengan tiga teknik berbeda, yaitu Image, Xoring serta make. Dan dalam pergerakannya dapat bertipe object sprite atau object frame. Juga bisa dibedakan atas metode animasi yang digunakan antara animasi frame, bibliting dan realtime. Walaupun terbagi atas berbagai definisi berbeda, tapi dalam prakteknya teori-teori tersebut dapat digabungkan atau saling berhubungan sehingga tidak murni dipakai sendiri. Macam-macam animasi yang digunakan dalam membuat sebuah game akan diterangkan sebagai berikut :

1. Animasi Dengan Teknik Image

Animasi dengan teknik ini adalah menyimpan image sebagai sebuah sprite dalam memori yang kemudian akan ditampilkan di backgroundnya. Dalam teknik ini animasi yang disimpan harus berlatar belakang sesuai backgroundnya. Animasi dengan teknik ini biasanya sulit dalam pembuatan gambarnya, sebab harus banyak dan melakukan penyamaan dan posisi. Akan tetapi teknik ini mudah dalam hal memainkan animasinya.

2. Animasi Dengan Teknik Xoring
Teknik ini adalah teknik animasi yang mudah dan sederhana, sebab selain gambarnya satu sprite, cara menampilkannya juga jauh lebih mudah dibanding dengan teknik sebelumnya. Pembuatan gambarnya sangat mudah, sebab yang dibuat adalah spritenya saja dan tidak perlu menyamakan dengan backgroundnya. Kelemahan dari teknik ini adalah memiliki efek buruk yaitu tembus pandang dan mengganti warna sprite, maka hal ini tidak baik digunakan dalam animasi yang backgroundnya bergambar.

3. Animasi Dengan Teknik Make

Animasi dengan teknik ini biasanya digunakan untuk animasi umum, tapi biasanya digunakan untuk proses pembuatan animasi. Animasi dengan teknik ini memiliki sprite yang terus menerus digenerate oleh program, kemudian ditampilkan dengan perhitungan tertentu.
Animasi ini biasanya dilakukan oleh 3D modelling dan shading software seperti AutoCad, 3D Studio, Presidio 3D Workshop dan lain-lain. Operasi diatas haruslah digenerate secara langsung dengan perhitungan sehingga saat pembuatan hampir bersamaan dengan saat menampilkannya

4. Animasi Dengan Tipe Object Sprite
Animasi ini menggunakan sprite sebagai pemeran utama sedangkan object lainnya hanya background diam. Prosesnya adalah mebuat gambar sprite dengan latar belakang warna hitam, lalu dibuat juga sprite yang sama tetapi berwarna hitam dan latar belakangnya adalah warna tertinggi, kemudian ditempatkan dengan pertama-tama menyimpan background yang akan ditimpa oelh sprite dan ditempatkan sprite dengan Xor dan Ditimpa dengan warna tertinggi secara Xor.

5. Animasi Dengan Tipe Object Frame
Animasi ini menitik beratkan animasi yang dimainkan hanya pada sprite objectnya saja, akan tetapi seluruh backgroundnya juga seolah-olah ikut digerakkan.

6. Metode Animasi frame
Metode ini adalah metode animasi yang mendukung tipe object frame. Karena metode animasi dengan metode full-screen, maka frame yang tampil haruslah disiapkan terlebih dahulu dalam bebera page sebelumnya. Karena hal tersebut maka pengambilan gambarnya haruslah sangat cepat, sehingga tidak menjadikan animasi lamban dan tersendat. Animasi frame ini haruslah menampilkan gambar fullscreen yang bergerak, agar efek tersendat dari pergantian frame tidak menyolok.

7. Metode Animasi BitBlt

Metode animasi ini biasanya disebut sprite animation, array animation, blocked animation, partial screen animation, snapshot animation atau arcade animation. Prinsip dari metode ini adalah menyimpan image dan memainkan animasinya dalam bentuk satu atau bebera sprite kecil.

8. Metode Animasi Real-Time

Dalam metode ini biasanya semua animasi yang sedang tampil atau yang akan dibuat dilakukan bersama sehingga tidak perlu disiapkan terlebih dahulu. Karena animasi ini lambat dan tersendat maka animasi dengan metode ini akan bagus jika pergerakan yang akan dilakukan adalah tidak diketahui sebelumnya dan tiba-tiba muncul. Metode ini tidak disarankan untuk animasi biasa-biasa saja, akan tetapi sebaiknya digunakan untuk keperluan khusus seperti rotating dan tweening

Friday, December 30, 2011

KONTROVERSI SEA GAMES KE 26

SEA Games merupakan ajang olahraga bergengsi yang dilaksanakan oleh Negara – Negara Asean. SEA Games ke 26 yang diselenggarakan di Indonesia pada bulan November kemarin ternyata menuai banyak kontroversi. Yang dimulai dari belum siapnya sarana olahraga yang akan digunakan hingga diliburkannya siswa – siswa SD, SMP dan SMA. Lalu bagaimana kita menanggapi semua kontroversi ini?

Suara yang meminta pelaksanaan SEA Games 2011 ditunda mulai bergema dari gedung wakil rakyat. Wakil Ketua Komisi X DPR Utut Adianto adalah salah seorang yang serius menyarankan agar pemerintah tidak lagi memaksakan penyelenggaraan event olahraga se-Asia Tenggara itu sesuai dengan jadwal semula, yaitu 11–22 November 2011. Dia menyarankan agar pemerintah memundurkan jadwal pelaksanaan SEA Games setidaknya 3–4 bulan. Berdasar pantauan pihaknya hingga beberapa hari terakhir, sejumlah venue untuk beberapa cabang olahraga masih belum siap. Di antaranya, kolam renang, stadion atletik, dan lapangan tembak. Karena kesuksesan penyelenggaraan SEA Games tidak hanya cukup dijawab dengan pernyataan pemerintah yang berulang-ulang siap mempercepat pengerjaan venue. Persoalan penyiapan venue bukan semata –mata persoalan kesiapan menambah jumlah tenaga pekerja atau semacamnya. Kesuksesan dari acara ini juga dilihat dari layak atau tidaknya sarana olahraga untuk berbagai pertandingan di masing – masing cabang olahraga.

Tetapi tidak semua anggota menyampaikan kritik dan kekhawatirannya atas pelaksanaan SEA Games. Terdapat beberapa orang yang menyatakan bahwa pelaksanaan SEA Games kali ini akan berjalan lancer, semua sarana dan prasarana sudah disiapkan secara maksimal. Tetapi menurut saya penyelenggaraan SEA Games kali ini memang tidak maksimal karena banyaknya sarana yang belum siap sepenuhnya. Para atlit pun mengeluhkan tidak maksimalnya persiapan kelengkapan untuk SEA Games, tidak hanya dari para pemain yang mengeluhkan SEA Games kali ini. Kontingen dayung Singapura pun memprotes penyiapan fasilitas dayung, sementara kontingen Filipina dikutip menyebut SEA Games ini paling kacau dibanding perhelatan sebelumnya.

Sementara untuk masalah siswa diliburkan juga banyak menuai kritik keras dari berbagai pihak. Dirjen Pendidikan Dasar misalnya, meminta dengan tegas bagi para siswa yang diliburkan agar mendapatkan waktu belajar pengganti pada saat diliburkan. Memang waktu belajar pengganti sangat dibutuhkan agar siswa dapat mengejar semua materi pelajaran yang akan dihadapi pada ujian.
Tapi diluar dari semua kontroversi itu, SEA Games kali ini sudah berjalan dengan sesuai rencana. Indonesia berhasil menjadi juara umum dengan mengoleksi medali paling banyak dari Negara ASEAN lainnya. Itu menutupi berbagai kontroversi yang ada sebelum pelaksanaan SEA Games ke 26 berlangsung.

KONTROVERSI PULAU KOMODO MENJADI NEW 7 WONDERS

Pada Desember 2007, terpilih destinasi wisata di Indonesia yang masuk nominasi New 7 Wonders, yaitu Taman Nasional Komodo, Danau Toba dan Anak Gunung Krakatau bersama-sama dengan 440 dari 220 Negara. Pada bulan Agustus 2008, Indonesia mendaftar sebagai salah satu panitian pendukung resmi dengan membayar biaya administrasi masing-masing destinasi sebesar US$199 atau sekitar Rp 1,7 juta. Barulah pada 21 Juli 2001, Taman Nasional Komodo menjadi nominasi dari Indonesia dari 28 finalis lainnya. Setelah kesediaan Indonesia mengikuti N7W, dan disinilah mulai banyak kontroversi yang terjadi.

Kontroversi yang ada antara lain, Indonesia diminta membayar US$10 juta atau sekitar Rp 89,7 miliar, kemudian kontroversi vote komodo yang dimulai dari internet lalu sms dengan tarif Rp 1000/sms hingga Rp 1/sms, kemudian ditambah lagi pernyataan yang akan menjadikan pulau komodo menjadi bali kedua. Tapi jika benar pulau komodo akan menjadi bali keuda, maka ditakutkan populasi komodo akan semakin menurun dikarenakan aktivitas manusia yang terlalu banyak.

Kemudian mengenai vote komodo, banyak yang mengatakan bahwa keberadaan kantor N7W di Swiss tidak sah dan bukan bagian dari UNESCO yang berurusan dengan warisan dunia, yang jelas dari organisasi ini hanyalah alamat emailnya saja. Untuk itu pemerintah Indonesia menghimbau agar rakyat Indonesia tidak terjebak dalam permainan N7W yang disinyalir hanya mengambil keuntungan dari tarif sms yang dikirim untuk vote pulau komodo.

Jadi kita sebagai masyarakat Indonesia harus mampu mengetahui secara jelas keberadaan organisasi N7W ini, jangan sampai kita tertipu oleh organisasi ini dan jangan sampai kita dirugikan juga. Sekarang tinggal kembali kepada kita bagaimana menanggapi pulau komodo menjadi 7 keajaiban dunia yang baru, kita harus bisa menjaga kelestarian pulau komodo ini dari kepunahan.

Thursday, November 17, 2011

RUANG ALAMAT LOGIKA DAN RUANG ALAMAT FISIK

RUANG ALAMAT LOGIKA DAN RUANG ALAMAT FISIK

Alamat yang dibangkitkan oleh CPU disebut alamat logika (logical address)
dimana alamat terlihat sebagai uni memory yang disebut alamat fisik (physical address).
Tujuan utama manajemen memori adalah konsep meletakkan ruang alamat logika ke
ruang alamat fisik. Hasil skema waktu kompilasi dan waktu pengikatan alamat pada
alamat logika dan alamat memori adalah sama. Tetapi hasil skema waktu pengikatan
alamat waktu eksekusi berbeda. dalam hal ini, alamat logika disebut dengan alamat maya
(virtual address). Himpunan dari semua alamat logika yang dibangkitkan oleh program
disebut dengan ruang alamat logika (logical address space); himpunan dari semua alamat fisik
yang berhubungan dengan alamat logika disebut dengan ruang alamat fisik (physical
address space).

Memory Manajement Unit (MMU) adalah perangkat keras yang memetakan
alamat virtual ke alamat fisik. Pada skema MMU, nilai register relokasi ditambahkan ke
setiap alamat yang dibangkitkan oleh proses user pada waktu dikirim ke memori.

Register basis disebut register relokasi. Nilai dari register relokasi ditambahkan ke
setiap alamat yang dibangkitkan oleh proses user pada waktu dikirim ke memori.
sebagai contoh, apabila basis 14000, maka user mencoba menempatkan ke alamat lokasi
0 dan secara dinamis direlokasi ke lokasi 14000. Pengaksesan ke lokasi logika 346,
maka akan dipetakan ke lokasi 14346. Sistem operasi MS-DOS yang masih keluarga
intel 80X86 menggunakan empat register relokasi ketika proses loading dan running.
User program tidak pernah melihat alamat fisik secara real. Program dapat
membuat sebuah penunjuk ke lokasi 346, mengirimkan ke memory, memanipulasinya,
membandingkan dengan alamat lain, semua menggunakan alamat 346. Hanya ketika
digunakan sebagai alamat memory akan direlokasi secara relatif ke register basis.

Tuesday, November 15, 2011

Overlay

Overlay

Sebuah proses dapat lebih besar daripada jumlah memori yang dialokasikan
untuk proses, teknik overlay biasanya digunakan untuk kasus ini. Teknik Overlay
biasanya digunakan untuk memungkinkan sebuah proses mempunyai jumlah yang lebih
besar dari memori fisik daripada alokasi memori yang diperuntukkan. Ide dari overlay
adalah menyimpan di memori hanya instruksi dan data yang diperlukan pada satu
waktu. Jika intruksi lain diperlukan, maka instruksi tersebut diletakkan di ruang
memori menggantikan instruksi yang tidak digunakan lagi.
Sebagai contoh misalnya terdapat two-pass assembler. Selama pass 1, dibangun
table symbol, dan selama pass 2 dibangkitkan kode bahasa mesin. Kita dapat membagi
assembler ke dalam kode pass 1, kode pass 2, tabel symbol dan rutin umum yang
digunakan baik pada pass 1 maupun pass 2. Diasumsikan ukuran komponen sebagai
berikut :

     Pass 1 70K
     Pass 2 80K
     Tabel symbol 20K
     Rutin umum 30K

Apabila semua diletakkan di memori memerlukan 200K. Jika hanya tersedia tempat
150K, proses tidak dapat dijalankan. Pass 1 dan pass 2 tidak perlu berada di memori
pada waktu yang sama. Dengan menggunakan overlay, rutin dibagi dalam 2 overlay.
Overlay A adalah tabel symbol, rutin umum dan pass1 (membutuhkan total 120K) dan
overlay B terdiri dari tabel symbol, rutin umum dan pass 2 (membutuhkan 130K).
Ditambahkan 10K untuk driver overlay dan dimulai dari overlay A. Setelah selesai
dijalankan overlay B dengan mengganti tempat dari overlay A. Overlay tidak membutuhkan
dukungan khusus dari sistem operasi. User dapat mengimplementasikannya secara 
lengkap menggunakan struktur file sederhana, membaca dari file ke memori dan 
meloncat ke memori dan mengeksekusi instruksi read yang lebih baru. Sistem operasi 
memberitahu hanya jika terdapat I/O yang melebihi biasanya. Penggunaan overlay 
terbatas untuk beberapa sistem yang mempunyai jumlah memori fisik terbatas dan 
kekurangan dukungan H/W untuk teknik yang lebih lanjut.

Monday, November 14, 2011

Pengikatan Alamat (Address Binding) and Dinamic Loading

Pengikatan Alamat (Address Binding)

Pengikatan alamat adalah cara instruksi dan data (yang berada di disk sebagai file yang dapat dieksekusi) dipetakan ke alamat memori. Sebagian besar sistem memperbolehkan sebuah proses user (user process) untuk meletakkan di sembarang tempat dari memori fisik.  Sehingga, meskipun alamat dari komputer dimulai pada 00000, alamat pertama dari proses user tidak perlu harus dimulai 00000. Pada beberapa kasus, program user akan melalui beberapa langkah sebelum dieksekusi (Gambar 7-1). Alamat pada source program  umumnya merupakan alamat simbolik.  Sebuah compiler biasanya melakukan pengikatan alamat simbolik (symbolic address) ke alamat relokasi dipindah (relocatable address). Misalnya compiler mengikatkan alamat simbolik ke alamat relokasi “14 byte from the beginning of this module”.  Editor Linkage mengikatkan alamat relokasi ini ke alamat absolute (absolute addresses)  “74014”.
Instruksi pengikatan instruksi dan data ke alamat memori dapat dilakukan pada saat :
• Compile time : Jika lokasi memori diketahui sejak awal, kode absolut dapat dibangkitkan, apabila terjadi perubahan alamat awal harus dilakukan kompilasi ulang.  Misalnya : program format .com pada MS-DOS   adalah kode absolut yang diikat pada saat waktu kompilasi
• Load time : Harus membangkitkan kode relokasi jika lokasi memori tidak diketahui pada saat waktu kompilasi.
• Execution time : Pengikatan ditunda sampai waktu eksekusi jika proses dapat dipindahkan selama eksekusi dari satu segmen memori ke segmen memori lain. 
 
Dinamic Loading

Untuk memperoleh utilitas ruang memori, dapat menggunakan dynamic loading. Dengan dynamic loading, sebuah rutin tidak disimpan di memori sampai  dipanggil. Semua rutin disimpan pada disk dalam format relocatable load. Mekanisme dari dynamic loading adalah program utama di-load dahulu dan dieksekusi.  Bila suatu routine perlu memanggil routine lain, routine yang dipanggil lebih dahulu diperiksa apakah rutin yang dipanggil sudah di-load.  Jika tidak, relocatable linking loader dipanggil untuk me-load rutin yg diminta ke memori dan meng-ubah tabel alamat. Keuntungan dari dynamic loading adalah rutin yang tidak digunakan tidak pernah di-load.  Skema ini lebih berguna untuk kode dalam jumlah besar diperlukan untuk menangani kasus-kasus yang jarang terjadi seperti error routine. Dinamic loading tidak memerlukan dukungan khusus dari sistem operasi.  Sistem operasi hanya perlu menyediakan beberapa rutin pustaka untuk implementasi dynamic loading. Dinamic Linking sebagian besar sistem operasi hanya men-support static linking, dimana sistem library language diperlakukan seperti obyek modul yang lain dan dikombinasikan dengan loader ke dalam binary program image. Konsep dynamic linking sama dengan dynamic loading.  Pada saat loading, linking ditunda sampai waktu eksekusi.  Terdapat kode kecil yang disebut stub digunakan untuk meletakkan rutin library di memori dengan tepat.  Stub diisi dengan alamat rutin dan mengeksekusi rutin.  Sistem operasi perlu memeriksa apakah rutin berada di alamat memori. Dinamic linking biasanya digunakan dengan sistem library, seperti language subroutine library. Tanpa fasilitas ini, semua program pada sistem perlu mempunyai copy dari library language di dalam executable image. Kebutuhan ini menghabiskan baik ruang disk maupun memori utama. Bagaimanapun, tidak seperti dynamic loading, dynamic linking membutuhkan beberapa dukungan dari sistem operasi, misalnya bila proses-proses di memori utama saling diproteksi, maka sistem operasi melakukan pengecekan apakah rutin yang diminta berada diluar ruang alamat.  Beberapa proses diijinkan untuk mengakses memori pada alamat yang sama.  File dynamic linking berekstensi .dll, .sys atau .drv