diff --git a/AUTHORS.md b/AUTHORS.md new file mode 100644 index 000000000..714d43c67 --- /dev/null +++ b/AUTHORS.md @@ -0,0 +1,7 @@ +# Authors + +AirSim was originally created by [Shital Shah](https://github.com/sytelus) during late 2016. Shital authored physics engine, multirotor model, car model, environment models, sensor models, all Unreal Engine related code, APIs, SimpleFlight firmware, computer vision components, documentation etc. + +[Chris Lovett](https://github.com/lovettchris), another original author, contributed the MavLink communication library, PX4 related components, Settings system, build system, several important bug fixes and so on. + +List of all contributors since our first release in February 2017 can be [found here](https://github.com/Microsoft/AirSim/graphs/contributors). \ No newline at end of file diff --git a/docs/whats_new.md b/CHANGELOG.md similarity index 71% rename from docs/whats_new.md rename to CHANGELOG.md index f534b91ef..62ada2aa5 100644 --- a/docs/whats_new.md +++ b/CHANGELOG.md @@ -1,6 +1,23 @@ # What's new -Below is highly summerized curated list of important changes. This does not include minor/less important changes or bug fixes or things like documentation update. This list updated every few months. For full list of changes, please review [commit history](https://github.com/Microsoft/AirSim/commits/master). +Below is summarized list of important changes. This does not include minor/less important changes or bug fixes or documentation update. This list updated every few months. For complete detailed changes, please review [commit history](https://github.com/Microsoft/AirSim/commits/master). + +### November, 2018 +* [New environments](https://github.com/Microsoft/AirSim/releases/tag/v1.2.1): Forest, Plains (windmill farm), TalkingHeads (human head simulation), TrapCam (animal detection via camera) +* Highly efficient [NoDisplay view mode](https://github.com/Microsoft/AirSim/blob/master/docs/settings.md#viewmode) to turn off main screen rendering so you can capture images at high rate +* [Enable/disable sensors](https://github.com/Microsoft/AirSim/pull/1479) via settings +* [Lidar Sensor](docs/lidar.md) +* [Support for Flysky FS-SM100 RC](https://github.com/Microsoft/AirSim/commit/474214364676b6631c01b3ed79d00c83ba5bccf5) USB adapter +* Case Study: [Formula Student Technion Driverless](https://github.com/Microsoft/AirSim/wiki/technion) +* [Multi-Vehicle Capability](docs/multi_vehicle.md) +* [Custom speed units](https://github.com/Microsoft/AirSim/pull/1181) +* [ROS publisher](https://github.com/Microsoft/AirSim/pull/1135) +* [simSetObjectPose API](https://github.com/Microsoft/AirSim/pull/1161) +* [Character Control APIs](https://github.com/Microsoft/AirSim/blob/master/PythonClient/airsim/client.py#L137) (works on TalkingHeads binaries in release) +* [Arducopter Solo Support](https://github.com/Microsoft/AirSim/pull/1387) +* [Linux install without sudo access](https://github.com/Microsoft/AirSim/pull/1434) +* [Kinect like ROS publisher](https://github.com/Microsoft/AirSim/pull/1298) + ### June, 2018 * Development workflow doc diff --git a/docs/contributing.md b/CONTRIBUTING.md similarity index 70% rename from docs/contributing.md rename to CONTRIBUTING.md index 39e8f886c..66cbd63d4 100644 --- a/docs/contributing.md +++ b/CONTRIBUTING.md @@ -1,15 +1,17 @@ -# Contributing - -## How To - -- Please read our [short and sweet coding guidelines](coding_guidelines.md). -- For big changes such as adding new feature or refactoring, [file an issue first](https://github.com/Microsoft/AirSim/issues). We should talk! -- Use our [recommended development workflow](dev_workflow.md) to make changes and test it. -- Use [usual steps](https://akrabat.com/the-beginners-guide-to-contributing-to-a-github-project/) to make contributions just like other GitHub projects. If you are not familiar with Git Branch-Rebase-Merge workflow, please [read this first](http://shitalshah.com/p/git-workflow-branch-rebase-squash-merge/). - -## Do and Don't -- Rebase your branch frequently with master (once every 2-3 days is ideal). -- Use same style and formatting as rest of code even if it's not your preferred one. -- Change any documentation that goes with code changes. -- Do not include OS specific header files. -- Keep your pull request small, ideally under 10 files. +# Contributing + +## Quick Start +- Please read our [short and sweet coding guidelines](coding_guidelines.md). +- For big changes such as adding new feature or refactoring, [file an issue first](https://github.com/Microsoft/AirSim/issues). +- Use our [recommended development workflow](dev_workflow.md) to make changes and test it. +- Use [usual steps](https://akrabat.com/the-beginners-guide-to-contributing-to-a-github-project/) to make contributions just like other GitHub projects. If you are not familiar with Git Branch-Rebase-Merge workflow, please [read this first](http://shitalshah.com/p/git-workflow-branch-rebase-squash-merge/). + +## Checklist +- Use same style and formatting as rest of code even if it's not your preferred one. +- Change any documentation that goes with code changes. +- Do not include OS specific header files or new 3rd party dependencies. +- Keep your pull request small, ideally under 10 files. +- Make sure you don't include large binary files. +- When adding new includes, make dependency is absolutely necessary. +- Rebase your branch frequently with master (once every 2-3 days is ideal). +- Make sure your code would compile on Windows, Linux and OSX. diff --git a/ISSUE_TEMPLATE.md b/ISSUE_TEMPLATE.md index f7527c6f5..63c43c720 100644 --- a/ISSUE_TEMPLATE.md +++ b/ISSUE_TEMPLATE.md @@ -1,4 +1,18 @@ -If you are looking for a new feature or bug fix, fire up your IDE, try playing around with source code and contribute back! -What's better than filing issue? Filing a pull request :). +# Read This First + +## If you are reporting a bug +* Make sure to write **all reproduction steps** +* Include full error message in text form +* Search issues for error message before filing issue +* Attach screenshot if applicable +* Include code to run if applicable + +## If you have question +* Add clear and concise title +* Add OS, AirSim version, Python version, Unreal version if applicable +* Include context on what you are trying to achieve +* Include details of what you already did to find answers + +**What's better than filing issue? Filing a pull request :).** ------------------------------------ (Remove above before filing the issue) ------------------------------------ diff --git a/README.md b/README.md index 54cb6ed70..4ee91c514 100644 --- a/README.md +++ b/README.md @@ -17,11 +17,17 @@ Cars in AirSim ## What's New -* AirSim is now full featured for [multiple vehicles](docs/multi_vehicle.md)! +* [New environments](https://github.com/Microsoft/AirSim/releases/tag/v1.2.1): Forest, Plains (windmill farm), TalkingHeads (human head simulation), TrapCam (animal detection via camera) +* Highly efficient [NoDisplay view mode](https://github.com/Microsoft/AirSim/blob/master/docs/settings.md#viewmode) to turn off main screen rendering so you can capture images at high rate +* [Lidar Sensor](docs/lidar.md) +* Case Study: [Formula Student Technion Driverless](https://github.com/Microsoft/AirSim/wiki/technion) +* [Multi-Vehicle Capability](docs/multi_vehicle.md) +* [ROS publisher](https://github.com/Microsoft/AirSim/pull/1135) +* [Arducopter Solo Support](https://github.com/Microsoft/AirSim/pull/1387) * AirSim 1.2 is released! **This version has breaking changes in APIs and settings.json.** Please see the [API Upgrade](docs/upgrade_apis.md) and [Settings Upgrade](docs/upgrade_settings.md) docs. * We have upgraded to Unreal Engine 4.18 and Visual Studio 2017 (see [upgrade instructions](docs/unreal_upgrade.md)) -For complete list of changes, view our [Changelog](docs/whats_new.md) +For complete list of changes, view our [Changelog](CHANGELOG.md) ## How to Get It @@ -101,8 +107,8 @@ Please take a look at [open issues](https://github.com/microsoft/airsim/issues) * [More on AirSim design](docs/design.md) * [More on code structure](docs/code_structure.md) -* [Contribution Guidelines](docs/contributing.md) - +* [Contribution Guidelines](CONTRIBUTING.md) +* [Trello Board](https://trello.com/b/1t2qCeaA/wishlist-by-community-for-community) ### Who is Using AirSim? diff --git a/SUPPORT.md b/SUPPORT.md new file mode 100644 index 000000000..ea1e7658b --- /dev/null +++ b/SUPPORT.md @@ -0,0 +1,6 @@ +# Support + +We highly recommend to take a look at source code and contribute to the project. Due to large number of incoming feature request we may not be able to get to your request in your desired timeframe. So please [contribute](CONTRIBUTING.md) :). + +* [Join AirSim Facebook Group](https://www.facebook.com/groups/1225832467530667/) +* [File GitHub Issue](https://github.com/Microsoft/AirSim/issues) \ No newline at end of file diff --git a/docs/apis.md b/docs/apis.md index 5dcf5e047..d33d92131 100644 --- a/docs/apis.md +++ b/docs/apis.md @@ -4,7 +4,7 @@ AirSim exposes APIs so you can interact with vehicle in the simulation programmatically. You can use these APIs to retrieve images, get state, control the vehicle and so on. ## Python Quickstart -If you want to use Python to call AirSim APIs, we recommend using Anaconda with Python 3.5 or later versions however some code may also work with Python 2.7 ([help us](contributing.md) improve compatibility!). +If you want to use Python to call AirSim APIs, we recommend using Anaconda with Python 3.5 or later versions however some code may also work with Python 2.7 ([help us](../CONTRIBUTING.md) improve compatibility!). First install this package: diff --git a/docs/code_structure.md b/docs/code_structure.md index 3c60123de..5d11a01cf 100644 --- a/docs/code_structure.md +++ b/docs/code_structure.md @@ -26,7 +26,7 @@ DroneShell demonstrates how to connect to the simulator using UDP. The simulato ## Contributing -See [Contribution Guidelines](docs/contributing.md) +See [Contribution Guidelines](../CONTRIBUTING.md) ## Unreal Framework diff --git a/docs/create_issue.md b/docs/create_issue.md index 0d70441df..227f81abe 100644 --- a/docs/create_issue.md +++ b/docs/create_issue.md @@ -18,6 +18,6 @@ AirSim is open source project and contributors like you keeps it going. It is im * Do not use "Please help" etc in the title. See above. * Do not copy and paste screen shot of error message. Copy and paste text. * Do not use "it doesn't work". Precisely state what is the error message or symptom. -* Do not ask to write code for you. [Contribute](https://github.com/Microsoft/AirSim/blob/master/docs/contributing.md)! +* Do not ask to write code for you. [Contribute](../CONTRIBUTING.md)! diff --git a/docs/release_notes.md b/docs/release_notes.md index 5f86c1df4..d0fc5e06b 100644 --- a/docs/release_notes.md +++ b/docs/release_notes.md @@ -1,6 +1,6 @@ # Release Notes -**Please see [What's new](whats_new.md). This page is not maintained currently.** +**Please see [changelog](CHANGELOG.md). This page is not maintained currently.** ## v1.1 - 2017-09-28 diff --git a/docs/use_precompiled.md b/docs/use_precompiled.md index d1e1cbc69..8c7514f77 100644 --- a/docs/use_precompiled.md +++ b/docs/use_precompiled.md @@ -7,7 +7,7 @@ You can simply download precompiled binaries and run to get started immediately. **Linux**: Binaries for Ubuntu 16.04 LTS is coming soon. For now you will need to [build it on Linux](build_linux.md) yourself. ## Controlling Vehicles -Most of our users typically use [APIs](apis.md) to control the vehicles. However if you can also control vehicles manually. You can drive the car using keyboard, gamepad or [steering wheel](steering_wheel_installation.md). To fly drone manually, you will need either XBox controller or a remote control (feel free to [contribute](contributing.md) keyboard support). Please see [remote control setup](remote_control.md) for more details. Alternatively you can use [APIs](apis.md) for programmatic control or use so-called [Computer Vision mode](image_apis.md) to move around in environment using the keyboard. +Most of our users typically use [APIs](apis.md) to control the vehicles. However if you can also control vehicles manually. You can drive the car using keyboard, gamepad or [steering wheel](steering_wheel_installation.md). To fly drone manually, you will need either XBox controller or a remote control (feel free to [contribute](../CONTRIBUTING.md) keyboard support). Please see [remote control setup](remote_control.md) for more details. Alternatively you can use [APIs](apis.md) for programmatic control or use so-called [Computer Vision mode](image_apis.md) to move around in environment using the keyboard. ## Don't Have Good GPU? The AirSim binaries, like CityEnviron, requires a beefy GPU to run smoothly. You can run them in low resolution mode by editing the `run.bat` file on Windows like this: