SlideShare a Scribd company logo
1 of 43
BLEACH -Brave Souls-
3DUI演出の実装事例
KLab株式会社 KlabGames事業本部
フロントエンジニア 鈴木愛忠
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
自己紹介
名前 鈴木 愛忠 (すずきなりただ)
職種 クライントエンジニア
=> 主にUI実装/特殊なUI演出の実装担当
備考 2016入社(新卒3年目)
趣味 お絵描き
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
アジェンダ
● BLEACH -Brave Souls-について
● 実装した演出の紹介
● 演出の制作解説
● 起こったトラブルピックアップ
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
BLEACH -Brave Souls-について
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
BLEACH -Brave Souls-について
「BLEACH Brave Souls」とは、ぴえろが大人気コミックをアニメ化した作品
「BLEACH」を題材とした爽快3Dアクションゲームです。おなじみのキャラクタ
ーを自在に操作し、本格的なアクションを楽しむ事ができます。公式HP
2015年7月に国内リリース
2016年1月に海外でもリリース
今年で3周年になります
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
BLEACH -Brave Souls-について
開発部分の解説
Unityのバージョン 5.4系
=>2016年に4系から移行した
UIの表示 : NGUIを使用
サウンド : Wwiseを使用
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
BLEACH -Brave Souls-について
最近新しいゲーム要素が入りました
グループと呼ばれる機能です
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
BLEACH -Brave Souls-について
グループ機能
メンバーとグループを作り
人数やレベルに応じて効果をもらったり
グループバトルでランキング報酬をもらったりできる
=>他のゲームだとギルド機能と呼ばれてる物
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
BLEACH -Brave Souls-について
今回、そのロビー部分の演出を制作しました
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
制作した演出紹介
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
制作した演出紹介
ホログラム演出のサイネージ
3Dで空間に浮遊する感じで出現します
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
制作した演出紹介
ホログラム演出のサイネージ
● ディスプレイの走査線をシェーダーで表示
● 一定時間ごとにサムネイル表示がぶれます
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
制作した演出紹介
ホログラム演出のサイネージ
● メンバー表示は送り文字で流してます
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
制作した演出紹介
特殊な出現エフェクト
● 横線が入りながらデジタルっぽく
キャラが出現します
● サムネイルも同じ感じように出現
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
制作した演出紹介
グループエンブレム
壁に表示しているのは自分のグループのエンブレムです
ユーザーでデザインをカスタマイズできます
通常UIで出すエンブレムと違いここは少しかすれて
オーバーレイ合成で表示してます
他部分での
エンブレム
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
制作した演出紹介
3Dキャラ配置のアスペクト対応
アスペクト比に応じてキャラクターを綺麗に
並べる機能を実装
iPhoneXは大人の事情で専用処理を入れました
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
制作した演出紹介
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
制作した演出紹介
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
BLEACH -Brave Souls-について
もう一度御覧ください
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
各演出の制作解説
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
各演出の制作解説
②3Dモデル描画時に
画面エフェクト掛ける
①UI部分をTexture化
3Dモデルに付ける
キャラクターサイネージ
①別カメラでUI部分を撮影しTexture
化
②Textureをモデルに貼り付け
3D上に描画する際に
Noiseエフェクトを掛ける
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
各演出の制作解説
キャラクターサイネージ
完成
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
各演出の制作解説
出現エフェクト
グレーのテスクチャを用意
表示したいテクスチャを用意
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
各演出の制作解説
出現エフェクト
黒を0白を1としてグレー値0.5までを
合成したいテクスチャと合成する
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
各演出の制作解説
出現エフェクト
格子に近いほど青くなるように色合成
する
完成!
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
各演出の制作解説
出現エフェクト
3Dキャラクター部分も
同じ形で実装しています
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
各演出の制作解説
壁のグループエンブレム
まずエンブレムを表示
その上にカスレ用の画像を重ねるとかすれる
右はデザイナーさんに頼むときの資料
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
各演出の制作解説
壁のグループエンブレム
エンブレムは3Dメッシュとして配置
描画時にオーバーレイで合成
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
起こったトラブルピックアップ
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
起こったトラブルピックアップ
一部端末でサイネージがピンクになる
デバック期間中に一部端末でピンク色になる不具合発生
該当の端末で確認するとログでコンパイルエラーを確認
ピンク色の悪魔
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
起こったトラブルピックアップ
一部端末でサイネージがピンクになる
原因は該当端末が一部シェーダの変数キャス
トが上手く行ってなかった (端末のGPU側
[グラフィック性能]の問題
該当部分のシェーダーを書き直して修正して
解決!
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
起こったトラブルピックアップ
キャラクターの確認が大変
実装時キャラクターモデルは200体近く存在
いちいちプレイヤーデータを直すのは大変
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
起こったトラブルピックアップ
キャラクターの出現エフェクトの確認が大変
少し時間をかけてデバック機能を実装し解決!
以下の機能を入れてました
● 全てのモデル情報をサイネージで選ぶ機能
● 次グループ情報を即更新する機能
● 移動するキャラクターを強制出現
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
起こったトラブルピックアップ
キャラクターの確認が大変
デバック機能のために時間を割きましたが
● 表示不具合発生時の即時確認
● デザイナーから特定のキャラクター時のレイ
アウトが見たいときにすぐ用意できる
● 後に別の演出を追加した際に活用する事がで
きた
色々恩恵が有り実装して良かった
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
起こったトラブルピックアップ
エンブレムがきれいに設置できない
2D背景に3Dの板ポリを
ぴったりになるよう配置したいが
普通に設置するとちょっと歪んだ感じにある
配置しても何度も調整お願いされて困る自分
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
起こったトラブルピックアップ
エンブレムがきれいに設置できない
自分なりに考えてみた
パースがピッタリ合わない
消失点を変更できないか?
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
起こったトラブルピックアップ
エンブレムがきれいに設置できない
変更するスクリプトを組んで解決
画像は消失点移動前
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
起こったトラブルピックアップ
エンブレムがきれいに設置できない
消失点移動後
消失点変わらず
カメラだけ動いている
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
起こったトラブルピックアップ
エンブレムがきれいに設置できない
これで意図した場所まで
消失点をずらして配置
解決!
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
起こったトラブルピックアップ
エンブレムがきれいに設置できない
おまけ
ちなみにエディターで消失点のあたり線を
表示するようにしています
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
まとめ
以上、今回実装した演出でした。
実装内容まとめ
● RendererTextureで別途描画した映像を3Dオブジェクトでモニタ風に表示
● サムネイルやキャラクターはグレースケールの格子と合成して表示
● エンブレム表示はカスレエフェクトを足してオーバーレイ表示
● エンブレムは2D背景に合うように
● アスペクト比に合わせたキャラクター配置
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
まとめ
トラブルで学んだことまとめ
● 端末ごとの表示確認重要
○ 特にAndroidのマイナーなGPUの確認はしていく必要がある
● 演出系はデバッグ機能の充実も大事
○ デザイナーから確認したい要望を見越して実装しておく必要がある
● カメラの消失点変えれば2D背景と3Dオブジェクトの配置
○ デザイナーさんに納得の行く形で修正できた
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames
あとがき
ご静聴ありがとうございました
ノイズエフェクト実装時の参考資料
[Unity3D]ブラウン管風シェーダーを作った
消失点修正スクリプトの参考資料
カメラの消失点を移動させる
©久保帯人/集英社・テレビ東京・dentsu・ぴえろ ©KLabGames

More Related Content

What's hot

[Cloud OnAir] BigQuery の仕組みからベストプラクティスまでのご紹介 2018年9月6日 放送
[Cloud OnAir] BigQuery の仕組みからベストプラクティスまでのご紹介 2018年9月6日 放送[Cloud OnAir] BigQuery の仕組みからベストプラクティスまでのご紹介 2018年9月6日 放送
[Cloud OnAir] BigQuery の仕組みからベストプラクティスまでのご紹介 2018年9月6日 放送Google Cloud Platform - Japan
 
実運用して分かったRabbit MQの良いところ・気をつけること #jjug
実運用して分かったRabbit MQの良いところ・気をつけること #jjug実運用して分かったRabbit MQの良いところ・気をつけること #jjug
実運用して分かったRabbit MQの良いところ・気をつけること #jjugYahoo!デベロッパーネットワーク
 
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」Takuto Wada
 
構成情報データベースをGitで管理したいネットワーク運用者の憂鬱
構成情報データベースをGitで管理したいネットワーク運用者の憂鬱構成情報データベースをGitで管理したいネットワーク運用者の憂鬱
構成情報データベースをGitで管理したいネットワーク運用者の憂鬱Yuya Rin
 
大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック
大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック
大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニックinfinite_loop
 
ゲームエンジニアのためのデータベース設計
ゲームエンジニアのためのデータベース設計ゲームエンジニアのためのデータベース設計
ゲームエンジニアのためのデータベース設計sairoutine
 
ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計Yoshinori Matsunobu
 
ユーザーストーリーの分割
ユーザーストーリーの分割ユーザーストーリーの分割
ユーザーストーリーの分割Arata Fujimura
 
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)Mikiya Okuno
 
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Kohei Tokunaga
 
