Search Unity

유니티는 Microsoft와의 협업을 통해 자율주행차 시뮬레이터 AirSim을 Unity에 통합했습니다. 이번 협업은 유니티의 고성능 엔진, 쉽게 사용할 수 있는 C# 개발 환경 및 Unity 에셋 스토어의 고품질 콘텐츠를 활용하여 자율주행차와 드론의 개발 역량을 대중화하는 데 도움이 됩니다.

AirSim on Unity

Microsoft AI & Research 팀이 개발한 AirSim은 자율주행 시스템에 사용되는 오픈소스 시뮬레이터로, AI, 딥러닝, 강화 학습과 컴퓨터 비전 테스트가 지원되는 사실적인 환경과 자동차 역학으로 구성된 플랫폼입니다. AirSim on Unity를 사용하면 완전히 새로운 생태계와 플랫폼에서 콘텐츠를 만들고 혁신을 도모할 수 있습니다.

“Microsoft는 AirSim on Unity를  통해 제조업체와 연구자들이 자율주행차 AI와 딥러닝을 발전시킬 수 있도록 돕고자 합니다. 유니티는 OEM 클라이언트들이 비용 효율적인 방식으로 사실적인 가상 환경을 개발하고, 자율주행과 딥러닝에 관한 새로운 실험을 해볼 수 있도록 지원합니다.”

– 아시시 카푸르(Ashish Kapoor), Microsoft Research & AI 수석연구원

강력한 고성능 플랫폼

성능을 향상하기 위한 유니티의 끊임없는 노력 덕분에 AirSim on Unity는  높은 초당 프레임 수를 보이면서도 전체적으로 안정적인 성능을 제공합니다. Visual Studio와 AirSim을 함께 활용하면 완벽하게 통합되고 사용하기도 쉬운 최상의 개발 환경을 경험할 수 있습니다.

 

크로스 플랫폼 지원

유니티는 원활한 크로스 플랫폼 지원을 핵심 원칙으로 삼고 있으며, 금일 Windows용 AirSim 릴리스 이후 곧 Linux 지원도 추가할 예정입니다. Linux 릴리스 후에는 어떤 플랫폼에서든 고성능 시뮬레이션을 실행할 수 있습니다.

ML-Agents로 테스트

유니티가 자체적으로 개발한 머신러닝 솔루션인 ML-Agents를 AirSim 기능에 통합하면 더욱 다양하게 테스트해볼 수 있습니다. 오픈소스 ML-Agents는 GitHub에서 다운로드할 수 있으며, 4,000개 이상의 별점을 받는 등 긍정적인 반응을 얻었습니다. AirSim On Unity가 출시됨에 따라 두 커뮤니티는 함께 실험 및 개발하고 발전할 수 있는 공통 기반을 가지게 되었습니다.

” 새로운 AirSim 툴을 사용하여 Unity 내에서 단 몇 시간만에 무인항공기용 ML 에이전트를 훈련하고 평가할 수 있었습니다. 가상이 아닌 현실에서 이 테스트를 해보려면 며칠, 아니 몇 주까지도 소요될 수 있죠.”

– 아누락 라나(Anurag Rana), Threye CEO

 

신속하게 시뮬레이션 환경 구축

Unity 에셋 스토어에서 제공하는 광범위한 고품질 콘텐츠 라이브러리를 활용하여 복잡한 가상 시뮬레이션 환경을 빠르고 간편하게 구축할 수 있습니다.

지금 Unity 에셋 스토어에서 무료로 제공하는 윈드리지 시티(Windridge City) 환경을 다운로드하여 시작해보세요. 사실적이면서도 아름다운 윈드리지 시티 환경을 사용하면 도시, 교외, 시골 지역에서 자동차 및 드론 테스트를 수행할 수 있습니다. 윈드리지 시티는 AirSim과 마찬가지로 오픈소스이므로 자유롭게 수정하고 사용할 수 있습니다.

