2013-06-17 19 views
6

Ben yaklaşık Texture Viewsnew Kırmızı Kitabı'nda okuyorum. sayfa 322 günü söylenir:kullanmak Doku Görüntüleme

OpenGL sen kendi formatı ve boyutları ile birden arasındaki dokular, her biri tek bir veri deposu paylaşmasına olanak verir.

tek doku kaynağı birden çok örneği tarafından (bu durumda doku görünümlerinde) başvuruluyor anlamına mı:

Şimdi benim sorulardır (Doku Görünümler aracılığıyla)

?

Nasıl örneğin fakat farklı numune ile aynı doku nesnesini kullanarak farklı? Ayrıca

, bu doku görünümü sayesinde doku piksel değişen orijinal doku nesnesine pikselleri değişeceğini? (Cevabın olumlu olduğunu varsayalım doc o doku mağazaya takma diyor gibi)

cevap

6

demek Evet, bir veri deposunu paylaşmak, farklı nesnelerden aynı depolamaya erişmek anlamına gelir. Bir işaretçiyi paylaşmak gibi, iki farklı yerden aynı belleğe erişebilmek anlamına gelir.

Bu numune aralarında hiçbir benzerlik olmadığını nesneleri kullanarak farklı. Sampler objects mağaza örnekleme parametreleri. Doku nesneleri, the mipmap range, swizzle mask ve benzeri gibi parameters that are not for sampling'a sahiptir. Bunlar örnekleyici değildir; onlar doku durumu.

Doku nesneler de bir specific texture type sahiptir. Aynı depolama alanının farklı görünümleri different texture types (within limits) olabilir. GL_TEXTURE_2D_ARRAY tek yaprağının bir görünümü olan GL_TEXTURE_2D olabilir. 6 veya daha fazla katmanın GL_TEXTURE_2D_ARRAY'unu alabilir ve bundan bir GL_TEXTURE_CUBE_MAP oluşturabilirsiniz.

Örnekleyici nesneleri bunu yapamaz.

Doku nesneleri saklama yorumlanmalıdır şeklini tanımlayan bir internal format sahiptir. Aynı depolama alanının farklı görünümleri different formats (within limits) olabilir. Örnekleyiciler formatı etkilemez.

Örnekleyici nesneleri bunu yapamaz.

Eğer numune nesneleri olarak aynı etkiyi elde etmek için doku görünümleri kullanabilir miyim? Hayır. Örnekleyicilerle, örnekleme parametrelerini doku nesnelerinden ayırırsınız. Bu, birden çok farklı nesne için aynı parametre kümesini kullanmanızı sağlar. Bu nedenle, bir örnekleyici nesnesini değiştirebilir ve her dokuya gitmeye ve değiştirmeye gerek kalmadan bunu çoklu dokularla kullanabilirsiniz.

İki farklı amaç için iki farklı özellik var.

+0

Evet, şimdi oldukça açık. Ancak bir kez soruya cevap vermediniz: eğer doku görünümünde verileri değiştirirseniz, aynı zamanda başvurulan dokuda da değişecektir: “Bir işaretçiyi paylaşmak gibi aynı anıya iki farklı yerden erişmek için. Cevap muhtemelen "Evet"? –