オンラインゲームの仕組みと工夫
オンラインゲームの仕組みと工夫オンラインゲームの仕組みと工夫
オンラインゲームの仕組みと工夫Yuta Imai
 
イベント・ソーシングを知る
イベント・ソーシングを知るイベント・ソーシングを知る
イベント・ソーシングを知るShuhei Fujita
 
【Unity道場】AssetGraph入門 〜ノードを駆使しててUnityの面倒な手作業を自動化する方法〜
【Unity道場】AssetGraph入門 〜ノードを駆使しててUnityの面倒な手作業を自動化する方法〜【Unity道場】AssetGraph入門 〜ノードを駆使しててUnityの面倒な手作業を自動化する方法〜
【Unity道場】AssetGraph入門 〜ノードを駆使しててUnityの面倒な手作業を自動化する方法〜Unity Technologies Japan K.K.
 
いまさら学ぶMVVMパターン
いまさら学ぶMVVMパターンいまさら学ぶMVVMパターン
いまさら学ぶMVVMパターンYuta Matsumura
 
これからSpringを使う開発者が知っておくべきこと
これからSpringを使う開発者が知っておくべきことこれからSpringを使う開発者が知っておくべきこと
これからSpringを使う開発者が知っておくべきこと土岐 孝平
 
BuildKitの概要と最近の機能
BuildKitの概要と最近の機能BuildKitの概要と最近の機能
BuildKitの概要と最近の機能Kohei Tokunaga
 
ソーシャルゲーム案件におけるDB分割のPHP実装
ソーシャルゲーム案件におけるDB分割のPHP実装ソーシャルゲーム案件におけるDB分割のPHP実装
ソーシャルゲーム案件におけるDB分割のPHP実装infinite_loop
 

What's hot (20)

[Cloud OnAir] BigQuery の仕組みからベストプラクティスまでのご紹介 2018年9月6日 放送
[Cloud OnAir] BigQuery の仕組みからベストプラクティスまでのご紹介 2018年9月6日 放送[Cloud OnAir] BigQuery の仕組みからベストプラクティスまでのご紹介 2018年9月6日 放送
[Cloud OnAir] BigQuery の仕組みからベストプラクティスまでのご紹介 2018年9月6日 放送
 
実運用して分かったRabbit MQの良いところ・気をつけること #jjug
実運用して分かったRabbit MQの良いところ・気をつけること #jjug実運用して分かったRabbit MQの良いところ・気をつけること #jjug
実運用して分かったRabbit MQの良いところ・気をつけること #jjug
 
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
 
構成情報データベースをGitで管理したいネットワーク運用者の憂鬱
構成情報データベースをGitで管理したいネットワーク運用者の憂鬱構成情報データベースをGitで管理したいネットワーク運用者の憂鬱
構成情報データベースをGitで管理したいネットワーク運用者の憂鬱
 
大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック
大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック
大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック
 
ゲームエンジニアのためのデータベース設計
ゲームエンジニアのためのデータベース設計ゲームエンジニアのためのデータベース設計
ゲームエンジニアのためのデータベース設計
 
ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計
 
ユーザーストーリーの分割
ユーザーストーリーの分割ユーザーストーリーの分割
ユーザーストーリーの分割
 
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
 
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
 
オンラインゲームの仕組みと工夫
オンラインゲームの仕組みと工夫オンラインゲームの仕組みと工夫
オンラインゲームの仕組みと工夫
 
イベント・ソーシングを知る
イベント・ソーシングを知るイベント・ソーシングを知る
イベント・ソーシングを知る
 
【Unity道場】AssetGraph入門 〜ノードを駆使しててUnityの面倒な手作業を自動化する方法〜
【Unity道場】AssetGraph入門 〜ノードを駆使しててUnityの面倒な手作業を自動化する方法〜【Unity道場】AssetGraph入門 〜ノードを駆使しててUnityの面倒な手作業を自動化する方法〜
【Unity道場】AssetGraph入門 〜ノードを駆使しててUnityの面倒な手作業を自動化する方法〜
 
いまさら学ぶMVVMパターン
いまさら学ぶMVVMパターンいまさら学ぶMVVMパターン
いまさら学ぶMVVMパターン
 
これからSpringを使う開発者が知っておくべきこと
これからSpringを使う開発者が知っておくべきことこれからSpringを使う開発者が知っておくべきこと
これからSpringを使う開発者が知っておくべきこと
 
BuildKitの概要と最近の機能
BuildKitの概要と最近の機能BuildKitの概要と最近の機能
BuildKitの概要と最近の機能
 
Jenkins と groovy
Jenkins と groovyJenkins と groovy
Jenkins と groovy
 
ヤフー発のメッセージキュー「Pulsar」のご紹介
ヤフー発のメッセージキュー「Pulsar」のご紹介ヤフー発のメッセージキュー「Pulsar」のご紹介
ヤフー発のメッセージキュー「Pulsar」のご紹介
 
ヤフー社内でやってるMySQLチューニングセミナー大公開
ヤフー社内でやってるMySQLチューニングセミナー大公開ヤフー社内でやってるMySQLチューニングセミナー大公開
ヤフー社内でやってるMySQLチューニングセミナー大公開
 
ソーシャルゲーム案件におけるDB分割のPHP実装
ソーシャルゲーム案件におけるDB分割のPHP実装ソーシャルゲーム案件におけるDB分割のPHP実装
ソーシャルゲーム案件におけるDB分割のPHP実装
 

Similar to BLEACH -Brave Souls- 3DUI演出の実装事例

悪意ないユーザに配慮した不正クライアントの排除
悪意ないユーザに配慮した不正クライアントの排除悪意ないユーザに配慮した不正クライアントの排除
悪意ないユーザに配慮した不正クライアントの排除klab-koike-r
 
CEDEC2020 『ラブライブ!スクールアイドルフェスティバル ALL STARS』(スクスタ)のライブ演出制作秘話~超高品質な3Dライブ演出を表現する...
CEDEC2020 『ラブライブ!スクールアイドルフェスティバル ALL STARS』(スクスタ)のライブ演出制作秘話~超高品質な3Dライブ演出を表現する...CEDEC2020 『ラブライブ!スクールアイドルフェスティバル ALL STARS』(スクスタ)のライブ演出制作秘話~超高品質な3Dライブ演出を表現する...
CEDEC2020 『ラブライブ!スクールアイドルフェスティバル ALL STARS』(スクスタ)のライブ演出制作秘話~超高品質な3Dライブ演出を表現する...KLab Inc. Creative
 
ワールド別のDBへの取得・更新に後から対応した話
ワールド別のDBへの取得・更新に後から対応した話ワールド別のDBへの取得・更新に後から対応した話
ワールド別のDBへの取得・更新に後から対応した話KLab Inc. / Tech
 
[テックタッチ株式会社]第05回 Customer系エンジニア座談会.pdf
[テックタッチ株式会社]第05回 Customer系エンジニア座談会.pdf[テックタッチ株式会社]第05回 Customer系エンジニア座談会.pdf
[テックタッチ株式会社]第05回 Customer系エンジニア座談会.pdfKizuKirai
 
わたしのVisual studio環境
わたしのVisual studio環境わたしのVisual studio環境
わたしのVisual studio環境Keigo Ando
 
