是否可以使用 Go 移动包资源创建跨平台(移动 + 桌面)游戏引擎?或者它以某种方式与 gomobile 和移动架构相关联?
第一个问题是我将使用的 glsprite 和其他渲染包构建在 OpenGL ES 之上,所以我将不得不忽略 gl
并只使用更通用的包,如 https://godoc.org/golang.org/x/mobile/exp/sprite/portable ?或者我仍然可以在定位移动设备时近乎无缝地使用 glsprite?
理论上音频应该与 https://godoc.org/golang.org/x/mobile/exp/audio 交叉编译。 ?
它可行/可行吗?还是太麻烦了?
最佳答案
上次我在 Windows 上尝试了 gomobile opengl,它没有用。我只能为android编译。也许这个错误现在已修复,不确定..
但是;对于跨平台,您可以简单地将 gomobile 用于移动平台,并在桌面上为通用 opengl 创建一个界面,您将无缝地拥有两者。只需抽象出常规 opengl 和 gomobile opengl es 之间的接口(interface)即可。
更新:
实际上只是尝试使用 go run 运行“基本”示例,它在 Windows 上运行。所以这个错误必须被修复。因此,在您的回复中,是的,可以将 go mobile x 用于跨平台移动 + 桌面:
https://github.com/golang/mobile/blob/master/example/basic/main.go
但是;由于 Linux 特定的 Open AL 库,音频无法在 Windows 上编译。如果您查看构建标志,darwin,仅限 linux,没有 windows。
关于使用移动 pkg 的 Golang 跨平台游戏引擎?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35560316/