際際滷

際際滷Share a Scribd company logo
Korea Games Conference       ???
       KGC 2012          (notorz@hotmail.com)
??? ??? ?? ?? ???? ??
      ???? ???




         Korea Games Conference       ???
                KGC 2012          (notorz@hotmail.com)
?? + ????
?????
???
?? ????!
                                    ???
? ????, ??? ? ???
                               ??         ??
? ??, ??, ?? ? ?? ????
? ??, ????? ? ???
                                    ???
                         ???                    ??
? ???, ???, ?? ?                     ?

? ???, ?? ?
? ???? ??? ??              ???            ???

                                    ??
???

      ??         ??            ????

                                             ????

           ???
???                    ??
            ?
                            ????

  ???            ???                  ????

           ??




 ?? = ?? ???? ??? ????
??? ??
Kgc2012 ??? ??? ?? ?? ???? ??
Kgc2012 ??? ??? ?? ?? ???? ??
Kgc2012 ??? ??? ?? ?? ???? ??
Kgc2012 ??? ??? ?? ?? ???? ??
Kgc2012 ??? ??? ?? ?? ???? ??
?? ???? ?? ??

 ? ?? ????? ??? ???
 ? ?? / ?? / ??
 ? ??? ????? / ??
 ? ? ?? ??? ???
???? + ?? ????
???? ?? ?? ??
??? ???
???? ?? ??? ?? ??!
?? ? ??? ?? ??? ???? ??????..
Kgc2012 ??? ??? ?? ?? ???? ??
Kgc2012 ??? ??? ?? ?? ???? ??
Kgc2012 ??? ??? ?? ?? ???? ??
???? ????! ???? ??????!
Kgc2012 ??? ??? ?? ?? ???? ??
Kgc2012 ??? ??? ?? ?? ???? ??
???? ???? ?? ?? ??????!
Kgc2012 ??? ??? ?? ?? ???? ??
Kgc2012 ??? ??? ?? ?? ???? ??
Kgc2012 ??? ??? ?? ?? ???? ??
Kgc2012 ??? ??? ?? ?? ???? ??
??? ?? + ???? ??
    = ??? ??
???? ??? ???..


? ???? ???? ??!
? ??? ??? ?? ??!
? ???? ???? ???!
? ???? ??? ??!
???? ?????
Kgc2012 ??? ??? ?? ?? ???? ??
Controller
? ???? ????? ????? ??? ???
? ?? ????? ????? ???? ???
? ?????? ??? ???/???? ??
Kgc2012 ??? ??? ?? ?? ???? ??
Owner Entity? ?? ?? ????? ????? ?? ??!




      AAA                Entity
   Component



                                      BBB
              BBB                   Controller
           Component


                         AAA
                       Controller
??? ??? ?? ??!
???? ?? ??
     = ???? ????

???? ?? ??? ??
    = ?? ???? ??
1. ?? ??? ?? ??

2. ????? ?????? ??

3. ?? ????? ???? ??
??
Kgc2012 ??? ??? ?? ?? ???? ??
?????.. ??? ?? ??? Boost ???? ??? ????..
???? ?? ???
????? ??
??? ??
     Action? ???


     ??? ??? Action????
     virtual void Do( ??? ) = 0;
     ?? ?? ??? ?????


    GetOwner()? ????
    Action? ??? Entity?
    ??? ? ??
Owner Entity? ?? ?? ????? ????? ?? ??!


                                     ??
                                      AAA     DoAction
             Entity
                                     Action     ??




   AAA         BBB        AAA
Component   Component   Controller




                                         ??
?? ??? ??? ??..


                Entity
               Handler          DoAction ??? ???



                Entity



                                ?? Entity / ?? ???? ??


Controller? Action? Owner? ??
???? ??




 Entity::    Entity::   Component
 Update      Update      System::
Controller   Action       Update
?? ????? ???? ??
                             Server
           NPC1               Player1                 NPC2

           Server                                     Server
                               Server
           Object                                     Object
                               Object




Client    Client    Client              Client    Client       Client
Object    Object    Object              Object    Object       Object


NPC1     Player1    NPC2                NPC1     Player1       NPC2

         Client                                  Client
NPC1     Player1   NPC2

Server             Server
         Server
Object             Object
         Object




          Server
           Base
NPC1     Player1   NPC2

Server             Server
         Server
Object             Object
         Object




          Server
           Base
NPC1              Player1            NPC2

ID : 0            ID : 1             ID : 2
         Server                               Server
                           Server
         Object                               Object
                           Object




                            Server
                             Base
NPC1              Player1            NPC2

ID : 0            ID : 1             ID : 2
         Server                               Server
                           Server
         Object                               Object
                           Object




                            Server
                             Base




                  Client
                  Base
NPC1                           Player1            NPC2

                  ID : 0                           ID : 1             ID : 2
                             Server                                            Server
                                                            Server
                             Object                                            Object
                                                            Object




                                                             Server
                                                              Base




                                                   Client
                                                   Base




         Client                Client            Client
         Object                Object            Object
ID : 0              ID : 1              ID : 2
         NPC1                Player1             NPC2
NPC1                           Player1            NPC2

                  ID : 0                           ID : 1             ID : 2
                             Server                                            Server
                                                            Server
                             Object                                            Object
                                                            Object




                                                             Server
                                                              Base




                                                   Client
                                                   Base




         Client                Client            Client
         Object                Object            Object
ID : 0              ID : 1              ID : 2
         NPC1                Player1             NPC2
NPC1                           Player1            NPC2

                  ID : 0                           ID : 1             ID : 2
                             Server                                            Server
                                                            Server
                             Object                                            Object
                                                            Object




                                                             Server
                                                              Base




                                                   Client
                                                   Base




         Client                Client            Client
         Object                Object            Object
ID : 0              ID : 1              ID : 2
         NPC1                Player1             NPC2
NPC1                           Player1                                NPC2

                  ID : 0                           ID : 1                               ID : 2
                             Server                                                                Server
                                                            Server
                             Object                                                                Object
                                                            Object




                                                             Server
                                                              Base




                                                   Client             Client
                                                   Base               Base




         Client                Client            Client                        Client               Client            Client
         Object                Object            Object                        Object               Object            Object
ID : 0              ID : 1              ID : 2                    ID : 0                  ID : 1             ID : 2
         NPC1                Player1             NPC2                          NPC1                Player1            NPC2
NPC1                           Player1                                NPC2

                  ID : 0                           ID : 1                               ID : 2
                             Server                                                                Server
                                                            Server
                             Object                                                                Object
                                                            Object




                                                             Server
                                                              Base




                                                   Client             Client
                                                   Base               Base




         Client                Client            Client                        Client               Client            Client
         Object                Object            Object                        Object               Object            Object
ID : 0              ID : 1              ID : 2                    ID : 0                  ID : 1             ID : 2
         NPC1                Player1             NPC2                          NPC1                Player1            NPC2
Entity? ?? ???? ????
Action? Message? ??
Message? ServerObject/ClientObject? ???? ??? Action ??


                      Network
                       Action
                      Manager


                                                  ??
          Server/                                 ??
           Client                        Action
          Object




                      Network - OnRecv
???ID + ??? ??

      ????? ??? ??? ??   ??? ??

                                  ??? ???
                                  ???ID ??



??? ??? ??


???? ??? ???
?? ??? ??                               ????? ??
                  ???? ?? ???
  ?????                                  ??? ??




       ServerObject? ??   ClientObject? ??
Kgc2012 ??? ??? ?? ?? ???? ??
Kgc2012 ??? ??? ?? ?? ???? ??
??? ???? ??? ??

        ???? Action? ?? ??


               ???? Action?
               ???? ????
               ???? ??




           ???? Action? ?? ??
?? ????? ????
lua_state




            ????           ????
                           ????
            ????
             ????           ????
                           Component
             Controller
            ???             ???
                            ???
             ???
              ???            ???
                              Table
               Table



                            ????
                            ????
                             ????
                              Instance
                             ???
                             ???
                   Lua        ???
                                Table
                  Thread
????? ????? ??
Entity




                     Script            Controller ??
Controller
                    Manager            lua_state? ??



                                       Entity??
                                       lua table?
                                       lua thread ??
             Controller Instance
             lua table ????
             Controller userdata? ??
