For the last five years I have been writing a computer training game for learning perfect pitch.
I started out on iOS/XCode/Obj-C and moved to Unity3D/C#-scripting. From the get-go I have been hitting up against limitations of Unity3D -- it isn't designed for real-time audio, and it is constantly trying to get a square peg in a round hole. For example, in my game microphone input is fed into a ring resonator and sent out with the headphones as sympathetic resonance. It's impossible to achieve a latency < 0.2s with Unity, as opposed to < 0.01s that I could achieve with iOS.
But I love the idea of cross-platform. One day I will be able to release this game, and to release it simultaneously on all platforms would be fantastic! I also want to use Python. I've looked at Kivy (cross-platform+Python), but it is not designed with audio engineering in mind.
I am hoping that I will be able to use Juce and a mix of Python (for the game logic), GLES2 (for high performance graphics) and C/C++ (for low-level audio processing). In fact I'm hoping that Juce's API may mean I need to do a minimal amount of GLES2 and C/C++.
I have already recoded my game-logic in Python; it is complex game logic that is not performance critical. Also I am constantly revising the logic, trying out new ideas. Hence Python is the perfect language for this. C#/C++/Obj-C family of languages just don't have the flexibility to accommodate for this rapid prototyping.
My question is: can I write the game logic in Python, and still distribute a standalone app on every platform?
I've learned that Python is itself written in C, and if you add its source-tree to your C/C++ project, and #include "Python.h" you can start up a Python environment and execute scripts:
"from time import time,ctime\n"
"print 'Today is',ctime(time())\n"
Then you need to worry about how to call script functions from C, and vice versa. But it all seems to be possible! Doc here: https://docs.python.org/2/extending/
I've looked through the forum history: There appears to be PyJuce, but this seems to be dead in the water; I am pulling up threads between people that haven't been active on this site for over six years.
I think that allowing Python scripting would massively increase the power of this engine. A fusion of high-level and low-level coding.
Is anyone interested in making this happen?
PS I've set my IRC client to auto-join #juce on the FREENODE irc server; I will be sitting in, if anyone is interested to talk about these things.