Hello all!
I have been focusing my efforts lately on bringing many of the widely adopted computer graphics libraries to the Swift programming language, all made possible with Swift 5.9’s C/C++ Interop Feature, which allows a great variety of C++ APIs to be called directly from Swift, and select Swift APIs can be used from C++, along with the ability to remove CMake entirely, vastly reducing the development overhead of maintaining often hundreds of thousands of lines of CMake code in existing C/C++ projects by authoring a single Swift Package Manager (SPM) manifest file, called Package.swift, which defines the package’s name, its source code, and resource contents and is created at the root (top level directory) of the Swift, and/or C/C++ project repository.
So far, by using this approach I have been able to successfully build 30 foundational C/C++ computer graphics libraries within a single monolithic swift package which encapsulates much of the Academy Software Foundation (ASWF) Software Landscape, allowing the C/C++ APIs of all these libraries to be called directly from Swift, in addition to also allowing this swift package to be used as a single package dependency to build other Swift, C, and C++ projects. See MetaverseKit to learn more and use it in your existing project.
In addition to MetaverseKit, I have been able to bring Pixar’s Universal Scene Description (USD), a widely adopted (C++ and Python) computer graphics library, to use directly in Swift as well, with SwiftUSD.
Which leads me to the conclusionary topic of discussion:
Is there any developer interest in using the Swift programming language for video game development, and the potential for writing Swift code either as a replacement for or in addition to existing Unreal Engine games written in C/C++?
In addition to building games in Swift with Unreal Engine, I could additionally get the Unreal Engine application itself to build and run cross-platform (Linux, Microsoft Windows, macOS) through a single terminal command:
$ swift run UnrealEngine
I am curious to all of your thoughts in an open discussion, thanks!