C++


                                   AAA
                                 Controller                              Class



         AAA               AAA                   AAA          AAA
      Controller        Controller            Controller   Controller   Instance
      Instance1         Instance2             Instance3    Instance4




Lua

                                   AAA
                                 Controller
                                                                         table


         AAA               AAA                   AAA          AAA
      Controller        Controller            Controller   Controller   userdata
      Instance1         Instance1             Instance1    Instance1

           meta table
         AAA               AAA                   AAA          AAA
      Controller        Controller            Controller   Controller    table
      Instance1         Instance2             Instance3    Instance4
?? ???? ?? ???
  ?? ??? ???
C++

                       AAA
                     Controller

     AAA
  Controller
                          ??
   Instance
                       BBB
                     Controller

                                          BBB
                                       Controller
                                        Instance


Lua

                       AAA
                     Controller

     AAA                  meta table
  Controller
   Instance
                       BBB
                     Controller
        meta table                        BBB
                                       Controller
     AAA                                Instance
  Controller
   Instance
                                          BBB
                                       Controller
                                        Instance
????? ??




            ???? ?? ??



C++ ?? ??
?????? ???? ??
Entity




Component
             Script   Component ??
            Manager   lua_state? ??
C++


                               AAA
                            Component                              Class



          AAA          AAA                  AAA          AAA
      Component    Component            Component    Component    Instance
       Instance1    Instance2            Instance3    Instance4




Lua

                               AAA                                 table
                            Component




          AAA          AAA                  AAA          AAA
      Component    Component            Component    Component    userdata
       Instance1    Instance2            Instance3    Instance4
Entity
Wrapper




 Entity
Entity




                                      Script            Controller ??
                 Controller
                                     Manager            lua_state? ??



                                                        Entity??
                                                        lua table?
                                                        lua thread ??
Controller? owner?            Controller Instance
EntityWrapper ?? ?            lua table ????
Controller Instance           Controller userdata? ??
lua table? ^owner ̄ Set
Kgc2012 ??? ??? ?? ?? ???? ??
KGC 2011 ??´
Kgc2012 ??? ??? ?? ?? ???? ??
??? ?? ?..
?? ? ??                         ??? ?? ??
?? ?????                        ?? ?????!
??? :
@BlindRendererKR
??? :
??? ?????? ?????
????!



Game   Animation   Physics   Rendering   Audio
Loop
Set up




                 Thread1
Game                        Thread2
       Thread0                        Thread3
Loop




                       Process
                        Result
?? ??? ??´

? Controller? Owner? ??? ?? ?? ??
 -> Owner? Component / Controller
? ?? Entity?? DoAction?? ? ? ??
? Entity?? Controller? ????
 Entity?? Action Queue ??
 Component?? ????
?? ?????

? Entity? ?? Entity? ?? ?? X
? Component? ?? Component? ?? ?? X
? Entity?? Controller? ????
 Entity?? Action Queue ??
 Component?? ????
???? ??




 Entity::    Entity::   Component
 Update      Update      System::
Controller   Action       Update
Set up


                 Thread1    Thread2
       Thread0                        Thread3   Controller


                       Set up



       Thread0              Thread2
Game             Thread1              Thread3     Action
Loop

                       Set up


                 Thread1
       Thread0              Thread2   Thread3   Component


                       Process
                        Result
?????




Special Thanks to :
Dragonfly SS? ??/ ??????? ?? ?? /
??? / ??? / ???? / ???? / ??? /
??? / ??? / ??? / Hybrid? / ??? /
???? / banhae? / ??? / ??? / ??? ??? /              ???
???? / Cagetu? / ???? / ???? / ??? /     mail : notorz@hotmail.com
?PD? / ??? / ?? ?? ? ?? ?? / ????        twitter : @kgun86

More Related Content

What's hot (20)

