- 用户指南
- 资源商店 (Asset Store)
- 资源服务器 (Asset Server)(仅限团队许可证)
- 缓存服务器(仅限团队许可证)
- 幕后场景
- 创建游戏
- 运行时实例化预设 (Prefabs)
- 变换 (Transforms)
- 物理
- 添加随机的游戏元素
- 粒子系统(Particle Systems)
- Mecanim 动画系统
- 旧动画系统
- 导航网格 (Navmesh) 和寻路 (Pathfinding)(仅限专业版 (Pro))
- Sound (音频侦听器)
- 游戏界面元素
- 多玩家联网游戏
- iOS 开发入门
- Android 开发入门
- Blackberry 10 开发入门
- Metro:入门指南
- 本地客户端开发入门
- FAQ
- Advanced
- Vector Cookbook
- 资源包(仅限专业版)
- Graphics Features
- 资源数据库 (AssetDatabase)
- 构建播放器管道
- 分析器(仅限专业版)
- 光照贴图快速入门
- 遮挡剔除(仅限专业版)
- 相机使用技巧
- 运行时加载资源
- 通过脚本修改源资源
- 用程序生成网格几何体
- 富文本
- 在 Unity 工程 (Project) 中使用 Mono DLL
- 事件函数的执行顺序
- 移动优化实用指南
- Unity XCode 工程结构
- 优化图形性能
- 减少文件大小
- 理解自动内存管理
- 平台依赖编译
- 泛型函数
- 调试
- 插件(专业版/移动版特有功能)
- 文本场景文件格式(仅限专业版)
- 流媒体资源
- 启动时运行编辑器脚本代码
- 网络模拟
- VisualStudio C 集成
- 分析
- 检查更新
- 安装多版本 Unity
- 故障排除
- Unity 中的阴影
- Unity 中的 IME
- 对集成显卡进行优化
- 网络播放器 (Web Player) 部署
- 使用网络播放器中的信任链系统
文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
示例:在 Unity 中调用 ActionScript 函数
此示例介绍在 Unity 中调用不同 AS3 函数的方法。 您将遇见三种脚本:
- 包含不同函数示例的AS3 类 (ExampleClass.as)。必须将创建的任何 AS3 类置于工程的 “ActionScript” 文件夹下。
- 模拟 AS3 实现的 C#/JavaScript 类 (ExampleClass.cs/js)。只需使用其中一种。
- 如何从 Unity 调用函数的示例。
构建 Flash 时,程序将使用 ExampleClass 的 AS3 实现。在编辑器中运行或构建任何非 Flash平台时,程序将使用 C#/JavaScript 实现。
创建 ActionScript 版本的类将允许您使用原生 AS3 库构建 Flash Player。这在需要使用 Flash 无法导出的 .net 库时尤为有用。
ActionScript 3 (ExampleClass.as)
package { public class ExampleClass { public static function aStaticFunction() :void { trace("aStaticFunction - AS3 Implementation"); } public static function aStaticFunctionWithParams(a :int) :void { trace("aStaticFunctionWithParams - AS3 Implementation"); } public static function aStaticFunctionWithReturnType() :int { trace("aStaticFunctionWithReturnType - AS3 Implementation"); return 1; } public function aFunction() :void { trace("aFunction - AS3 Implementation"); } } }
ExampleClass - C#/JavaScript 实现
您可以创建类,以使用 C# 或 JavaScript 来模拟 AS3 实现。这类实现都非常相似。以下是两者的示例。
C# (ExampleClass.cs)
using UnityEngine; [NotRenamed] [NotConverted] public class ExampleClass { [NotRenamed] public static void aStaticFunction() { Debug.Log("aStaticFunction - C# Implementation"); } [NotRenamed] public static void aStaticFunctionWithParams(int a) { Debug.Log("aStaticFunctionWithParams - C# Implementation"); } [NotRenamed] public static int aStaticFunctionWithReturnType() { Debug.Log("aStaticFunctionWithReturnType - C# Implementation"); return 1; } [NotRenamed] public void aFunction() { Debug.Log("aFunction - C# Implementation"); } }
JavaScript (ExampleClass.js)
@NotConverted @NotRenamed class ExampleClass { @NotRenamed static function aStaticFunction() { Debug.Log("aStaticFunction - JS Implementation"); } @NotRenamed static function aStaticFunctionWithParams(a :int) { Debug.Log("aStaticFunctionWithParams - JS Implementation"); } @NotRenamed static function aStaticFunctionWithReturnType() :int { Debug.Log("aStaticFunctionWithReturnType - JS Implementation"); return 1; } @NotRenamed function aFunction() { Debug.Log("aFunction - JS Implementation"); } }
如何调用函数
以下代码将在构建 Flash 时调用 ActionScript (.as) 实现中的类函数。这允许您在 flash 导出工程中使用原生 AS3 库。构建非 Flash 平台或在编辑器中运行时,程序将使用类的 C#/JavaScript 实现。
ExampleClass.aStaticFunction(); ExampleClass.aStaticFunctionWithParams(1); int returnedValue = ExampleClass.aStaticFunctionWithReturnType(); ExampleClass exampleClass = new ExampleClass(); exampleClass.aFunction();
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论