Upgrade to Pro — share decks privately, control downloads, hide ads and more …

広大なフィールドを気持ちよく駆け抜けるための技術.pdf

akatsukinewgrad
August 04, 2022
160

 広大なフィールドを気持ちよく駆け抜けるための技術.pdf

akatsukinewgrad

August 04, 2022
Tweet

Transcript

  1. 広⼤なフィールドを 
 気持ちよく駆け抜けるための技術 Akatsuki Games / Client Engineer ⽩狐 (WhiteFox)

  2. Self Introduction )/നޅ ͼΌͬ͜ 
 ଔΫϥΠΞϯτΤϯδχΞ झຯ 
 λΠϐϯάʢΨν੎ɺಛʹ೔ຊޠϩʔϚࣈʣ 


    ฏۉLFZTɺτοϓεϐʔυLFZT 
 ๭େձͰ༏উ͠จ෦Պֶେਉ৆ड৆ͨ͜͠ͱ΋͋Δ Իήʔ 
 ΞʔέʔυԻήʔ͕޷͖ʢࣗ୐؀ڥ͋Γʣ ͓͍͍͠৯΂෺Λ୳͢ 
 ͝൧԰͞ΜɺεΠʔπళΛ։୓͢Δͷ͕޷͖ ˛ຖ೥มΘΔࣗ࡞ΞΠίϯ 
 ΠϥετɺΩϟϥσβ΋ 
 झຯͰ΍ͬͯΔ ˛ݚमͰΧδϡΞϧͳ 
 %ήʔϜ੍࡞ʹॳ௅ઓ
  3. Φʔϓϯϫʔϧυʂ ΦʔϓϯϫʔϧυྲྀߦΓͰ͢ΑͶʂ 
 Φʔϓϯϫʔϧυͷఆٛ͸ׂͱᐆດ 
 ։͔ΕͨϚοϓɺγʔϜϨεͳϚοϓ͙Β͍ͷҙຯͰଊ͍͑ͯͩ͘͞ ࠷ۙ͸ϞόΠϧ୺຤ͷεϖοΫͰ΋ 
 ϦονͳάϥϑΟοΫͰ༡΂Δ 


    ΞΧπΩήʔϜεͷࠓ೥ͷ৽ଔݚमͰ͸ʜʜ 514 5IJSE1FSTPO4IPPUJOH Λ 
 ʙਓνʔϜͰिؒఔ౓Ͱ࡞੒ 
 ˠ࣮ࡍʹઌഐΤϯδχΞʹ༡ΜͰ͍͍ͨͩͨ ࠓճ͸ݚम౰࣌ʹ࣮ࡍʹࢼͨ͠ 
 άϥϑΟοΫෛՙܰݮͷํ๏Λ͍͔ͭ͘঺հ͠·͢ʂ ˛514࡞੒ͷ࣮ࡍͷը໘ɻ6*ʹ6OJUZष͞͸࢒͕ͬͨ 
 ɹͪΌΜͱ༡΂ͨ
  4. ४උ ϑΟʔϧυͷ࡞੒ 
 6OJUZͷ5FSSBJOΛ࢖͏ 
 ى෬ͷ͋Δ஍ܗʹ໦Λͨ͘͞Μੜ΍͢ 
 ໦͸l4UBOEBSE"TTFUTzʹೖ͍ͬͯͨ#SPBEMFBG ϓϨΠϠʔ͕ૢ࡞Ͱ͖ΔΩϟϥΫλʔΛ༻ҙ 


    l4UBSUFS"TTFUT5IJSE1FSTPO$IBSBDUFS$POUSPMMFSz 
 ͱ͍͏'3&&ͷΞηοτΛར༻ ຊεϥΠυͰ͸͜ͷ޻෉͕΄΅ͳ͍ঢ়ଶΛ 
 ʮॳظঢ়ଶʯͱݺͿ͜ͱʹ 
 
 ϑϥελϜΧϦϯάͷΈద༻͞Ε͍ͯ·͢ʢઆ໌͸ޙड़ʣ
  5. ॳظঢ়ଶͰεϚϗͰςετϓϨΠ ݕূ୺຤ "OESPJE ͱ 
 നޅͷJ1IPOF9ͰςετϓϨΠ 
 ʢ"OESPJEͷεϖοΫ͸ׂͱऑ͍ʣ 1SP fi

    MFSͰύϑΥʔϚϯεΛܭଌ 
 "OESPJEGQTલޙ 
 J1IPOF9GQTʙGQTఔ౓ ؾ࣋ͪΑ͘ۦ͚ൈ͚ΔͲ͜ΖͰ͸ͳ͍
  6. ಈ࡞͕ॏ͍ཧ༝ ϙϦΰϯͷඳը͕ଟ͗͢Δʂ 
 ˞ϙϦΰϯ͜͜Ͱ͸ɺ%ΦϒδΣΫτΛߏ੒͢Δʮ໘ʯ 
 ʢྫཱํମ͸ਖ਼ํܗͷϙϦΰϯ͕ͭʣ 
 ࠓճͷ৔߹ɺओʹʮ໦ʯͷϙϦΰϯ͕ଟ͍ 7FSUT 


    ը໘ʹඳը͞ΕΔΦϒδΣΫτͷ௖఺ͷ߹ܭ਺ 
 ࠓճ͸ສఔ౓ 
 
 5SJT 
 ௖఺Ͱߏ੒͞Εͨࡾ֯ܗͷϙϦΰϯͷ߹ܭ਺ 
 ࠓճ͸ສఔ౓ 1$ͩͱ͍͚Δ͕ɺϞόΠϧ୺຤Ͱ͸ݫ͍͠
  7. ղܾࡦ ɾ-0% 
 ɾΧϦϯά ࠓճ͸6OJUZଆͰઃఆͰ͖Δͪ͜ΒͷೋͭΛ঺հ͠·͢ʂ ˞%ϞσϧΛ௚઀͍͡ΔΞϓϩʔν΋ɺ΋ͪΖΜ༗ޮͰ͢ 
 ɹݚमͰ͸#MFOEFSͰϞσϧΛ͍ͬͯ͡ϙϦΰϯ਺ܰݮͱ͔΋΍Γ·͕ͨ͠ɺ 
 ɹΤϯδχΞͷٕज़ͱ͍͏ΑΓΞʔςΟετ͞ΜدΓͷ࿩ͳͷͰׂѪ͠·͢

  8. LOD (Level of Detail)

  9. -0% -FWFMPG%FUBJM Χϝϥ͔Βͷڑ཭ʹΑͬͯϞσϧͦͷ΋ͷΛมߋ 
 Χϝϥ͔Βԕ͍ΦϒδΣΫτ΄Ͳૈ͍ΦϒδΣΫτΛදࣔ ࣗಈతʹૈ͘දࣔͯ͘͠ΕΔΘ͚Ͱ͸ͳࣗ͘લͰϞσϧΛ༻ҙ͢Δ

  10. -0% -FWFMPG%FUBJM 4UBOEBSE"TTFUTʹ͋ͬͨ#SPBEMFBGͷ 
 σϑΥϧτઃఆͷ-0%Ϟσϧͱ 
 ύϥϝʔλΛར༻ 
 Ϟσϧ਺͸ʢ඼࣭ߴɺதɺ௿ɺۃ௿ʣ ॳظঢ়ଶ͔Β-0%Λద༻ͨ͠ͱ͜Ζ

    
 ϙϦΰϯ਺͕ສˠສʙສ·Ͱ 
 ࡟ݮʂ "OESPJEGQTˠGQTʙGQTલޙ 
 J1IPOF9GQTୡ੒ʂʂ 
 

  11. -0%ద༻લޙͷϓϨʔը໘ #FGPSF "GUFS ໨ΛڽΒͤ͹"GUFSͷํ͸ૈ͍ඳ͕ࣸ͋ΔͱΘ͔Δ΋ͷͷ 
 ϓϨʔʹເதͩͱؾʹͳΒͳͦ͞͏

  12. ΧϦϯά(Culling )

  13. ϑϥελϜΧϦϯά 6OJUZͷΧϝϥʢϑϥελϜ<ਲ਼ମ>ΧϦϯάʣ 
 Χϝϥͷਖ਼໘ํ޲ʹਲ਼ମ͕ݱΕΔ 
 ͜ͷਲ਼ମͷ಺෦ͷΦϒδΣΫτ͚ͩඳը͠ɺ 
 ͦͷ֎෦ʹ͋ΔΦϒδΣΫτ͸શ෦ඳըΛ͠ͳ͍ 
 


    ਲ਼ମͷܗ͸ઃఆͰมߋՄೳ 
 
 ϑϥελϜΧϦϯά͸ 
 6OJUZଆͰσϑΥϧτͰ΍ͬͯ͘ΕΔʂ
  14. ΦΫϧʔδϣϯΧϦϯά ΦΫϧʔδϣϯΧϦϯά 
 Χϝϥ಺ʢਲ਼ମ಺෦ʣͷΦϒδΣΫτͷ͏ͪ 
 खલͷΦϒδΣΫτʹ׬શʹӅΕ͍ͯΔ΋ͷ͸ 
 ඳը͠ͳ͍ 
 


    ద༻ͯ͠΋ϓϨΠϠʔ͔Β͸ݟͨ໨ʹมԽ͸ͳ͍
  15. ΦΫϧʔδϣϯΧϦϯάద༻ޙ ॳظঢ়ଶʢϑϥελϜΧϦϯάͷΈʣ͔Β 
 ΦΫϧʔδϣϯΧϦϯάΛద༻ 
 -0%͸ద༻͠ͳ͍ 
 ΦΫϧʔδϣϯσʔλͱݺ͹ΕΔσʔλΛੜ੒͢Δࡍͷ 
 ύϥϝʔλ͸σϑΥϧτ

    ϙϦΰϯ਺͸ 
 ສˠສʙສఔ౓ʹ "OESPJEGQTˠGQTʙGQT 
 J1IPOF9GQTʙGQTʹ 
 Χϝϥͷํ޲ʹΑͬͯඳը͞ΕΔΦϒδΣΫτͷ਺͕ 
 มΘΔͨΊ͔ͳΓ͹Β͖ͭ͸͋Δ 
 (16ෛՙ͸ݮΔ͕ɺःṭ൑ఆܭࢉͰ$16ෛՙ͸૿͑Δ
  16. ஫ҙ ύϑΥʔϚϯε͸͔֬ʹେࣄ͕ͩΞʔςΟετ͞Μͱͷ࿈ܞ΋ඞཁ 
 ˠΤϯδχΞ͕উखʹΦϒδΣΫτͷݟͨ໨ͷ඼࣭Λམͱ͍͍ͯ͠΋ͷͰ͸ͳ͍ 
 ˠݟͨ໨ͱύϑΥʔϚϯεΛཱ྆Ͱ͖Δ͍͍Ԙകͷͱ͜ΖΛ୳͢

  17. ·ͱΊ ৽ଔݚमͰ514Λ࡞ͬͨ ΤϯδχΞ໨ઢͰΦʔϓϯϫʔϧυ࣮૷࣌ʹ࢖͑Δٕज़Λ঺հ ࣮ࡍʹϑΟʔϧυΛ࡞੒͠ɺඳըͷෛՙ͕ܰݮ͞Εͨ͜ͱΛ֬ೝͨ͠

  18. ͓·͚ɿΤϯδχΞͷੈք΋Φʔϓϯϫʔϧυ ֶशϧʔτ͕ଟ༷ 
 ɾࠃՈࢼݧͳͲͷΑ͏ʹඞͣ௨Βͳ͚Ε͹͍͚ͳ͍ϙΠϯτ͸͋·Γͳ͍ 
 ɾܾΊΒΕͨγφϦΦ͕ͳ͍͔ΒΈΜͳ͍࣋ͬͯΔٕज़͸༷ʑ ࣗΒΞΫγϣϯΛى͜͢΄Ͳੈք͕޿͕͍ͬͯ͘ 
 ɾಡॻͰ஌ࣝ΍ٕज़Λशಘ 


    ɾେֶͷߨٛɾ࣮शɾ5"ɾ0" 
 ɾίϯϐϡʔλؔ܎ͷαʔΫϧɺίϛϡχςΟ׆ಈʢϦϞʔτͰ0,ʣ 
 ɾڝϓϩ 
 ɾ։ൃίϯϖʢϦϞʔτͰ0,ʣ 
 ɾػցֶशϋοΧιϯ 
 ɾਓPSগਓ਺νʔϜͰήʔϜɺΞϓϦͳͲΛ։ൃͯ͠ϦϦʔε 
 ͳͲͳͲʜ 
 ˠͪΐͬͱͨ͠ҰาͰʮ΍Γ͍ͨ͜ͱʯʮಌΕͷਓʯ͕ݟ͔ͭΔ͔΋ 
 ˠίϩφՒͰ΋ϦϞʔτͷΠϕϯτʹੵۃతʹࢀՃ