????? ?? DB ?? (??? ?)
????? ?? DB ?? (??? ?)????? ?? DB ?? (??? ?)
????? ?? DB ?? (??? ?)
_ce
?
???, Enum? Boxing? ????? ???? ???? Enum ????, NDC2019
???, Enum? Boxing? ????? ???? ???? Enum ????, NDC2019???, Enum? Boxing? ????? ???? ???? Enum ????, NDC2019
???, Enum? Boxing? ????? ???? ???? Enum ????, NDC2019
devCAT Studio, NEXON
?
NDC12_Lockless?????????
NDC12_Lockless?????????NDC12_Lockless?????????
NDC12_Lockless?????????
noerror
?
??????? ???? GPGPU
??????? ???? GPGPU??????? ???? GPGPU
??????? ???? GPGPU
YEONG-CHEON YOU
?
???, ?? ?? ?????? MMORPG ????, NDC2012
???, ?? ?? ?????? MMORPG ????, NDC2012???, ?? ?? ?????? MMORPG ????, NDC2012
???, ?? ?? ?????? MMORPG ????, NDC2012
devCAT Studio, NEXON
?
???, <????DH> AI ????? ???, NDC2018
???, <????DH> AI ????? ???, NDC2018???, <????DH> AI ????? ???, NDC2018
???, <????DH> AI ????? ???, NDC2018
devCAT Studio, NEXON
?
[ NDC 14 ] ?? ??? ?? ???? - [ ??? ? : ??? ] ? ??? ?? ??? ??? ???
[ NDC 14 ] ?? ??? ?? ???? - [ ??? ? : ??? ] ? ??? ?? ??? ??? ??? [ NDC 14 ] ?? ??? ?? ???? - [ ??? ? : ??? ] ? ??? ?? ??? ??? ???
[ NDC 14 ] ?? ??? ?? ???? - [ ??? ? : ??? ] ? ??? ?? ??? ??? ???
Jungsoo Lee
?
CEDEC 2018 恷堀のC#のき圭 - C#寄y匯尖へ鬚韻鳶堋楜蔦n}をB蔽する
CEDEC 2018 恷堀のC#のき圭 - C#寄y匯尖へ鬚韻鳶堋楜蔦n}をB蔽するCEDEC 2018 恷堀のC#のき圭 - C#寄y匯尖へ鬚韻鳶堋楜蔦n}をB蔽する
CEDEC 2018 恷堀のC#のき圭 - C#寄y匯尖へ鬚韻鳶堋楜蔦n}をB蔽する
Yoshifumi Kawai
?
??? + Nodejs? ??? ?????? ?? ????
??? + Nodejs? ??? ?????? ?? ??????? + Nodejs? ??? ?????? ?? ????
??? + Nodejs? ??? ?????? ?? ????
Kiyoung Moon
?
?? ???? ??
?? ???? ???? ???? ??
?? ???? ??
ByungChun2
?
??? ????? ???? ?????
??? ????? ???? ???????? ????? ???? ?????
??? ????? ???? ?????
ssuserbe87d6
?
[NDC 2009] ?? ??? ???? ????
[NDC 2009] ?? ??? ???? ????[NDC 2009] ?? ??? ???? ????
[NDC 2009] ?? ??? ???? ????
Yongha Kim
?
Assembly Definition あれやこれ
Assembly Definition あれやこれAssembly Definition あれやこれ
Assembly Definition あれやこれ
NakanoYosuke1
?
雨稼庄岳霞蝕kで聞える譜柴の三舘艶稼逮艶界岳の府初
雨稼庄岳霞蝕kで聞える譜柴の三舘艶稼逮艶界岳の府初雨稼庄岳霞蝕kで聞える譜柴の三舘艶稼逮艶界岳の府初
雨稼庄岳霞蝕kで聞える譜柴の三舘艶稼逮艶界岳の府初
torisoup
?
??? ??? MMORPG? ???? ???
??? ??? MMORPG? ???? ?????? ??? MMORPG? ???? ???
??? ??? MMORPG? ???? ???
QooJuice
?
???, ?? ?????? ??? ??????, NDC2018
???, ?? ?????? ??? ??????, NDC2018???, ?? ?????? ??? ??????, NDC2018
???, ?? ?????? ??? ??????, NDC2018
devCAT Studio, NEXON
?
NDC14 - Rx? Functional Reactive Programming?? ??? ?? ???
NDC14 - Rx? Functional Reactive Programming?? ??? ?? ???NDC14 - Rx? Functional Reactive Programming?? ??? ?? ???
NDC14 - Rx? Functional Reactive Programming?? ??? ?? ???
Jong Wook Kim
?
?? ?? ??????
?? ?? ???????? ?? ??????
?? ?? ??????
kgun86
?
‐Unite Tokyo 2019/Understanding C# Struct All Things
‐Unite Tokyo 2019/Understanding C# Struct All Things‐Unite Tokyo 2019/Understanding C# Struct All Things
‐Unite Tokyo 2019/Understanding C# Struct All Things
UnityTechnologiesJapan002
?
[????160409 ???] UniRx ????
[????160409 ???] UniRx ????[????160409 ???] UniRx ????
[????160409 ???] UniRx ????
MinGeun Park
?
????? ?? DB ?? (??? ?)
????? ?? DB ?? (??? ?)????? ?? DB ?? (??? ?)
????? ?? DB ?? (??? ?)
_ce
?
???, Enum? Boxing? ????? ???? ???? Enum ????, NDC2019
???, Enum? Boxing? ????? ???? ???? Enum ????, NDC2019???, Enum? Boxing? ????? ???? ???? Enum ????, NDC2019
???, Enum? Boxing? ????? ???? ???? Enum ????, NDC2019
devCAT Studio, NEXON
?
NDC12_Lockless?????????
NDC12_Lockless?????????NDC12_Lockless?????????
NDC12_Lockless?????????
noerror
?
???, ?? ?? ?????? MMORPG ????, NDC2012
???, ?? ?? ?????? MMORPG ????, NDC2012???, ?? ?? ?????? MMORPG ????, NDC2012
???, ?? ?? ?????? MMORPG ????, NDC2012
devCAT Studio, NEXON
?
[ NDC 14 ] ?? ??? ?? ???? - [ ??? ? : ??? ] ? ??? ?? ??? ??? ???
[ NDC 14 ] ?? ??? ?? ???? - [ ??? ? : ??? ] ? ??? ?? ??? ??? ??? [ NDC 14 ] ?? ??? ?? ???? - [ ??? ? : ??? ] ? ??? ?? ??? ??? ???
[ NDC 14 ] ?? ??? ?? ???? - [ ??? ? : ??? ] ? ??? ?? ??? ??? ???
Jungsoo Lee
?
CEDEC 2018 恷堀のC#のき圭 - C#寄y匯尖へ鬚韻鳶堋楜蔦n}をB蔽する
CEDEC 2018 恷堀のC#のき圭 - C#寄y匯尖へ鬚韻鳶堋楜蔦n}をB蔽するCEDEC 2018 恷堀のC#のき圭 - C#寄y匯尖へ鬚韻鳶堋楜蔦n}をB蔽する
CEDEC 2018 恷堀のC#のき圭 - C#寄y匯尖へ鬚韻鳶堋楜蔦n}をB蔽する
Yoshifumi Kawai
?
??? + Nodejs? ??? ?????? ?? ????
??? + Nodejs? ??? ?????? ?? ??????? + Nodejs? ??? ?????? ?? ????
??? + Nodejs? ??? ?????? ?? ????
Kiyoung Moon
?
[NDC 2009] ?? ??? ???? ????
[NDC 2009] ?? ??? ???? ????[NDC 2009] ?? ??? ???? ????
[NDC 2009] ?? ??? ???? ????
Yongha Kim
?
Assembly Definition あれやこれ
Assembly Definition あれやこれAssembly Definition あれやこれ
Assembly Definition あれやこれ
NakanoYosuke1
?
雨稼庄岳霞蝕kで聞える譜柴の三舘艶稼逮艶界岳の府初
雨稼庄岳霞蝕kで聞える譜柴の三舘艶稼逮艶界岳の府初雨稼庄岳霞蝕kで聞える譜柴の三舘艶稼逮艶界岳の府初
雨稼庄岳霞蝕kで聞える譜柴の三舘艶稼逮艶界岳の府初
torisoup
?
??? ??? MMORPG? ???? ???
??? ??? MMORPG? ???? ?????? ??? MMORPG? ???? ???
??? ??? MMORPG? ???? ???
QooJuice
?
NDC14 - Rx? Functional Reactive Programming?? ??? ?? ???
NDC14 - Rx? Functional Reactive Programming?? ??? ?? ???NDC14 - Rx? Functional Reactive Programming?? ??? ?? ???
NDC14 - Rx? Functional Reactive Programming?? ??? ?? ???
Jong Wook Kim
?
?? ?? ??????
?? ?? ???????? ?? ??????
?? ?? ??????
kgun86
?
‐Unite Tokyo 2019/Understanding C# Struct All Things
‐Unite Tokyo 2019/Understanding C# Struct All Things‐Unite Tokyo 2019/Understanding C# Struct All Things
‐Unite Tokyo 2019/Understanding C# Struct All Things
UnityTechnologiesJapan002
?
[????160409 ???] UniRx ????
[????160409 ???] UniRx ????[????160409 ???] UniRx ????
[????160409 ???] UniRx ????
MinGeun Park
?

