问题标签 [openfl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
252 浏览

templates - 如何在 haxe 模板中添加自定义变量?

Haxebin在编译时会将一些模板放入文件夹。它处理模板,::WIN_WIDTH::用 values替换其中的变量640。它还可以采用您的自定义模板,如下所示:

我想知道有没有办法将您自己的变量::myvar::放在这些模板中?

编辑 http://old.haxe.org/doc/cross/template - 不幸的是,那篇文章只解释了如何执行haxe.Template类实例。最后你会得到字符串(你处理的模板)。

我想要的是将我的自定义占位符添加到默认 haxe 模板,例如 OpenFL Android 项目模板。我需要 Haxe 用我自己的占位符处理它的模板,并bin像往常一样将其输出到文件夹中。

0 投票
1 回答
552 浏览

windows - 在 Haxe 中创建透明窗口(Neko 或 Windows 目标)

我正在尝试使用 Haxe 3.1.3 制作一个简单的类似 OSX 的停靠应用程序。我似乎无法弄清楚如何使主应用程序窗口透明(没有标题栏、边框等),以及除了图标本身之外忽略鼠标事件。理想情况下也没有任务栏项目,只是一个系统托盘项目。

我相信 Haxe Windows 目标使用 SDL,并且很确定 SDL 可以支持这种行为?我不确定 Neko 目标是如何编译的,或者如何处理这个......我可以在 Haxe application.xml 或类似的东西中设置一些标志吗?或者这对于 Haxe Windows 或 Neko 目标是不可能的?

编辑

我发现可以用 Neko 编译的 Waxe haxelib 在 Window.hx 文件中有一堆标志 - https://github.com/nmehost/waxe/blob/cd9739e007ed10918166588faf2339d623b22fc4/wx/Window.hx

其中包括诸如 FRAME_NO_TASKBAR 和 BORDER_DOUBLE 之类的选项,它们在作为参数传递给 Simple.hx Waxe 示例项目中的 wx.Frame.create() 函数时都有效。

它还包括标志 TRANSPARENT_WINDOW,但这似乎什么也没做。不知道为什么其他标志起作用,但 TRANSPARENT_WINDOW 标志不起作用。

0 投票
1 回答
152 浏览

haxe - htmlText字段haxe中的自定义链接解析

我目前正在使用 OpenFL 开发一个交互式故事,并且我目前正在为 C++ 输出优化我的引擎,因为这是我的重点。Github上的 master 分支有一个功能性 Flash 目标工作,但它使用锚链接来识别指向不同段落的链接中的超链接,以及使用 HScript 解析的 Haxe 代码。

我知道超链接在 C++ 目标中不起作用,因此我研究了使用“getCharIndexAtPoint()”函数来确定链接在 htmlText 字段中的位置。我不知道什么 HTML 文本支持 C++ 中的什么,但如果根本不支持任何标签,那么我不妨编写自己的解析器。

这是我当前的代码,用于尝试在交互式故事中使用传统链接格式解析我的链接:

至少,这是一般的想法。不幸的是,给定的代码导致了这个输出。关于如何解决这个问题的任何想法?

0 投票
3 回答
1227 浏览

haxe - Haxe/OpenFL 应用程序以 flash/html5/air(桌面)为目标。如何处理文件系统数据写入/读取?

我正在制作一个需要针对 flash/air 并且最好是 html5 的应用程序。这个应用程序具有在文件系统中写入数据的功能。我已经开始使用 Haxe/OpenFL(这是我的第一次体验)。

我知道 flash 和 html5 将无法访问本地用户的文件系统来写入和读取数据。因此,这些版本将通过在云中存储数据来交换此功能。

但是 AIR 总是有可能操作文件系统。所以我现在有两个问题:

  1. 是否可以将 Haxe/OpenFL 项目打包到 AIR 应用程序中,并制作合适的 .air 安装程序?还是我应该使用某种 cpp/c++ 替代品?在这种情况下,最佳做法是什么?
  2. OpenFL/Haxe 的哪个 API 让我可以在文件系统上写入数据?
0 投票
3 回答
1230 浏览

haxe - 如何移动无边框窗口?

我使用 HaxeFlixel 和本机构建制作了带有时钟的简单而小型的应用程序。窗口无法调整大小甚至无法移动,因为我在project.xml.

现在移动此窗口的唯一方法是挂钩到 mouseMove 事件并相应地设置窗口的位置。第一个听起来很简单,但后者让我很困扰。我一直在寻找 Haxe API、OpenFL API 和 Haxelib,但我找不到任何可以移动窗口的东西。

这是时钟:

0 投票
2 回答
274 浏览

webgl - WebGL 中透明纹理的奇怪渲染行为

我一直在使用 Haxe + Away3D 编写一个小行星生成器,并部署到 HTML5/WebGL。但是在渲染我的云时我遇到了一个奇怪的问题。我有行星网格,然后云在同一位置网格稍大。

我正在使用柏林噪声函数来生成行星特征和云层,将它们写入位图并将位图用作纹理。现在,奇怪的是,当我将它部署到 iOS 或 C++/OSX 时,它完全按照我想要的方式呈现:

好的

现在,当我部署到 WebGL 时,它会生成一个相同的漫反射贴图,但呈现为:

坏与丑

(由于我重新加载页面的频率,上面的分辨率要低得多。问题在更高的分辨率下仍然存在。)

云在那里,边缘看起来很好,纤细且半透明。但是里面是不透明的,看起来渲染的不一样(每个像素都是一样的颜色,只是改变了alpha通道)

我意识到这可能与代码最终如何在 haxe 中编译/生成有关,但我希望它像渲染设置或我没有设置的混合模式这样简单。但由于我什至不确定到底发生了什么,我不知道去哪里找。

这是正在生成的漫反射贴图。我把它覆盖在红色上,这样云就可以看到了。

云

0 投票
0 回答
133 浏览

flashdevelop - Flash 开发“此文件没有关联的应用程序...”

我发现自己正在尝试学习如何在 haxe 和 openfl 中进行开发,并且我正在使用 flash develop 作为我的 IDE。

但是,每当我创建一个项目(工作得很好)然后尝试调试它时,我都会收到错误消息

“此文件没有可以执行操作的关联应用程序”

尽管我知道解决方案可能非常简单,但我只是看不到它(我是新手)

我希望我能提供更多信息,但我不确定什么是相关的......

先感谢您

0 投票
2 回答
1187 浏览

html - 如何将 HaxeFlixel 与 openfl-bitfive 一起使用

我想使用 openfl-bitfive 针对 HTML5 目标构建一个 HaxeFlixel 项目

在 openfl-bitfive 的自述文件: https ://github.com/YellowAfterlife/openfl-bitfive#usage中,它说:

“导航到项目的 application.xml 并在包含 OpenFL 库之前添加以下内容:<set name="html5-backend" value="openfl-bitfive" />

在 HaxeFlixel 中,没有 application.xml,最接近的就是 Project.xml。

所以我把“ <set name="html5-backend" value="openfl-bitfive" />”作为“ <project>”元素的第一个子节点。

然后我运行 build 命令,得到以下错误输出:

如您所见,openfl-bitfive 库被调用,但是出现了问题,我不理解错误消息。

这里出了什么问题?

任何成功使用 openfl-bitfive 编译 HaxeFlixel 项目的人,请告诉我如何!


库和版本:

0 投票
1 回答
370 浏览

flashdevelop - Flashdevelop“未安装库 openfl”

所以我似乎在使用 flash development 和 openfl 时遇到了很多问题,我不确定是怪我的电脑还是我的无能。

首先我遇到了文件关联问题,然后每当我尝试测试一个项目时,它都会打开一个空白网页,现在(在生气并离开一段时间并重新安装所有内容之后)它说 openfl 不是安装。

虽然我很确定这是...

我已经尝试检查是否安装了多个 SDK 副本。

任何建议或想法都被接受,我正在扯掉自己的头发试图弄清楚

0 投票
1 回答
372 浏览

haxe - 在 HaxeFlixel 中重复(菜单)背景?

我尝试将 16x16 图像加载为FlxSprite,但我不知道如何使其重复以跨越整个窗口。我该怎么做?

我在哪里加载精灵: