Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
雑に覚えるゲームエンジンとその足回り(VRもちょっとあるよ)
Search
0cha
June 20, 2017
330
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
雑に覚えるゲームエンジンとその足回り(VRもちょっとあるよ)
IWM12の発表資料です。
0cha
June 20, 2017
Featured
See All Featured
Discover your Explorer Soul
emna__ayadi
2
1.3k
How STYLIGHT went responsive
nonsquared
100
6.3k
Bootstrapping a Software Product
garrettdimon
PRO
306
120k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.4k
The Language of Interfaces
destraynor
162
27k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.8k
BBQ
matthewcrist
89
10k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
240
Ruling the World: When Life Gets Gamed
codingconduct
0
330
Designing Experiences People Love
moore
143
24k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.4k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
510
Transcript
ࡶʹ֮͑ΔήʔϜΤϯδϯ ͱͦͷճΓɻ VRͪΐͬͱ͋ΔΑɻ མ߹ ܆ ( גࣜձࣾγεςϜΤϜ )
ࣗݾհ མ߹ ܆ , ͓ͪΌ , 0cha αʔόͱ͔PMͱ͔ίϯηϯτͷઢͱ͔ ςϨϏήʔϜωΠςΟϒ(ॳϑΝϛίϯͷ1ޙഐ) ৽࡞ήʔϜͷͨΊʹ༗څऔಘ͢ΔఔʹήʔϜ͖
࠷ۙήʔϜ͕ϦΞϧա͗ͯߴॴڪාΛͰମݧ͠· ͨ͠ɾɾɾ
ා͗ͩ͢Ζɾɾɾɾ
3DήʔϜͷਐԽ͕͍͢͝
͓ͬ͞ΜौΊͷ͓ͬ͞Μʹ METAL GEAR SOLID (1998) METAL GEAR SOLID 5 (2015)
ϗετͬΆ͍ͷϗετʹ Final Fantasy VII (1997) Final Fantasy XV (2016) \
͏͐ʔʔʔ͍͆͆͆/
Կ͕ੌ͍ͬͯ ͋͘·ͰʮήʔϜʯͳͷͰɺϦΞϧλΠϜͰಈ͔ͤΔ ਓؒͱ͔ಈͱ͔͘ɺͱ͔ंͱ͔ͺͬͱݟ࣮ࣸ PS4 / Xbox Oneͱ͔த·Μ·PCʹͳΓ·ͨ͠ɻ AMDͷCPUੵΜͰϝϞϦ8GBͬͯGPUͬͯΔɻ PS4(FreeBSD 9.0)
/ XBox One(Windows)
ࠓͷ༰ 3DάϥϑΟοΫAPI GPU VR(͕࣌ؒ͋Ε)
3DάϥϑΟοΫAPIͬͯʁ 3DϓϩάϥϛϯάͬͯΈ͍ͨʂͱࢥͬͨॳ৺ऀͷ લʹग़ͯདྷ͖ͯࡴ͠ʹ͔͔ͬͯ͘Δͭ 3Dͷඳըେྔͷܭࢉखଓ͖ɺCPUGPUͷ࿈ܞ ͳͲ͕ඞਢͳͷͰɺͦΕΒΛ্ख͍͜ͱͯ͘͠ΕΔ APIͷਐԽ͕GPUͷਐԽɺͦͷٯ͔͠Γͳجװٕज़ UnityଞͷήʔϜΤϯδϯ͜ͷٕज़ͷ্ͰΓཱͬ ͯΔ
ཚཱɻ (ࢄ͍ͬͯͬͨͷͷ΄Ͳɻɻɻɻ) Direct3D: Windows༻,ۀքඪ४ ٙࣅDirect3D: Direct3DͬΆ͘ৼΔ͏ίϯγϡʔϚ༻ API OpenGL: Windows/macOS/Linux/Android/iOS Metal:
macOS/iOS Vulkan: OpenGLͱຆͲಉ͡(macOS/iOSɾɾɾ)
͜͏ͳΔ͔ͳͱ Direct3D: Direct3D12͕ొɺશ͘৽͍͠ʹɻ૬ม ΘΒͣԦऀͷ෩֨ɻ Metal: զ͕ಓΛߦ͘(Metal2ͰVRͱ͔དྷΔΒ͍͠Α) Vulkan: ݹ͍࣮ͷOpenGLΛࣺͯͯࠓ෩ͷ࣮ʹɻ
Direct3D12ͱVulkanͱMetal Ϩϕϧ(ϨΠϠʔతʹ) ϚϧνίΞCPUΛޮΑ͘༻Ͱ͖Δ ඳըʹؔ͢ΔCPUෛՙΛԼ͛ͯଞͷλεΫׂΓͯ υϥΠόͰରԠ͍ͯͨ͠ϝϞϦཧΛϢʔβʔͰཧ Ͱ͖Δ(͑ɾɾɾʁ) ͦͷଞ͍Ζ͍Ζ(Draw call͕Ͳ͏ͱ͔֤ࣗͰʂ)
͜Μͳײ͡Β͍͠ (ଟ) DirectX11/OpenGL DirectX12/Vulkan/Metal ήʔϜ ήʔϜ ɾϝϞϦཧ ɾεϨουཧ ɾίϚϯυཧ υϥΠό
ɾϝϞϦཧ ɾεϨουཧ ɾίϚϯυཧ υϥΠό GPU GPU
ͳΔ΄ͲΘ͔ΒΜɾɾɾ ࣮ࡍԿͬͯΔͷ͔VulkanͷαϯϓϧίʔυΛΈͯΈΑ͏ɻ https://github.com/Pctg-x8/vkTest
ΤάΈ͕ࠅ͍
ಀ͛·͠ΐ͏ɻ ͍ܰؾ࣋ͪͰ౿ΈೖΕͪΌμϝͳྖҬ ૉʹϚεΆͪʔͰϙϦΰϯग़ͤΔڥͰੜ͖·͠ΐ ͏ Unityͱ͔ͷήʔϜΤϯδϯ͕Կͱ͔ͯ͘͠ΕΔ (Direct3D12/Vulkan/MetalରԠͯ͠·͢) Direct̏D12 < Vulkan <
OpenGL < Metal < DirectX11 ॻ͚ͳͯ͘ྑ͍͚ͲଘࡏΛೝ͓͖ࣝͯ͠·͠ΐ͏
GPUͬͯͳΜͧ
ֆΛग़ͭ͢ Graphics Processing Unit ฒྻܭࢉ͕ಘҙͳϑϨϯζ(2000ίΞͱ͔ͬͯ·͢) 3DήʔϜ, 3DCG, ػցֶशʹඞਢ DirectXͷάϥϑΟοΫAPIͱຶ݄ͷؔ جຊతʹσεΫτοϓPC͚(PCI-Eଓ)
NVIDIA(ΤψϰΟσΟΞ) ͱ AMD(ݩATI)ͷ2ڧ
Կ͑ྑ͍ͷʁ NVIDIA GeforceγϦʔζ GTX 970, 980, 980Ti GTX1060, 1070, 1080,
1080Ti, TITAN X AMD RadeonγϦʔζ RX480, 580 R9 280, 390 3ສԁʙ17ສԁ VRίϯςϯπΛָ͠ΉͳΒ
3DίϯςϯπΛʮ༡Ϳʯ͔ʮ࡞Δʯ͔Ͱબ͢ΔGPU ߟ͑·͠ΐ͏ɻͨͩ͠ɺجຊେখΛ݉Ͷ·͢ CPUͷϨʔϯͱ͔·͔ͨΒͳ͍ݴ༿ग़ͯ͘ΔͷͰ ࠓଟډΔͰ͋Ζ͏GPUେ͖ͳਓͱ͔ʹ૬ஊ͠Α͏ SLI(NVIDIA) / CrossFire(AMD)ٕज़ͰಉܕͷGPUΛ࿈݁͞ ͤΔͳΜͯࣄग़དྷ·͢ ͨͩ͠2ຕࠩ͠Ͱྑ͘ग़ͯ1.5ഒఔͰ͢ Twitterʹ17ສ͢ΔGPUΛ4ຕ͚ͬͯΔਓ͕ډ͍ͯҋΛ
ݟ·ͨ͠ɾɾɾɾ
ҙͰϊʔτͷํ 1080ͱ͔ࡌͬͯΔͷ͋Γ·͕͕͢ɾɾɾɾ ֎͚GPUϘοΫεͳΔ͕ग़࢝Ί·ͨ͠ 3ສԁʙ8ສԁఔͰThunderbolt3Ͱଓ ͪΖΜGPUผ్༻ҙ ελόͰUnityBattlefieldΓ͍ͨͳΒͲ͏ͧ
ήʔϜΤϯδϯ
ήʔϜΤϯδϯ ͖ͬ͞ͷίʔυॻ͔ͳͯ͘ྑ͘ͳΔ ͜Ε͚ͩͰ࡞ͬͯΔਓʹ͚ͯ৸ΒΕͳ͍ Unity / UnrealEngineͱ͔͕༗໊ ؤுΕݸਓϨϕϧͰۀ࡞ฒΈͷ͕࡞ΕΔ εϚϗΞϓϦ։ൃ̤̠ʂ
Unity ଟଞͷํ͔Β͓͚͠ΔͷͰৄࡉׂѪ Windows/macOS/LinuxʹରԠ ຊޠͷใ͕๛ Ϩʔβʔໟث ϓϦΩϡΞ
ө૾දݱπʔϧͱͯ͠ͷήʔϜΤϯδϯ ຐ๏͍ϓϦΩϡΞʂޙظEDUnity͕ࢧ͍͑ͯ·͢
Unreal Engine ϑΥτϦΞϧ(࣮ࣸΈ͍ͨͳ)ͳϨϯμϦϯά(ඳը)͕ಘҙ Unityͱಉ͘͡جຊແྉ Windows/macOS/LinuxʹରԠ Blueprint͍ͬͯ͏QuartzComposerΈ͍ͨͳϏδϡΞϧϓϩά ϥϛϯάಛ FF7ͷϦϝΠΫʹΘΕͯΔΒ͍͠ ࢮਆ
ө૾දݱπʔϧͱͯ͠ͷήʔϜΤϯδϯ2 TV൛σεϊʔτUnreal Engine͕ࢧ͍͑ͯ·͢
ͬͯΈ͍ͯͩ͘͞ ࢠڙͷࠒήʔϜ։ൃऀʹ͕͋͜Εͨਓ ΞΠσΞ͋Δ͚ͲϞσϦϯάͱ͔ग़དྷͳ͍ਓ UnityຊʹAsset͕๛ ө૾࡞ʹ3DΛऔΓೖΕͯΈ͍ͨਓ Ծ௨՟ͷϚΠχϯάʹ͖ͯGPU༨ͬͯΔਓ
ಥʹVR͍͖·͢
Virtual Reality ྆؟ࢹࠩ(ࠨӈͰݟ͑ͯΔ૾ͷࠩҟ) (྆؟ͷࢹͱͳ֯͢) ӡಈࢹࠩ(ࢹͷҠಈ) ↑Λར༻ͯ͠ʮཱମࢹʯΛԾۭؒͰߦ͏
VR͕VRʹͳΔͨΊʹ ߴղ૾(ߴ͚Εߴ͍΄Ͳྑ͍) ϨΠςϯγ(20msҎԼ) ߴϦϑϨογϡϨʔτ(90FPSҎ্) ↑×̎ͷը໘ΛදࣔͰ͖Δػց ↑ͷίϯςϯπΛϨϯμϦϯάͰ͖ΔϚγϯ
Ͱ͓ߴ͍ΜͰ͠ΐʁ Oculus Rift 63,800ԁ HTC Vive 107,784ԁ PlayStation VR 57,000ԁ
্ه+VR ReadyͳPC 12ສʙఱҪΒͣສԁ ※ PSVRPCෆཁɺͰPS4͕ඞཁ ※ VR ReadyͳPC: VRίϯςϯπΛ࠶ੜՄೳͳεϖοΫΛ࣋ͭPCͷ͜ͱ ※ શ෦όϥόϥͰങͬͯফඅͰߪೖ͕͓קΊ
ͦΜͳVRքʹٹੈओ͕ʂ εϚϗ࣋ͬͯΔਓʔ ͦΕVRσόΠεʹͳΓ·͢ 1000ʙ2000ԁ΄Ͳ༻ҙ͍ͯͩ͘͠͞
Google Cardboard ఱԼͷGoogleઌੜεϚϗΛVRʹ͢Δͭ GoogleஈϘʔϧͱϨϯζೋݸͰ͓̺ͬͯݴͬͯΔ AmazonͰ༷Λຬ͕ͨ҆͢ՁͰചͬͯΔ AndroidiOSͲ͍͚ͬͪΔ SDK͕ແঈͰެ։தɻUnitiyʹ؆୯ʹΈࠐΊΔ ※iOS༻ʹϏϧυ͢ΔʹmacOS͕ඞཁͰ͢
VR͕VRʹͳΔͨΊʹ ߴղ૾(ߴ͚Εߴ͍΄Ͳྑ͍) ϨΠςϯγ(20msҎԼ) ߴϦϑϨογϡϨʔτ(90FPSҎ্) ↑×̎ͷը໘ΛදࣔͰ͖Δػց ↑ͷίϯςϯπΛϨϯμϦϯάͰ͖ΔϚγϯ জӘӒҽӷәᒶӶӐҹӊҿҮ
εϚϗͰVR AndroidVulkanࡌ༧ఆ Google Daydream͕Android7.0Ͱαϙʔτ ৽͍͠VRڥ 20msҎԼ ίϯτϩʔϥ͕͑Δ iOSɾɾɾ
(ۚͷ͔ͯ͠͠ͳ͍ͷʹ) ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