Baca dalam bahasa Inggris

Bagikan melalui


fungsi wglMakeCurrent (wingdi.h)

Fungsi wglMakeCurrent membuat konteks penyajian OpenGL tertentu sebagai konteks penyajian alur panggilan saat ini. Semua panggilan OpenGL berikutnya yang dilakukan oleh utas digambar pada perangkat yang diidentifikasi oleh hdc. Anda juga dapat menggunakan wglMakeCurrent untuk mengubah konteks penyajian utas panggilan saat ini sehingga tidak lagi terkini.

Sintaks

BOOL wglMakeCurrent(
  HDC   unnamedParam1,
  HGLRC unnamedParam2
);

Parameter

unnamedParam1

Menangani konteks perangkat. Panggilan OpenGL berikutnya yang dilakukan oleh utas panggilan digambar pada perangkat yang diidentifikasi oleh hdc.

unnamedParam2

Tangani ke konteks penyajian OpenGL yang ditetapkan fungsi sebagai konteks penyajian utas panggilan.

Jika hglrc adalah NULL, fungsi membuat konteks penyajian alur panggilan saat ini tidak lagi terkini, dan merilis konteks perangkat yang digunakan oleh konteks penyajian. Dalam hal ini, hdc diabaikan.

Menampilkan nilai

Ketika fungsi wglMakeCurrent berhasil, nilai yang dikembalikan adalah TRUE; jika tidak, nilai yang dikembalikan adalah FALSE. Untuk mendapatkan informasi kesalahan yang diperluas, hubungi GetLastError.

Keterangan

Parameter hdc harus merujuk ke permukaan gambar yang didukung oleh OpenGL. Tidak perlu hdc yang sama yang diteruskan ke wglCreateContext ketika hglrc dibuat, tetapi harus berada di perangkat yang sama dan memiliki format piksel yang sama. Transformasi dan kliping GDI dalam hdc tidak didukung oleh konteks penyajian. Konteks penyajian saat ini menggunakan konteks perangkat hdc hingga konteks penyajian tidak lagi terkini.

Sebelum beralih ke konteks penyajian baru, OpenGL menghapus konteks penyajian sebelumnya yang saat ini ke utas panggilan.

Utas dapat memiliki satu konteks penyajian saat ini. Proses dapat memiliki beberapa konteks penyajian dengan cara multithreading. Utas harus mengatur konteks penyajian saat ini sebelum memanggil fungsi OpenGL apa pun. Jika tidak, semua panggilan OpenGL diabaikan.

Konteks penyajian hanya dapat terkini ke satu utas pada satu waktu. Anda tidak dapat membuat konteks penyajian terkini ke beberapa utas.

Aplikasi dapat melakukan gambar multithread dengan membuat konteks penyajian yang berbeda terkini ke utas yang berbeda, menyediakan setiap utas dengan konteks penyajian dan konteks perangkatnya sendiri.

Jika terjadi kesalahan, fungsi wglMakeCurrent membuat konteks penyajian utas saat ini tidak terkini sebelum kembali.

Persyaratan

   
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header wingdi.h
Pustaka Opengl32.lib
DLL Opengl32.dll

Lihat juga

OpenGL di Windows

Fungsi WGL

wglCreateContext

wglDeleteContext

wglGetCurrentContext

wglGetCurrentDC