A General Specification for Scene Animation
GENE S. LEE
Department of Computer Science University of British Columbia Vancouver, BC Canada V6T 1Z4 gslee@cs.ubc.ca j gslee@alum.mit.edu
Abstract: This paper presents the foundations of IBAL, a general specification for scene animation. IBAL regulates interactions among graphical elements, such as geometric models and behavioral algorithms, to describe animated scenes. Interactions among graphical elements are managed by primitives which are arranged into three graphs. The three graphs logically partitionan animation into “who,” “what,” and “when.” IBALrsquo;s unique design permits applications to represent, save, and restore a wide variety of complex scenes. A short summary of existing formats for scene modeling and scene animation is presented to distinguishand to assess the utility of IBALrsquo;s design.
Keywords: Scene Animation, General Specification, Software Interaction
1 Introduction
Computer animation is the development and production of computer animated scenes. Animatedscenes consistof many graphical elements interacting over time. Graphical elements are geometric models, algorithms, and data structures that define the state of an animationand control its gradual evolution from one state to the next.
Many tools exist to display, store, and edit quickly various graphical elements. File formats are one type of tool that are essential and very popular. File formats adhere to specifications to store information onto data files. They establish a means for applications to store and to share thegraphical elements of a scene. Applicationsthat use established specifications are bound to read and write information according to specific guidelines, but they are free to represent and manipulate the information using their own means and data structures.
Many types of specifications for computer graphics exist. However, only specifications that store and represent geometric models, such as 3DMF[3], IGES[13], and DXF[4], experience widespread success. Specifications for animation are many, but few are popular or standardized. Those that are popular, such as Quicktime[12] and MPEG[9], simply store the resultant frames of animations. They neither describe nor control the contents of the animations. From the images alone, it is arduous to obtain or identify all the graphical elements that define the animations.
Of the many specifications for animation that do describe thecontents and behaviors of animated scenes, few are popular. For most specifications, such as VRML[5], rapid development, not reuse or portability,is theprimary goal. Thus, the specifications are often difficult to partition into logical parts and arduous to use as scene complexity grows.
It is not always easy to identify, extract, or replace the parts of animation that define “who,” “what,” and “when.”[20] Ideally, a robust specification manages complexity, accomodates numerous means to animate, and localizes control structures. These key features are essential for widespread acceptance and easy use. It is the aim of this paper to present the foundations of IBAL, an Interaction-Based Animation Language. IBAL is a general, implementation-freespecification for scene animation. It relies upon first-class primitives to organize and control the interactions of graphical elements. As graphical elements interact, they exchange information and update state. The specification consists of three graphs. The first graph describes scene elements; the second graph describes dynamic behaviors; and the third graph describes temporal properties. The three graphs readily separate animations intological parts and reduce complex scenes to a hierarchy of interactions. With IBAL, a wide variety of scenes and animation techniques can be shared and reused.
This paper consists of six sections. Section two presents an overview of various specifications for computer animation. It briefly discusses several issues that determine the success of popular specifications for modeling and uses these issues to assess the quality of existingspecifications foranimation. Sectionthreepresentsan overview of IBAL and describes the basic design of its three graphs. Section four demonstrates IBALrsquo;s utilityby providinganexample andcomparing itwithotherspecifications. Sections five and six analyze IBALrsquo;s design and summarize the results of this work.
2 Background
The graphics industryabounds withmany proposed specifications for graphics and animation. It is common for applications to support many specifications for scene modeling and only one or two specifications for scene animation. It is relatively easy for applications to share descriptions of models, but not descriptions of animated scenes. Many of the issues that influence the success of modeling specifications are not satisfied by existingspecifications for animation. This section describes these issues and uses them as a basis for analysis of and comparison with various types of specification for scene animation.
2.1 Specifications for Scene Modeling
Specifications for scene modeling, such as Inventor[26] and OBJ[1], describe the shape and physical characteristics of static scenes. They are popular and standardized for five reasons:There is a great need to share information among many applications and to form archives of scene information.
Sharing and archiving scene information is important. Not all applications provide the same features and interfaces to construct and interact with static scenes. Applications that share reap the benefits offered by others. Archives emphasize scene integration over scene development. Scenes are produced by browsing libraries of data, such as those provided by Viewpoint Datalabs, Inc.[27] andNew WorldGraphics, Inc.[23], andby adapting acceptable elements.There is a commonly accepted set of low-level (
剩余内容已隐藏,支付完成后下载完整资料
场景动画的一般规范
GENE S. LEE
不列颠哥伦比亚大学计算机科学系 加拿大 温哥华 V6T 1Z4
摘要:本文介绍了IBAL的基础,这是场景动画的一般规范。IBAL规定图形元素之间的交互作用来描述动画场景。图形元素之间的相互作用由排列成三个图形的基元管理。这三张图从逻辑上将动画分为“谁”,“什么”和“何时”。IBAL的独特设计允许应用程序表示,保存和恢复各种复杂的场景。 简要概述提供现场场景建模和场景动画现有格式,以区分和评估IBAL设计的实用性。
关键词:场景动画;一般规范;软件交互
1介绍
使用电脑动画场景的开发和制作电脑动画。Animatedscenes由许多图形元素随时间交互组成。图形元素是由几何模型,算法和数据结构,用于定义动画的状态并控制其从一个状态到下一个状态的逐渐演变。
存在许多工具来快速显示,存储和编辑各种图形元素。文件格式是一种非常重要和非常受欢迎的工具。文件格式遵循规范将信息存储到数据文件中。他们建立了应用程序存储和分享场景图形元素的手段。使用已建立规范的应用程序必须根据特定的指导原则来读写信息,但它们可以使用自己的方法和数据结构自由地表示和操作信息。
存在许多类型的计算机图形规范。然而,只有存储和表示几何模型的规范(如3DMF,IGES和DXF)才能获得广泛的成功。动画的规格很多,但很少流行或标准化。那些流行的,如Quicktime 和MPEG ,只是存储结果的动画帧。他们既不描述也不控制动画的内容。仅从图像中获取或识别定义动画的所有图形元素都很困难。
在描述动画场景的内容和行为的许多动画规范中,很少有流行的。 对于大多数speci fi cations,如VRML ,快速开发,而不是重用或便携性,是最初的目标。因此,随着场景复杂度的增加,这些规范往往难以划分为逻辑部分,并且难以使用。识别,提取或替换定义“谁”,“什么”和“何时”的动画部分并不总是很容易。理想情况下,强大的规范可以管理复杂性,容纳多种动画和本地化方法 控制结构。这些关键特性对于广泛接受和易于使用至关重要。
本文旨在介绍基于互动的动画语言IBAL的基础。IBAL是场景动画的通用实现免费规范。 它依赖于第一类基元来组织和控制图形元素的交互。当图形元素相互作用时,它们交换信息并更新状态。 该规范由三个图组成。 第一个图形描述场景元素;第二个图形描述动态行为; 第三个图形描述了时间属性。这三张图很容易区分动画内部的部分,并将复杂的场景缩减为交互层次。借助IBAL,可以共享和重复使用各种场景和动画技术。
本文由六部分组成。第二部分概述了计算机动画的各种规范。它简要讨论了几个决定建模流行规范成功与否的问题,并利用这些问题来评估现有技术规范的质量。第三节给出了IBAL的概述,并描述了其三个图的基本设计。第四部分通过提供实例并与其他规范进行比较来证明IBAL的实用性。第五部分和第六部分分析了IBAL的设计并总结了这项工作的结果。
2背景
图形行业在许多方面提出了图形和动画的规范。应用程序支持场景建模的许多规范以及场景动画的一个或两个规范是很常见的。应用程序共享模型的描述相对容易,但不能描述动画场景。许多影响建模规范成功的问题都不符合现有动画规范。本节介绍这些问题,并将其用作分析和比较各种场景动画规格的基础。
2.1场景建模的规范
场景建模的规范如Inventor 和OBJ 描述了静态场景的形状和物理特征。他们流行和标准化。
共享和存档场景信息非常重要。并不是所有的应用程序都提供相同的功能和接口来构建静态场景并与之交互。共享的应用程序可以获得其他人提供的好处。档案强调现场整合场景的发展。场景是通过浏览数据库产生的,例如由Viewpoint Datalabs,Inc.提供的数据库和New WorldGraphics,Inc.,并通过调整可接受的元素。
不考虑效率,可以用基本结构来表示所有场景,例如点,线,多边形和样条线,或者用简单的多面体来表示场景,例如立方体,球体和圆柱体。通常情况下,场景中的任何结构的设计优势都会丢失转化为基本结构。然而,这个缺点被普遍接受,因为它允许所有的应用程序产生相似的原始场景的复制品。
许多speci fi cations通常将场景分为多个逻辑部分,例如点集,法线,面和颜色。从零件构建的场景很容易重建,整合和剖析。加载场景的应用程序可以快速选择并丢弃不需要的部分。
许多speci fi cations采用逻辑运算符或分层方案来组合复杂的场景从较简单的模型。 组成场景更容易更新,并且更容易存储。
使用基本结构和逻辑运算符,可以描述场景中所有图形元素的形状和特征。并非所有的场景描述都可以被有效地描述,但它们是可以表现的。
2.2场景动画的规范
2.2.1分类
场景动画的规范由外观格式和内容格式组成。 外观格式存储场景的图像,而内容格式存储场景的描述。 每种主要类型进一步分解成几个子类型。 所有这些类型共同构成一个类层次结构。
外观格式分为两个相关的子类型,顺序电影和非顺序电影。前者存储图像的线性进展,而后者则存储图像拼贴。这两种类型都不适合存储或获取有关动画场景内容的信息。 内容格式也分为两个子类型:关键帧和脚本。关键帧speci fi cations存储键值明确建立状态信息的序列,而脚本存储计算状态信息的表达式序列。
脚本进一步分为基于状态和基于交互的格式。 基于状态的格式由动画类型和通用格式组成,明确地处理场景元素的状态。表达式将场景元素的参数与特殊运算符相互混合,以管理状态值的演变。基于交互的格式,包括消息传递和活动链接格式,识别场景元素之间的关系。相关场景元素在交换信息时改变状态。
2.2.2类型分析
关键帧格式易于使用,因为它们建立了信息的逻辑分区:关键帧更新状态变量。不幸的是,当指定非常复杂的场景时,关键帧会很难创建。很少有方法可以在关键帧上构建更高级别的抽象,并且不存在用于创建适应运行时间的动画的简单手段。关键帧动画的状态始终在开始之前设置。
基于状态的脚本文件可用于描述各种各样的动画。他们可以小心地引导动画,如关键帧文件,并且可以在图形元素之间形成关系,以建立约束和自适应行为。但是,它们不易分成几部分。大多数人使用简洁的表示来描述和控制状态信息。从一个修改(或计算)状态的脚本中快速提取和表达并不总是容易的。大多数情况下,这些表达式都与其他表达式紧密交织在一起,以表示状态信息并指定时间属性。
与关键帧文件类似,基于交互的脚本文件将分区动画分成三部分:代表状态和修改状态的部分。软件交互(如函数调用或方法调用)可以缓和两部分之间的信息流。这两种文件类型都易于拆分并分离到各个文件中。但是,基于交互的脚本可以模拟更多种类的场景。它们提供更多种类的抽象和更多的零件映射。不幸的是,他们缺乏程序开发(和重用)的规则和模式。 目前很少有结构来组织许多软件交互,并且随着时间的推移控制交互的进化。 用户必须使用自己的方式或其他脚本语言来管理交互。因此,许多基于交互的脚本,如VRML ,都遇到了与基于状态脚本相似的问题。随着场景复杂度的增加,将动画分割成部分变得非常艰难。
3动画的一般规范
3.1概述
IBAL是一种基于交互同时用于场景动画的格式。它建立了一个通用规范来描述随着时间变化的场景的内容和行为。该规范的设计基于IMVCD工具包的建模框架。IMVCD将场景分割为用于场景建模的基元和用于场景动画的基元。后一种基元组通过在建模基元之间形成交互来动画化场景。IMVCD识别IBAL指定和控制的动画的基本元素。
IBAL将动画分成三个动画图形:场景图形,动作图形和时间图形。这三个图分别标识动画的“谁”,“什么”和“何时”。 场景图形标识动画的图形元素。它描述场景元素及其属性,如形状,表面特征和查看参数。动作图定义图形元素之间的交互。它组织交互的集合形成行为,产生状态变化的行为。时间图定义了行为的时间顺序。它表明行为如何相互关联并随时间推移而执行。
3.2框架
IMVCD建模框架将计算机动画(和其他视觉模拟)抽象地分解为五个关键组成部分:线人,模型,观众,控制者和决策者。告密者定义观看者可视化和控制器控制的模型的属性。代表们决定控制器何时起作用以及控制器命令的模型和查看器。像流行的框架,如MVC [17]和访谈[21],IMVCD重点关注程序的体系结构,而不是重用实现。它强调组件之间的通信路径,而不是它们之间的数据流。IMVCD不定义其他组件的抽象组件来派生函数和属性。IMVCD是一个免实现的框架,用于识别软件组件之间的关系,而不是评估软件组件之间的关系。
IBAL的组件与IMVCD描述的组件相匹配。由IBAL的场景图组织的模型和线人识别图形元素控制者通过IBAL的行为图确定管理互动,从而产生状态变化。由IBAL时间图形成的委托人会随着时间的推移改变交互行为。借助IMVCD,IBAL的规范易于理解并易于增强。与IMVCD一致的新元素自由地取代或补充任何IBAL脚本中的现有元素。
剩余内容已隐藏,支付完成后下载完整资料
资料编号:[22277],资料为PDF文档或Word文档,PDF文档可免费转换为Word
课题毕业论文、外文翻译、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。