Lisans Bitirme Projesi Raporu Yazim Kilavuzu

T.C.
GEBZE YÜKSEK TEKNOLOJĠ ENSTĠTÜSÜ
Bilgisayar Mühendisliği Bölümü
True3D
Ebubekir AKGÜL
DanıĢman
Yard. Doç. Dr. Yakup GENÇ
Mayıs, 2014
Gebze, KOCAELĠ
T.C.
GEBZE YÜKSEK TEKNOLOJĠ ENSTĠTÜSÜ
Bilgisayar Mühendisliği Bölümü
True3D
Ebubekir AKGÜL
DanıĢman
Yard. Doç. Dr. Yakup GENÇ
Mayıs, 2014
Gebze, KOCAELĠ
ii
Bu çalışma 05/03/2014 tarihinde aşağıdaki jüri tarafından Bilgisayar Mühendisliği
Bölümünde Lisans Bitirme Projesi olarak kabul edilmiştir.
Bitirme Projesi Jürisi
Danışman Adı
Yakup Genç
Üniversite
Gebze Yüksek Teknoloji Enstitüsü
Fakülte
Bilgisayar Mühendisliği
Jüri Adı
Didem Gözüpek Kocaman
Üniversite
Gebze Yüksek Teknoloji Enstitüsü
Fakülte
Bilgisayar Mühendisliği
Jüri Adı
Burcu Yılmaz Şensoy
Üniversite
Gebze Yüksek Teknoloji Enstitüsü
Fakülte
Bilgisayar Mühendisliği
Jüri Adı
Ahmet Cengiz Dirican
Üniversite
Gebze Yüksek Teknoloji Enstitüsü
Fakülte
Bilgisayar Mühendisliği
iii
ÖNSÖZ
Bu projenin tasarımında ve yapımında her türlü desteği sağlayan sayın
hocam Yakup Genç' e şükranlarımı sunarım. Ayrıca 17 senelik eğitim hayatım
boyunca maddi ve manevi hiçbir desteği esirgemeyen aileme, hocalarıma ve
arkadaşlarıma sevgi ve saygımı sunarım.
Mayıs, 2014
Ebubekir AKGÜL
iv
ĠÇĠNDEKĠLER
ÖNSÖZ .............................................................................................. IV
ĠÇĠNDEKĠLER .................................................................................. V
ġEKĠL LĠSTESĠ ................................................................................ VI
KISALTMA LĠSTESĠ ................................................................. VIVII
ÖZET .............................................................................................. VIII
SUMMARY ..................................................................................... IIX
1. GĠRĠġ ............................................................................................... 1
2. PROJE TANITIMI ......................................................................... 2
2.1 3D Görüntü OluĢturma ............................................................................ 3
2.2 Unity ile 3D Görüntü OluĢturma ............................................................. 6
2.3 Kinect Sensör Uygulaması ....................................................................... 7
3.SAHNELERĠN TASARLANMASI ................................................. 9
3.1 Pencere Sahnelerinin Tasarlanması ........................................................ 9
3.2 Stüdyo Sahnelerinin Tasarlanması ........................................................ 12
3.3 Oyun Sahnesinin Tasarlanması ............................................................. 14
4.TARTIġMA VE SONUÇ ............................................................... 16
KAYNAKLAR................................................................................... 17
EKLER .............................................................................................. 17
v
ġEKĠL LĠSTESĠ
ŞEKİL 2.1.1
ŞEKİL 2.1.2
ŞEKİL 2.1.3
ŞEKİL 2.1.4
ŞEKİL 2.1.5
ŞEKİL 3.1.1
ŞEKİL 3.1.2
ŞEKİL 3.1.3
ŞEKİL 3.2.1
ŞEKİL 3.2.2
ŞEKİL 3.3.1
Sistem Çalışma Diyagramı ................................................................. 2
3D Görüntü Oluşturma Methodları .................................................... 4
Positive Parallax................................................................................. 5
Negative Parallax ............................................................................... 5
Projeksiyon Sahneleri ......................................................................... 6
Pencere sanelerinde kamera pozisyonları .......................................... 10
Golden Gate Pencere Sahneleri ........................................................ 11
AVM Pencere Sahnesi...................................................................... 12
Araba Stüdyo Sahnesi ...................................................................... 13
Stüdyo Seçim Sahneleri.................................................................... 14
Oyun Sahnesi ................................................................................... 15
vi
KISALTMA LĠSTESĠ
AR
MR
VR
3D
DLL
: Arttırılmış Gerçeklik (Augmented Reality)
: Bitişik Gerçeklik (Mixed Reality )
: Sanal Gerçeklik (Virtual Reality)
: Üç boyutlu (3 Dimension)
: Dinamik Link Kütüphanesi(Dynamic Link Library)
vii
ÖZET
Bu proje kullanıcının konumunu Kinect sensör aracılığıyla algılayıp
ekrandaki 3D görüntüyü güncellenerek kullanıcıya sanal gerçeklik sunmayı amaçlar.
Proje iki bölümden oluşup, bir de Runner tarzı oyun içermektedir.
Projenin ilk bölümü stüdyo sahneleri içermekte olup, stüdyo ortamında
kullanıcı ile interaktif bir şekilde 3D görüntü oluşturulmaktadır. Cisim kendi
eksenine göre sağa-sola ve yukarı-aşağı döndürülerek cismin bütün ayrıntılarının
görünmesi sağlanmaktadır.
Projenin ikinci bölümü ise sanal pencere sahnelerini içermektedir. Normal
bir pencereden dışarıya bakıldığı varsayılarak, kullanıcının konumuna göre pencere
çerçevesi içinde kalan görüntü 3D olarak güncellenip kullanıcıya gösterilmektedir.
Projenin oyun bölümünde ise "Runner" tarzı bir oyun tasarlanmıştır. Tren
rayları üzerinde geçen bu oyunda kullanıcı koşucuyu kendi konumuna göre kontrol
etmektedir. Paralel olarak konumlandırılmış üç çift rayda bulunan tren ve
barikatlardan kaçıp, paraları toplamak amaçlanmıştır.
viii
SUMMARY
This project main aim is to adjust the view on a 3D TV based on the viewers’
positions. Viewer’s current position is detected using Kinect sensor and viewing
position and angle is adjusted such that the user perceives the displayed content as if
real. Project consists of two main parts and an additional 3D game.
First part of project consists of two scenes giving the users a sense of
interactive 3D views as is they are in a studio. Via rotating left-right and up-down to
3D object, we are making possible to view everywhere to object by user.
In the second part we are created two virtual windows through which we see
a scenary just like real ones. Here the viewer can act like standing in front of real
window and watching to Golden Gate Bridge or watch a shopping mall entrance.
A Runner game is also provided as part of the project similar to “Subway
Surfers”. The game player is controlling the user's position via Kinect. When user
moves, game player changes position on rails. The main objective of the game is to
escape from trains and barrier while gathering coins to get high scores.
ix
1. GĠRĠġ
Mixed Reality (MR) günümüzde oyun, sanayi, sinema, reklam, gibi bir çok
alanda sıkça kullanılmaktadır. Bunu başlıca sebebi kullanıcılara daha görsel ve daha
interaktif bir yapı sunmasıdır. Projemizde de MR temellerine dayanarak 3D sahneler
geliştirdik. Kullanıcı 3D ekranda oluşturulan görüntüye dahil edilerek sanal bir
ortam oluşturulmaktadır. Bu işlem için kulanıcının pozisyonu Kinect sensör yardımı
ile okunmaktadır. Okunan değere göre kullanıcının sahnede olması gerektiği konum
hesaplanarak o bölgeden alınan görüntüler 3D yapılarak kullanıcıya gösterilir.
Böylelikle sanal gerçeklik hissi oluşturulur.
True3D projesinde iki farklı çevre tasarımı, bir tane de oyun olacaktır. İlk
olarak "Gerçek Pencere" olarak adlandırdığımız pencere yapılacaktır. Bu sistemde
görüntü ekranın arkasında oluşturulup, ekrana bakan kullanıcının konumuna göre
3D ekrandaki görüntü güncellenecektir. Bu olayı tıpkı gerçek pencereden dışarıya
bakmak gibi de anlatabiliriz. Bir diğer çevre tasarımında da görüntü ekranın önünde
oluşturulacak, kullanıcıya sanki orada gerçekten bir cisim varmış gibi
görüntü
oluşturulacaktır. Oyun bölümünde ise Runner tarzı bir oyun tasarlanmıştır. Tren
rayları üzerinde geçen bu oyunda kullanıcı koşucuyu kendi konumuna göre kontrol
etmektedir. Paralel olarak konumlandırılmış üç çift rayda bulunan tren ve
barikatlardan kaçıp, paraları toplamak amaçlanmıştır.
1
2. PROJE TANITIMI
Şekil 2.1.1 Sistem Çalışma Diyagramı
Üstteki şekilde de görüldüğü gibi kinect sensör kullanıcının pozisyonunu
algılayıp Kinect Server programına gönderir. Bu program vasıtasıyla kullanıcının
mevcut konumu ve yaptığı el hareketleri hesaplanır. Elde edilen bu bilgileri de
kendisine abone olan veya istek gönderen programlara iletir. Unity3D ise Kinect
Server programına konum ve hareket aboneliği başlatarak daha önceden
oluşturulmuş sahnelerde kullanıcının olması gerektiği konumu hesaplayıp kalibre
ederek o noktadan sahneye bakarak sağ ve sol göz için ayrı ayrı görüntü oluşturur.
Daha sonra bu görüntüler 3D TV'ye gönderilerek kullanıcının görmesi sağlanır.
2
2.1 3D GÖRÜNTÜNÜN OLUġTURULMASI
3D görüntünün anlatılmasından önce kullanılacak bazı terimlerin tanımları aşağıda
verilmiştir.
Perspektif: Nesnelerin uzaklaştıkça küçülmesi olayıdır.
Occlusion: Önde bulunan cismin arkadaki cismi gölgelemesi(görünmesini
engellemesi) olayıdır.
Disparity: Resimlerin üst üste örtüştürüldüğü zaman aynı bölgelerin
birbirlerine olan uzaklığı.(bkz: binocular disperaty)
Parallax: bir kimsenin gözünden çıkan, biri yer kürenin merkezinde öbürü
yeryüzünde bulunan iki doğrunun bir gökcisminin merkezinde birleşerek
oluşturdukları açı(ıraklık açısı).
Interaxial: İki kamera arasındaki uzaklık olarak adlandırılabilir.
3D görüntü oluşturmak için çeşitli teknolojiler mevcuttur.
 Anaglyph: Sol kameradan alınan görüntü kırmızı renk filtresine sokulur, sağ
