Özyinelemeli çizim tabanlı sınırsız kapalı alan sanal gerçeklik motoru geliştirilmesi
Recursive rendering based infinite closed space virtual reality engine development
Yazar: ALİ EMRE GÜLCÜ
Danışman: PROF. DR. ALİ AYDIN SELÇUK ; DOÇ. DR. BETÜL ATALAY SATOĞLU
TOBB Ekonomi ve Teknoloji Üniversitesi / Fen Bilimleri Enstitüsü / Bilgisayar Mühendisliği Ana Bilim Dalı / Bilgisayar Mühendisliği Bilim Dalı
Derece: Yüksek Lisans, 2022
Konu: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control
Dizin: Bilgisayar grafikleri = Computer graphics

Özet:
Sanal gerçeklik donanımları geçmişten beri askeri simülasyonlar ve tıbbi uygulamalar gibi gerçeklik gerektiren alanlarda kullanılmaktadır. Gelişen teknoloji ile birlikte maliyetin düşmesiyle sanal gerçeklik donanımları sıradan kullanıcılar tarafından da erişilebilir bir hale geldi. Sanal gerçeklik uygulamalarının simülasyon ve eğitimlerin yanı sıra yaygın olarak oyun ve sinema sektöründe de yer bulmasıyla farklı gereksinimler ortaya çıkmaya başladı.
Tıbbi uygulama ve askeri simülasyonlarda özel alanlar tahsis edilip ek donanımlar kullanılabildiği için rahat ve kullanılabilir bir sanal gerçeklik deneyimi sunulabilmektedir. Ancak kısıtlı bir fiziksel alanda ve standart donanımla sanal gerçeklik uygulamalarını deneyimleyen kullanıcılar için bu her zaman mümkün olmamaktadır. Yaygın sanal gerçeklik donanımları genellikle kullanıcının kapalı bir oda içerisinde kullanacağı varsayımı ile tasarlanır. Hareketin tamamen doğal yürüme ile sağlanamayacağı bu ortamlar için ise farklı hareket yöntemleri geliştirilmiştir.
Kapalı fiziksel ortamlarda büyük sanal ortamların deneyimlenebilmesi için öne çıkan en yaygın yöntemler oyun kolu ile yürüme ve ışınlanma yöntemleridir. Bu yöntemler her ne kadar kısıtlı alan problemini çözseler de, beyin tarafından gözlemlenen hareket ile vücut tarafından hissedilen hareketin uyuşmazlığı sebebiyle mide bulantısı ve baş dönmesi gibi yan etkilere sebep olmaktadır. Bu yan etkileri çözmeyi amaçlayan geçmiş yöntemlerin bazıları ek donanım gerektirirken, bazıları da sanal ortamı bozmaktadır. Bu çalışmada yan etkileri ek donanıma gerek duymadan aşmak için portal tabanlı, sanal alanı üst üste bindirmeli bir yöntem önerip ortam tasarımı için kurallar belirledik. Sunduğumuzun yöntemin, dikkat dağıtma ve haritalama gibi doğal yürüyüş tabanlı diğer geçmiş yöntemlerle ayrıntılı karşılaştırmasını yaptık.
Hareket yöntemlerine benzer bir şekilde, performans kaybının da sanal gerçeklikte kullanıcı üzerinde yan etkilere sebep olması sebebiyle, bahsi geçen grafik motorunun geliştirilmesinde en yeni teknolojiler kullanılmıştır. 1990'ların grafik mimarisine göre geliştirilmiş olan ve uyumluluk kısıtları sebebiyle yeni donanımlara ayak uydurmakta zorluk yaşayan OpenGL gibi eski bir grafik uygulama arayüzü yerine, modern grafik kartları ve çok çekirdekli işlemci mimarileri göz önünde bulundurularak geliştirilmiş olan Vulkan grafik uygulama geliştirme arayüzü tercih edilmiştir. Portal tabanlı ortamların sunulması için geliştirdiğimiz grafik motoru ise bu arayüzle tam uyumlu olacak şekilde tasarlanmıştır.
Çalışma sonunda OpenGL ve Vulkan kullanılarak ayrı ayrı geliştirilmiş olan grafik motorları arasında ayrıntılı performans kıyaslaması yapılarak yeni teknolojilerin kullanılmasıyla ciddi performans artışları görüldüğü gözlemlendi. Buna ek olarak ortaya çıkan uygulamayı modern başka bir sınırsız alan yöntemi olan ortam haritalama yöntemi ile kıyaslamak için bir kullanıcı testi gerçekleştirildi. Kullanıcı testlerinin sonucunda çalışmamız büyük çoğunluk tarafından tercih edilirken özgünlüğünden dolayı da olumlu geri beslemeler aldı.

Abstract:
Virtual reality hardware has been in use for a while for applications where fidelity matters, like military simulations and medical applications. With the recent leaps in technology, virtual reality hardware costs decreased and the devices became more available to the regular users. In addition to simulation and training applications, virtual reality gained popularity in movie and game industries. This introduced new requirements for virtual reality hardware and applications.
More intuitive military and medical simulations can be achieved with specialized hardware and environment. However, this is not always possible for a regular user with limited space and standard hardware. Mainstream virtual reality hardware is often designed for home usage with the assumption of it being used in regular rooms where the virtual movement cannot be achieved with the natural walking alone. Several virtual movement methods are developed to overcome space limitations.
The most popular virtual locomotion methods are teleportation and shifting using controllers. While these methods solve the movement related problems, they introduce physiological problems such as naussea and dizziness, which are caused by mismatch of the perceived motion with the real movement. Past methods that resolve these side effects either requires specialized hardware or distorts the virtual environment. To solve these limitaions without side effects and requiring extra hardware, we propose a portal based overlapping environment method and defined an environment design ruleset for infinite spaces. We compared our proposed method to other natural walking based methods such as distraction and mapping.
In addition to locomotion methods, low performance is also known to cause physiological side effects. We used the latest graphical application development interfaces while developing our grahics engine for significant performance improvement. Instead of OpenGL, which was designed with 1990s graphics architecture in mind and comes with a lot of technical debt caused by backward compatibility requirements, we opted to use Vulkan, which is entirely designed for modern graphics cards and multi core processors. Our portal based rendering engine is designed and optimized to be entirely compatible with these modern architechtures.
In order to quantitatively compare performance difference, we also implemented a reference renderer in OpenGL. We observed that significant performance gains are achieved by using modern graphics technologies. In addition to performance comparisons, we conducted a user experience study to compare our portal based method to another modern environment mapping method. Most users preferred our method over the other one and gave positive feedbacks regarding its innovative approach.