Viewers also liked (7)

??? ?? ???? ?????? ??? NDC2013
??? ?? ???? ?????? ??? NDC2013??? ?? ???? ?????? ??? NDC2013
??? ?? ???? ?????? ??? NDC2013
Esun Kim
?
C#? ??? task ???? ??? ??
C#? ??? task ???? ??? ??C#? ??? task ???? ??? ??
C#? ??? task ???? ??? ??
?? ?
?
[Pycon 2015] ?? ?? ??? ???? ???
[Pycon 2015] ?? ?? ??? ???? ???[Pycon 2015] ?? ?? ??? ???? ???
[Pycon 2015] ?? ?? ??? ???? ???
?? ?
?
2015 py con word2vec?? ??????????????? ???????????
2015 py con word2vec?? ??????????????? ??????????? 2015 py con word2vec?? ??????????????? ???????????
2015 py con word2vec?? ??????????????? ???????????
choi kyumin
?
Q Learning? CNN? ??? Object Localization
Q Learning? CNN? ??? Object LocalizationQ Learning? CNN? ??? Object Localization
Q Learning? CNN? ??? Object Localization
?? ?
?
Differentiable Neural Computer
Differentiable Neural ComputerDifferentiable Neural Computer
Differentiable Neural Computer
Taehoon Kim
?
1, ???? ??? ???? ??? v2
1, ???? ??? ???? ??? v21, ???? ??? ???? ??? v2
1, ???? ??? ???? ??? v2
Dongsun Moon
?
??? ?? ???? ?????? ??? NDC2013
??? ?? ???? ?????? ??? NDC2013??? ?? ???? ?????? ??? NDC2013
??? ?? ???? ?????? ??? NDC2013
Esun Kim
?
C#? ??? task ???? ??? ??
C#? ??? task ???? ??? ??C#? ??? task ???? ??? ??
C#? ??? task ???? ??? ??
?? ?
?
[Pycon 2015] ?? ?? ??? ???? ???
[Pycon 2015] ?? ?? ??? ???? ???[Pycon 2015] ?? ?? ??? ???? ???
[Pycon 2015] ?? ?? ??? ???? ???
?? ?
?
2015 py con word2vec?? ??????????????? ???????????
2015 py con word2vec?? ??????????????? ??????????? 2015 py con word2vec?? ??????????????? ???????????
2015 py con word2vec?? ??????????????? ???????????
choi kyumin
?
Q Learning? CNN? ??? Object Localization
Q Learning? CNN? ??? Object LocalizationQ Learning? CNN? ??? Object Localization
Q Learning? CNN? ??? Object Localization
?? ?
?
Differentiable Neural Computer
Differentiable Neural ComputerDifferentiable Neural Computer
Differentiable Neural Computer
Taehoon Kim
?
1, ???? ??? ???? ??? v2
1, ???? ??? ???? ??? v21, ???? ??? ???? ??? v2
1, ???? ??? ???? ??? v2
Dongsun Moon
?

Kgc2012 ??? ??? ?? ?? ???? ??

  • 1. Korea Games Conference ??? KGC 2012 (notorz@hotmail.com)
  • 2. ??? ??? ?? ?? ???? ?? ???? ??? Korea Games Conference ??? KGC 2012 (notorz@hotmail.com)
  • 5. ???
  • 6. ?? ????! ??? ? ????, ??? ? ??? ?? ?? ? ??, ??, ?? ? ?? ???? ? ??, ????? ? ??? ??? ??? ?? ? ???, ???, ?? ? ? ? ???, ?? ? ? ???? ??? ?? ??? ??? ??
  • 7. ??? ?? ?? ???? ???? ??? ??? ?? ? ???? ??? ??? ???? ?? ?? = ?? ???? ??? ????
  • 14. ?? ???? ?? ?? ? ?? ????? ??? ??? ? ?? / ?? / ?? ? ??? ????? / ?? ? ? ?? ??? ???
  • 15. ???? + ?? ????
  • 17. ??? ??? ???? ?? ??? ?? ??!
  • 18. ?? ? ??? ?? ??? ???? ??????..
  • 22. ???? ????! ???? ??????!
  • 25. ???? ???? ?? ?? ??????!
  • 30. ??? ?? + ???? ?? = ??? ??
  • 31. ???? ??? ???.. ? ???? ???? ??! ? ??? ??? ?? ??! ? ???? ???? ???! ? ???? ??? ??!
  • 34. Controller ? ???? ????? ????? ??? ??? ? ?? ????? ????? ???? ??? ? ?????? ??? ???/???? ??
  • 36. Owner Entity? ?? ?? ????? ????? ?? ??! AAA Entity Component BBB BBB Controller Component AAA Controller
  • 37. ??? ??? ?? ??!
  • 38. ???? ?? ?? = ???? ???? ???? ?? ??? ?? = ?? ???? ??
  • 39. 1. ?? ??? ?? ?? 2. ????? ?????? ?? 3. ?? ????? ???? ??
  • 40. ??
  • 42. ?????.. ??? ?? ??? Boost ???? ??? ????..
  • 44. ??? ?? Action? ??? ??? ??? Action???? virtual void Do( ??? ) = 0; ?? ?? ??? ????? GetOwner()? ???? Action? ??? Entity? ??? ? ??
  • 45. Owner Entity? ?? ?? ????? ????? ?? ??! ?? AAA DoAction Entity Action ?? AAA BBB AAA Component Component Controller ??
  • 46. ?? ??? ??? ??.. Entity Handler DoAction ??? ??? Entity ?? Entity / ?? ???? ?? Controller? Action? Owner? ??
  • 47. ???? ?? Entity:: Entity:: Component Update Update System:: Controller Action Update
  • 48. ?? ????? ???? ?? Server NPC1 Player1 NPC2 Server Server Server Object Object Object Client Client Client Client Client Client Object Object Object Object Object Object NPC1 Player1 NPC2 NPC1 Player1 NPC2 Client Client
  • 49. NPC1 Player1 NPC2 Server Server Server Object Object Object Server Base
  • 50. NPC1 Player1 NPC2 Server Server Server Object Object Object Server Base
  • 51. NPC1 Player1 NPC2 ID : 0 ID : 1 ID : 2 Server Server Server Object Object Object Server Base
  • 52. NPC1 Player1 NPC2 ID : 0 ID : 1 ID : 2 Server Server Server Object Object Object Server Base Client Base
  • 53. NPC1 Player1 NPC2 ID : 0 ID : 1 ID : 2 Server Server Server Object Object Object Server Base Client Base Client Client Client Object Object Object ID : 0 ID : 1 ID : 2 NPC1 Player1 NPC2
  • 54. NPC1 Player1 NPC2 ID : 0 ID : 1 ID : 2 Server Server Server Object Object Object Server Base Client Base Client Client Client Object Object Object ID : 0 ID : 1 ID : 2 NPC1 Player1 NPC2
  • 55. NPC1 Player1 NPC2 ID : 0 ID : 1 ID : 2 Server Server Server Object Object Object Server Base Client Base Client Client Client Object Object Object ID : 0 ID : 1 ID : 2 NPC1 Player1 NPC2
  • 56. NPC1 Player1 NPC2 ID : 0 ID : 1 ID : 2 Server Server Server Object Object Object Server Base Client Client Base Base Client Client Client Client Client Client Object Object Object Object Object Object ID : 0 ID : 1 ID : 2 ID : 0 ID : 1 ID : 2 NPC1 Player1 NPC2 NPC1 Player1 NPC2
  • 57. NPC1 Player1 NPC2 ID : 0 ID : 1 ID : 2 Server Server Server Object Object Object Server Base Client Client Base Base Client Client Client Client Client Client Object Object Object Object Object Object ID : 0 ID : 1 ID : 2 ID : 0 ID : 1 ID : 2 NPC1 Player1 NPC2 NPC1 Player1 NPC2
  • 59. Action? Message? ?? Message? ServerObject/ClientObject? ???? ??? Action ?? Network Action Manager ?? Server/ ?? Client Action Object Network - OnRecv
  • 60. ???ID + ??? ?? ????? ??? ??? ?? ??? ?? ??? ??? ???ID ?? ??? ??? ?? ???? ??? ???
  • 61. ?? ??? ?? ????? ?? ???? ?? ??? ????? ??? ?? ServerObject? ?? ClientObject? ??
  • 64. ??? ???? ??? ?? ???? Action? ?? ?? ???? Action? ???? ???? ???? ?? ???? Action? ?? ??
  • 66. lua_state ???? ???? ???? ???? ???? ???? Component Controller ??? ??? ??? ??? ??? ??? Table Table ???? ???? ???? Instance ??? ??? Lua ??? Table Thread
  • 68. Entity Script Controller ?? Controller Manager lua_state? ?? Entity?? lua table? lua thread ?? Controller Instance lua table ???? Controller userdata? ??
  • 69. C++ AAA Controller Class AAA AAA AAA AAA Controller Controller Controller Controller Instance Instance1 Instance2 Instance3 Instance4 Lua AAA Controller table AAA AAA AAA AAA Controller Controller Controller Controller userdata Instance1 Instance1 Instance1 Instance1 meta table AAA AAA AAA AAA Controller Controller Controller Controller table Instance1 Instance2 Instance3 Instance4
  • 70. ?? ???? ?? ??? ?? ??? ???
  • 71. C++ AAA Controller AAA Controller ?? Instance BBB Controller BBB Controller Instance Lua AAA Controller AAA meta table Controller Instance BBB Controller meta table BBB Controller AAA Instance Controller Instance BBB Controller Instance
  • 72. ????? ?? ???? ?? ?? C++ ?? ??
  • 74. Entity Component Script Component ?? Manager lua_state? ??
  • 75. C++ AAA Component Class AAA AAA AAA AAA Component Component Component Component Instance Instance1 Instance2 Instance3 Instance4 Lua AAA table Component AAA AAA AAA AAA Component Component Component Component userdata Instance1 Instance2 Instance3 Instance4
  • 77. Entity Script Controller ?? Controller Manager lua_state? ?? Entity?? lua table? lua thread ?? Controller? owner? Controller Instance EntityWrapper ?? ? lua table ???? Controller Instance Controller userdata? ?? lua table? ^owner ̄ Set
  • 81. ??? ?? ?.. ?? ? ?? ??? ?? ?? ?? ????? ?? ?????! ??? : @BlindRendererKR ??? :
  • 83. ????! Game Animation Physics Rendering Audio Loop
  • 84. Set up Thread1 Game Thread2 Thread0 Thread3 Loop Process Result
  • 85. ?? ??? ??´ ? Controller? Owner? ??? ?? ?? ?? -> Owner? Component / Controller ? ?? Entity?? DoAction?? ? ? ?? ? Entity?? Controller? ???? Entity?? Action Queue ?? Component?? ????
  • 86. ?? ????? ? Entity? ?? Entity? ?? ?? X ? Component? ?? Component? ?? ?? X ? Entity?? Controller? ???? Entity?? Action Queue ?? Component?? ????
  • 87. ???? ?? Entity:: Entity:: Component Update Update System:: Controller Action Update
  • 88. Set up Thread1 Thread2 Thread0 Thread3 Controller Set up Thread0 Thread2 Game Thread1 Thread3 Action Loop Set up Thread1 Thread0 Thread2 Thread3 Component Process Result
  • 89. ????? Special Thanks to : Dragonfly SS? ??/ ??????? ?? ?? / ??? / ??? / ???? / ???? / ??? / ??? / ??? / ??? / Hybrid? / ??? / ???? / banhae? / ??? / ??? / ??? ??? / ??? ???? / Cagetu? / ???? / ???? / ??? / mail : notorz@hotmail.com ?PD? / ??? / ?? ?? ? ?? ?? / ???? twitter : @kgun86