kameradan alınan görüntü ise cyan filtresine sokulup, daha sonra bu
görüntüler üst üste konulur. Kullanıcı red-cyan gözlük takarak normal bir
ekranda bu görüntüyü 3D olarak görür.(Bkz:Şekil 2.1.2.a)
 Side By Side: 3D özelliğe sahip ekranlar için geliştirilmiştir. İki görüntü yan
yana konularak ekrana gönderilir. Daha sonra bu görüntüler bölünerek üst
üste konumlanmış(z eksenine göre) ekranlarda gösterilir. Kullanıcı farklı
polarizasyon özelliğine sahip 3D gözlüklerini kullanarak 3D görüntü elde
edebilir. (Bkz:Şekil 2.1.2.b)
 Over Under: Side By Side metoduna benzerdir. Aralarındaki fark ise bu
metodda görüntüler yan yana değil, altlı-üstlü olarak konumlandırılır.
(Bkz:Şekil 2.1.2.c)
3
ġekil 2.1.2 3D Görüntü oluĢturma metodları
(3D model assetstore.unity3d.com/en/#!/content/3012 adresinden alınmıştır.)
a
b
C
Anaglyph 3D Görüntü
Side By Side 3D Görüntü
Over Under 3D Görüntü
Bu metodlar dışında Interlace ve Checkerboard gibi metodlar da
bulunmaktadır. Fakat bu metodlar projemizde implement edilmemiştir.
İki kameradan alınan görüntü üstteki metodlara göre üst üste bindirilerek 3D
görüntü elde edilmektedir. Aslında 3 boyutlu herhangi bir şey oluşturulmayıp, 2.
boyutta her iki göze de ayrı ayrı görüntü verilerek insan beyni yanıltılmaktadır. 3.
boyuttaki görüntü 2. boyuta projekt edilir. Aşağıda Anaglyph metodu baz alınarak
hazırlanmış resimlerde bir nesnenin projeksiyon yüzeyine bağlı olarak önde veya
arkada olması durumunun nasıl projekt edileceği belirtilmektedir.
4
Şekil 2.1.3 Positive Parallax
Nesnenin izdüşümleri şekildeki gibi hazırlanarak cismin ekranın arkasında
oluşturulması sağlanmaktadır. Bu olaya positive parallax denilmektedir. Resimde
left ve right olarak tabir edilen cisimler bizim kameralarımız, projection plane ise
ekranımızdır.
Şekil 2.1.4 Negative Parallax
Nesnenin ekranın önünde görünmesini sağlamak için de üstteki gibi bir yol
izlenmektedir.
5
Kameralar tıpkı gözlerimiz gibi farklı açılarla nesnelere bakmaktadır. Bunun
anlamı da kameraların kendilerine has(baktıkları noktaya göre) görüntüleri vardır.
Bu görüntülerin izdüşümleri alınarak hangi 3D metod kullanılacaksa görüntü işlenip
hazır hale getirilir.
Şekil 2.1.5 Projeksiyon sahneleri
2.2. UNĠTY ĠLE 3D GÖRÜNTÜ OLUġTURULMASI
Projemizde modelleme, tasarım ve grafik işlemleri için Unity 3D programını
kullandık. 3 boyulu görüntü oluşturabilmek için aşağıdaki yöntemleri izledik.
Shader oluĢturma: Oluşturulacak 3D görüntünün yapılandırılması için Shader
kodlanmıştır. Shader sayesinde Analglyph görüntü kırmızı ve cyan renklerine
ayrılmıştır. Ayrıca bu projece implement edilmeyen, fakat piyasada kullanılan diğer
3D görüntü oluşturma
metodlarını da Shader'da küçük değişikliker
destekleyebilecek bir mimari oluşturulmulştur.
6
ile
Materyal oluĢturma: Stereoscopic bir material oluşturarak kameralardan gelen
görüntüler tutulmuş, ve shader işlemleri yapılması sağlanmıştır.
Stereoscopic 3D Script: Unity için perspektif bir kameraya eklenen bu script
mevcut kameradan iki tane klon oluşturup, konumlarını belirler. Konum belirlerken
ana kameraya bakılır. Ayrıca odaklanılan noktaya göre parallax ve interaxial
değerleri hesaplanıp kameralar arası mesafeler ve açıları ayarlanır. Belirtilen 3D
görüntü oluşturma metoduna göre shader ve materyal ataması yapılır. Elde edilen
görüntülerin projecksiyonu alınarak grafik kütüphaneleri yardımıyla ekrana basılır.
Ayrıca bu scriptten 3D oluşturma metodu, kameraların inraxial ve parallax
değerleri ayarlanabilmektedir.
2.3 KĠNECT SENSÖR UYGULAMASI
Sanal ortama kullanıcıyı da dahil edebilmek için kullanıcının konumuna
ihtiyaç duyulmaktadır. Bunun için de Kinect sensör kullanılmaktadır. Kinect cihazı
için Microsoft firmasının sunduğu Kinect SDK kullanılmaktadır. Fakat Unity 3D
programı ile Kinect SDK kütüphanesinin .NET uyumsuzluğu nedeni ile bir servis
uygulaması yazılıp, IPC ile konum ve harekt bilgilerine erişim sağlanmıştır.
Uygulama Kinect Server olarak adlandırılır ve her bir client, server'a bağlanır. Her
bir client Kinect Server'dan bilgi ister, veya konum, el hareketi gibi olaylara abone
olur.Program kapanırken de aboneliği sonlandırır.
Kinect server uygulaması sadece konum bilgilerini vermekle kalmaz, ayrıca
kullanıcının el hareketlerini de algılayarak o harekete abone olan kullanıcılara haber
vermektedir. Kinect Server uygulaması kullanıcının iskeletinin takip ederek ve
belirli miktardaki önceki iskelet durumlarını karşılaştırarak kullanıcının el
hareketlerini tahmin etmektedir.
7
Algılanan el hareketleri:
 El kaldırma(Raise)
 El kaydırma(Swipe)
 El açma (Zoom)
 Yumruk Atma (Punch)
 El sallama (Wave)
 Zıplama (Jump)
şeklindedir.
Kinect Server programı aynı anda birden fazla kullanıcının konumunu ve
hareketlerini algılayabilmektedir. Aynı anda sadece bir kullanıcının konum ve
hareket bilgilerinin kullanılması gerektiği düşünülerek el kaldırma aktif kullanıcıyı
belirlemek için tanımlanıştır. Ayrıca oyun sahnelerinde oyunu başlatabilmek için de
bu hareket kullanılmaktadır. El hareketlerinin interaktif olarak kullanılabilmesi için
stüdyo sahnelerinin birinde el kaydırma hareketi(swipe) kullanılarak nesnelerin
değiştirilmesi sağlanmıştır.
Kinect hareket bilgilerini yaklaşık saniyede 100 defa okur. Kullandığımız
grafik arayüzü de 30-50 FPS aralığında çalıştığından, ve insan gözü 30 FPS'nin
üzeini algılayamadığından Kinect'in çalışma hızı düşürülerek saniyede 30 data
vermesi ayarlanmıştır.
Bir client birden fazla iskelet konumuna ve el hareketine abone olabildiği
gibi, aynı anda birden fazla client Kinect Server programına bağlanabilmektedir.
Soketlerin programlanmasında asenkron bir yapı kullanılmış olup, race condition
gibi veri kaybına sebeb olacak her türlü handikap düşünülerek güvenilir bir sistem
oluşturulmuştur. Server ve client birbirlerine "Packet" denen bir struct göndererek
haberleşmektedir. Bu yapının içerisinde:
8

İstenilen bilgi (Pozisyon & Hareket isteği )

Oluşan olay (Pozisyon güncellemesi & El hareketi)

İskelet Konumu

Client numarası
bulunmaktadır.
3. SAHNELERĠN TASARLANMASI
3.1 PENCERE SAHNELERĠNĠN TASARLANMASI
Pencere sahnelerinde kamera belirli bir orjin etrafında kullanıcının
pozisyonuna göre çember çizer. Bu işlem sırasında bakış açısını da bu hayali
çemberin merkezinden geçecek şekilde ayarlar. Kinect sensörden gelen konum
bilgisi kullanılarak kameranın konumları hesaplanır ve yeri değiştirilir. Aşağıda
Kamera konumunu ve yönünün hesaplanma algoritması verilmiştir.
// startRot: camera's initial position
// origin: center of window
// rot: the position to camera's suppose to be
// u: distance between origin and camera
9
Vector3 rot = startRot;
rot.y = startRot.y - pos * 90;
camera.rotation = rot.eulerAngles;
float rotRad= userPosition.x * (Mathf.PI/2);
transform.position = origin.position +
new Vector3(Mathf.Sin(rotRad)*u, 0,-Mathf.Cos(rotRad)*u );
Şekil 3.1.1 Pencere sahnesinde Kamera pozisyonları
Kullanıcının x eksenine göre konumu hesaplanıp, çemberde izdüşümü
hesaplanır ve kameralar o noktalara yerleştirilir. Daha sonra da kameralar hayali
çemberin merkezine bakacak şekilde döndürülerek
belirli bir alana bakmaları
sağlanır.
İlk pencere sahnesi San Fransisco eyaletinde bulunan meşhur Golden Gate
manzarasını içerir(Bkz: Şekil 3.1.2). Bu sahnede 3D görüntünün odaklandığı nokta
köprü olup, diğer noktalar bulanıklaştırılarak disparaty'den kaynaklanan görüş
10
bozukluğu giderilmiştir. Aşağıda sahnenin Anaglyph görüntüsü bulunmaktadır.
Resimde de görüldüğü gibi uzakta olan cisimlerin disparaty'si artmaktadır.
Şekil 3.1.2 Golden Gate Pencere Sahnesi
(Köprü ve gemi modeli www.tf3dm.com sitesinden alınmıştır.)
İkinci sahne olarak ise bir alış-veriş merkezi kullanılmıştır(Bkz Şekil 3.1.3).
Kullanılan 3D modelin ayrıntılı olmasından ve keskin hatları sebebiyle daha
gerçekçi ve düzgün görüntüler elde edilmiştir. Modelde 3D
olmayan, sadece
resimle kaplanan(texture) yer ve duvarlar shader kullanılarak düzeltilmeye
çalışılmıştır.
11
Şekil 3.1.3 AVM Pencere Sahnesi
(3D model www.tf3dm.com sitesinden alınmıştır.)
3.2 STÜDYO SAHNELERĠNĠN TASARLANMASI
Stüdyo sahneleri pencere sahnelerinden farklı bir tasarıma sahiptir.
Kullanıcının konumunu sahneye özel belirlenmiş katsayılarla çarparak sahneye
uyarlanır, sonra da o noktaya kameralar yerleştirilmiştir. Kullanıcı hareket ettiğinde
ise bu noktalar tekrardan hesaplanıp değiştirilir.
İlk stüdyo sahnesinde bir araba bulunmaktadır(Bkz. Şekil 3.2.1). Kullanıcı
sağa-sola hareket ederek arabanın çevresini görebilmektedir. Ayrıca eğilerek aracın
altını da inceleyebilmektedir. Aşağıda sahnenin Analglyph resmi gösterilmiştir.
12
Şekil 3.2.1 Araba Stüdyo Sahnesi
(3D model www.tf3dm.com sitesinden alınmıştır.)
İkinci sahnemiz ise sandalye seçim sahnesidir(Bkz. Şekil 3.2.2). Merkezde
bulunan sandalye kullanıcının el kaydırma hareketi(swipe) ile değişmektedir.
Böylelikle kullanıcıya daha interaktif bir görüntü sunulmuştur. Kullanıcının her el
kaydırma hareketinde sandalye değişmektedir.
13
Şekil 3.2.2 Stüdyo Seçim Sahneleri
(3D model www.tf3dm.com sitesinden alınmıştır.)
3.3 OYUN SAHNESĠNĠN TASARLANMASI
Projede ekstra olarak bir de oyun tasarlanmıştır.
Runner tarzı olan bu
oyunda hedef tren ve barikatlardan kaçmak ve raylar üzerinde bulunan altınları
toplamaktır. Kullanıcı oyuncuyu kendi konumuna göre kontrol etmektedir.
Kullanıcı Kinect'e göre sağa geçtiğinde oyuncu sağ taraftaki raya, sola geçtiğinde
sol taraftaki raya, Kinect'in tam karşısında durduğunda ise orta raya geçmektedir.
Ayrıca Kullanıcı zıpladığında veya eğildiğinde aynı hareketleri oyuncu da
14
yapmaktadır. Oyunun başlayabilmesi için kullanıcı elini kaldırır ve oyunu başlatır.
500 metre boyunca süren bu oyun bitiş noktasına gelindiğinde bitmektedir.
Kullanıcının yaptığı hareketler ve topladığı paralara bakılarak puan hesaplaması
yapılır. Tren veya barikata çarpıldığında ise oyun bitmektedir. rayların uzunluğu, ve
çevredeki diğer dikkat dağıtıcı nesneler sebebiyle oluşan 3D görüntüde uyuşma
problemleri yaşanmaktadır. Bu yüzden sinemada da sıkça kullanılan bir method olan
arka planı bulanıklaştırma yöntemi kullanılmıştır. Oyunun örnek bir sahnesi aşağıda
mevcuttur.
Şekil 3.3.1 Oyun Sahnesi
15
4. TARTIġMA VE SONUÇ
Mixed reality (MR)
temellerine dayanılarak 3 boyutlu sahneler
tasarlanmıştır. Bütün proje süresince modüler olarak çalışılmış, ve her bir modül
paket haline getirilerek geliştiricilerin hizmetine sunulmuştur. 3 boyutlu bir oyun
geliştirmek
isteyen
bir
geliştirici
geliştirdiğimiz
modülü
kamera
olarak
kullanabilecek, arka plan işlerinde kendini soyutlayabilecektir. Ayrıca Mixed
Reality'yi Kinect ile entegre edip daha interaktif bir yapı elde ettik. Selection sahnesi
ve Runner oyunu gibi daha önce yapılmış , fakat sınırlı imkanlarla kullanıcılara
sunulmuş teknolojileri, daha etkili ve interaktif olarak kullanıcılara sunmaktayız.
Ayrıca Kinect Server programı Kinect için kullanması son derece basit olan bir
konum ve hareket algılama kütüphanesi geliştirilmiştir.
16
KAYNAKLAR
[1] Bourke, P., Calculating Stereo Pairs [online], Poole, Bournemouth University,
http://paulbourke.net/stereographics/stereorender/
[Ziyaret Tarihi: 4 Mayıs 2014]
[2] Team, U., Unity Manual[online], Unity, San Francisco,
http://docs.unity3d.com/Documentation/Manual/index.html
[Ziyaret Tarihi: 4 Mart 2014]
[3] G. B. Newby. Virtual reality. Annual Review of Information Science and
Technology, 28, 1993. Medford,
N,J,: Learned Information.
[4]S. E. Chen. QuickTime VR|an image-based approach to virtual environment
navigation. SIGGRAPH
Computer Graphics Proceedings, Annual Confernece Series, pages 29{38, 1995.
[5] R. Szeliski and H.-Y. Shum. Creating full view panoramic image mosaics and
environment maps.
Proceedings SIGGRAPH '97, pages 251{258, 1997.
EKLER
A. Lisans Bitirme Projesi Konusu Bildirme Formu
17
Ek A. Lisans Bitirme Projesi Konusu Bildirme Formu
T.C.
GEBZE YÜKSEK TEKNOLOJĠ ENSTĠTÜSÜ
MÜHENDĠSLĠK FAKÜLTESĠ
BĠLGĠSAYAR MÜHENDĠSLĠĞĠ
LĠSANS BĠTĠRME PROJESĠ KONUSU BĠLDĠRME FORMU
ÖĞRENCĠ ADI SOYADI : Ebubekir Akgül
ÖĞRENCĠ NO
ĠMZA:
: 091044028
PROJE KONU BAġLIĞI: True3D
PROJENĠN AMACI :
3D ekran üzerinde gösterilen 3 boyutlu bir cismin büyüklüğünü ve yönünü,
cisme bakan kullanıcının konumuna göre değiştirip, kullanıcıya sanal gerçeklik
sağlamak.
FAYDALANILACAK KAYNAKLAR :
http://docs.unity3d.com/
http://www.openni.org/resources/
http://www.opengl.org/wiki/Getting_Started
PROJE DANIġMANI:
ĠMZA:
Yakup Genç
ĠMZA:
BÖLÜM BAġKANI:
İbrahim Soğukpınar
18