それを早く言ってよ〜パフォーマンスを出すエフェクト制作のポイント
それを早く言ってよ〜パフォーマンスを出すエフェクト制作のポイントそれを早く言ってよ〜パフォーマンスを出すエフェクト制作のポイント
それを早く言ってよ〜パフォーマンスを出すエフェクト制作のポイントMakoto Goto
 
運営型モバイルゲームの運用について
運営型モバイルゲームの運用について運営型モバイルゲームの運用について
運営型モバイルゲームの運用についてKLab Inc. / Tech
 
始めてのビジュアルプログラミングで、はじめまして、toio
始めてのビジュアルプログラミングで、はじめまして、toio始めてのビジュアルプログラミングで、はじめまして、toio
始めてのビジュアルプログラミングで、はじめまして、toioMPN
 
GDC2013ローカリゼーションサミット報告会
GDC2013ローカリゼーションサミット報告会GDC2013ローカリゼーションサミット報告会
GDC2013ローカリゼーションサミット報告会Hiromi Watanabe
 
【Unite 2017 Tokyo】Ultimate Bowl 2017 -Timeline機能を活用したリアルタイムデモのメイキング-
【Unite 2017 Tokyo】Ultimate Bowl 2017 -Timeline機能を活用したリアルタイムデモのメイキング-【Unite 2017 Tokyo】Ultimate Bowl 2017 -Timeline機能を活用したリアルタイムデモのメイキング-
【Unite 2017 Tokyo】Ultimate Bowl 2017 -Timeline機能を活用したリアルタイムデモのメイキング-Unity Technologies Japan K.K.
 
未踏カンファレンス2012「メルコグループと未踏ソフト」(スポンサーPR枠)<字幕付き>
未踏カンファレンス2012「メルコグループと未踏ソフト」(スポンサーPR枠)<字幕付き>未踏カンファレンス2012「メルコグループと未踏ソフト」(スポンサーPR枠)<字幕付き>
未踏カンファレンス2012「メルコグループと未踏ソフト」(スポンサーPR枠)<字幕付き>Daisuke Maki
 
【Unite Tokyo 2018】なんとっ!ユナイト!ミリシタをささえる『AKANE大作戦』とは?
【Unite Tokyo 2018】なんとっ!ユナイト!ミリシタをささえる『AKANE大作戦』とは?【Unite Tokyo 2018】なんとっ!ユナイト!ミリシタをささえる『AKANE大作戦』とは?
【Unite Tokyo 2018】なんとっ!ユナイト!ミリシタをささえる『AKANE大作戦』とは?UnityTechnologiesJapan002
 
サービスが生まれてから死ぬまで @激突! Aiming x CloverLab [インフラ対決]部門
サービスが生まれてから死ぬまで @激突! Aiming x CloverLab [インフラ対決]部門サービスが生まれてから死ぬまで @激突! Aiming x CloverLab [インフラ対決]部門
サービスが生まれてから死ぬまで @激突! Aiming x CloverLab [インフラ対決]部門Akihiro Sugeno
 
Regional Scrum Gathering Tokyo 2023 Keiji Kikuchi Remote Mobbing
Regional Scrum Gathering Tokyo 2023 Keiji Kikuchi Remote MobbingRegional Scrum Gathering Tokyo 2023 Keiji Kikuchi Remote Mobbing
Regional Scrum Gathering Tokyo 2023 Keiji Kikuchi Remote MobbingKeiji Kikuchi
 

Similar to BLEACH -Brave Souls- 3DUI演出の実装事例 (15)

悪意ないユーザに配慮した不正クライアントの排除
悪意ないユーザに配慮した不正クライアントの排除悪意ないユーザに配慮した不正クライアントの排除
悪意ないユーザに配慮した不正クライアントの排除
 
CEDEC2020 『ラブライブ!スクールアイドルフェスティバル ALL STARS』(スクスタ)のライブ演出制作秘話~超高品質な3Dライブ演出を表現する...
CEDEC2020 『ラブライブ!スクールアイドルフェスティバル ALL STARS』(スクスタ)のライブ演出制作秘話~超高品質な3Dライブ演出を表現する...CEDEC2020 『ラブライブ!スクールアイドルフェスティバル ALL STARS』(スクスタ)のライブ演出制作秘話~超高品質な3Dライブ演出を表現する...
CEDEC2020 『ラブライブ!スクールアイドルフェスティバル ALL STARS』(スクスタ)のライブ演出制作秘話~超高品質な3Dライブ演出を表現する...
 
ワールド別のDBへの取得・更新に後から対応した話
ワールド別のDBへの取得・更新に後から対応した話ワールド別のDBへの取得・更新に後から対応した話
ワールド別のDBへの取得・更新に後から対応した話
 
[テックタッチ株式会社]第05回 Customer系エンジニア座談会.pdf
[テックタッチ株式会社]第05回 Customer系エンジニア座談会.pdf[テックタッチ株式会社]第05回 Customer系エンジニア座談会.pdf
[テックタッチ株式会社]第05回 Customer系エンジニア座談会.pdf
 
わたしのVisual studio環境
わたしのVisual studio環境わたしのVisual studio環境
わたしのVisual studio環境
 
それを早く言ってよ〜パフォーマンスを出すエフェクト制作のポイント
それを早く言ってよ〜パフォーマンスを出すエフェクト制作のポイントそれを早く言ってよ〜パフォーマンスを出すエフェクト制作のポイント
それを早く言ってよ〜パフォーマンスを出すエフェクト制作のポイント
 
運営型モバイルゲームの運用について
運営型モバイルゲームの運用について運営型モバイルゲームの運用について
運営型モバイルゲームの運用について
 
