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

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

akatsukinewgrad
August 04, 2022
300

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

akatsukinewgrad

August 04, 2022
Tweet

Transcript

  1. 広⼤なフィールドを

    気持ちよく駆け抜けるための技術
    Akatsuki Games / Client Engineer


    ⽩狐 (WhiteFox)

    View Slide

  2. Self Introduction
    )/നޅ ͼΌͬ͜


    ଔΫϥΠΞϯτΤϯδχΞ
    झຯ

    λΠϐϯάʢΨν੎ɺಛʹ೔ຊޠϩʔϚࣈʣ

    ฏۉLFZTɺτοϓεϐʔυLFZT

    ๭େձͰ༏উ͠จ෦Պֶେਉ৆ड৆ͨ͜͠ͱ΋͋Δ
    Իήʔ

    ΞʔέʔυԻήʔ͕޷͖ʢࣗ୐؀ڥ͋Γʣ
    ͓͍͍͠৯΂෺Λ୳͢

    ͝൧԰͞ΜɺεΠʔπళΛ։୓͢Δͷ͕޷͖
    ˛ຖ೥มΘΔࣗ࡞ΞΠίϯ

    ΠϥετɺΩϟϥσβ΋

    झຯͰ΍ͬͯΔ
    ˛ݚमͰΧδϡΞϧͳ

    %ήʔϜ੍࡞ʹॳ௅ઓ

    View Slide

  3. Φʔϓϯϫʔϧυʂ
    ΦʔϓϯϫʔϧυྲྀߦΓͰ͢ΑͶʂ

    Φʔϓϯϫʔϧυͷఆٛ͸ׂͱᐆດ

    ։͔ΕͨϚοϓɺγʔϜϨεͳϚοϓ͙Β͍ͷҙຯͰଊ͍͑ͯͩ͘͞
    ࠷ۙ͸ϞόΠϧ୺຤ͷεϖοΫͰ΋

    ϦονͳάϥϑΟοΫͰ༡΂Δ

    ΞΧπΩήʔϜεͷࠓ೥ͷ৽ଔݚमͰ͸ʜʜ
    514 5IJSE1FSTPO4IPPUJOH
    Λ

    ʙਓνʔϜͰिؒఔ౓Ͱ࡞੒

    ˠ࣮ࡍʹઌഐΤϯδχΞʹ༡ΜͰ͍͍ͨͩͨ
    ࠓճ͸ݚम౰࣌ʹ࣮ࡍʹࢼͨ͠

    άϥϑΟοΫෛՙܰݮͷํ๏Λ͍͔ͭ͘঺հ͠·͢ʂ
    ˛514࡞੒ͷ࣮ࡍͷը໘ɻ6*ʹ6OJUZष͞͸࢒͕ͬͨ

    ɹͪΌΜͱ༡΂ͨ

    View Slide

  4. ४උ
    ϑΟʔϧυͷ࡞੒

    6OJUZͷ5FSSBJOΛ࢖͏

    ى෬ͷ͋Δ஍ܗʹ໦Λͨ͘͞Μੜ΍͢

    ໦͸l4UBOEBSE"TTFUTzʹೖ͍ͬͯͨ#SPBEMFBG
    ϓϨΠϠʔ͕ૢ࡞Ͱ͖ΔΩϟϥΫλʔΛ༻ҙ

    l4UBSUFS"TTFUT5IJSE1FSTPO$IBSBDUFS$POUSPMMFSz

    ͱ͍͏'3&&ͷΞηοτΛར༻
    ຊεϥΠυͰ͸͜ͷ޻෉͕΄΅ͳ͍ঢ়ଶΛ

    ʮॳظঢ়ଶʯͱݺͿ͜ͱʹ


    ϑϥελϜΧϦϯάͷΈద༻͞Ε͍ͯ·͢ʢઆ໌͸ޙड़ʣ

    View Slide

  5. ॳظঢ়ଶͰεϚϗͰςετϓϨΠ
    ݕূ୺຤ "OESPJE
    ͱ

    നޅͷJ1IPOF9ͰςετϓϨΠ

    ʢ"OESPJEͷεϖοΫ͸ׂͱऑ͍ʣ
    1SP
    fi
    MFSͰύϑΥʔϚϯεΛܭଌ

    "OESPJEGQTલޙ

    J1IPOF9GQTʙGQTఔ౓
    ؾ࣋ͪΑ͘ۦ͚ൈ͚ΔͲ͜ΖͰ͸ͳ͍

    View Slide

  6. ಈ࡞͕ॏ͍ཧ༝
    ϙϦΰϯͷඳը͕ଟ͗͢Δʂ

    ˞ϙϦΰϯ͜͜Ͱ͸ɺ%ΦϒδΣΫτΛߏ੒͢Δʮ໘ʯ

    ʢྫཱํମ͸ਖ਼ํܗͷϙϦΰϯ͕ͭʣ

    ࠓճͷ৔߹ɺओʹʮ໦ʯͷϙϦΰϯ͕ଟ͍
    7FSUT

    ը໘ʹඳը͞ΕΔΦϒδΣΫτͷ௖఺ͷ߹ܭ਺

    ࠓճ͸ສఔ౓


    5SJT

    ௖఺Ͱߏ੒͞Εͨࡾ֯ܗͷϙϦΰϯͷ߹ܭ਺

    ࠓճ͸ສఔ౓
    1$ͩͱ͍͚Δ͕ɺϞόΠϧ୺຤Ͱ͸ݫ͍͠

    View Slide

  7. ղܾࡦ
    ɾ-0%

    ɾΧϦϯά
    ࠓճ͸6OJUZଆͰઃఆͰ͖Δͪ͜ΒͷೋͭΛ঺հ͠·͢ʂ
    ˞%ϞσϧΛ௚઀͍͡ΔΞϓϩʔν΋ɺ΋ͪΖΜ༗ޮͰ͢

    ɹݚमͰ͸#MFOEFSͰϞσϧΛ͍ͬͯ͡ϙϦΰϯ਺ܰݮͱ͔΋΍Γ·͕ͨ͠ɺ

    ɹΤϯδχΞͷٕज़ͱ͍͏ΑΓΞʔςΟετ͞ΜدΓͷ࿩ͳͷͰׂѪ͠·͢

    View Slide

  8. LOD (Level of Detail)

    View Slide

  9. -0% -FWFMPG%FUBJM

    Χϝϥ͔Βͷڑ཭ʹΑͬͯϞσϧͦͷ΋ͷΛมߋ

    Χϝϥ͔Βԕ͍ΦϒδΣΫτ΄Ͳૈ͍ΦϒδΣΫτΛදࣔ
    ࣗಈతʹૈ͘දࣔͯ͘͠ΕΔΘ͚Ͱ͸ͳࣗ͘લͰϞσϧΛ༻ҙ͢Δ

    View Slide

  10. -0% -FWFMPG%FUBJM

    4UBOEBSE"TTFUTʹ͋ͬͨ#SPBEMFBGͷ

    σϑΥϧτઃఆͷ-0%Ϟσϧͱ

    ύϥϝʔλΛར༻

    Ϟσϧ਺͸ʢ඼࣭ߴɺதɺ௿ɺۃ௿ʣ
    ॳظঢ়ଶ͔Β-0%Λద༻ͨ͠ͱ͜Ζ

    ϙϦΰϯ਺͕ສˠສʙສ·Ͱ

    ࡟ݮʂ
    "OESPJEGQTˠGQTʙGQTલޙ

    J1IPOF9GQTୡ੒ʂʂ


    View Slide

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

    ϓϨʔʹເதͩͱؾʹͳΒͳͦ͞͏

    View Slide

  12. ΧϦϯά(Culling )

    View Slide

  13. ϑϥελϜΧϦϯά
    6OJUZͷΧϝϥʢϑϥελϜ<ਲ਼ମ>ΧϦϯάʣ

    Χϝϥͷਖ਼໘ํ޲ʹਲ਼ମ͕ݱΕΔ

    ͜ͷਲ਼ମͷ಺෦ͷΦϒδΣΫτ͚ͩඳը͠ɺ

    ͦͷ֎෦ʹ͋ΔΦϒδΣΫτ͸શ෦ඳըΛ͠ͳ͍


    ਲ਼ମͷܗ͸ઃఆͰมߋՄೳ


    ϑϥελϜΧϦϯά͸

    6OJUZଆͰσϑΥϧτͰ΍ͬͯ͘ΕΔʂ

    View Slide

  14. ΦΫϧʔδϣϯΧϦϯά
    ΦΫϧʔδϣϯΧϦϯά

    Χϝϥ಺ʢਲ਼ମ಺෦ʣͷΦϒδΣΫτͷ͏ͪ

    खલͷΦϒδΣΫτʹ׬શʹӅΕ͍ͯΔ΋ͷ͸

    ඳը͠ͳ͍


    ద༻ͯ͠΋ϓϨΠϠʔ͔Β͸ݟͨ໨ʹมԽ͸ͳ͍

    View Slide

  15. ΦΫϧʔδϣϯΧϦϯάద༻ޙ
    ॳظঢ়ଶʢϑϥελϜΧϦϯάͷΈʣ͔Β

    ΦΫϧʔδϣϯΧϦϯάΛద༻

    -0%͸ద༻͠ͳ͍

    ΦΫϧʔδϣϯσʔλͱݺ͹ΕΔσʔλΛੜ੒͢Δࡍͷ

    ύϥϝʔλ͸σϑΥϧτ
    ϙϦΰϯ਺͸

    ສˠສʙສఔ౓ʹ
    "OESPJEGQTˠGQTʙGQT

    J1IPOF9GQTʙGQTʹ

    Χϝϥͷํ޲ʹΑͬͯඳը͞ΕΔΦϒδΣΫτͷ਺͕

    มΘΔͨΊ͔ͳΓ͹Β͖ͭ͸͋Δ

    (16ෛՙ͸ݮΔ͕ɺःṭ൑ఆܭࢉͰ$16ෛՙ͸૿͑Δ

    View Slide

  16. ஫ҙ
    ύϑΥʔϚϯε͸͔֬ʹେࣄ͕ͩΞʔςΟετ͞Μͱͷ࿈ܞ΋ඞཁ

    ˠΤϯδχΞ͕উखʹΦϒδΣΫτͷݟͨ໨ͷ඼࣭Λམͱ͍͍ͯ͠΋ͷͰ͸ͳ͍

    ˠݟͨ໨ͱύϑΥʔϚϯεΛཱ྆Ͱ͖Δ͍͍Ԙകͷͱ͜ΖΛ୳͢

    View Slide

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

    View Slide

  18. ͓·͚ɿΤϯδχΞͷੈք΋Φʔϓϯϫʔϧυ
    ֶशϧʔτ͕ଟ༷

    ɾࠃՈࢼݧͳͲͷΑ͏ʹඞͣ௨Βͳ͚Ε͹͍͚ͳ͍ϙΠϯτ͸͋·Γͳ͍

    ɾܾΊΒΕͨγφϦΦ͕ͳ͍͔ΒΈΜͳ͍࣋ͬͯΔٕज़͸༷ʑ
    ࣗΒΞΫγϣϯΛى͜͢΄Ͳੈք͕޿͕͍ͬͯ͘

    ɾಡॻͰ஌ࣝ΍ٕज़Λशಘ

    ɾେֶͷߨٛɾ࣮शɾ5"ɾ0"

    ɾίϯϐϡʔλؔ܎ͷαʔΫϧɺίϛϡχςΟ׆ಈʢϦϞʔτͰ0,ʣ

    ɾڝϓϩ

    ɾ։ൃίϯϖʢϦϞʔτͰ0,ʣ

    ɾػցֶशϋοΧιϯ

    ɾਓPSগਓ਺νʔϜͰήʔϜɺΞϓϦͳͲΛ։ൃͯ͠ϦϦʔε

    ͳͲͳͲʜ

    ˠͪΐͬͱͨ͠ҰาͰʮ΍Γ͍ͨ͜ͱʯʮಌΕͷਓʯ͕ݟ͔ͭΔ͔΋

    ˠίϩφՒͰ΋ϦϞʔτͷΠϕϯτʹੵۃతʹࢀՃ

    View Slide