基于Unity引擎的卡通风格化绘制方法研究与实现外文翻译资料

 2023-03-13 03:03

论文题目

基于Unity引擎的卡通风格化绘制方法研究与实现


外文资料译文规范说明

一、译文文本要求

1.外文译文不少于3000汉字;

2.外文译文本文格式参照论文正文规范(标题、字体、字号、图表、原文信息等);

3.外文原文资料信息列文末,对应于论文正文的参考文献部分,标题用“外文原文资料信息”,内容包括:

1)外文原文作者;

2)书名或论文题目;

3)外文原文来源:

□出版社或刊物名称、出版时间或刊号、译文部分所在页码

□网页地址

二、外文原文资料(电子文本或数字化后的图片):

1.外文原文不少于10000印刷字符(图表等除外);

2.外文原文若是纸质的请数字化(图片)后粘贴于译文后的原文资料处,但装订时请用纸质原文复印件附于译文后。

指导教师意见:

指导教师签名: 年 月 日

一、外文资料译文:

卡通渲染和动画的风格化高光

关键词:风格化,高光,关键帧动画

在传统的赛璐璐动画中,灯光和阴影具有象征意义,因为它们暗示着一种艺术——对人物和场景的诠释。例如,灯光在暗示场景情绪方面起着重要作用,而角色的阴影则显示了角色站立的位置。突出显示还描述了人物和物体在现场的各个方面。我们使用传统的赛璐璐动画技术制作了图 1 所示的例图。

在图(a) 中,我们看到剑上的一个亮点,描绘了剑像平面眼镜一样平坦而闪亮,而且它们非常锋利,以至于下一帧女主角可能会受伤。图 (b) 中怪物爪子上的亮点表明爪子非常坚硬,很容易伤到人。在图 (c)中,汽车后窗上的高光显示该车窗有些圆润,因为高光区域不是简单的矩形,而是有点变形。这种高光可能是一种环境反射或折射,而不是后窗上最亮的区域。此外,高亮仅显示反射的区域;我们看不到实际反映在窗口上的内容。

如这些示例所示,赛璐璐动画的亮点必须是语义符号,而不是物理的一部分。突出显示的形状相对简单,但并不总是圆润的,暗示着手绘的风格变化。此外,为了增强动画场景中高亮对象的存在,高亮动画功能是必不可少的。3D与手绘人物场景的混合运用,在赛璐璐动画中取得了巨大的成功。

对于混合体,您通常会为 3D 对象添加卡通阴影以适应传统的青瓷场景。如图 2a 所示,对于由 3D 对象构成的角色,您可以使用标准局部着色模型逼真地渲染高光。1,2在标准模型中引入镜面反射强度阈值使高光具有更简单的配置,例如图 2b。然而,这些亮点都不适合赛璐璐动画(图 2a 太逼真,图 2b 太简单)。如图 1 所示,我们想要更多卡通般的亮点。

因此,在为3D物体制作卡通风格的高光时,必须同时满足以下实际要求:

  1. 形状。我们应该创建一个简单形状的高光区域,它不必须是圆形的,可以有丰富的变化。例如新月形和方形。
  2. 动画。 我们应该制作流畅和动态的高光动画因此我们需要描述在风格上而不是照片级逼真地临时变形高光。

(a)

(b)

(c)

1.赛璐璐动画中的高光效果:各种高光暗示了场景中物体的不同艺术含义。

2.按着色器突出显示:(a) 标准 3D,(b) 卡通,和 (c) 我们的着色器。

我们还将高亮动画作为关键帧动画。在实践中,关键帧技术是必不可少的,因为它允许对风格动画进行微调。此外,传统的赛璐璐动画基本上是关键帧动画,即使在赛璐璐动画场景中使用3D对象也是可取的。

标准的局部着色模型——仅限于圆形高光,如图 2b 所示——可以使用传统的关键帧技术提供良好的高光动画。但是,标准着色模型无法控制高光形状。此外,如前所述:

以前,赛璐璐动画中高光的概念包括统一的环境反射(如图 1c)。这表明我们必须制作圆形以外的各种高光形状。另一方面,一些传统的基于纹理映射的方法可能同时满足这两个要求。例如,环境贴图加上程序形状动画技术可以很好地工作,但我们需要额外的方法来使程序方法适合关键帧。

我们赛璐璐动画中使用的 3D 对象提出了一个新的高光着色器。在不使用纹理映射技术的情况下,我们的着色器以卡通风格制作高光形状和动画。我们的着色器使用传统的 Blinn 镜面反射模型制作初始高光形状。2(图 2b 是一个初始形状示例。)然后它通过几何、风格和布尔变换交互修改初始形状,直到我们得到我们最终想要的形状(如图 2c)。此外,一旦这些操作为每个关键帧指定了高光形状,我们的着色器就会自动生成高光动画。换句话说,我们的着色器为赛璐璐动画提供了高亮 3D 对象的新定义。

主要观点

Blinn 的镜面反射模型最初定义为Phi;s(p) := ks(N, H)n

在表面 S 上的 p 点,其中 Np 处的表面法线,H 是光矢量 L 的中间矢量,以及图 3 中指向眼睛的矢量 V。我们还假设 N、L 和 H 是单位向量。Phi;s(p)包括以下参数:镜面反射系数 ks 和控制突出显示的清晰度。我们的想法是让中间向量 H 更加灵活,以便在 3D 对象赛璐璐动画中创建各种高光。这意味着我们重新定义了中间向量。当然,一旦指定了 H,那么 L = 2(H, V) H - V。因此,如果事先指定了 V,我们的方法可以控制一个虚拟光源以获得高光。

