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.

Unityで作ったゲームをDLカードで配布してみた話 #roppongiunity

Roppongi.unity #3 https://roppongiunity.connpass.com/event/129420/

  • Login to see the comments

Unityで作ったゲームをDLカードで配布してみた話 #roppongiunity

  1. 1. Unityで作ったゲームを DLカードで配布してみた話 2019/06/25 Roppongi.unity とりすーぷ
  2. 2. 自己紹介 • とりすーぷ • バーチャルキャスト社開発 • C#、Unity、.NET Core • 最近はMagicOnionを使おうとがんばってる • Dockerとかk8sとかGCPとかそのへんを抑えようとしてる • 昔(今も)ゲームとか作ってる
  3. 3. 今回の内容 • 「ダウンロードカード形式」で頒布する同人ゲームを作った話 • ダウンロード販売、ではない • シリアルコードが印刷されたDLカードを頒布して、 あとからそれで認証してもらうスタイル
  4. 4. 該当ゲーム • ハクレイフリーマーケット • 2017年10月発売 • https://www.mikoma.net/ • オンラインで最大6人まで 同時対戦可能
  5. 5. なぜDLカード? • 同人ゲームは即売会で頒布することが大前提 • ダウンロード販売のみ、では即売会に出せない • CD頒布は流石にもう時代遅れ • CDドライブが無いPCも多い • あと作成コストも高い
  6. 6. もくじ • シリアルコードの認証の仕組み • ダウンロードカードの作り方
  7. 7. シリアルコードの認証機構
  8. 8. 詳しくはこの資料みて • UnityとNCMBでユーザ管理を実装してみた話 • https://www.slideshare.net/torisoup/unityncmb-148151719 • まったく同じ話してる
  9. 9. DLカードの方式は2つある • 「ダウンロード」そのものを縛る方式 • シリアルコードを持っている人のみDL可能 • 違法アップロードに対応できない • ゲーム内での「機能解放」に使う方式 • ゲーム自体は誰でもDLできる • ゲーム内の機能解放にコードが必要 • いろいろ面倒くさいので普通はやらない方式
  10. 10. DLカードの方式は2つある • 「ダウンロード」そのものを縛る方式 • シリアルコードを持っている人のみDL可能 • 違法アップロードに対応できない • ゲーム内での「機能解放」に使う方式 ←これにしちゃった • ゲーム自体は誰でもDLできる • ゲーム内の機能解放にコードが必要 • いろいろ面倒くさいので普通はやらない方式
  11. 11. 機能解放方式、に必要なもの • ユーザの識別機構(ログイン) • ユーザの購入履歴の確認機構 • サーバアプリケーションが必要になる
  12. 12. サーバサイドの仕組み • 2つのサーバアプリを併用して稼働 • ニフクラ • ログイン機構 • 購入履歴の確認 • 自作のサーバアプリ • シリアルコードの認証機構 • Ruby on Rails で作って、 ConoHa VPS 上で稼働中
  13. 13. 全体構成 クライアント シリアルコードチェックサーバ ニフクラ(ユーザ管理) ログイン & アンロック状態確認シリアルコード認証 (初回のみ) アンロック状態の更新 (シリアルコード認証成功時)
  14. 14. 詳しくはこの資料みて(2度目) • UnityとNCMBでユーザ管理を実装してみた話 • https://www.slideshare.net/torisoup/unityncmb-148151719
  15. 15. 感想 • 機能解放型は手間がすごいからオススメしない • クライアントの実装も複雑になる • サーバアプリの管理も必要になる • もしまた作るなら.NET Core + ASP.NETで作りたい • クライアントもサーバもC#で統一した方が楽 • MagicOnionはちょっとオーバースペックかも
  16. 16. ダウンロードカードの作り方
  17. 17. ダウンロードカード、どうやって作る? • 1枚ごとに異なったシリアルコードを印刷する必要がある • どうやってデザインするのが楽なのか?
  18. 18. たぶん正しいやり方 • Adobe InDesignでやる • データ結合機能で、csvからデータを流し込んで自動組版ができる
  19. 19. たぶん正しいやり方 • Adobe InDesignでやる • データ結合機能で、csvからデータを流し込んで自動組版ができる • Adobe製品高い • なので他の方法でなんとかしたい
  20. 20. そこで我々が持つ武器
  21. 21. そこで我々が持つ武器
  22. 22. Unityで作ったDLカードで ゲームを配布してみた話
  23. 23. Unityは、つよい • なんでもできる • uGUIでテクスチャ配置してデザイン • スクリプト
  24. 24. UnityでDLカードの自動生成 • csvからシリアルコードを読み込み • 1フレームごとに、 背景とシリアルコードを更新 • スクショを撮って1枚ずつ保存
  25. 25. 1枚毎に異なった画像がたくさん生成される
  26. 26. あとは何らかの方法でこれを印刷すればOK • 印刷のやり方によって手間が変わる
  27. 27. ハクレイフリーマーケットのDLカードの歴史 • 第1世代 • 第1.5世代 • 第2世代 • 第3世代(最終形態)
  28. 28. 第1世代 DLカード • A4用紙に何枚も並べて配置して印刷、手で裁断する • 手間がかかるし、クオリティも低い • カードスリーブとかにいれて誤魔化すしかない
  29. 29. 第1.5世代DLカード • 「名刺用プリント用紙」に印刷する作戦 • 裁断の手間が省ける • テンプレートに合わせて ぴったりデザインしないといけない (それこそInDesign使えという話になる)
  30. 30. Unityでゴリ押しはしてみた • Unityでプリント用紙のテンプレートに合わせて配置 • 同じ方法で大量に画像データをつくる
  31. 31. 第1.5世代DLカード 結果 • プリンタに出力するときの数mmの誤差との戦い • Unity上でテンプレート通りに配置しても、印刷するとズレる • 逆に作成コストが上がってしまい、本末転倒
  32. 32. 第2世代 • 名刺印刷業者に表面だけ頼む、という作戦 • 裏面は必要に応じて自分で印刷 • 大量にストックしておける 表 裏
  33. 33. 使った印刷所 • ライオン名刺さん • https://www.lion-meishi.com/
  34. 34. 裏面は当然Unityでつくる • 第一世代と同じ方法 • 毎フレーム、 シリアルコードを変更して スクショを撮って保存
  35. 35. 第2世代 結果 • かなり良い • 裁断の手間が無い • 安い(100枚刷っても800円くらい) 表 裏
  36. 36. 第3世代 • 印刷業者を使うなら、もう全部任せればいいのでは?
  37. 37. 使った印刷所 • ライオン名刺さん • https://www.lion-meishi.com/
  38. 38. 印刷オプション • 2つ折り名刺 カラーx白黒 • 内側にシリアルコードを印刷することで、覗き見防止 • 用紙は「パーフェクトW」 • 厚めの用紙なので透かして中身を除くのを防止 • ナンバリング加工オプション • CSVで指定した文字列を順番に印刷
  39. 39. 第3世代 結果 • たぶんこれが一番いいと思います • クオリティ◎ • お値段◎(単価数十円) • ただし、入稿にIllustratorが必要 • Unityでゴリ押しできない • Adobeが高いから使いたくないって話してたんじゃなかったの…
  40. 40. 結論 • 餅は餅屋 • 手印刷するよりも、印刷業者に任せた方がクオリティが高い • Unityでゴリ押しするより、Illustrator / InDesign使ったほうが早い • 身も蓋もねぇ
  41. 41. •「自作するのが楽しいんだよ!」 • あるもので工夫するのが楽しい • 同人活動はこの精神を忘れずにやっていきたい

×