始めてのビジュアルプログラミングで、はじめまして、toio
始めてのビジュアルプログラミングで、はじめまして、toio始めてのビジュアルプログラミングで、はじめまして、toio
始めてのビジュアルプログラミングで、はじめまして、toio
 
GDC2013ローカリゼーションサミット報告会
GDC2013ローカリゼーションサミット報告会GDC2013ローカリゼーションサミット報告会
GDC2013ローカリゼーションサミット報告会
 
【Unite 2017 Tokyo】Ultimate Bowl 2017 -Timeline機能を活用したリアルタイムデモのメイキング-
【Unite 2017 Tokyo】Ultimate Bowl 2017 -Timeline機能を活用したリアルタイムデモのメイキング-【Unite 2017 Tokyo】Ultimate Bowl 2017 -Timeline機能を活用したリアルタイムデモのメイキング-
【Unite 2017 Tokyo】Ultimate Bowl 2017 -Timeline機能を活用したリアルタイムデモのメイキング-
 
未踏カンファレンス2012「メルコグループと未踏ソフト」(スポンサーPR枠)<字幕付き>
未踏カンファレンス2012「メルコグループと未踏ソフト」(スポンサーPR枠)<字幕付き>未踏カンファレンス2012「メルコグループと未踏ソフト」(スポンサーPR枠)<字幕付き>
未踏カンファレンス2012「メルコグループと未踏ソフト」(スポンサーPR枠)<字幕付き>
 
【Unite Tokyo 2018】なんとっ!ユナイト!ミリシタをささえる『AKANE大作戦』とは?
【Unite Tokyo 2018】なんとっ!ユナイト!ミリシタをささえる『AKANE大作戦』とは?【Unite Tokyo 2018】なんとっ!ユナイト!ミリシタをささえる『AKANE大作戦』とは?
【Unite Tokyo 2018】なんとっ!ユナイト!ミリシタをささえる『AKANE大作戦』とは?
 
サービスが生まれてから死ぬまで @激突! Aiming x CloverLab [インフラ対決]部門
サービスが生まれてから死ぬまで @激突! Aiming x CloverLab [インフラ対決]部門サービスが生まれてから死ぬまで @激突! Aiming x CloverLab [インフラ対決]部門
サービスが生まれてから死ぬまで @激突! Aiming x CloverLab [インフラ対決]部門
 
Regional Scrum Gathering Tokyo 2023 Keiji Kikuchi Remote Mobbing
Regional Scrum Gathering Tokyo 2023 Keiji Kikuchi Remote MobbingRegional Scrum Gathering Tokyo 2023 Keiji Kikuchi Remote Mobbing
Regional Scrum Gathering Tokyo 2023 Keiji Kikuchi Remote Mobbing
 
『修羅道』制作事例 モバイルハイエンドグラフィックゲーム実現まで
『修羅道』制作事例 モバイルハイエンドグラフィックゲーム実現まで『修羅道』制作事例 モバイルハイエンドグラフィックゲーム実現まで
『修羅道』制作事例 モバイルハイエンドグラフィックゲーム実現まで
 

More from KLab Inc. / Tech

大規模モバイルオンラインゲーム開発における チーム組成とワークフロー最適化
大規模モバイルオンラインゲーム開発における チーム組成とワークフロー最適化大規模モバイルオンラインゲーム開発における チーム組成とワークフロー最適化
大規模モバイルオンラインゲーム開発における チーム組成とワークフロー最適化KLab Inc. / Tech
 
運用中の大規模オンラインゲームで 8年ぶりにPHPバージョンアップをした話
 運用中の大規模オンラインゲームで 8年ぶりにPHPバージョンアップをした話 運用中の大規模オンラインゲームで 8年ぶりにPHPバージョンアップをした話
運用中の大規模オンラインゲームで 8年ぶりにPHPバージョンアップをした話KLab Inc. / Tech
 
AirLab導入でテストコストの大幅削減と品質向上! 数十台の端末を一斉に全自動テストできる社内DeviceFarmについてご紹介
AirLab導入でテストコストの大幅削減と品質向上! 数十台の端末を一斉に全自動テストできる社内DeviceFarmについてご紹介AirLab導入でテストコストの大幅削減と品質向上! 数十台の端末を一斉に全自動テストできる社内DeviceFarmについてご紹介
AirLab導入でテストコストの大幅削減と品質向上! 数十台の端末を一斉に全自動テストできる社内DeviceFarmについてご紹介KLab Inc. / Tech
 
生成AIが切り拓く新しいゲームの創り方・遊び方
生成AIが切り拓く新しいゲームの創り方・遊び方生成AIが切り拓く新しいゲームの創り方・遊び方
生成AIが切り拓く新しいゲームの創り方・遊び方KLab Inc. / Tech
 
表も裏もすべて見せます! KLab謹製大規模オンラインゲームの リアルタイムチャットマイクロサービス
表も裏もすべて見せます! KLab謹製大規模オンラインゲームの リアルタイムチャットマイクロサービス表も裏もすべて見せます! KLab謹製大規模オンラインゲームの リアルタイムチャットマイクロサービス
表も裏もすべて見せます! KLab謹製大規模オンラインゲームの リアルタイムチャットマイクロサービスKLab Inc. / Tech
 
