Package: airctrl
Supported OSSupported LanguageWelcome to AirControlAirControl is an Open Source, Modular, Cross-Platform, and Extensible Flight Simulator For Deep Learning Research.AirControl offers a realistic simulation experience with a variety of airplanes. The AirControl is built onUnity Game engine. Following are the salient features of the AirControl:Built withC#, it hasPythonAPI to control it from your favorite Deep learning Framework.Complete source code is open on Github.Aircontrol takes full advantage of object-oriented programming. It is developed fully modular from day one. You can easily introduce new features such asvertical takeoff. You can bring your ownalien plane to AirCotrol.AirControl is truly cross-platform, can be compiled on Linux, macOS, and Windows. Binary will be released for all the platforms.The AirControl uses NvidiaPhysxfor the best possible Newtonian physics simulation.AirControl allows users to take advantage of aerodynamics effects such asGround effect.All the control surfaces (Throttle, Rudder, Ailerons, and Flaps) accept normalized input between -1 and 1. This makes AirControl even more friendly with AI.System RequirementIt depends on how big your Unity environment is. The environment which comes with the AirControl binary releases is the basic one and tested with the following config:Operating System : Ubuntu, Windows, MacCPU: Intel Core i7GPU: Nvidia 1070 or HigherRAM: 16 GBAirControl may work with lower than the specified requirements, but it's not tested.You can run AirControl in server-client mode with two different machines or both in a single machine.Control InputsTo change the keyboard layout mapping manual, refer to :keyboard-layout-editorExport the Layout as PNG and replace the fileAirControl/docs/images/keyboard-layout.pngSubmit a pull requestGetting startedVersion number (MAJOR.MINOR.PATCH) follows Semantic Versioning 2.0.0. Version numbers change as follows:MAJOR version when making incompatible API changesMINOR version when adding API in a backward-compatible mannerPATCH version when making backward-compatible bug fixes
Note that semantic versioning also applies to the Pypi release, Git release, and Snap releases.%%{init: {'theme': 'base', 'themeVariables': { 'primaryColor': '#ffcccc', 'edgeLabelBackground':'#ffffee', 'tertiaryColor': '#fff0f0'}}}%%
graph TD
    A[Skills] --> C[Not Familier with Unity Engine]
    C --> C_1[Use Binaries]
    C_1 --> D[Windows]
    C_1 --> E[Ubuntu]
    C_1 --> F[Mac]
    A[Skills] --> B[Familier with Unity Engine]
    B --> H[Wants to Add/Edit Airplane/Assets etc..]
    H --> I[yes]
    H --> J[No]
    I --> K[Build from source]
    J --> C_1Windows - TestedDownload Binaries -https://github.com/snlpatel001213/AirControl/releasesBuild it from sourceLinux - TestedDownload Binaries -https://github.com/snlpatel001213/AirControl/releasesBuild it from sourcemacOS - Not Tested [Need Contributors]Download Binaries -https://github.com/snlpatel001213/AirControl/releasesBuild it from sourcePython Package InstallationcdPythonPython3setup.pyinstallORUserelativeimportsPypi Release-AlphaNot Tested:https://pypi.org/project/aircontrol-python/pip install airctrlSnap Release-AlphaInstall :snap install aircontrolInvoke:aircontrol.AirControlFly manually or use python API.DocumentationAirControl Documentation:https://aircontrol.readthedocs.io/C#/Python API Documentation -https://snlpatel001213.github.io/AirControl/html/index.htmlClient examplesSr. No.Client ExampleDetails1Primitive APISimple Client to interact with the server. It does not require the AirControl Pypi package. Just for unit test, not for long runs2Primitive API - 2Simple Client to interact with server. More detailed than the previous one. End to end flight loop is demonstrated. It does not require AirControl Pypi package. Just for unit test, not for long runs3Lidar ControlsDemonstrate how to control lidar from the python client.4Camera ControlsDemonstrate how to control Camera from the python client. It allows switching the camera. It allows capturing Depth, Semantic segmentation, Object segmentation, Optical flow variant of the scene.4Time of Day ControlsAllows controlling the time of day and light conditions. It allows controlling sun position based on Longitude, Latitude, Hour, and Minutes.5UI and Audio ControlsAllows controlling visibility of Airplane control on UI and Airplane Audio.Future ReleaseRefer to the Project page for the future release, features, and bug tracking :https://github.com/snlpatel001213/AirControl/projects/1Tools and TechnologyContributeWe love your input! We want to make contributing to AirControl as easy and transparent as possible. Please see our Contributing GuideCONTRIBUTING.mdto get started. Thank you to all our contributors!Current Contributors