Skip to main content

Control Unity from Python!

Project description

Peaceful Pie

Connect Python with Unity for reinforcement learning!

Video:

Control Unity from Python WITHOUT mlagents

CI

CircleCI

Examples

Installation

You need to install both into Unity project, and into your Python environment.

In Unity

  • In Unity, go to Window | Package Manager
    • change the dropdown in top left to 'Packages: In Project'
    • check that Newtonsoft Json appears
    • if Newtonsoft Json is not already in your project:
      • click on the '+' in the top left, and choose 'Add package by name...'
      • put the name com.unity.nuget.newtonsoft-json, then click 'Add'
  • In Unity, in your project's "Assets" folder, create a "Plugins" folder, if it doesn't already exist
  • First install AustinHarris.JsonRPC:
    • Download https://www.nuget.org/api/v2/package/AustinHarris.JsonRpc/1.2.3
    • rename to have filename suffix be .zip (you might need to turn on options to see all file extensions)
    • unzip the resulting zip file
    • copy lib/netstandard2.1/AustinHarris.JsonRpc.dll into your Plugins folder
    • select the file, in your Plugins, and in 'Inspector' unselect 'validate references', and click 'Apply'
  • Click on 'Releases', on the right of the github page
    • in the most recent release, download PeacefulPie.dll
  • Copy PeacefulPie.dll into your Unity project's Plugins folder
  • If on Mac silicon:
    • in Unity, goto Plugins, click on PeacefulPie.dll
    • in Inspector, change 'CPU' setting from 'Intel' to 'Any CPU', then click 'Apply'
    • do the same for AustinHarris.JsonRpc.dll

You should be good to go :)

In Python

pip install -U peaceful-pie

Requirements

  • currently tested with:
    • python 3.10
    • Unity 2021.3.16.f1
  • support Python version: >=3.8.0, <4.0.0
  • please create an issue if your preferred platform is not supported (I'm guessing I might need to downgrade Python a little? Let me know!)

Dev

I'm usng Visual Studio for Mac to write this.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

peaceful_pie-2.1.0.tar.gz (6.8 kB view details)

Uploaded Source

Built Distribution

peaceful_pie-2.1.0-py3-none-any.whl (7.0 kB view details)

Uploaded Python 3

File details

Details for the file peaceful_pie-2.1.0.tar.gz.

File metadata

  • Download URL: peaceful_pie-2.1.0.tar.gz
  • Upload date:
  • Size: 6.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.9

File hashes

Hashes for peaceful_pie-2.1.0.tar.gz
Algorithm Hash digest
SHA256 f7d3541b92a55239c40547e97d923426feb5513da957da797684958a5c8a33ca
MD5 870c4e7b5246bb35336f004e8973dce4
BLAKE2b-256 36f9807b55578f463569629463d9b358ea01a3623a2dac2b513960c2dcbcb06b

See more details on using hashes here.

File details

Details for the file peaceful_pie-2.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for peaceful_pie-2.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 46f234298d4a341f5beb4ac183120b850e8c6eb81acfdc5262b445154498c9cc
MD5 293c2aa8f65ce7227413b4b8ff97f925
BLAKE2b-256 fa372517f653a39552b59aabe7a300f2004eb78fd4276d5cdb68ca32b949dcd5

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page