モバイルオンラインゲームでの大規模観戦とチート対策 〜自社製リアルタイム通信システム「WSNet2」の事例〜
モバイルオンラインゲームでの大規模観戦とチート対策 〜自社製リアルタイム通信システム「WSNet2」の事例〜モバイルオンラインゲームでの大規模観戦とチート対策 〜自社製リアルタイム通信システム「WSNet2」の事例〜
モバイルオンラインゲームでの大規模観戦とチート対策 〜自社製リアルタイム通信システム「WSNet2」の事例〜KLab Inc. / Tech
 
他業界からゲーム業界へ転向したときの話
他業界からゲーム業界へ転向したときの話他業界からゲーム業界へ転向したときの話
他業界からゲーム業界へ転向したときの話KLab Inc. / Tech
 
KLabのゲーム開発を支える開発環境
KLabのゲーム開発を支える開発環境KLabのゲーム開発を支える開発環境
KLabのゲーム開発を支える開発環境KLab Inc. / Tech
 
ゲーム開発を知らない人にも分かるKLabのゲーム開発運営
ゲーム開発を知らない人にも分かるKLabのゲーム開発運営ゲーム開発を知らない人にも分かるKLabのゲーム開発運営
ゲーム開発を知らない人にも分かるKLabのゲーム開発運営KLab Inc. / Tech
 
「リアルISUCON」としてのモバイルオンラインゲーム開発
「リアルISUCON」としてのモバイルオンラインゲーム開発「リアルISUCON」としてのモバイルオンラインゲーム開発
「リアルISUCON」としてのモバイルオンラインゲーム開発KLab Inc. / Tech
 
ゴリラテスト モバイルゲームのUIを自動的に検出・操作する モンキーテスト
ゴリラテスト  モバイルゲームのUIを自動的に検出・操作する モンキーテストゴリラテスト  モバイルゲームのUIを自動的に検出・操作する モンキーテスト
ゴリラテスト モバイルゲームのUIを自動的に検出・操作する モンキーテストKLab Inc. / Tech
 
モバイルアプリの高速で安定したビルドを支えるJenkins運用術
モバイルアプリの高速で安定したビルドを支えるJenkins運用術モバイルアプリの高速で安定したビルドを支えるJenkins運用術
モバイルアプリの高速で安定したビルドを支えるJenkins運用術KLab Inc. / Tech
 
『ラブライブ!スクールアイドルフェスティバル ALL STARS』を支えるビルドパイプライン 〜より安定したサービス提供を目指して〜
『ラブライブ!スクールアイドルフェスティバル ALL STARS』を支えるビルドパイプライン 〜より安定したサービス提供を目指して〜『ラブライブ!スクールアイドルフェスティバル ALL STARS』を支えるビルドパイプライン 〜より安定したサービス提供を目指して〜
『ラブライブ!スクールアイドルフェスティバル ALL STARS』を支えるビルドパイプライン 〜より安定したサービス提供を目指して〜KLab Inc. / Tech
 
KLabのチャットシステム インフラ変遷
KLabのチャットシステム インフラ変遷KLabのチャットシステム インフラ変遷
KLabのチャットシステム インフラ変遷KLab Inc. / Tech
 
Ganglia のUIにGrafanaを追加する話
Ganglia のUIにGrafanaを追加する話Ganglia のUIにGrafanaを追加する話
Ganglia のUIにGrafanaを追加する話KLab Inc. / Tech
 
KLabのインフラエンジニア 〜 こんな感じで働いてます 〜
KLabのインフラエンジニア 〜 こんな感じで働いてます 〜KLabのインフラエンジニア 〜 こんな感じで働いてます 〜
KLabのインフラエンジニア 〜 こんな感じで働いてます 〜KLab Inc. / Tech
 
属人化して詰まってた作業を自動化で楽しようとした話
属人化して詰まってた作業を自動化で楽しようとした話属人化して詰まってた作業を自動化で楽しようとした話
属人化して詰まってた作業を自動化で楽しようとした話KLab Inc. / Tech
 
見よう見まねでやってみる2D流体シミュレーション
見よう見まねでやってみる2D流体シミュレーション見よう見まねでやってみる2D流体シミュレーション
見よう見まねでやってみる2D流体シミュレーションKLab Inc. / Tech
 
モバイルオンラインゲームにおけるUIエンジニアの業務紹介
モバイルオンラインゲームにおけるUIエンジニアの業務紹介モバイルオンラインゲームにおけるUIエンジニアの業務紹介
モバイルオンラインゲームにおけるUIエンジニアの業務紹介KLab Inc. / Tech
 
VyOSで作るIPv4 Router/IPv6 Bridge
VyOSで作るIPv4 Router/IPv6 BridgeVyOSで作るIPv4 Router/IPv6 Bridge
VyOSで作るIPv4 Router/IPv6 BridgeKLab Inc. / Tech
 

More from KLab Inc. / Tech (20)

大規模モバイルオンラインゲーム開発における チーム組成とワークフロー最適化
大規模モバイルオンラインゲーム開発における チーム組成とワークフロー最適化大規模モバイルオンラインゲーム開発における チーム組成とワークフロー最適化
大規模モバイルオンラインゲーム開発における チーム組成とワークフロー最適化
 
運用中の大規模オンラインゲームで 8年ぶりにPHPバージョンアップをした話
 運用中の大規模オンラインゲームで 8年ぶりにPHPバージョンアップをした話 運用中の大規模オンラインゲームで 8年ぶりにPHPバージョンアップをした話
運用中の大規模オンラインゲームで 8年ぶりにPHPバージョンアップをした話
 
