- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
8.3WritinginBuffers缓存写操作
(位块操作)在填充多边形时每次光栅化一条扫描线当显示光栅字符时写一小块位当进行清除操作时,改变缓冲区中所有像素的值需要在硬件和软件方面提供对位块进行尽可能有效操作的功能称为位块传送(bit-blocktransfer,bitblt)操作,也称为光栅化操作(rasteroperations,raster-ops)8.3WritinginBuffers缓存写操作(位块复制)假设要把源缓冲区中的一块n×m像素复制到目标缓冲区中,那么进行这种操作的位块传送函数应当具有形式write_block(source,n,m,x,y,destination,u,v);8.3WritinginBuffers缓存写操作(实现细节)此时有许多细节需要注意,例如:源块超过了目标缓冲区边界时该如何处理?该操作的本质在于单个函数调用改变了整个目标块从硬件的角度来看,这种处理与几何对象的处理没有任何共同点针对位块传送操作优化的硬件具有与几何操作的流水线硬件完全不同的框架在OpenGL中包含两个流水线体系8.3.1WritingModel写入操作的模型和读写内存不同,位块传送操作有多种写入方式Readdestinationpixelbeforewritingsource在写入源像素前可读出目标缓冲区中的像素读出像素写入像素8.3.1WritingModel写入操作的模型
(像素逻辑运算)源像素:s目标像素:d写入的目标像素:d’那么d’=f(s,d)其中s=0or1,d=0or1对1位的源位和目标位,有24=16种定义方式8.3.1WritingModel写入操作的模型
BitWritingModes
16种逻辑运算Sourceanddestinationbitsarecombinedbitwise源像素与目标像素逐位结合在一起16possiblefunctions(onepercolumnintable)有16种可选的函数(表格中的每列为一种)replaceORXOR8.3.2XORmode异或模式RecallfromChapter3thatwecanuseXORbyenablinglogicoperationsandselectingtheXORwritemode在第三章中我们曾激活逻辑运算功能,应用XOR运算实现了橡皮线绘图方式XORisespeciallyusefulforswappingblocksofmemorysuchasmenusthatarestoredoffscreen??XOR模式在要把菜单从屏幕上移除,进行内存块切换时非常有用如果两个相应bit位相同,则结果为0,否则为1。即:0^0=0,1^0=1,0^1=1,1^1=08.3.2XORmode异或模式IfSrepresentsscreenandMrepresentsamenu,thesequence如果S表示屏幕像素,M表示菜单的像素,那么S?S?MM?S?MS?S?MswapstheSandM就会交换S与M的内容这样当菜单从屏幕上消失后,就会自动恢复原来屏幕上的内容S?M?M=SS?MS?M?S=M8.4BitandPixelOperationsinOpenGL
(图像的像素位数)假设数字图像是由k位像素组成,这里k可以是1(二进制图像,位图bitmap),…,32(RGBA图像)或者更大的数字(更高分辨率的图像)虽然1位图像(位图)与8位(1字节)或24位(3字节)图像在原理上没有任何区别,但硬件和软件上通常把它们区别处理从硬件的角度来说,位图处理的实现与逻辑运算相关,并且一次只需处理缓冲区中的一个位平面从软件的角度来说,位图与多位图像的应用范围完全不同。通常位图用来表示字体、掩码以及图案8.4BitandPixelOperationsinOpenGL
(位块操作)Bitblt操作对于位图才有意义字体、光标对于多位像素和多位颜色值,这些操作的含义不是很明确此时16种操作的结果通常不对应于有意义的结果8.4.1OpenG
您可能关注的文档
- 《计算机图形学》2 使用 OpenGL 编程 第一部分:背景-英文教学课件(非AI生成).ppt
- 《计算机图形学》3 回调的应用-英文教学课件(非AI生成).ppt
- 《计算机图形学》3 输入与交互-英文教学课件(非AI生成).ppt
- 《计算机图形学》4 OpenGL中的变换-英文教学课件(非AI生成).ppt
- 《计算机图形学》4 变换-英文教学课件(非AI生成).ppt
- 《计算机图形学》4 多边形网格-英文教学课件(非AI生成).ppt
- 《计算机图形学》4 几何对象-英文教学课件(非AI生成).ppt
- 《计算机图形学》5 计算机视图-英文教学课件(非AI生成).ppt
- 《计算机图形学》5 投影矩阵-英文教学课件(非AI生成).ppt
- 《计算机图形学》6 OpenGL中的明暗处理-英文教学课件(非AI生成).ppt
- 《计算机图形学》8 纹理映射-英文教学课件(非AI生成).ppt
- 《计算机图形学》11 粒子系统-英文教学课件(非AI生成).ppt
- 《计算机图形学》12 OpenGL 中的曲线与曲面-英文教学课件(非AI生成).ppt
- 《计算机图形学》12 贝塞尔曲线与样条曲面-英文教学课件(非AI生成).ppt
- 《计算机图形学》12 曲线与曲面-英文教学课件(非AI生成).ppt
- 《计算机图形学》12 设计参数化三次曲线-英文教学课件(非AI生成).ppt
- 《计算机图形学》简介-英文教学课件(非AI生成).ppt
- 《计算机图形学》1 图像形成-英文教学课件(非AI生成).ppt
- 《计算机图形学》1 图形系统与模型(计算机图形学是什么)-英文教学课件(非AI生成).ppt
文档评论(0)