While using UPBGE 0.3.6.1, every time I try to do something even minor like parenting an object or pushing P to start the game player, there is a chance that the entire app will crash (quit).
The last time it crashed like this was in 2.49 on Windows XP in 2008, although much more and it is obviously a bug/regression in UPBGE I have found. I cannot go back to 0.35 because I will lose Simulation Nodes. One good milestone I have noted is that UPBGE is no longer in Alpha stage anymore. All that is needed to do is to fix up these crashes.
Every time UPBGE crashes, I have noticed that there is always a Python Backtrace that is being created somewhere just milliseconds prior to the crash. It’s not a hardware problem (with the exception of rigging in Edit Mode which requires the GPU to be coded in), but a Python problem in 99% of cases because UPBGE is written in C++ (a small part of it), and 90% of it is written in Python, which would explain why the crashes are almost always Python-based.
By “stuff” in the title, I meant doing anything. Parenting, pushing P to start the game engine, they are one of the many things that can cause UPBGE 0.3.6.1 to crash on a random chance. Not to mention drivers. It seems to be related to some Python code changes within the app, but I’m not entirely sure, as I am not a developer.
While I realise Apple Silicon (and Intel) are much tougher to run 3rd party apps on them without running into crashes, UPBGE 0.36.1 shouldn’t really be crashing that much. Even Rosetta 2 does not seem to affect UPBGE, and really only seems to interfere with 2.79 and lower due to a bug.
If a developer sees this post, hopefully they can make note of these crashes. I can switch over to Blender 3.4.1 and that can go 3 months or more without crashing.
The question is: Why is UPBGE 0.3.6.1 facing random crashes when I do something, even something really simple like parent an object or add a driver to a material? It never did this in past versions. I’m on macOS 12.0.1, running Apple Silicon, which is not the problem here. It appears to be a Python problem. I don’t think it is Rosetta 2, though it could be, but I highly doubt it since the compatibility rate is so high, and near-perfect.
Could it also be the transition to Metal which is causing crashes? This could be a possibility…
If UPBGE is now out of Alpha, shouldn’t it be called Beta?