Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD

9,596 views

Published on

2017年1月21日に行われたライセンシー様向けマテリアル管理勉強会の資料です。(登壇者: 株式会社Byking 鈴木孝司様、成相真治様)
昨年末リリースされたアーケードゲーム「マジシャンズデッド」のマテリアル作成に関して、アーティスト、エンジニアの両サイドから説明をしていただきました。非常に貴重な情報を提供していただき、ありがとうございます。

マジシャンズデッド公式サイト
http://magiciansdead.jp/players/

Published in: Engineering
  • Be the first to comment

マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD

  1. 1. UE4 Material Management Deep Dive マジシャンズデッド ポストモーテム Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  2. 2. 二部構成 デザイナー編 プログラマー編 Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  3. 3. デザイナー編 Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  4. 4. 株式会社バイキング リードステージデザイナー なり あい しん じ 成相真治 Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved. 協力 リードキャラクターデザイナー 鈴木寿弥 リードエフェクトデザイナー 岩崎武徳
  5. 5. 自己紹介 マジシャンズデッドでの役割 リードステージデザイナーとして ・レベルモデルの作成 ・アートイメージの作成 ・リソース仕様の作成 ・マテリアル作成と管理 ・モデルデータ作成 ・スケジュール管理 Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  6. 6. デザイナー編の内容 ・マジシャンズデッドの紹介 ・開発開始時の状態とスキル習得 ・マテリアルファンクションの利用方法 ・マテリアル構造 ・ワークフローの変化 ・マテリアルの命名規則 マジシャンズデッド開発における開発事例紹介 Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  7. 7. マジシャンズデッドの紹介 Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  8. 8. 「マジシャンズデッド」って何? Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  9. 9. Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  10. 10. 簡単に言えば、 アーケード用の格闘ゲームです。 Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  11. 11. 開発開始時の状態とスキル習得 Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  12. 12. マスターマテリアル制作者 基本的に各セクションで使用するマテリアルは 各セクションのリードデザイナーが作成する。 (必要な部分をプログラマーサポート) デザイナースキル UE未経験。 従来の開発環境での開発経験のみ。 (用意された設定を調整するレベル) Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved. 開発開始時の状態
  13. 13. 参考 ・UE4マニュアル ・書籍 「 Unreal Engine 4マテリアルデザイン入門」 「見てわかるUnrealEngine4ゲーム制作超入門」 ・優良Webサイト様 技術サポート ・ヒストリア様 ・ Epic Games様 Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved. スキル習得
  14. 14. マテリアルファンクションの利用方法 Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  15. 15. マテリアルファンクション(MF)とは? Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved. マテリアル関数 複数のマテリアルで使い回せる便利なもの
  16. 16. どんなマテリアルが必要か? Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  17. 17. ①基本機能 ▼PBR仕様 ▼フレネル ▼Emissiveと点滅 ▼Texture Animation ▼Detail Map ▼Texture Blend Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  18. 18. ②本作特有機能 ▼背景物の状態変化 Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  19. 19. ③プログラマー側の追加機能 ▼背景物にカメラが入った際の透過機能 Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  20. 20. それぞれをマテリアルファンクションにして管理 ①基本機能 + ②本作特有機能 + ③プログラマー側の追加機能 Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  21. 21. ①②③をマテリアルファンクション(MF)管理 ①基本機能 ②状態変化 ③プログラマー側の追加機能 Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  22. 22. マテリアルファンクション内は 結構ぐちゃぐちゃです… Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  23. 23. 実例紹介 機能毎にMF化したことで効率化した実例 Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  24. 24. マテリアルファンクションの 利用方法のまとめ マスターマテリアル内を機能毎にマテリアルファンクションで分割した結果 ▼デメリット ・ノード構造の階層が深くなる (確認の際に複数のMFを開く必要がある) Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved. ▼メリット ・各セクションで同時に調整が可能 ・複数のマテリアルが一度に修正
  25. 25. マテリアル構造 Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  26. 26. マスターマテリアルの多機能化 Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved. マスターマテリアル Switchで設定できる 多数の機能を持った構造 汎用のマスターマテリアルから 16個の用途の異なる MIを生成しています。 ※Switch=Static Switch Parameterの意味です。
  27. 27. マテリアルは3階層で管理 Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.※Switch=Static Switch Parameterの意味です。
  28. 28. マスターマテリアル 【1階層目】・・・親 (共有フォルダ) マスターマテリアル Switchを利用して多様性のあるマテリアル構造 Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  29. 29. マテリアルインスタンス Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved. 【2階層目】・・・子 (共有フォルダ) マテリアルインスタンス 必要なSwitchをONにして使用方法を決める
  30. 30. マテリアルインスタンス Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved. 【3階層目】・・・孫 (各リソースフォルダ) マテリアルインスタンスのインスタンス Switchを変更せずに使用する
  31. 31. マテリアルは3階層で管理 【1階層目】・・・親 (共有フォルダ) マスターマテリアル Switchを利用して多様性のあるマテリアル構造 【2階層目】・・・子 (共有フォルダ) マテリアルインスタンス 必要なSwitchをONにして使用方法を決める 【3階層目】・・・孫 (各リソースフォルダ) マテリアルインスタンスのインスタンス Switchを変更せずに使用する Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved. リードデザイナー が作成と編集 各デザイナー が作成と編集
  32. 32. マテリアル階層構造 Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  33. 33. 孫マテリアルのファイルサイズ増大事件発生! Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  34. 34. マテリアル数(リリース時) キャラクター 9 52 2925 ステージ 25 68 502 エフェクト 20 600 0 マスターマテリアル 親 マテリアルインスタンス 子 インスタンスの インスタンス 孫 Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  35. 35. マテリアル構造まとめ マテリアルの親・子・孫の三層構造による管理と Switchを利用し多機能化した少数のマテリアルで管理した結果 ▼デメリット ・マテリアル内のノードが複雑化する ・シェーダーコンパイルに非常に時間が掛かる Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved. ▼メリット ・データサイズの最適化が可能 ・修正や機能拡張の手間が1度で済む
  36. 36. マスターマテリアルを統合しないケース ・マテリアルのDetails内容( Blend Modeなど)を変更する場合 ・テクスチャアニメーションやテクスチャブレンドなど 特殊な機能を使用する場合 共有する機能が必要な場合は マテリアルファンクションを利用 Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  37. 37. ワークフローの変化 Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  38. 38. プランナー確認 従来のワークフロー Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved. 修正 プランナー デザイナー プログラマー マスターマテリアル パラメーター ランタイム制御 マテリアルインスタンス ※マテリアル処理に関わる修正 プログラム 対応待ち 欲しいビジュアル 表現の説明
  39. 39. プランナー確認 UEのワークフロー Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved. 修正修正 マテリアルインスタンス マテリアル ファンクション デザイナー プランナー プログラマー マテリアル ファンクション パラメーター ランタイム制御 マスターマテリアル ※マテリアル処理に関わる修正
  40. 40. ワークフローの変化のまとめ ▼デメリット ・管理するデザイナーの作業負荷が増大 (実作業スタッフに対しての説明は容易になった) デザイナーがマテリアル構築に関わるワークフローになった結果 Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved. ▼メリット ・修正対応の高速化(プログラム対応待ち時間が縮小) ・絵的な表現を直接制作できる
  41. 41. マテリアルの命名規則 Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  42. 42. 命名規則について 名前で明記する必要のある内容 Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved. ・マスター マテリアル(親) ・インスタンス(子) ・インスタンスの インスタンス(孫) ・キャラ班 ・ステージ班 ・エフェクト班 ・汎用 ・炎用 ・水用 ・モデル用 ・デカール ・ポスト ・不透明 ・1bitアルファ ・半透明 階層名 セクション 用途種類 (Material Domain) アルファ ( Blend Mode ) ・Change OFF ・Opacity ON ・Normal map OFF ・ Multi OFF Switch名 ・st100 ・st101 ・st102 ステージ名 ・ext01 ・mov02 ・ground03 アセット名
  43. 43. マスターマテリアル(親)の命名規則 ▼汎用マテリアルの場合 ・M _ st _ base ▼炎魔法デカールの場合 ・M _ st _ de _ tr _ Burnt Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved. マスター マテリアル Stage (セクション) 用途 Decal (デカール) Translucent (半透明) ※マテリアル内のDetailsが汎用マテリアルと異なる場合に記述
  44. 44. マテリアルインスタンス(子)の命名規則1 Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved. ▼汎用マテリアルのインスタンス場合 ・ MI _ st _ base _ マテリアル インスタンス セクション (ステージ) 用途 Switchによる用途の変化を全部入れると 名前が長くなりすぎる点とSwitch変更時に問題! Ch _ Op _ No _ Mu_… Change OFF Opacity ON Normal map OFF Multi Map OFF
  45. 45. マテリアルインスタンス(子)の命名規則2 Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved. 古臭いけど最後の手段を使いました・・・ マジックナンバー‼ 「この数字の意味はわからないが、とにかくプログラムは正しく動く。 まるで魔法の数字だ」という皮肉を含む数字。(ウィキペディアより)
  46. 46. 親マテリアルとSwitchによる分岐を四桁の数字で管理 Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved. ▼Switchによる分岐説明はエクセルで管理 MI_st_m0101…汎用マテリアルでシナジー変化あり MI_st_m0102…汎用マテリアルでシナジー変化なし MI_st_m0103…シナジー変化なしでエミッシブマスクを使用する MI_st_m0104…シナジー変化なしでDetail Mapを使用する ・ ・ ・ ▼汎用マテリアルのインスタンス場合 ・MI _ st _ m0107 マテリアル インスタンス セクション (ステージ) 親マテリアルを上二桁 の番号で表記 Switchによる分岐を 下二桁の番号で表記 マテリアルインスタンス(子)の命名規則3
  47. 47. Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved. マテリアルインスタンス(子)の命名規則4 サンプルスシーンを作成して説明
  48. 48. インスタンスのインスタンス(孫)の命名規則 Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved. ▼モデル名(Static Mesh) SM _ st100 _ ext05 ▼テクスチャ名 T_ st100 _ ext05 MI _ st _ m0102 _ st100 _ ext05 ステージ名 アセット名 ▼最終的なモデルにアサインするマテリアル名 マテリアルインスタンス名 補足 「ext」はexterior(外観)の略。 建物外観などに使用。
  49. 49. マテリアルの命名規則まとめ ▼デメリット ・マテリアルインスタンス以降は用途が分かりにくい 作業するデザイナーへの用途説明としてサンプルシーンを作成 Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved. 本作の命名規則を運用して感じた内容 ▼メリット ・ファイル名がシンプルで短くなる ・検索しやすい ・SwitchによるMIの増加に対応できる構造
  50. 50. プログラマーや他セクションが検索しやすく、 親子関係と用途が伝わりやすいシンプルな名前が理想 マテリアルの命名規則の理想 Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  51. 51. Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  52. 52. Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  53. 53. Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  54. 54. Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  55. 55. エディター パッケージ Derived Data Cache(DDC) Material または Material Instance パッケージとエディターで 保存位置が変わる Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  56. 56. パッケージサイズ内訳 非マテリアルインスタンス マテリアルインスタンス パッケージの総サイズ30GBに対して 60%がマテリアルインスタンス うわっ マテリアルインスタンス大きすぎ? Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  57. 57. 運営時にアセットの追加や修正が ある度にギガパッチを当てる 必要が出てしまう アップデート時の ダウンロード時間(=更新差分サイズ) には制限がある このままではリリースできない Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  58. 58. Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved. 総ファイルサイズ 30GB MIファイル数 3328files MI総ファイルサイズ 18.6GB キャラ向けMI数 2131(内1830ファイルが1MB以上) キャラ用MI総ファイルサイズ 17.5GB 背景用MI数 474(内277ファイルが1MB以上) とあるキャラの一つのMIサイズ 10.3MB
  59. 59. UDNに相談! Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved. エディタで開いてみても マテリアルやMIに異常はない 開発環境の コンテンツフォルダ内では ひとつ150K程度 パッケージすると 1つのマテリアルインスタンス で10MBを超える
  60. 60. 「マテリアルインスタンス内でスイッチな どを使うとマテリアルインスタンスが肥大 化することがあります。」 S藤さんありがとうございました 末端MI(以後、孫MI) でSwitchを多用していた デザイナーに相談 なんとか対応してもらえることに ただし結構な作業量なので 全部処理しきれるかわからない… Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  61. 61. 総MIサイズ = 各シェーダーサイズ×シェーダー数 UE4.13 の Shader Permutation Reductionが効くかも 篠山様談 マジシャンズデッド は、 4.12.5で固定なので 直接は使えないが 何かヒントがあるかも Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  62. 62. -18% ただし Stationary Skylight を プロジェクトで利用している・・・ 利用できそうなものは無かった・・・ Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  63. 63. これ、いらなくない? Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved. マジシャンズデッドは DirectX11で動作
  64. 64. 元のファイルサイズ SM4のチェックを外した後 10.3MB 5.56MB ターゲットが固定されているなら SM4を外すことでシェーダービルド待ち時間も減ると思うので チェックを外しておくのがお勧めです Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  65. 65. 同じマテリアルをコンパイルしているのに 特定のMIのサイズに変化が シェーダー命令数が 尋常ではないほど違う 1000 instructions → 450 instructions マテリアルで なにかが起こっている・・・ Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  66. 66. 原因はNoiseノード UE4.13でNoiseノードが リファイン Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  67. 67. Perlinノイズは重いので FastGradient+αに置き換え 1000 → 300Instructions 最適化前 最適化後 5.56MB 2.38MB インストラクション数は 直接サイズに影響する Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  68. 68. 最初 最終 総ファイルサイズ 30,000MB 14,700MB MIファイル数 3,328files 4,200files MI総ファイルサイズ 18,600MB 2,330MB キャラ向けMI数 2,131 (内1,830ファイルが1MB以上) 2,929 (内878ファイルが1MB以上) キャラ用MI総ファイルサイズ 17,500MB 2,010MB 背景用MI数 474 (内277ファイルが1MB以上) 529 (内77ファイルが1MB以上) とあるキャラのMIサイズ 10.3MB 2.3MB Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  69. 69. Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved. 0.0GB 5.0GB 10.0GB 15.0GB 20.0GB 25.0GB 30.0GB 35.0GB パッケージサイズの変化 問題発覚時 最終ビルド
  70. 70. デカイMIが結構 残っているけど・・・ 両面描画フラグでも MIが肥える事が発覚 MIが 増えてるけど・・・ 調査開始と 最終ビルドの間に アセットが増えました 現在は修正済みです Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  71. 71. Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
  72. 72. Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.

×