AirLab導入でテストコストの大幅削減と品質向上! 数十台の端末を一斉に全自動テストできる社内DeviceFarmについてご紹介
AirLab導入でテストコストの大幅削減と品質向上! 数十台の端末を一斉に全自動テストできる社内DeviceFarmについてご紹介AirLab導入でテストコストの大幅削減と品質向上! 数十台の端末を一斉に全自動テストできる社内DeviceFarmについてご紹介
AirLab導入でテストコストの大幅削減と品質向上! 数十台の端末を一斉に全自動テストできる社内DeviceFarmについてご紹介
 
生成AIが切り拓く新しいゲームの創り方・遊び方
生成AIが切り拓く新しいゲームの創り方・遊び方生成AIが切り拓く新しいゲームの創り方・遊び方
生成AIが切り拓く新しいゲームの創り方・遊び方
 
表も裏もすべて見せます! KLab謹製大規模オンラインゲームの リアルタイムチャットマイクロサービス
表も裏もすべて見せます! KLab謹製大規模オンラインゲームの リアルタイムチャットマイクロサービス表も裏もすべて見せます! KLab謹製大規模オンラインゲームの リアルタイムチャットマイクロサービス
表も裏もすべて見せます! KLab謹製大規模オンラインゲームの リアルタイムチャットマイクロサービス
 
モバイルオンラインゲームでの大規模観戦とチート対策 〜自社製リアルタイム通信システム「WSNet2」の事例〜
モバイルオンラインゲームでの大規模観戦とチート対策 〜自社製リアルタイム通信システム「WSNet2」の事例〜モバイルオンラインゲームでの大規模観戦とチート対策 〜自社製リアルタイム通信システム「WSNet2」の事例〜
モバイルオンラインゲームでの大規模観戦とチート対策 〜自社製リアルタイム通信システム「WSNet2」の事例〜
 
他業界からゲーム業界へ転向したときの話
他業界からゲーム業界へ転向したときの話他業界からゲーム業界へ転向したときの話
他業界からゲーム業界へ転向したときの話
 
KLabのゲーム開発を支える開発環境
KLabのゲーム開発を支える開発環境KLabのゲーム開発を支える開発環境
KLabのゲーム開発を支える開発環境
 
ゲーム開発を知らない人にも分かるKLabのゲーム開発運営
ゲーム開発を知らない人にも分かるKLabのゲーム開発運営ゲーム開発を知らない人にも分かるKLabのゲーム開発運営
ゲーム開発を知らない人にも分かるKLabのゲーム開発運営
 
「リアルISUCON」としてのモバイルオンラインゲーム開発
「リアルISUCON」としてのモバイルオンラインゲーム開発「リアルISUCON」としてのモバイルオンラインゲーム開発
「リアルISUCON」としてのモバイルオンラインゲーム開発
 
ゴリラテスト モバイルゲームのUIを自動的に検出・操作する モンキーテスト
ゴリラテスト  モバイルゲームのUIを自動的に検出・操作する モンキーテストゴリラテスト  モバイルゲームのUIを自動的に検出・操作する モンキーテスト
ゴリラテスト モバイルゲームのUIを自動的に検出・操作する モンキーテスト
 
モバイルアプリの高速で安定したビルドを支えるJenkins運用術
モバイルアプリの高速で安定したビルドを支えるJenkins運用術モバイルアプリの高速で安定したビルドを支えるJenkins運用術
モバイルアプリの高速で安定したビルドを支えるJenkins運用術
 
『ラブライブ!スクールアイドルフェスティバル ALL STARS』を支えるビルドパイプライン 〜より安定したサービス提供を目指して〜
『ラブライブ!スクールアイドルフェスティバル ALL STARS』を支えるビルドパイプライン 〜より安定したサービス提供を目指して〜『ラブライブ!スクールアイドルフェスティバル ALL STARS』を支えるビルドパイプライン 〜より安定したサービス提供を目指して〜
『ラブライブ!スクールアイドルフェスティバル ALL STARS』を支えるビルドパイプライン 〜より安定したサービス提供を目指して〜
 
KLabのチャットシステム インフラ変遷
KLabのチャットシステム インフラ変遷KLabのチャットシステム インフラ変遷
KLabのチャットシステム インフラ変遷
 
Ganglia のUIにGrafanaを追加する話
Ganglia のUIにGrafanaを追加する話Ganglia のUIにGrafanaを追加する話
Ganglia のUIにGrafanaを追加する話
 
KLabのインフラエンジニア 〜 こんな感じで働いてます 〜
KLabのインフラエンジニア 〜 こんな感じで働いてます 〜KLabのインフラエンジニア 〜 こんな感じで働いてます 〜
KLabのインフラエンジニア 〜 こんな感じで働いてます 〜
 
属人化して詰まってた作業を自動化で楽しようとした話
属人化して詰まってた作業を自動化で楽しようとした話属人化して詰まってた作業を自動化で楽しようとした話
属人化して詰まってた作業を自動化で楽しようとした話
 
見よう見まねでやってみる2D流体シミュレーション
見よう見まねでやってみる2D流体シミュレーション見よう見まねでやってみる2D流体シミュレーション
見よう見まねでやってみる2D流体シミュレーション
 
モバイルオンラインゲームにおけるUIエンジニアの業務紹介
モバイルオンラインゲームにおけるUIエンジニアの業務紹介モバイルオンラインゲームにおけるUIエンジニアの業務紹介
モバイルオンラインゲームにおけるUIエンジニアの業務紹介
 
VyOSで作るIPv4 Router/IPv6 Bridge
VyOSで作るIPv4 Router/IPv6 BridgeVyOSで作るIPv4 Router/IPv6 Bridge
VyOSで作るIPv4 Router/IPv6 Bridge
 

