我该如何为 WiiBrew 制作 Flight Gear 端口?

发布于 2024-07-16 03:31:11 字数 125 浏览 8 评论 0原文

我该如何为 WiiBrew 制作 Flight Gear 端口? 或者,更好的是,我如何说服别人呢?

How would I go about making a Flight Gear port for WiiBrew? Or, better yet, how would I convince someone else to?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

兔小萌 2024-07-23 03:31:11

我该如何为 WiiBrew 制作 Flight Gear 端口?

“移植”任何重要的应用程序至少有两个方面:从技术上讲,您首先必须获取所有依赖项的源代码,以便为您的目标平台编译所有内容,即通过使用交叉编译器和模拟器/仿真器来编译所有内容。实际测试您的可执行文件。

因此,您将需要一个完整的构建/测试环境来为您的平台构建和运行可执行文件:首先,编译所有必需的依赖项(其中一些可能有自己的依赖项!),这主要似乎归结为:

可以找到构建 FlightGear 的说明此处此处此处< /a>

但是,除了编译源代码之外,您还需要确保应用程序可以在目标平台上实际运行:(wii 硬件规格)。

然而,对于 FlightGear 来说,这似乎并不简单:FlightGear 硬件建议 阅读“基于 OpenGL 的硬件加速”、“256 MB 专用显卡内存”、“1-2 ghz CPU”、“512-1024 MB RAM”、“400-500 MB 磁盘空间”

所以,即使您为您的目标平台编译源代码,这个特定的目标平台看起来不适合这种情况,对于这个应用程序 - 由于其运行时硬件要求。

事实上,搜索 FlightGear 论坛会出现相关讨论 关于在嵌入式(游戏机/移动)平台上运行 FlightGear。

本次讨论的摘要为“FlightGear 并未针对在此类受限环境中使用进行优化”。 基本上,这看起来远非微不足道:即使您设法编译所有依赖项,FlightGear 本身仍然需要进行重大修改/重新设计以供嵌入式使用。

此外,仅仅能够在技术上编译和运行(具有可接受的性能/帧速率)代码仍然不够:从可用性的角度来看,FlightGear 是一款专为在个人计算机上使用而设计的飞行模拟器,并且存在某些外围设备 -换句话说,它基本上依赖于键盘和鼠标,以及其他输入硬件(操纵杆/踏板)。

因此,即使您设法将 FlightGear 移植到可行的目标平台,仍然需要对其进行修改以供非 PC 使用。

如果仅使用前面提到的“基础/数据包”(即存储风景、飞机等的位置)的某个子集,则磁盘空间需求可能会显着减少。

或者,更好的是,我如何说服别人?

这绝对是一项不容易完成的不平凡的任务,因此虽然这当然是可能的,但它需要大量的时间或金钱

因此,如果您有足够的资金,您可以尝试使用自由网站(例如 rentacoder/)外包这项工作elance 等 - 事实上,您可以尝试请求此类自定义的报价。

如果您没有任何可用资金,您可以尝试与可以从此类努力中受益的目标平台制造商取得联系。
也许他们甚至愿意帮助赞助/支持这样的努力?

事实上,大部分所需的重新设计不仅仅针对一种设备,而且通常对于将 FlightGear 移植到非 PC 平台相关的所有工作都是有用的,无论是任天堂 Wii、索尼游戏机还是苹果 iPhone。 ..

一般来说,联系 FlightGear 开发团队并与他们讨论您的想法可能是个好主意,他们可能是有关此类努力的可行性的信息的最佳来源。

How would I go about making a Flight Gear port for WiiBrew?

"Porting" any non-trivial application is at least two-fold: technically, you'll first have to get the source code for all dependencies to compile everything for your target platform, i.e. by using a cross-compiler and simulator/emulator to actually test your executables.

So, you will need a complete build/test environment to build and run executables for your platform: first, get to compile all required dependencies (some of which may have their own dependencies!), which mainly seems to boil down to:

Instructions for building FlightGear can be found here, here and here

However, apart from just compiling the source code, you'll also need to ensure that the application can realistically be run on the target platform: (wii hardware specs).

This however, doesn't seem to be straightforward in the case of FlightGear: the FlightGear hardware recommendations read "OpenGL-based hardware acceleration","256 MB dedicated graphics memory", "1-2 ghz CPU", "512-1024 MB RAM", "400-500 MB disk space"

So, even if you get to compile the source code for your target platform, this particular target platform looks not suitable in this case, for this application - due to its runtime hardware requirements.

In fact, searching the FlightGear forums brings up a related discussion about running FlightGear on embedded (game console/mobile) platforms.

The summary of this discussion would read "FlightGear is not optimized for use in such confined environments". Basically, this seems far from trivial: even if you manage to compile all dependencies, FlightGear itself will still need to be significantly modified/reengineered for embedded use.

In addition, just being able to technically compile and run (with acceptable performance/framerates) the code would still not be enough: from a usability point of view, FlightGear is a flight simulator designed for use on personal computers, with certain peripherals present - in other words, it basically relies on a keyboard and mouse, as well as other input hardware (joystick/pedals).

So, even if you manage to port FlightGear to a viable target platform, it would still need to be modified for non-PC use.

The disk space requirements could probably be significantly reduce if just a certain subset of the previously mentioned "base/data package" (which is where scenery, aircraft etc are stored) were to be used.

Or, better yet, how would I convince someone else to?

It's definitely a non-trivial task that cannot be easily accomplished, so while it's certainly possible, it would require a good amount of time or money.

So, if you have the funding available, you could try to outsource this effort using freelance sites such as rentacoder/elance etc - in fact, you could just try to request offers for such customizations.

If you don't have any funding available, you could try to get in touch with the manufacturers of the target platforms that could benefit from such an effort.
Maybe they would be even willing to help sponsor/support such an effort?

In fact, most of the re-engineering required would not be specific to just one device, but would generally be useful for all efforts related to porting FlightGear to non-PC platforms, no matter if it's nintendo wii, sony playstation, apple iphone ...

In general, it would probably be a good idea to contact the FlightGear developers team and discuss your idea with them, they are probably the best source for information regarding how feasible such an effort would be.

鲸落 2024-07-23 03:31:11

下载源代码(我猜还有“基础包”),得到拥有 WiiBrew 的开发环境,然后开始工作。 FlightGear 是使用 SDL、OpenAL 和 OpenGL 用 C++ 编写的,因此调查这些基本包的平台支持是方便的第一步。 需要移植的依赖项越少,移植就越容易。

不确定如何评估系统要求,Flight Gear 似乎面向高端 PC(他们提到< /a> 2-3 GHz 的 CPU 速度),Wii 不太那个球场。

令人信服的部分几乎不是一个技术问题,更多的是关于社交黑客的问题。 :)

You'd download the source (and "base package", I guess), get hold of a development environment for WiiBrew, and get to work. FlightGear is written in C++ using SDL, OpenAL and OpenGL, so investigating platform support for those basic packages is a handy first step to take. The fewer of the dependencies that need porting, the easier the port will be.

Not sure how to evaluate system requirements, Flight Gear seems to be geared towards a high-end PC (they mention 2-3 GHz of CPU speed), the Wii is not quite in that ballpark.

The convincing-part is hardly a technical question, that's more about social hacking. :)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文