3. Blinn 的高光模型。

我们使用 Blinn 模型制作赛璐璐动画高光,假设 ks = 1 和 n = 1。那么让我们定义高光(区域)H如下:

Hε := {p isin; S | Phi;s (p) gt; 1 minus; ε} (1 )

其中ε应该是一个小的正数 (0 lt; lt;lt; 1.0)。在着色过程中,我们给一个统一的高光颜色(通常是白色)。在许多实际情况下,我们移动对象上的高光区域以获得更好的艺术效果,即使它在

物理上是不正确的。同样,我们也可以旋转高光区域或使其在某个方向上变大。除了这些几何操作,

我们还需要开发更多的操作来获得丰富的高光变化。因此,我们通过首先定义高亮函数为赛璐璐动画中的 3D模型高光构建一个新框架

Phi;(p, N, H) := (N(p), H(p)) (2)

其中 N (= N(p)) 表示单位表面法向量在Sp,并且 H(= H(p))是在 Sp 处定义的单位向量。

接下来,我们假设为 S 的每个 p 指定 H(p),即 {H(p)}ps 作为 S 上的向量场给出。类似于 Blinn 模型的等式 1,我们然后定义突出显示与方程 2 中的Phi;相关的区域:

H* [ε] := {p isin; S | Phi; (p, N, H) gt; 1minus; ε} (3)

对于正数ε( 0 lt; ε lt;lt; 1.0)。如果我们取H作为中间向量场——即H=(L V)/||L V||如图 3 所示——我们有Phi;=Phi;s和 H*[ε] = H。然后我们通过高亮函数 (p, N, H) 及其相关的向量场定义一个广义的高亮{H(p)}ps 对于表面 S。形式上,我们可以任意指定向量场。然而,在这篇文章中,我们只处理了向量场{H(p)}ps,这是我们通过几次操作从中间向量场中得到的。虽然我们最初在向量场上执行这些操作,但它们会导致各种高光形状。从用户的角度来看,这些操作可以理解为对高亮本身的直观易用的修改。操作变换和变形高亮区域,例如平移、缩放或分割。然后,我们的方法引入了布尔运算,例如求和和减法。同样,我们通过着色器的 GUI 反复和交互地修改高亮区域,直到我们获得所需的卡通风格的形状和动画。

4.基本操作。左上角显示初始状态。橙色箭头表示局部仿射变换,黄色箭头表示风格变换。

为赛璐璐动画突出显示矢量场

我们描述了为我们将突出显示的表面 S 上的突出显示矢量场定义的各种操作。我们最初将这些操作中的每一个定义为本地操作,因为我们为单个补丁执行每个操作。然而,我们实际上可以创建一个更大的高光,使用这些操作遍历相邻的补丁。在本节中,我们假设 S 与单个补丁 (u, v) 协调。然后引入对高光向量的直接操作,我们称之为基本操作直接对高亮区域执行的操作称为后期操作。您可以使用这些操作为通用高光设置动画。

高光矢量场上的局部仿射变换 对高光矢量场的一些几运算可以变换等式 3 中的高光。这些基本操作是平移

旋转和定向。局部缩放,我们称之为局部仿射变换。

平移:首先,我们通过修改 S 上的高亮向量将等式 3 中的高亮区域平移到稍微不同的位置。修改意味着以如下方式平移高亮向量。如前所述,平移高光矢量意味着移动高光区域的虚拟光源。

让我们考虑 p 处的切平面,它由线性无关的单位向量 du 和 dv 跨越。对于 p 处的高亮向量 H,给定实数 alpha; 和 beta;,我们将 H 的平移 t(H) 定义为 H:= H du dv, t(H) := H/ ||H||。然后 t 平移 S 上的所有高光向量,使得新的高光向量场 {t(H(p))} 可以在指定的方向 (alpha;,beta;) 平移高光区域。

t 中的两个数字alpha;和beta; 指定了我们可以移动高亮区域的方向。但是,它们并没有规定新旧高光区域之间的距离。形式上,我们可以为任意大的数 和beta;定义转换操作 t,但实际上它们应该相对较小,因为对于大的 alpha; 和 (即 |alpha;| | beta;| → infin;),t(H ) 几乎平行于切平面,没有任何意义。

旋转:如果我们通过旋转改变切平面的(u,v)坐标系,那么我们也可以旋转H. 高光矢量 H 的旋转 r(H) 仅表示旋转 H,这是由 (u, v) 坐标系的 2D 旋转引起的。

定向缩放:

我们可以通过取更大的ε来扩大等式 3 中的高亮区域H* [ε]。但是,我们应该赋予高光区域一个方向性,例如各向异性反射。

我们为给定的数量定义方向缩放 s(H) -delta;,其在du方向上为:

H′′ := H minus; delta;(H, du)du,

s(H) := H′′ / ||H′′

剩余内容已隐藏,支付完成后下载完整资料


英语原文共 8 页,剩余内容已隐藏,支付完成后下载完整资料


资料编号:[596530],资料为PDF文档或Word文档,PDF文档可免费转换为Word

您需要先支付 30元 才能查看全部内容!立即支付

课题毕业论文、文献综述、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找。