如何在现有Flash演示文稿中找到自己的方式

时间:2009-01-07 00:51:49

标签: flash

我在AS2和AS3中完成了很多Flash和Flex编程(嗯,仅在AS3中使用Flex :)。 < self-definition>我已经让这些平台完全符合我的要求。我已经构建了Flash组件并在Flex等中创建了一个MVC框架。< / self-definition>

如果你递给我一个我从未见过的Flex应用程序并说“进行这些更改”,我知道从哪里开始理解应用程序:从Application标签向下。它可能与某个服务器进行了一些交互,有一些回调等等。或者与框架进行一些交互。

如果你递给我一个Java应用程序,我也可以这样做:从前端到后端,或者可以通过方法调用向后移动。

但是,如果你递给我一个Flash应用程序我在第一个小时就完全迷失了,而我试着猜测它为什么会像它那样工作......如果它不能编译,我想我会永远迷失。这与MC中嵌入的MC有关(其中一些隐藏了!太棒了!),而不是代码。然后代码分散在所有不同的框架,场景等中,以便只有当原始开发人员知道什么时才知道。

当我做纯Flash时,我会在组件中做所有事情,并使用非常平坦的结构,但这是一个不同的故事。我的问题是我得到的Flash演示文稿:

当您获得现有Flash演示文稿时,如何开始理解它?你先看什么等等?您是否有任何关于理解您第一次看到的Flash演示文稿的提示?

1 个答案:

答案 0 :(得分:3)

好吧,如果给你一个FLA,我要做的第一件事是试着弄清楚应用程序的整体结构,然后从查看主(根)时间轴开始。如果它看起来是空的,或者除了actionscript之外什么都没有,那么显然事情是代码驱动的 - 读取该脚本或查找文档类,并假设该库只是一个组件库。

如果填充了根时间轴,那么通常它是某种形式的动画,意味着要播放,或者它是一个状态管理系统,当应用程序改变显示状态时,应用程序在帧之间移动。如果它是一个动画,那么这通常是直截了当的,但你需要弄清楚它是直接播放还是跳跃(寻找帧标签),特别是它完成后会发生什么。如果根时间轴是一个状态机,那么你就关闭并运行 - 你通常可以假设每个重要的框架(通常它们都有标签)在层次上是相等的,并且或多或少地分别检查它们。还要注意从根本上说是一个状态机的内容,但是在状态之间有过渡动画。

现在有了这个说法,关于Flash Authoring的真正强大但令人困惑的事情是,每当你查看一个影片剪辑时,你都需要递回两段然后开始这个过程,因为MC可能本身是组件或显示状态机或动画。当你看一堆电影片段时,你真的不知道哪些电影片段有一个简单的图形,哪些容易复杂。所以你分而治之 - 对于任何给定的剪辑,找出它包含的所有重要事物,然后弄清楚它们每个人在做什么。

更多随机提示:

  • 学习使用电影资源管理器(在PC上使用alt + F3)来确定哪些剪辑包含动作脚本。你可能会看到很多繁琐的“停止”命令,但是如果有大块的逻辑,那么你想弄清楚它们做了什么,以及它们在对象层次结构中的位置。
  • 如果您发现任何附加到电影剪辑的脚本,请为正义之战做好准备 - 您将度过一段美好时光。幸运的是,AS3中不允许这样做。
  • 当许多东西混杂在一起时,尝试扩展时间线中的所有文件夹,然后通过它们打开和关闭可见性以了解其中的位置。图书馆可能处于混乱状态,但至少在时间轴上,资产必须按照它们在视觉上重叠的顺序进行分层,这通常会为您提供线索。如果原始设计师没有合理地将它们组织到文件夹中。
  • 偶尔做一个“全选”以了解哪些事物是单独的对象,以及是否有任何无形资产也是一个好主意。空剪辑或第一帧上没有任何内容的剪辑总是显示为一个小的白色圆圈,但是除非您选择它们​​,否则根本不会显示alpha为0的剪辑,或打开轮廓模式(每个上面的小颜色按钮)时间轴图层)。
  • 当您看到标记空剪辑的小白圈时,请务必将其检出。它可能是用于将内容加载到容器中的容器,或者是具有图形资产但不在第一帧上的剪辑,或者甚至是其他内容将与其对齐的标记。但你可以打赌它隐藏了一些复杂性。
  • 如果在根时间线中看起来比应有的少,那么只需踢一下就可以打开“场景”面板。有些设计师像这样疯狂。