Technology studies - XianWorld/xxxgame GitHub Wiki

Technology selections

  • Client
    • Framework/Engine: Unity3D 5+
    • GUI: uGUI
    • Physics: Rigbody/Collider
    • Animation: Animator(Mecanim)/Animation controller
    • Audio: Audio Mixer
    • Input: Easy Touch/Finger Gesture*
    • Logic: FSM/Behaviour tree
    • Data: Protobuf/JSON
  • Server
    • Framework: Photon/SFS/Pomelo*
    • Communication: TCP/UDP
    • Message: Protobuf/JSON
    • Object transfer/Function call: State sync/RPC/event
  • DB
    • Cache: Redis
    • DB: MangoDB

Key

  • scene
    • terrain/module
    • scene management
    • scene data
    • path finding
  • character
    • module/animation
    • animator/animator controller/root motion
    • physics/ragdoll/IK control
    • user control/input/camera control
    • foot placement
  • combat
    • skill stream define/edit: action/effect/sound/judgment etc.
    • physics effects
  • game data
    • edit/export/management
    • data format/serialize/deserialize
    • inspector/editor
    • game settings
  • game resource
    • asset/asset bundles
    • resource management
    • load/unload/pooling
  • game logic
    • FSM/BT
  • network
    • netmanager/netview
    • state sync/RPC

Design requirements

  1. use unity editor edit:
  • client resource (for client)
  • game data (for client and server)
  • game scripts (for client and server)
  1. server use game data edited and exported by unity editor to construct the game world

Work flow

Company & Studios

Hardworker Studio (Rachan N.)