学到现在,仍然对顶点缓存一知半解,这甚至直接影响了我对D3D的感性认识。
我是自学过来的,电脑知识的学习对我来说,只有书和网络,所以还请莫见怪。
这世界就是这样,充满了太多的联系性。一个问题,不单纯,一件事情不单纯。
刚刚又看了下龙书关于顶点缓存的描述:
“一个顶点缓存是一个包含顶点数据的连续内存空间”、
“顶点缓存和索引缓存可以被放置在显存中”、
“动态缓存一般放置在AGP存储区中”……
内存空间?这内存就是那张内存条?
显存?又放到了显存。。
AGP?又放到了AGP显存里。
那么问题就是“缓存”二字了,从我学C++的时候,就遇到过“buffer”一词,虽然查过,知道是等于一片内存区域。
(假如我定义一个:int a[] = {1,2,3}; 那这里可以说是开辟了一个缓存给a?如果是int a = 10; 呢?)
然而“缓存”所给我更多的只是一知半解。
我又翻了一下《深入理解计算机系统》,发现“缓存”二字,感觉就是存储空间。也就是说,缓存可以按如下方式描述:
enum 缓存 {
CPU寄存器,
芯片上的L1高速缓存,
芯片上的L2高速缓存,
内存,
显存,
AGP显存,
磁盘
};
请问,在我们学的D3D中,应该如何解释?如何理解?