BLEACH -Brave Souls- 3DUI演出の実装事例

Editor's Notes

  1. Klab株式会社フロントエンジニアの鈴木愛忠が スマホゲームBLEACH -Brave Souls-の演出制作を発表したいと思います
  2. 最初に自己紹介ですが鈴木なりただともうします。 クライアントエンジニアをしており UI部分の実装と自前のシェーダー等利用した特殊なUI演出実装を担当してます 2016年に入社し現在新卒3年目になります 趣味はお絵かきです
  3. アジェンダになります 今回大きく4つお話しますが基本的に演出の紹介がメインになります
  4. まずゲームBLEACH -Brave Soulsについて少しご紹介します
  5. BLEACH -Brave Souls-通称ブレソルと呼ばれてますがジャンプで連載していた漫画「BLEACH」のアニメ版を題材としたゲームになっております。海外でも展開しており今年で3周年を迎えます
  6. 開発的な話しとしてはUnityは5.4系で過去に4系から移行してます NGUIとWwiseを使用しています
  7. 今年になりさらに新しいゲーム要素が入りました グループと呼ばれる機能です
  8. グループ機能とは メンバー人数やグループレベルで追加効果がもらえたり専用のバトルで報酬が入るものになります いわゆる他ゲームでいうギルド機能です
  9. 今回はグループのロビー部分の演出を実装させて頂きました 動画は後でも見せるので少しだ映します
  10. 演出について紹介していきます
  11. まず画像のホログラム演出について説明します こちらグループメンバーを表示しており所持している メンバーのキャラやログイン状態がわかります
  12. サイネージはディスプレイの走査線をシェーダーで再現しております 一定時間でサムネイルの表示がぶれたりします
  13. メンバー名の文字はマーキーのようにうごきます
  14. 次は出現エフェクトを紹介します メンバーをタップするとキャラクターが出現するのですが サムネイル画像のように出現時 格子模様にデジタルっぽく登場します オサレでかっこいいです 自分の自信作
  15. 続いてグループエンブレムです 自分のグループをカスタマイズできるのですが 通常のUIの表示と異なり少しかすれてオーバーレイ合成で表示されています
  16. アスペクト比でキャラクターの配置を変えています これによりどの端末でも印象を損なわずに観ることができています
  17. iPhoneXだけ大人の事情でちょっとさらに手を加える必要が出ました
  18. 以上演出の紹介です どうだーかっこいいでしょー 再度動画を流します 紹介してませんがほっておくとランダムに後ろをキャラが走ったりします
  19. 続いて演出の解説をします
  20. まずサイネージ演出の解説です サイネージは図のようにUI部分をカメラで映しテクスチャに変えて湾曲したモデルに貼り付けて表示してます モデル描画する際に必要なエフェクト等をかけている形になります
  21. そんなこんなで完成です
  22. 続いて出現エフェクトです まずグレーテクスチャと表示したいテクスチャを用意します
  23. そして黒を0、白を1とした際に0.5以下のグレーをサムネイルと合成すると 格子模様の画像になります(グレーの白い所までしか表示していない感じです
  24. そして最後に格子に近いほど青くなる色合成を行い 完成です 今回グレーテクスチャはシェーダーで自動生成してます
  25. 3Dキャラクターも同じ要領で実装しています
  26. 続いて壁に表示されてるエンブレムを説明します まずエンブレムを表示しその上に掠れ用の画像を載せると掠れます 右の図のような感じです
  27. 作ったエンブレムを3Dモデルにして2D背景に合うように配置します 完成!
  28. 最後に起こったトラブルをピックアップします
  29. 一つ目ですが特定端末でよくあるピンク色になる問題が発生しました ログを見たところ該当の端末じのみシェーダーコードでエラーが出ているのを確認
  30. エラー部分を書き直して解決です
  31. 続いてキャラクターがいっぱい問題 ブレソルには200体近くキャラクターモデルが存在しており手軽に見れないので大変
  32. そこでサイネージ用のデバック機能を作りました 入れたものは以下の3つですが 特にマスタからサイネージを呼び出す機能が後にいきました
  33. このデバック機能実装にも時間を割いたのですが 画像のように提供的な問題を発見したり デザイナーさんから指定したキャラでみたいとかもすぐ対応できたりしました 良い効果が多くあり実装して良かったです。
  34. 続いてエンブレムにも問題が有りました すこし極端にしてますが画像のように エンブレムを2Dに合わせて置こうとすると歪んでしまい 何度も修正依頼が来ることが起こりました
  35. 綺麗に設置できない なぜだろう 自分なりに考えてみた ここで自己紹介であった趣味お絵かきが伏線で発動します パースがぴったり合わないのでは? この消失点をうまいこといじれないか
  36. そして方法を調べた所見つかり 実装しました 画像のように中央に収束してるのを
  37. そのまま消失点を維持して動かす事ができました
  38. これを活用して意図した場所に消失点を置いて解決!
  39. おまけですが消失点の位置が分かるように補助線を引いております
  40. 以上今回実装した演出でした。 最後に実装内容まとめです リストの通りいっぱい作りました
  41. 続いてトラブルで学んだことです 端末の表示確認は大事で特に古いアンドロイド端末は意図せず表示されないことがありました 演出系はデザイナーの要望にあったデバッグ機能を用意しておくと上手く連携しやすかったです 2D背景に3Dオブジェクトを合わせるのに今回消失点使いましたがうまく活用できたと思いました
  42. ご静聴ありがとうございました 最後に参考資料を共有します