Başlangıçta ışık vardı
Bir fragmana uygulanacak belirli matematiksel işlemleri belirten OpenGL aydınlatması, daha sonra nihai bir renk elde etmek için dokularla birleştirildi.
Ve sonra Quake vardı
Deprem olmadı bu tür bir aydınlatmayı birçok nesnesi için kullanmadı. Bunun yerine, nihai bir renk elde etmek için nesne dokusuyla çarpılan (veya "modüle edilen) aydınlatmayı temsil etmek için ikinci bir doku kullandı.
Ancak, zamanın donanımı tek bir işlemde bunu desteklemedi. Bu yüzden Quake'in sahne nesnelerini iki kez çizmesi gerekiyordu:
- Temel dokuları döşemek için her şeyi bir kez çizin.
- Modülasyonlu bir karışım modu ayarlayın.
- Aydınlatma dokularını uygulamak için her şeyi ikinci kez çizin.
Bu elbette yavaştı; tüm geometrilerin sadece iki kez dönüştürülmesi ve kırpılması gerekmiyordu (bu günlerde bir CPU işlemi idi), ancak ekrandaki her piksele oluşturma sırasında iki kez dokunuldu.
Çok katlı girin
Multitexture bunun çözümüydü ve başlangıçta sadece belirli tüketici 3DFX kartlarında bulunan GL_SGIS_multitexture uzantısıyla ortaya çıktı. Başlangıçta sadece iki dokuyu karıştırmaya izin verdi (ve sınırlı sayıda karışım modu ile).
Orijinal GLQuake benioku dosyasından alıntı yapmak için :
GL_SGIS_multitexture
Multitextures desteği, bazı donanımların dünyayı iki yerine bir geçişte oluşturmasına olanak tanır. GLQuake biri dünya dokuları, diğeri dokularla harmanlanmış ışık haritaları için iki geçiş kullanır. Bazı donanımlarda, GL_SIGS_multitexture destekli OpenGL uygulamasıyla, bu tek geçişte yapılabilir. Bunu destekleyen donanımda, kare hızında% 60 ila% 100 artış elde edersiniz. Şu anda, yalnızca 3DFX çift TMU kartları (Obsidian 2220 gibi) bu uzantıyı desteklemektedir, ancak yakında diğer donanımlar da gelecektir.
Şu anda normal haritalama, piksel başına herhangi bir diğer aydınlatma, hatta gölgelendirici ve benzeri gibi etkilerin sadece mevcut olmadığını (iyi yaptıklarını, ancak esas olarak sadece akademik makalelerde ve araştırma projelerinde) ve gerçek zamanlı oluşturmada kullanım için uygun görülmedi).
Ve bugüne kadar
Buradan hemen hemen diğer cevaplarda anlatıldığı gibi. Çoklu kurgu zaman içinde standart bir özellik haline geldi, daha fazla karışım modu mevcut hale geldi ve sonunda rasgele gölgelendirici koduna yol açtı.
Ancak sorunuzun amaçları için önemli olan şudur: başlangıçta standart işlevsellik, renderleme sırasında her seferinde tek bir doku kullanabiliyordu . Birden fazla kullanabilmek, yalnızca ileri teknoloji donanımların desteklediği ek işlevlerdi ve bu nedenle bir ad gerektiriyordu. Bu isim "çift doku" olabilirdi (ilk uygulamalar iki dokuyu desteklediğinden), ancak bir gözü gelecekte "çok doku" adı seçildi.
Tüm bunların tarihi hakkında daha fazla okuma burada ve bu Programcılar'da iyi bir tarihsel yazı (daha geniş bağlam ve çok bölümlü oynatma kısmı) mevcuttur .