-
Notifications
You must be signed in to change notification settings - Fork 757
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Building4.25 #850
base: master
Are you sure you want to change the base?
Building4.25 #850
Conversation
…oll` `pitch` `yaw`
FRotator arguments order should be pitch, yaw, roll instead of roll, pitch, yaw
…alEnginePython order.
Fixed and Removed all Errors and Warnings. Tested a few python scripts, ran editor for long time. Seems to be okay.
Fixed Version Number
Merge branch 'master' of https://github.com/SaxonRah/UnrealEnginePython into support4.25
…d it built on 4.18 and 4.25 (on Linux).
…ill builds on 4.18. Builds on 4.18 and 4.25 (only versions tested).
…on from example scripts for 4.25.
…ion in python. This was used to get the blueprint node creation example scripts to work in 4.25.
…ion modules on debian/ubuntu eg ctypes/unittest. This may make it impossible to load Epics python and UnrealEnginePython together.
…till builds on 4.18. Builds on 4.18 and 4.25 (only versions tested).
Currently builds (4.18 and 4.25) and some examples seem to run OK. This requires some changes to the example scripts. Started from Support4.25 pull req but now highly modified.
Without this fails with x86_64-linux-gnu/python3.8/pyconfig.h file not found. Need to create Include directory in Source/UnrealEnginePython which contains an x86_64-linux-gnu directory containing symbolic link to /usr/include/x86_64-linux-gnu/pythonx.x where x.x is appropriate python version. Directly including /usr/include/x86_64-linux-gnu/pythonx.x in linuxKnownIncludesPaths does not work.
… break existing scripts.
This reverts commit 7a21ace. In case wish to re-add these debug prints at some point.
This involves some code moving which will be executed at different times. Builds but not really tested.
May NOT be a complete set of changes required as just tested these examples.
Thanks for your work @davidjo
Line 3126, causing compilation error: If you simply comment out this line, the plugin compiles, but doesn't work as expected: during the packaging for Windows process the plugin causes errors and build fails. Edit:
|
Sorry - forgot to add the following ifdef which I think should fix this
|
But it wont fix the other errors. |
…inner, py_ue_get_key_prop and py_ue_get_value_prop to use them.
@k1lly did you manage to get it packaged and working on windows for 4.25.1? |
I did, but it required commenting out all the code execution inside the functions ive mentioned in my 1st log here, and returning constants. The plugin builds, packages and works inside a project, but its a hack, not a solution. Having almost zero knowledge of the plugin internals, I'd wait for a proper fix from PR's author. |
Fair enough. Hopefully we can get a basic-functioning version packaged up soon from OP. |
So Ive just added what looks like a reasonable fixup - it builds but what Im doing doesnt seem to test this feature and Im only really working with the Editor ie this is totally untested. |
I've tested: the plugin both builds and packages without throwing errors, thank you! |
4.25.1 crash when running sequencer_scripting.py!! |
Yes - I am also getting a crash - at least after fixing the python syntax error plus adding the Mannequin to the project. |
it also crash in engine version 4.22 with plugin's official version 4.22.so it have been a problem for a long time. |
can you help us to slove this problem? I am a Technical Artist,yours plugins is wonderful and this task is very important to me |
It didnt exactly inspire confidence when first error is a trivial python syntax error. I am running 4.18 and 4.21 (in addition to 4.25) so will try these and see what happens. However, its not an area of the Engine Ive used at all and the error seems to be occurring deep inside the Engine core so if cant get some form of working script in some version not sure can fix it. Have you used any form of sequencer script in any version that worked? According to the source code somebody sponsered them to add the sequencer API functionality so Im assuming at some point it worked. |
Well Ive confirmed that it seems to work in 4.21 - doesnt crash and get a sequencer window. However, the 4.22 release notes suggest Epic made a lot of changes to the Sequencer so this is likely the cause. This is likely to take some time. |
Good news!I have a try in 4.21 however i isn't support the ray-tracing.So i 'd like to work your plugin in 4.25.hope that i can help you but i know a little about engine source.best wish to you and have a good luck! :) |
i commented the code"sequencer_add_actor(camera)" found that the program run successfully without crash in 4.25. it seem to be the source of this problem. |
Ive pinned down the issue - it seems to be an infinite recursion loop in 4.22 in specific code added in 4.22. |
I have updated my repo master with fixups for 4.25 (among others) sequencer - sequencer_scripting425.py runs without crashing and looks the same as the 4.21 version. |
Probably cant help with this - I dont do Windows - Im guessing whatver IDE this is the lower left is some form of stack trace and the top source is where fault occurring - however I dont see a proper stack trace as I would in Linux - but it currently looks like its in the # if PLATFORM_WINDOWS block which is fairly obviously some Windows specific initialization code - but this has nothing to do with Property changes. So question is when did it last work for you - that section was last updated Dec 2018 (fileno to _fileno) so its been there a while - could of course be something has changed in the Engine - but _setmode/_fileno/stdin etc are very basic c++ io functions. What python version are you using? From the comments above the _setmode calls its trying to fix something the python initialization code changed - but maybe newer pythons dont do this - or maybe Unreal has modified stdin etc. which causes this to fail. Could try commenting those 3 lines and seeing what happens. |
I'm trying to pack test project (Windows 10, UE 4.25) and have a python VM at runtime. I built plugin from source as described in README. Everything is ok in Editor, but i get the following error during build procedure: UATHelper: Packaging (Windows (64-bit)): ERROR: Unable to instantiate module 'UnrealEd': Unable to instantiate UnrealEd module for non-editor targets. How can I fix this? |
Try this version of the build tool file - I was having problems getting the sequencer to compile and link properly and I now realize I added some sequencer stuff (apparently editor only) to the package and editor building - moved into the editor building only section and it seems to build OK in the editor. Well apparently you cant upload .cs files - added .txt so you need to rename it back to UnrealEnginePython.Build.cs. |
Well I'm happy to say IT WORKED! Now all that's left is to hope it'll run python scripts in the packaged project (on runtime). Will it run the scripts after packaging? |
@davidjo so I've to package a project with the plugin and it worked!! Now, I've been trying all day to embbed a python runtime distribution in the packaged version but the instructions in the original repo are really bad. Have you managed to do so? |
Sorry - packaging is not something Ive needed to do yet. |
Thanks for this fix, now project can be packaged at least. I've tried new build with system-wide python (specified in "pythonHome") , not embedded. Game is running but scripts don't work. I hope that we can make it work after time anyway. |
@mr-maul Have you added your |
@avivazran @davidjo Also, If any of you is able to successfully package a project witn an embedded python distribution please write how you did it. I've managed to package successfully and run the exe on my pc but when moving to another pc with no python installed on it, the exe crashes without any message. my project build.cs:
|
Oh, I didn't add this folder. Can you clarify please how certainly should it be included? Should it be in "PublicAdditionalLibraries" of MyProject.Build.cs? I suppose no, but besides that there are only "PublicAdditionalFrameworks", "AdditionalBundleResources" , "AdditionalPropertiesForReceipt". Also there is mentioned: "If you want to package your project (it is required only if you need to have a python VM at runtime, read: your game logic is programmed in python) ensure the Content/Scripts/ue_site.py file is in your project (it can be empty).". Is it still actual? |
@avivazran |
@davidjo Hey thanks for your support with keeping this going (and everyone on this thread for that matter!). I am building the code and I am currently getting this error: I am not sure why this is happening because all the include libraries are present for the solution. Do you have any builds for 4.25.3 you could share also? Or even share your solution etc? |
This is my attempt at getting UnrealEnginePython to work on 4.25 running under Ubuntu Linux 20.04.
This is based off PR #845 but is highly modified.
It builds on both 4.18 and 4.25.
It runs all tests (after modification by PR #715 otherwise that test failed on both 4.18 and 4.25).
I have tested a few examples for blueprints which I have used previously but modifications were needed to the examples to run under 4.25 - those modified versions added to examples.
It needs much more extensive testing as its likely Ive missed some fixups.