Rumah >pembangunan bahagian belakang >C++ >Mengapa Pemetaan Normal OpenGL Saya Tidak Berfungsi?
Pemetaan Biasa: Salah Konfigurasi
Walaupun usaha anda untuk melaksanakan pemetaan biasa dalam aplikasi OpenGL anda, hasilnya masih jauh dari memuaskan. Artikel ini menyelidiki kemungkinan punca masalah anda.
Vertex Shader dan Matriks TBN
Vertex shader anda bertanggungjawab untuk menghasilkan tangen (T), bitangen ( B), dan matriks normal (N) (TBN). Maklumat ini penting untuk pemetaan biasa, kerana ia mentakrifkan sistem koordinat setempat untuk setiap bucu.
Dalam fungsi pengiraan matriks TBN anda, anda mengira vektor tangen dan bitangen daripada koordinat UV yang disediakan untuk setiap segi tiga. Walau bagaimanapun, adalah penting untuk mengesahkan ketepatan pengiraan ini. Anda harus memastikan bahawa tangen adalah berserenjang dengan bitangen dan kedua-dua vektor adalah ortogon kepada normal.
Pelodar Serpihan dan Pemetaan Normal
Peneroles serpihan ialah tempat pemetaan biasa berlaku. Dalam shader anda, anda mencuba peta biasa dengan betul dan menukar nilai RGBnya kepada vektor biasa. Walau bagaimanapun, pengiraan warna nampaknya salah. Khususnya:
Isu Potensi Lain
Atas ialah kandungan terperinci Mengapa Pemetaan Normal OpenGL Saya Tidak Berfungsi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!