📜 ⬆️ ⬇️

Study history without studying books

Habr, hello! We continue to talk about last year's finalists of our competition of student startups in the field of IT ImagineCup. Today we have the audience award prize: VR-HistoryTeam. They created a VR platform with which people can study history while in the thick of things.



Imagine Cup 2018 cycle


1. Psychological portrait with the help of a neural network and an ordinary camera .
2. Study history without studying books .

I give the word to the author.
')

Introduction


Hello! My name is Maxim Eremin and I am a student of the MAI and a student partner of Microsoft. I would like to tell you about my VR project and how an ordinary university artwork made for a contest can become a startup.

I'll start small. I learned about the Imagine Cup competition from my teacher, Alexander Popovkin, at the beginning of the second year, who was also an MSP at that time. As a topic, we immediately chose to study history using VR, because then the VR category was still quite popular and our project looked original against the background of others. My classmate Sergey Posokhin and guest designer Daria Sokolova participated in the project. With the composition of our team and the presentation at the competition you can find here .

Project development


We developed the main part of our project on Unity for a mobile platform. The concept was that a user, be it a student, student of a school, a visitor to a museum or a historic site, puts on a VR helmet with a phone, having previously connected a VR-Park joystick via Bluetooth, and starts wandering around a virtual historic site while in the thick of things.



In our project we implemented the reconstruction of the battle on the Borodino field. Since the project was conceived as educational, then, in addition to visual content, sound was created for the application, which helped the user to get comfortable in virtual reality.





Project design


The battle map and all models were implemented by our designer Daria Sokolova. The clothes of all soldiers were taken from the reference encyclopedia on the Great Patriotic War of 1812. The map was implemented together with a historian from the First Moscow Educational Complex. Models were developed in 3DMax.







Sound accompaniment


There is a lot of interactive in our project. In addition to the usual wandering around the Borodino field, you can approach the soldier, the gun or Kutuzov and listen to a brief historical background on the object of observation. And not only in Russian, but also in English. From a programming point of view, it was easy to implement. It only took to record the sound using the card and make it run on the trigger. The trigger is a Collider object, to which we are virtually approaching. Accordingly, the intersection of this collider and the transparent "beam" that comes from "our" "nose" causes the sound to play.

void OnTriggerEnter(Collider other) { if (other.gameObject.name == "Kutuzov") { zone.SetActive(false); if (Rus_Language == true) { Audio.clip = rus_kutuzov; } else { Audio.clip = eng_kutuzov; } Audio.Play(); } } 

And about this code was executed every time for each object with which you can interact.

Tour mode


In the application there are two modes - excursion and free mode. Excursion mode allows the user to postpone the joystick and enjoy an interesting ride on a horse in 1812 during the Borodino battle. Autowalk mode is the movement of the user. In C #, it looks like this:

  public Transform[] wayPointList; public int currentWayPoint = 0; Transform targetWayPoint; public GameObject Horse; public float speed = 0.02f; void Start() { wayPointList[0] = GameObject.Find("Point1").transform; wayPointList[1] = GameObject.Find("Point2").transform; wayPointList[2] = GameObject.Find("Point3").transform; targetWayPoint = wayPointList[0]; Horse = GameObject.Find("Horse"); } // Update is called once per frame void Update() { // check if we have somewere to walk if (currentWayPoint < this.wayPointList.Length) { if (targetWayPoint != null) walk(); } } void walk() { // rotate towards the target transform.forward = Vector3.RotateTowards(transform.forward, targetWayPoint.position - transform.position, speed, 0.0f); // move towards the target transform.position = Vector3.MoveTowards(transform.position, targetWayPoint.position, speed); if (transform.position == targetWayPoint.position) { targetWayPoint.gameObject.SetActive(false); currentWayPoint++; targetWayPoint = wayPointList[currentWayPoint]; if (currentWayPoint == 1) { Horse.transform.Rotate(0, 0, -90); } } } 

Azure Mobile Engagement with Unity


The key task in our project is the Azure Mobile Engagement service, which helps us not to lose users. The bottom line is to collect statistics on visits to the zones into which the entire map has been divided. For the project, we implemented three zones - Kutuzov camp, an artillery regiment and an infantry squad. Statistics were sent to the cloud about how many times the user visited these zones and, based on this, each new user appearance in the application was accompanied by spawn at the point where the user was most interested in being.





To implement this idea, we used a special package Mobile Engagement for Unity.

  EngagementAgent.Initialize(); EngagementAgent.StartActivity("Borodino"); EngagementAgent.SendSessionEvent("sessionEvent"); void OnTriggerEnter(Collider other) { if (other.gameObject.name == "Warning_Zone_1") { EngagementAgent.SendEvent("Russian_Artillery_Battarey_1"); } else if (other.gameObject.name == "Warning_Zone_2") { EngagementAgent.SendEvent("Kutusov's_Place"); } } 

We also implemented push notifications that are sent to users once a day so that they can start using our application again.



Approbation


In addition to the technical implementation of the project, we were able to test our project at school 1245. There we gave the children to try to study the history of the Patriotic War of 1812 using virtual reality glasses.



Results


Working on this project helped us master Unity and understand the work of Mobile Engagement, because at that time it was the first experience for us to create a project for such a competition as the Imagine Cup. At the competition we received two awards - the second place at the regional stage and the special prize “Choice of spectators” at the All-Russian stage of the competition.




In addition, the project is not standing still! We did not stop and continued to develop the topic of VR in education. Now the project is renamed VR-Education. There are already two directions in it - history and physics. For history, VR-History served as the foundation, and for physics, a project created on the EdHack hackath at mail.ru. The project was accelerated in absentia at the IIDF with the support of the MAI IT center, where we were able to improve our business model and begin introducing our project into schools.

Little about the team


Teaching historical VR-project, aimed at the study of history by schoolchildren, students and just lovers of history. The project will help to better remember the historical moments and battles, being in the thick of things, and allow you to listen to information about objects and personalities located in the location.

By the way , here you can see a mini-interview with the guys.

Imagine Cup 2018


The largest international technology competition from Microsoft, in which you can compete for a prize of $ 100,000. To do this, you need to assemble a team of up to 3 people, come up with and implement the idea of ​​the project in the category AI, Big Data, Mixed Reality and present it to us.

All the latest information can be found in the VKontakte group and in the Telegram channel .

Sign up!

You are from Russia : aka.ms/ImagineCup2018_ru
You are from Kazakhstan : aka.ms/ImagineCup2018_kz
You are from Belarus : aka.ms/ImagineCup2018_by
You are from another country : aka.ms/ImagineCup2018_ot

Source: https://habr.com/ru/post/349340/


All Articles