윈드리지 시티의 개발을 위해 노력과 수고를 아끼지 않은 NatureManufactureIndago에 깊은 감사를 전합니다. NatureManufacture와 Indago는 NatureManufacture 에셋, Unity 터레인 툴의 ‘EasyRoads3D’Procedural Worlds의 ‘Gaia’ 샘플을 포함한 Unity 에셋 스토어의 툴과 에셋을 사용했습니다. 또한 AirSim 래퍼 코드(wrapper code)를 제작하는 데 도움을 준 Rythmos에도 감사의 말씀을 드립니다. 이 파트너들은 자율주행 시뮬레이션 연구를 발전시키고자 하는 유니티의 미션에 동참하며, 유니티 생태계의 다양성과 우수성을 대변합니다.

AirSim on Unity 시작하기

AirSim API를 그대로 유지하고, 샘플 데모 프로젝트를 사용하고 윈드리지 시티를 무료로 다운로드하여 AirSim을 빠르게 시작해보세요. 다음과 같은 자료를 참고하면 도움이 됩니다.

GitHub 저장소에 AirSim 래퍼 코드, 차량 및 드론 데모 프로젝트와 관련 문서가 포함된 새로운 Unity 폴더가 있습니다. 차량 및 드론 프로젝트는 GitHub 저장소에서 사용 가능한 기존의 샘플 스크립트(예: HelloCar.py, HelloDrone.py)와 호환됩니다.

윈드리지 시티 환경은 Unity 에셋 스토어에서 다운로드할 수 있으며, 포스트 프로세싱 스택 v2를 필요로 합니다. 포스트 프로세싱 스택 v2는 이 지침에 따라 Unity 패키지 관리자를 통해 설치할 수 있습니다.

이 초기 Windows용 릴리스는 ‘베타’로 분류되며, Linux 지원은 추후 출시될 예정입니다. AirSim은 코어 API를 지원하지만, 유니티 커뮤니티에서 활발한 실험을 통해 AirSim을 최대한으로 활용할 수 있기를 기대합니다.

GitHub 저장소에 바로 피드백을 남기거나 이 블로그에 댓글로 의견을 알려주세요. 유용한 실험이 되기를 바랍니다!

21 코멘트

코멘트 구독

