欢迎来到天天文库
浏览记录
ID:30505826
大小:224.59 KB
页数:7页
时间:2018-12-30
《微型计算机动画实现技术》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、第42卷第3期武汉大学学报(自然科学版)V0【4'2No.31986年6月J.WuhanUniv.(Natura1ScienceEdilion)Junel996微型计算机动画实现技术;6卜孙晓安陈淑珍陈春丁『)(翠丽碱汉430072)A摘要分析了微型计算机动画的特点和难点.介绍微机实时动面和非实时动画的实现方法t给出了快速动画的几种页面切按技术,并介绍了计算机动画压缩技术与动画文件格式.关键词实时动画,非实时动画t页面切换,动画文件格式分类号TP391.41计萆札画l微机动画概述计算机动画是计算机图形学的一个重要研究领域,也是一个富有挑战性的课题.计
2、算机图形学的许多应用要由动画来实现,而动画又综合了计算机图形学的大部分研究内容,如图形显示、变换、剪裁、生成等.由于人眼的视觉暂留效应,将一系列代表某一动作各个瞬间的静止画面以足够快的速度(例如25幅/s)展现时,就会产生连续变化的动作图像.如果速率过低看到的可能是不断闪烁跳跃的画面.在计算机动画技术中,这些画面是由计算机辅助生成的.根据画面生成和播放方式的不同,计算机动画可分为实时动画和非实时动画两类.实时动画是指计算机实时地生成各幅画面并在显示设备上显示.非实时动画的画面制作和播故是两个分离的过程,首先将制作的各幅画面记录在某种媒介上(如磁盘),
3、播放时再将各幅画面按一定顺序调出显示.对于目前的微型计算机而言,其运行速度相对较低,内存小,更重要的是没有独立的显示处理器(DPU)和显示寄存器,也没有独立的显示缓冲区.在微机上图形的生成和显示都是通过中央处理器(CPU)分时处理,并且将显示存储区分段映射到主内存上.这些因素决定了微型计算机对图形处理的速度慢,不适用于实时动画,一般只能进行非实时动画.在高档的图形工作站才有可能进行一般复杂程度的实时动画.当然,实时动画是计算机动画的发展目标.但是在目前及今后相当一段时间内,微机动画仍将以非实时动画为主J.2实时动画实时动画最突出的矛盾是速度,因为要在
4、每秒钟生成并显示25幅画面,对于低限图形资源的微机来说是很大的负担.假定显示器的分辨率是640×480个像素,每个像素用3个字节收稿日期:1995—07-22-孙晓安:男28岁-博士*国家教委面向21世纪教学改革基金资助的课题武双大学学报(自然科学收j第42卷(B)表示.暂不考虑生成画面所需的时间,那么数据传输率应是:640×480×3×25—23MB/s.另外,每秒生成2j幅画面也是不现实的,若要同时完成生成和显示工作是非常困难的.因此微机上一般只能实现简单的实时动画.以下是几种有效而常用的方法.2l局部改变法在大多数动画序列中,相邻两幅画面之间的
5、改变是很小的.特别是当动画比较简单时.动画对象不多,因此它们可能只占画面很小的一部分,只要改变这一小部分就行了.例如人造卫星在布满星星的天空中运行,动画对象只有卫星,只要修改卫星当前位置和下一个位置那部分区域就行了.可以用画一擦一画的方法实现这种局部修改.把卫星的图像先画在一个规则区域内(如矩形.圆),根据卫星的初始位置以及它所占规则区域的大小.保留相应部分的内容.把先画好的卫星图像贴在初始位置.延时后把保留的内容恢复在原处.对下一个卫星位置重复上述过程,即保留,贴,恢复这样3步.就可看到卫星动起来了.另外还可采用异或(XOR)方法实现快速局部修改.
6、这种方法先把卫星图像保存在一个规则区域中,把此卫星图像用异或操作画在起始位置,这时卫星就显示出来.延时后在同一位置再次异或卫星图像,由于异或操作的性质,此位置的卫星图像就消失,而恢复为原背景.在下一位置重复以上两次异或操作,则可实现动画.这种方法不需要保留和恢复背景,因此更快.局部修改方法对于动画对象很多,或要改变的部分很大的情况,则不一定适用.2.2双重帧存储区方法这种方法至少要有两个显示存储区,其中一个作为当前显示内容的存放区,另一个作为当前正在组织的下一个画面的存放区.在微机显示卡上.一般将一个64K内存段(如A00O0AFFFF)映射为显示存
7、储区.在某些图形模式下一屏图象肝占的存储区不大,如320×200分辨率下的16色模式需要显示存储区320×900×0.5-~-32KB.这样就可把64KB的显示存储区段分成两个32KB部分,一个作当前显示页,另一个佧后备的组织页.当后备页画面组织好后,将显示页和后备页互换,则后备页的内容就显示出来,而且这个切换过程几乎不需时间.在c语言中可采用SetVisual—Page和SetActive—Page函数交替在两个页面上显示和组织画面.当数据写入显示存储区后,就由显示卡控制在屏幕上显示出来,不需要CPU来处理.固此CPU可利用显示延迟时间(0.04s
8、)来准备下一帧数据,这样就提高了显示效率,减少动画闪烁感.2.3修改调色板方法这种方法的基本思想是保持显示存
此文档下载收益归作者所有