Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
広大なフィールドを気持ちよく駆け抜けるための技術.pdf
Search
akatsukinewgrad
August 04, 2022
0
600
広大なフィールドを気持ちよく駆け抜けるための技術.pdf
akatsukinewgrad
August 04, 2022
Tweet
Share
More Decks by akatsukinewgrad
See All by akatsukinewgrad
2023/1/25_QAテスター meet up!
akatsukinewgrad
0
140
成果発表資料.pdf
akatsukinewgrad
0
2.1k
正規表現とReDoS.pdf
akatsukinewgrad
0
580
Unityで大量のオブジェクト_を吹き飛ばしたい.pdf
akatsukinewgrad
0
630
新卒2年目が思う1年目の学び.pdf
akatsukinewgrad
0
550
障害訓練の取り組みについて.pdf
akatsukinewgrad
0
730
7分でわかるアカツキゲームス
akatsukinewgrad
0
590
Bitcoinだけでスマートコントラクト.pdf
akatsukinewgrad
1
980
齋田.pdf
akatsukinewgrad
0
1.1k
Featured
See All Featured
Speed Design
sergeychernyshev
33
1.4k
How to train your dragon (web standard)
notwaldorf
97
6.4k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
The Cult of Friendly URLs
andyhume
79
6.7k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Scaling GitHub
holman
464
140k
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
A Tale of Four Properties
chriscoyier
162
23k
The Invisible Side of Design
smashingmag
302
51k
Transcript
広⼤なフィールドを 気持ちよく駆け抜けるための技術 Akatsuki Games / Client Engineer ⽩狐 (WhiteFox)
Self Introduction )/നޅ ͼΌͬ͜ ଔΫϥΠΞϯτΤϯδχΞ झຯ λΠϐϯάʢΨνɺಛʹຊޠϩʔϚࣈʣ
ฏۉLFZTɺτοϓεϐʔυLFZT େձͰ༏উ͠จ෦Պֶେਉडͨ͜͠ͱ͋Δ Իήʔ ΞʔέʔυԻήʔ͕͖ʢࣗڥ͋Γʣ ͓͍͍͠৯Λ୳͢ ͝൧͞ΜɺεΠʔπళΛ։͢Δͷ͕͖ ˛ຖมΘΔࣗ࡞ΞΠίϯ ΠϥετɺΩϟϥσβ झຯͰͬͯΔ ˛ݚमͰΧδϡΞϧͳ %ήʔϜ੍࡞ʹॳઓ
Φʔϓϯϫʔϧυʂ ΦʔϓϯϫʔϧυྲྀߦΓͰ͢ΑͶʂ Φʔϓϯϫʔϧυͷఆׂٛͱᐆດ ։͔ΕͨϚοϓɺγʔϜϨεͳϚοϓ͙Β͍ͷҙຯͰଊ͍͑ͯͩ͘͞ ࠷ۙϞόΠϧͷεϖοΫͰ ϦονͳάϥϑΟοΫͰ༡Δ
ΞΧπΩήʔϜεͷࠓͷ৽ଔݚमͰʜʜ 514 5IJSE1FSTPO4IPPUJOH Λ ʙਓνʔϜͰिؒఔͰ࡞ ˠ࣮ࡍʹઌഐΤϯδχΞʹ༡ΜͰ͍͍ͨͩͨ ࠓճݚम࣌ʹ࣮ࡍʹࢼͨ͠ άϥϑΟοΫෛՙܰݮͷํ๏Λ͍͔ͭ͘հ͠·͢ʂ ˛514࡞ͷ࣮ࡍͷը໘ɻ6*ʹ6OJUZष͕ͬͨ͞ ɹͪΌΜͱ༡ͨ
४උ ϑΟʔϧυͷ࡞ 6OJUZͷ5FSSBJOΛ͏ ى෬ͷ͋ΔܗʹΛͨ͘͞Μੜ͢ l4UBOEBSE"TTFUTzʹೖ͍ͬͯͨ#SPBEMFBG ϓϨΠϠʔ͕ૢ࡞Ͱ͖ΔΩϟϥΫλʔΛ༻ҙ
l4UBSUFS"TTFUT5IJSE1FSTPO$IBSBDUFS$POUSPMMFSz ͱ͍͏'3&&ͷΞηοτΛར༻ ຊεϥΠυͰ͜ͷ͕΄΅ͳ͍ঢ়ଶΛ ʮॳظঢ়ଶʯͱݺͿ͜ͱʹ ϑϥελϜΧϦϯάͷΈద༻͞Ε͍ͯ·͢ʢઆ໌ޙड़ʣ
ॳظঢ়ଶͰεϚϗͰςετϓϨΠ ݕূ "OESPJE ͱ നޅͷJ1IPOF9ͰςετϓϨΠ ʢ"OESPJEͷεϖοΫׂͱऑ͍ʣ 1SP fi
MFSͰύϑΥʔϚϯεΛܭଌ "OESPJEGQTલޙ J1IPOF9GQTʙGQTఔ ؾ࣋ͪΑ͘ۦ͚ൈ͚ΔͲ͜ΖͰͳ͍
ಈ࡞͕ॏ͍ཧ༝ ϙϦΰϯͷඳը͕ଟ͗͢Δʂ ˞ϙϦΰϯ͜͜Ͱɺ%ΦϒδΣΫτΛߏ͢Δʮ໘ʯ ʢྫཱํମਖ਼ํܗͷϙϦΰϯ͕ͭʣ ࠓճͷ߹ɺओʹʮʯͷϙϦΰϯ͕ଟ͍ 7FSUT
ը໘ʹඳը͞ΕΔΦϒδΣΫτͷͷ߹ܭ ࠓճສఔ 5SJT Ͱߏ͞Εͨࡾ֯ܗͷϙϦΰϯͷ߹ܭ ࠓճສఔ 1$ͩͱ͍͚Δ͕ɺϞόΠϧͰݫ͍͠
ղܾࡦ ɾ-0% ɾΧϦϯά ࠓճ6OJUZଆͰઃఆͰ͖Δͪ͜ΒͷೋͭΛհ͠·͢ʂ ˞%ϞσϧΛ͍͡ΔΞϓϩʔνɺͪΖΜ༗ޮͰ͢ ɹݚमͰ#MFOEFSͰϞσϧΛ͍ͬͯ͡ϙϦΰϯܰݮͱ͔Γ·͕ͨ͠ɺ ɹΤϯδχΞͷٕज़ͱ͍͏ΑΓΞʔςΟετ͞ΜدΓͷͳͷͰׂѪ͠·͢
LOD (Level of Detail)
-0% -FWFMPG%FUBJM Χϝϥ͔ΒͷڑʹΑͬͯϞσϧͦͷͷΛมߋ Χϝϥ͔Βԕ͍ΦϒδΣΫτ΄Ͳૈ͍ΦϒδΣΫτΛදࣔ ࣗಈతʹૈ͘දࣔͯ͘͠ΕΔΘ͚Ͱͳࣗ͘લͰϞσϧΛ༻ҙ͢Δ
-0% -FWFMPG%FUBJM 4UBOEBSE"TTFUTʹ͋ͬͨ#SPBEMFBGͷ σϑΥϧτઃఆͷ-0%Ϟσϧͱ ύϥϝʔλΛར༻ Ϟσϧʢ࣭ߴɺதɺɺۃʣ ॳظঢ়ଶ͔Β-0%Λద༻ͨ͠ͱ͜Ζ
ϙϦΰϯ͕ສˠສʙສ·Ͱ ݮʂ "OESPJEGQTˠGQTʙGQTલޙ J1IPOF9GQTୡʂʂ
-0%ద༻લޙͷϓϨʔը໘ #FGPSF "GUFS ΛڽΒͤ"GUFSͷํૈ͍ඳ͕ࣸ͋ΔͱΘ͔Δͷͷ ϓϨʔʹເதͩͱؾʹͳΒͳͦ͞͏
ΧϦϯά(Culling )
ϑϥελϜΧϦϯά 6OJUZͷΧϝϥʢϑϥελϜ<ਲ਼ମ>ΧϦϯάʣ Χϝϥͷਖ਼໘ํʹਲ਼ମ͕ݱΕΔ ͜ͷਲ਼ମͷ෦ͷΦϒδΣΫτ͚ͩඳը͠ɺ ͦͷ֎෦ʹ͋ΔΦϒδΣΫτશ෦ඳըΛ͠ͳ͍
ਲ਼ମͷܗઃఆͰมߋՄೳ ϑϥελϜΧϦϯά 6OJUZଆͰσϑΥϧτͰͬͯ͘ΕΔʂ
ΦΫϧʔδϣϯΧϦϯά ΦΫϧʔδϣϯΧϦϯά Χϝϥʢਲ਼ମ෦ʣͷΦϒδΣΫτͷ͏ͪ खલͷΦϒδΣΫτʹશʹӅΕ͍ͯΔͷ ඳը͠ͳ͍
ద༻ͯ͠ϓϨΠϠʔ͔ΒݟͨʹมԽͳ͍
ΦΫϧʔδϣϯΧϦϯάద༻ޙ ॳظঢ়ଶʢϑϥελϜΧϦϯάͷΈʣ͔Β ΦΫϧʔδϣϯΧϦϯάΛద༻ -0%ద༻͠ͳ͍ ΦΫϧʔδϣϯσʔλͱݺΕΔσʔλΛੜ͢Δࡍͷ ύϥϝʔλσϑΥϧτ
ϙϦΰϯ ສˠສʙສఔʹ "OESPJEGQTˠGQTʙGQT J1IPOF9GQTʙGQTʹ ΧϝϥͷํʹΑͬͯඳը͞ΕΔΦϒδΣΫτͷ͕ มΘΔͨΊ͔ͳΓΒ͖ͭ͋Δ (16ෛՙݮΔ͕ɺःṭఆܭࢉͰ$16ෛՙ૿͑Δ
ҙ ύϑΥʔϚϯε͔֬ʹେࣄ͕ͩΞʔςΟετ͞Μͱͷ࿈ܞඞཁ ˠΤϯδχΞ͕উखʹΦϒδΣΫτͷݟͨͷ࣭Λམͱ͍͍ͯ͠ͷͰͳ͍ ˠݟͨͱύϑΥʔϚϯεΛཱ྆Ͱ͖Δ͍͍Ԙകͷͱ͜ΖΛ୳͢
·ͱΊ ৽ଔݚमͰ514Λ࡞ͬͨ ΤϯδχΞઢͰΦʔϓϯϫʔϧυ࣮࣌ʹ͑Δٕज़Λհ ࣮ࡍʹϑΟʔϧυΛ࡞͠ɺඳըͷෛՙ͕ܰݮ͞Εͨ͜ͱΛ֬ೝͨ͠
͓·͚ɿΤϯδχΞͷੈքΦʔϓϯϫʔϧυ ֶशϧʔτ͕ଟ༷ ɾࠃՈࢼݧͳͲͷΑ͏ʹඞͣ௨Βͳ͚Ε͍͚ͳ͍ϙΠϯτ͋·Γͳ͍ ɾܾΊΒΕͨγφϦΦ͕ͳ͍͔ΒΈΜͳ͍࣋ͬͯΔٕज़༷ʑ ࣗΒΞΫγϣϯΛى͜͢΄Ͳੈք͕͕͍ͬͯ͘ ɾಡॻͰٕࣝज़Λशಘ
ɾେֶͷߨٛɾ࣮शɾ5"ɾ0" ɾίϯϐϡʔλؔͷαʔΫϧɺίϛϡχςΟ׆ಈʢϦϞʔτͰ0,ʣ ɾڝϓϩ ɾ։ൃίϯϖʢϦϞʔτͰ0,ʣ ɾػցֶशϋοΧιϯ ɾਓPSগਓνʔϜͰήʔϜɺΞϓϦͳͲΛ։ൃͯ͠ϦϦʔε ͳͲͳͲʜ ˠͪΐͬͱͨ͠ҰาͰʮΓ͍ͨ͜ͱʯʮಌΕͷਓʯ͕ݟ͔ͭΔ͔ ˠίϩφՒͰϦϞʔτͷΠϕϯτʹੵۃతʹࢀՃ