코멘트를 달 수 없습니다.

  1. Hello Everyone,
    For my project we need a simulation software, basically the task is a simple pick-and-place (with a robot manipulator), but in outdoor environments.
    The sensors we are gonna use are: Camera, IMU, Torque, Pressure, Force and one different kind of orientation (1D) sensor.

    I tried VREP, it is easy to use and also it supports all the sensors, but the environment rendering is really bad (even the resolution is not good, when streaming from the visual sensor).

    I checked some tutorials of AirSIM and the environment modelling is very realistic with shadows and weather effetcs (which suits perfectly for the project) , however as far I know AirSIM only supports Camera, GPS, IMU and Barometer, also it has no Robot manipulator models (I do know that it’s main focus is on UAV’s).

    So I just wanted to know whether it is at all possible to import urdf model from ROS (as AirSIM have ROS support), also can one model and incorporate these other sensors.

    Any suggestions and advice is much appreciated.

    Thank You.

  2. As soon as I hit play in Unity, the app crashes immediately, with no log that i can find.

    1. Jose De Oliveira

      11월 26, 2018 10:01 오후

      Hi Jason,
      Sorry for the inconvenience. This feels like a settings.json issue.
      Probably best if you could post this question to AirSim’s Forum, here: https://github.com/Microsoft/AirSim/issues
      Thanks!

    2. Yeah, you just need to add this line : « “SimMode”: “Multirotor”, » to settings.json
      In Windows this file will be created for you under “My Documents\AirSim\” just after you run one of the demos binaries found over here https://github.com/Microsoft/AirSim/releases

  3. Hello, Do you have a scene for your windridge city that i can use in unity? I’ve gone through all folders and can’t see a scene file. How do i replicate your picture? Thanks

    1. Jose De Oliveira

      11월 16, 2018 6:03 오후

      Hi kingz,
      The Windridge City package can be freely downloaded directly from Unity’s Asset Store. The blog had a hyperlink for it on the package name, but it gets a little obscured in a large text like that.
      Here’s the direct link: https://assetstore.unity.com/packages/3d/environments/roadways/windridge-city-132222
      I hope you enjoy it!
      Thanks!

      1. Hi Jose, Thanks for your response. I may not have been clear in my question. I have already downloaded the windridge unity asset. I was asking how to I put the scene you have in my scene. Thanks

        1. Nevermind, i think the asset i downloaded are missing some files. I will re-download it again. Thanks

      2. really Good assets nice work but men i don’t have latest version of unity i have unity 2018 1.1f1 but please don,t delete this assets soon i will download latest version of unity and also i gave you five stars soon by the way your are such a good designer

  4. Oh, one more question: Why not controller support instead of just keyboard?

    1. Jose De Oliveira

      11월 16, 2018 6:01 오후

      Hi Jason
      Excellent questions!
      We are trying to keep the more technical questions like yours centralized in AirSim’s discussion forum, here: https://github.com/Microsoft/AirSim/issues
      Would you mind re-posting those there?
      Thanks a bunch!

      1. Yes sir. Will look at that. This is great! Thanks!

  5. Hi, This is great!. A few questions:
    1. Will this run in Unity with the same performance as it runs in Unreal? Or does does the wrapper add some overhead that will slow things down?
    2. Will this support multi-agent simulations for reinforcement training of several autonomous drones at once? For example running batches of 10 or 20 at a time.
    3. I was testing this out and the colliders don’t always prevent the drone from going through the ground. Is this a bug or is there something I’m not setting up right with colliers and collision detection. How do collisions register to Airsim lib? Do you have any optimization tips?
    4. Will this support SITL? If so, can you explain how to set that up?
    5. What is the best place for researchers to post questions like this? (Things related specifically to AirSim on Unity.)

  6. Unity’s going mad…

    1. SABARNO MAJUMDAR

      11월 20, 2018 1:25 오후

      Hello All,

      As a part of my little project, Im trying to build this simulator on Unity to make it work with MiddleVR. I was having issues earlier since I was dealing with Unreal Engine, but since thats out of the way, I am facing some issues in running the ‘ Cardemo’ .
      To Start with, its mentioned in the GitHub to get Unity 2018.2.15. I was able to build,cmd but when I ran the game it said the game was built on 2018.2.14. So I got the .14 version and ran the car demo but I didnt see any sort of map to play in, just an instance of a floor with the camera settings for the prefabs. Also, when I pressed play, Unity Immediately crashed(Tried it a few times). Anyone facing the same Issue?? I was also thinking of importing traffic simualted data that I created on SUMO Simulator using the TraCi protocol. Is it pssible on Airsim ?
      Regardless, v4z

  7. LOL I recall a forum conversation where I proposed using Unity, Navmesh and Google Maps to get a car to drive you where you wanted!

  8. Why does this talk about ECS and the Job system when neither are production ready or compatible with any of the assets you talk about? The screenshot you include is also clearly not using ECS. Have you been told to throw those terms in to every blog post you do?

    1. Jose De Oliveira

      11월 14, 2018 8:50 오후

      Hi Ed,
      Thanks a lot for raising this! My original intent was to list those as examples of Unity’s commitment to performance, but I obviously didn’t phrase it that way.
      That said, whatever you build for your simulation scenarios on this virtual world – traffic, pedestrians, etc – can and should benefit from increased performance coming from leveraging ECS and the Job System. But, as it was stated, and as you correctly caught, AirSim is not taking advantage of that on this initial release.
      Super thanks for the feedback!

      1. Thanks Jose – appologies if I came across a bit harshly!

        1. Jose De Oliveira

          11월 15, 2018 9:35 오후

          No worries! You pointed out something that didn’t look right and, with that, helped the blog to convey the right info. It’s a great outcome in my POV and I super thank you!