我想在我的MacBook上进行一些Flash开发,利用Flex 3 SDK将Actionscript 3编译成SWF电影。
我如何设置Mac来执行此操作?
我还想了解flash编译器如何将包名称解释为目录结构。
我在高中学习过Flash课程,但它非常依赖于使用Adobe Flash IDE,并且非常注重图形开发,而不是编程和OOP。
例如,我想有一个Application类,它将作为舞台,还有多个其他AS3类作为其他MovieClip,Sprite等。当我构建/编译时,项目目录中的所有类应该构建在一个.swf文件中。这种情况是否切合实际?可实现的?如果是这样,我该如何到达那里?
谢谢!
答案 0 :(得分:5)
你的技术背景奥斯汀是什么?如果你来自纯艺术背景,那么解释你需要的一切可能会有点困难。
首先,您需要下载Flex SDK。解压缩从下载中获得的目录时,您将看到一个文件夹bin
。 bin中有许多可用于编译Flex的可执行文件。您想要的名为mxmlc
。您可以将其链接到/ usr / local / bin或只将文件夹添加到PATH。
如果您创建一个简单文件:
package
{
import flash.display.Sprite;
public class TestSWF extends Sprite
{
public function TestSWF()
{
}
}
}
将它保存在任何地方(我将使用/ tmp / flash /)作为TestSWF.as
在终端命令提示符下键入:
mxmlc TestSWF.as
你会看到输出:
Loading configuration file ...... /private/tmp/flash/TestSWF.swf (561 bytes)
要编译另一个文件,请创建另一个目录:
mkdir model
在名为TestModel.as
package model
{
import flash.display.Sprite;
public class TestModel extends Sprite
{
public function TestModel()
{
}
}
}
请注意包定义如何具有名称model
,目录名称也是模型。这就是包的工作原理。包名称与目录名称匹配。如果你深入了解目录(例如model / helper / FileLoader.as),那么包名称会将目录/
切换一段时间(例如import model.helper.FileLoader)
将TestSWF更改为:
package
{
import flash.display.Sprite;
import model.TestModel;
public class TestSWF extends Sprite
{
public function TestSWF()
{
var model:TestModel = new TestModel();
}
}
}
再次运行:
mxmlc TestSWF.as
你会看到输出:
Loading configuration file ...... /private/tmp/flash/TestSWF.swf (561 bytes)
mxmlc将自动找到类model.TestModel,因为它默认包含类路径中的主文件根目录。
这是最基本的编译文件的可能方式。它将用于测试,游戏和非常小的项目。如果您计划开发专业或非常大的项目,我建议使用更好的IDE(例如Flex Builder)或至少使用体面的构建系统(例如ant)。 Flex Builder或其他Flex特定IDE的主要优点是它们隐藏了构建/编译软件时常见的复杂性。
答案 1 :(得分:0)
好吧,我是一个Windows用户,但是从我不知道的情况来看,大多数mac actionscripters都跟TextMate一起...我偶然在一些教程中看到了它,它给人的印象很好...... / p>
除此之外,我不知道......你可能想要虚拟化windows xp左右,并让FlashDevelop运行(严重的是,很多mac用户实际上都是这样做的!),在我看来是最好的动作编辑器,可能是我实际上坚持使用Windows的最重要原因......:D
使用这两种工具你想要做的事情应该很容易......
希望有帮助......;)
格尔茨
back2dos