Anda mungkin ingin melihat The Compact YCoCg Framebuffer . Ini menggunakan buffer 2-channel untuk menyimpan luminance untuk setiap piksel dan dua komponen kroma masing-masing dalam setengah piksel, membentuk kotak-kotak. Ini juga menggunakan filter upampling tepi-sadar di ujung bingkai untuk merekonstruksi komponen kroma yang hilang dan mengkonversi kembali ke RGB.
Anda dapat memperluas ini ke buffer 3-saluran tunggal untuk menyimpan luminansi difus, luminer specular, dan chroma kotak-kotak (dengan asumsi berdasarkan diagram pada pertanyaan Anda bahwa cukup untuk menyimpan hanya sepasang nilai kroma).
Anda mungkin juga mempertimbangkan untuk menggunakan format R10G10B10A2 sebagai gantinya, kecuali Anda benar - benar membutuhkan rentang format floating-point. Ini jumlah bandwidth yang sama tetapi akan memberi Anda jauh lebih presisi (R11G11B10F hanya memberi Anda 5-6 bit mantissa per komponen). Plus, Anda dapat menggunakan 2 bit alpha untuk menyimpan beberapa flag, seperti flag diffuse / specular Anda.