Submit Search
Upload
UE4におけるキャラクタークラス設計
•
25 likes
•
17,332 views
Masahiko Nakamura
Follow
UE4プログラマー向け勉強会 in 大阪で喋った時に使用したスライドです。 https://connpass.com/event/76815/
Read less
Read more
Engineering
Report
Share
Report
Share
1 of 57
Download now
Download to read offline
Recommended
初心者向け UE4 映像制作での シーケンサー と Movie Render Queue の使い方
初心者向け UE4 映像制作での シーケンサー と Movie Render Queue の使い方
エピック・ゲームズ・ジャパン Epic Games Japan
UE4におけるレベル制作事例
UE4におけるレベル制作事例
エピック・ゲームズ・ジャパン Epic Games Japan
UE4をレンダラとした趣味的スピード背景ルックデブ(UE4 Environment Art Dive)
UE4をレンダラとした趣味的スピード背景ルックデブ(UE4 Environment Art Dive)
エピック・ゲームズ・ジャパン Epic Games Japan
60fpsアクションを実現する秘訣を伝授 基礎編
60fpsアクションを実現する秘訣を伝授 基礎編
エピック・ゲームズ・ジャパン Epic Games Japan
Unreal Engine 4を使って地球を衛る方法
Unreal Engine 4を使って地球を衛る方法
エピック・ゲームズ・ジャパン Epic Games Japan
猫でも分かる UE4のAnimation Blueprintの運用について
猫でも分かる UE4のAnimation Blueprintの運用について
エピック・ゲームズ・ジャパン Epic Games Japan
目指せ脱UE4初心者!?知ってると開発が楽になる便利機能を紹介 - DataAsset, Subsystem, GameplayAbility編 -
目指せ脱UE4初心者!?知ってると開発が楽になる便利機能を紹介 - DataAsset, Subsystem, GameplayAbility編 -
historia_Inc
UE4の色について v1.1
UE4の色について v1.1
エピック・ゲームズ・ジャパン Epic Games Japan
Recommended
初心者向け UE4 映像制作での シーケンサー と Movie Render Queue の使い方
初心者向け UE4 映像制作での シーケンサー と Movie Render Queue の使い方
エピック・ゲームズ・ジャパン Epic Games Japan
UE4におけるレベル制作事例
UE4におけるレベル制作事例
エピック・ゲームズ・ジャパン Epic Games Japan
UE4をレンダラとした趣味的スピード背景ルックデブ(UE4 Environment Art Dive)
UE4をレンダラとした趣味的スピード背景ルックデブ(UE4 Environment Art Dive)
エピック・ゲームズ・ジャパン Epic Games Japan
60fpsアクションを実現する秘訣を伝授 基礎編
60fpsアクションを実現する秘訣を伝授 基礎編
エピック・ゲームズ・ジャパン Epic Games Japan
Unreal Engine 4を使って地球を衛る方法
Unreal Engine 4を使って地球を衛る方法
エピック・ゲームズ・ジャパン Epic Games Japan
猫でも分かる UE4のAnimation Blueprintの運用について
猫でも分かる UE4のAnimation Blueprintの運用について
エピック・ゲームズ・ジャパン Epic Games Japan
目指せ脱UE4初心者!?知ってると開発が楽になる便利機能を紹介 - DataAsset, Subsystem, GameplayAbility編 -
目指せ脱UE4初心者!?知ってると開発が楽になる便利機能を紹介 - DataAsset, Subsystem, GameplayAbility編 -
historia_Inc
UE4の色について v1.1
UE4の色について v1.1
エピック・ゲームズ・ジャパン Epic Games Japan
猫でも分かるUE4のポストプロセスを使った演出・絵作り
猫でも分かるUE4のポストプロセスを使った演出・絵作り
エピック・ゲームズ・ジャパン Epic Games Japan
Nintendo Switch『OCTOPATH TRAVELER』はこうして作られた
Nintendo Switch『OCTOPATH TRAVELER』はこうして作られた
エピック・ゲームズ・ジャパン Epic Games Japan
UE4 アセットロード周り-アセット参照調査-
UE4 アセットロード周り-アセット参照調査-
com044
バイキング流UE4活用術 ~BPとお別れするまでの18ヶ月~
バイキング流UE4活用術 ~BPとお別れするまでの18ヶ月~
エピック・ゲームズ・ジャパン Epic Games Japan
UE4のライティング解体新書~効果的なNPRのためにライティングの仕組みを理解しよう~
UE4のライティング解体新書~効果的なNPRのためにライティングの仕組みを理解しよう~
エピック・ゲームズ・ジャパン Epic Games Japan
そう、UE4ならね。あなたのモバイルゲームをより快適にする沢山の冴えたやり方について Part 2 <Texture Streaming, メモリプロ...
そう、UE4ならね。あなたのモバイルゲームをより快適にする沢山の冴えたやり方について Part 2 <Texture Streaming, メモリプロ...
エピック・ゲームズ・ジャパン Epic Games Japan
UE4でTranslucencyやUnlitに影を落としたい!
UE4でTranslucencyやUnlitに影を落としたい!
com044
猫でも分かるUMG
猫でも分かるUMG
エピック・ゲームズ・ジャパン Epic Games Japan
60fpsアクションを実現する秘訣を伝授 解析編
60fpsアクションを実現する秘訣を伝授 解析編
エピック・ゲームズ・ジャパン Epic Games Japan
UE4のためのより良いゲーム設計を理解しよう!
UE4のためのより良いゲーム設計を理解しよう!
Masahiko Nakamura
UE4のレイトレで出来ること/出来ないこと
UE4のレイトレで出来ること/出来ないこと
Satoshi Kodaira
[CEDEC2018] UE4で多数のキャラクターを生かすためのテクニック
[CEDEC2018] UE4で多数のキャラクターを生かすためのテクニック
エピック・ゲームズ・ジャパン Epic Games Japan
[CEDEC2018] UE4アニメーションシステム総おさらい
[CEDEC2018] UE4アニメーションシステム総おさらい
エピック・ゲームズ・ジャパン Epic Games Japan
[CEDEC2017] UE4プロファイリングツール総おさらい(グラフィクス編)
[CEDEC2017] UE4プロファイリングツール総おさらい(グラフィクス編)
エピック・ゲームズ・ジャパン Epic Games Japan
聖剣伝説3でのUE4利用事例の紹介~Making of Mana | UNREAL FEST EXTREME 2020 WINTER
聖剣伝説3でのUE4利用事例の紹介~Making of Mana | UNREAL FEST EXTREME 2020 WINTER
エピック・ゲームズ・ジャパン Epic Games Japan
UE4 LODs for Optimization -Beginner-
UE4 LODs for Optimization -Beginner-
com044
大規模タイトルにおけるエフェクトマテリアル運用 (SQEX大阪: 林武尊様) #UE4DD
大規模タイトルにおけるエフェクトマテリアル運用 (SQEX大阪: 林武尊様) #UE4DD
エピック・ゲームズ・ジャパン Epic Games Japan
UE5制作事例 “The Market of Light” ~Nanite/Lumenへの挑戦~
UE5制作事例 “The Market of Light” ~Nanite/Lumenへの挑戦~
historia_Inc
UE4 MultiPlayer Online Deep Dive: 実践編1 (Byking様ご講演) #UE4DD
UE4 MultiPlayer Online Deep Dive: 実践編1 (Byking様ご講演) #UE4DD
エピック・ゲームズ・ジャパン Epic Games Japan
CEDEC2016: Unreal Engine 4 のレンダリングフロー総おさらい
CEDEC2016: Unreal Engine 4 のレンダリングフロー総おさらい
エピック・ゲームズ・ジャパン Epic Games Japan
絵心がなくてもわかるUE4絵作りのコツ
絵心がなくてもわかるUE4絵作りのコツ
Masahiko Nakamura
研修におけるアナログゲーム活用
研修におけるアナログゲーム活用
Yasuhide Ishigami
More Related Content
What's hot
猫でも分かるUE4のポストプロセスを使った演出・絵作り
猫でも分かるUE4のポストプロセスを使った演出・絵作り
エピック・ゲームズ・ジャパン Epic Games Japan
Nintendo Switch『OCTOPATH TRAVELER』はこうして作られた
Nintendo Switch『OCTOPATH TRAVELER』はこうして作られた
エピック・ゲームズ・ジャパン Epic Games Japan
UE4 アセットロード周り-アセット参照調査-
UE4 アセットロード周り-アセット参照調査-
com044
バイキング流UE4活用術 ~BPとお別れするまでの18ヶ月~
バイキング流UE4活用術 ~BPとお別れするまでの18ヶ月~
エピック・ゲームズ・ジャパン Epic Games Japan
UE4のライティング解体新書~効果的なNPRのためにライティングの仕組みを理解しよう~
UE4のライティング解体新書~効果的なNPRのためにライティングの仕組みを理解しよう~
エピック・ゲームズ・ジャパン Epic Games Japan
そう、UE4ならね。あなたのモバイルゲームをより快適にする沢山の冴えたやり方について Part 2 <Texture Streaming, メモリプロ...
そう、UE4ならね。あなたのモバイルゲームをより快適にする沢山の冴えたやり方について Part 2 <Texture Streaming, メモリプロ...
エピック・ゲームズ・ジャパン Epic Games Japan
UE4でTranslucencyやUnlitに影を落としたい!
UE4でTranslucencyやUnlitに影を落としたい!
com044
猫でも分かるUMG
猫でも分かるUMG
エピック・ゲームズ・ジャパン Epic Games Japan
60fpsアクションを実現する秘訣を伝授 解析編
60fpsアクションを実現する秘訣を伝授 解析編
エピック・ゲームズ・ジャパン Epic Games Japan
UE4のためのより良いゲーム設計を理解しよう!
UE4のためのより良いゲーム設計を理解しよう!
Masahiko Nakamura
UE4のレイトレで出来ること/出来ないこと
UE4のレイトレで出来ること/出来ないこと
Satoshi Kodaira
[CEDEC2018] UE4で多数のキャラクターを生かすためのテクニック
[CEDEC2018] UE4で多数のキャラクターを生かすためのテクニック
エピック・ゲームズ・ジャパン Epic Games Japan
[CEDEC2018] UE4アニメーションシステム総おさらい
[CEDEC2018] UE4アニメーションシステム総おさらい
エピック・ゲームズ・ジャパン Epic Games Japan
[CEDEC2017] UE4プロファイリングツール総おさらい(グラフィクス編)
[CEDEC2017] UE4プロファイリングツール総おさらい(グラフィクス編)
エピック・ゲームズ・ジャパン Epic Games Japan
聖剣伝説3でのUE4利用事例の紹介~Making of Mana | UNREAL FEST EXTREME 2020 WINTER
聖剣伝説3でのUE4利用事例の紹介~Making of Mana | UNREAL FEST EXTREME 2020 WINTER
エピック・ゲームズ・ジャパン Epic Games Japan
UE4 LODs for Optimization -Beginner-
UE4 LODs for Optimization -Beginner-
com044
大規模タイトルにおけるエフェクトマテリアル運用 (SQEX大阪: 林武尊様) #UE4DD
大規模タイトルにおけるエフェクトマテリアル運用 (SQEX大阪: 林武尊様) #UE4DD
エピック・ゲームズ・ジャパン Epic Games Japan
UE5制作事例 “The Market of Light” ~Nanite/Lumenへの挑戦~
UE5制作事例 “The Market of Light” ~Nanite/Lumenへの挑戦~
historia_Inc
UE4 MultiPlayer Online Deep Dive: 実践編1 (Byking様ご講演) #UE4DD
UE4 MultiPlayer Online Deep Dive: 実践編1 (Byking様ご講演) #UE4DD
エピック・ゲームズ・ジャパン Epic Games Japan
CEDEC2016: Unreal Engine 4 のレンダリングフロー総おさらい
CEDEC2016: Unreal Engine 4 のレンダリングフロー総おさらい
エピック・ゲームズ・ジャパン Epic Games Japan
What's hot
(20)
猫でも分かるUE4のポストプロセスを使った演出・絵作り
猫でも分かるUE4のポストプロセスを使った演出・絵作り
Nintendo Switch『OCTOPATH TRAVELER』はこうして作られた
Nintendo Switch『OCTOPATH TRAVELER』はこうして作られた
UE4 アセットロード周り-アセット参照調査-
UE4 アセットロード周り-アセット参照調査-
バイキング流UE4活用術 ~BPとお別れするまでの18ヶ月~
バイキング流UE4活用術 ~BPとお別れするまでの18ヶ月~
UE4のライティング解体新書~効果的なNPRのためにライティングの仕組みを理解しよう~
UE4のライティング解体新書~効果的なNPRのためにライティングの仕組みを理解しよう~
そう、UE4ならね。あなたのモバイルゲームをより快適にする沢山の冴えたやり方について Part 2 <Texture Streaming, メモリプロ...
そう、UE4ならね。あなたのモバイルゲームをより快適にする沢山の冴えたやり方について Part 2 <Texture Streaming, メモリプロ...
UE4でTranslucencyやUnlitに影を落としたい!
UE4でTranslucencyやUnlitに影を落としたい!
猫でも分かるUMG
猫でも分かるUMG
60fpsアクションを実現する秘訣を伝授 解析編
60fpsアクションを実現する秘訣を伝授 解析編
UE4のためのより良いゲーム設計を理解しよう!
UE4のためのより良いゲーム設計を理解しよう!
UE4のレイトレで出来ること/出来ないこと
UE4のレイトレで出来ること/出来ないこと
[CEDEC2018] UE4で多数のキャラクターを生かすためのテクニック
[CEDEC2018] UE4で多数のキャラクターを生かすためのテクニック
[CEDEC2018] UE4アニメーションシステム総おさらい
[CEDEC2018] UE4アニメーションシステム総おさらい
[CEDEC2017] UE4プロファイリングツール総おさらい(グラフィクス編)
[CEDEC2017] UE4プロファイリングツール総おさらい(グラフィクス編)
聖剣伝説3でのUE4利用事例の紹介~Making of Mana | UNREAL FEST EXTREME 2020 WINTER
聖剣伝説3でのUE4利用事例の紹介~Making of Mana | UNREAL FEST EXTREME 2020 WINTER
UE4 LODs for Optimization -Beginner-
UE4 LODs for Optimization -Beginner-
大規模タイトルにおけるエフェクトマテリアル運用 (SQEX大阪: 林武尊様) #UE4DD
大規模タイトルにおけるエフェクトマテリアル運用 (SQEX大阪: 林武尊様) #UE4DD
UE5制作事例 “The Market of Light” ~Nanite/Lumenへの挑戦~
UE5制作事例 “The Market of Light” ~Nanite/Lumenへの挑戦~
UE4 MultiPlayer Online Deep Dive: 実践編1 (Byking様ご講演) #UE4DD
UE4 MultiPlayer Online Deep Dive: 実践編1 (Byking様ご講演) #UE4DD
CEDEC2016: Unreal Engine 4 のレンダリングフロー総おさらい
CEDEC2016: Unreal Engine 4 のレンダリングフロー総おさらい
Similar to UE4におけるキャラクタークラス設計
絵心がなくてもわかるUE4絵作りのコツ
絵心がなくてもわかるUE4絵作りのコツ
Masahiko Nakamura
研修におけるアナログゲーム活用
研修におけるアナログゲーム活用
Yasuhide Ishigami
UE4で”MetaHumanを使わずに”耳なし芳一になる10の方法 | UE4 Character Art Dive Online
UE4で”MetaHumanを使わずに”耳なし芳一になる10の方法 | UE4 Character Art Dive Online
エピック・ゲームズ・ジャパン Epic Games Japan
はじめてのAI~ 愛のあるAIを作ろう
はじめてのAI~ 愛のあるAIを作ろう
Masahiko Nakamura
DiGRAJ-GD 12/04/2011 大野 功二
DiGRAJ-GD 12/04/2011 大野 功二
Kenneth Chan
Nakagawa 20120107
Nakagawa 20120107
nextedujimu
Unity勉強会 / ライトニングトーク - ゲーム開発書籍紹介
Unity勉強会 / ライトニングトーク - ゲーム開発書籍紹介
Ryo Yamamoto
Weekend Androidのススメ
Weekend Androidのススメ
Suzuki Junko
プログラミングの型や定石の紹介
プログラミングの型や定石の紹介
keitasudo1
ノベルゲーム動的演出の考え方
ノベルゲーム動的演出の考え方
tuna cook
TTPSゲームstep1
TTPSゲームstep1
Toshikazu Suzuki
Powerofgame140902koukai
Powerofgame140902koukai
Yoshihiro Kishimoto
BPSttudy#84 アイデアをカタチにする方法
BPSttudy#84 アイデアをカタチにする方法
Haruo Sato
【Drop wave】cedec2012『オンラインゲーム時代における、 ゲーム内コミュニケーション設計の基礎知識』
【Drop wave】cedec2012『オンラインゲーム時代における、 ゲーム内コミュニケーション設計の基礎知識』
モノビット エンジン
やりたいことをプロダクトにねじ込む技術とねじ込んだ結果
やりたいことをプロダクトにねじ込む技術とねじ込んだ結果
KayoMiyata
20210521「シリアスゲームデザイン」第5回スライド
20210521「シリアスゲームデザイン」第5回スライド
Yasuhide Ishigami
Similar to UE4におけるキャラクタークラス設計
(16)
絵心がなくてもわかるUE4絵作りのコツ
絵心がなくてもわかるUE4絵作りのコツ
研修におけるアナログゲーム活用
研修におけるアナログゲーム活用
UE4で”MetaHumanを使わずに”耳なし芳一になる10の方法 | UE4 Character Art Dive Online
UE4で”MetaHumanを使わずに”耳なし芳一になる10の方法 | UE4 Character Art Dive Online
はじめてのAI~ 愛のあるAIを作ろう
はじめてのAI~ 愛のあるAIを作ろう
DiGRAJ-GD 12/04/2011 大野 功二
DiGRAJ-GD 12/04/2011 大野 功二
Nakagawa 20120107
Nakagawa 20120107
Unity勉強会 / ライトニングトーク - ゲーム開発書籍紹介
Unity勉強会 / ライトニングトーク - ゲーム開発書籍紹介
Weekend Androidのススメ
Weekend Androidのススメ
プログラミングの型や定石の紹介
プログラミングの型や定石の紹介
ノベルゲーム動的演出の考え方
ノベルゲーム動的演出の考え方
TTPSゲームstep1
TTPSゲームstep1
Powerofgame140902koukai
Powerofgame140902koukai
BPSttudy#84 アイデアをカタチにする方法
BPSttudy#84 アイデアをカタチにする方法
【Drop wave】cedec2012『オンラインゲーム時代における、 ゲーム内コミュニケーション設計の基礎知識』
【Drop wave】cedec2012『オンラインゲーム時代における、 ゲーム内コミュニケーション設計の基礎知識』
やりたいことをプロダクトにねじ込む技術とねじ込んだ結果
やりたいことをプロダクトにねじ込む技術とねじ込んだ結果
20210521「シリアスゲームデザイン」第5回スライド
20210521「シリアスゲームデザイン」第5回スライド
More from Masahiko Nakamura
UE4のコンポジット機能をもっと深く使ってみた
UE4のコンポジット機能をもっと深く使ってみた
Masahiko Nakamura
映像制作者向け UE4で作る映像制作ワークショップ
映像制作者向け UE4で作る映像制作ワークショップ
Masahiko Nakamura
UE4の攻略方法を伝授! より効率よく楽しく学ぶ ための鉄則について
UE4の攻略方法を伝授! より効率よく楽しく学ぶ ための鉄則について
Masahiko Nakamura
ゲームエンジンを活用して同人ゲームを完成させるノウハウについて
ゲームエンジンを活用して同人ゲームを完成させるノウハウについて
Masahiko Nakamura
UE4でパノラマVRをやってみよう
UE4でパノラマVRをやってみよう
Masahiko Nakamura
モバイルゲームにもっとクオリティを!UE4を使ったハイクオリティなモバイルゲーム制作について
モバイルゲームにもっとクオリティを!UE4を使ったハイクオリティなモバイルゲーム制作について
Masahiko Nakamura
GGJ2017 事前勉強会 UE4編
GGJ2017 事前勉強会 UE4編
Masahiko Nakamura
拳と筋肉とバーチャリアリズム
拳と筋肉とバーチャリアリズム
Masahiko Nakamura
ブループリントマニアックス
ブループリントマニアックス
Masahiko Nakamura
UE4映像制作ハンズオン@大阪
UE4映像制作ハンズオン@大阪
Masahiko Nakamura
Unreal engine 4でのリアルタイムセルルック3DCGアニメーション
Unreal engine 4でのリアルタイムセルルック3DCGアニメーション
Masahiko Nakamura
ブループリント+ビジュアルスクリプトと仲良くやる方法
ブループリント+ビジュアルスクリプトと仲良くやる方法
Masahiko Nakamura
ゲームジャムでのチーム制作における大事なこと
ゲームジャムでのチーム制作における大事なこと
Masahiko Nakamura
Bullet TrainとOculus Touchの衝撃
Bullet TrainとOculus Touchの衝撃
Masahiko Nakamura
C++コードはいらない!UE4で作るお手軽マルチプレイネットワークゲームについて
C++コードはいらない!UE4で作るお手軽マルチプレイネットワークゲームについて
Masahiko Nakamura
UE4とUnrealC++について
UE4とUnrealC++について
Masahiko Nakamura
第1回UE4名古屋勉強会
第1回UE4名古屋勉強会
Masahiko Nakamura
第5回ue4ハンズオンセミナー
第5回ue4ハンズオンセミナー
Masahiko Nakamura
Powerful of blueprint visual scripting
Powerful of blueprint visual scripting
Masahiko Nakamura
Unity5とUE4の比較
Unity5とUE4の比較
Masahiko Nakamura
More from Masahiko Nakamura
(20)
UE4のコンポジット機能をもっと深く使ってみた
UE4のコンポジット機能をもっと深く使ってみた
映像制作者向け UE4で作る映像制作ワークショップ
映像制作者向け UE4で作る映像制作ワークショップ
UE4の攻略方法を伝授! より効率よく楽しく学ぶ ための鉄則について
UE4の攻略方法を伝授! より効率よく楽しく学ぶ ための鉄則について
ゲームエンジンを活用して同人ゲームを完成させるノウハウについて
ゲームエンジンを活用して同人ゲームを完成させるノウハウについて
UE4でパノラマVRをやってみよう
UE4でパノラマVRをやってみよう
モバイルゲームにもっとクオリティを!UE4を使ったハイクオリティなモバイルゲーム制作について
モバイルゲームにもっとクオリティを!UE4を使ったハイクオリティなモバイルゲーム制作について
GGJ2017 事前勉強会 UE4編
GGJ2017 事前勉強会 UE4編
拳と筋肉とバーチャリアリズム
拳と筋肉とバーチャリアリズム
ブループリントマニアックス
ブループリントマニアックス
UE4映像制作ハンズオン@大阪
UE4映像制作ハンズオン@大阪
Unreal engine 4でのリアルタイムセルルック3DCGアニメーション
Unreal engine 4でのリアルタイムセルルック3DCGアニメーション
ブループリント+ビジュアルスクリプトと仲良くやる方法
ブループリント+ビジュアルスクリプトと仲良くやる方法
ゲームジャムでのチーム制作における大事なこと
ゲームジャムでのチーム制作における大事なこと
Bullet TrainとOculus Touchの衝撃
Bullet TrainとOculus Touchの衝撃
C++コードはいらない!UE4で作るお手軽マルチプレイネットワークゲームについて
C++コードはいらない!UE4で作るお手軽マルチプレイネットワークゲームについて
UE4とUnrealC++について
UE4とUnrealC++について
第1回UE4名古屋勉強会
第1回UE4名古屋勉強会
第5回ue4ハンズオンセミナー
第5回ue4ハンズオンセミナー
Powerful of blueprint visual scripting
Powerful of blueprint visual scripting
Unity5とUE4の比較
Unity5とUE4の比較
UE4におけるキャラクタークラス設計
1.
UE4におけるキャラクタークラス設計 Indie-us Games 代表&クリエイター alwei
2.
自己紹介 株式会社Indie-us Games代表取締役 名前 :
alwei Twitter : @aizen76 Unreal Engine 4 専門会社 関西でUE4をやりたい人を絶賛募集中!
3.
今回プログラマー向けというわけで…
4.
いつもより少しだけ難しめの話をします٩( ‘ω’ )و
5.
基本的なオブジェクト指向の理解が あると恐らくスムーズに理解できるハズ
6.
テーマ『キャラクタークラス設計』
7.
今作ってるゲーム 趣味で個人開発しているTPSのゲームを参考に。 個人で開発中のゲーム 『Blue Gunner』 今年中に完成… 出来たらいいな……
8.
一般的なオブジェクト指向の3原則 ・継承 ・多態性 ・カプセル化
9.
一般的なオブジェクト指向の3原則 ・継承 ・多態性 ・カプセル化 ← 本質的に重要なのはここ
10.
一体なぜ…? 継承と多態性は、UE4を使っていると 何も考えなくともほぼ確実に利用しています。 ブループリントのアクターは常に継承。 関数はあらゆるところでオーバーライドされています。
11.
カプセル化って? 意外なくらい理解していない人が多い。 むしろこれこそがオブジェクト指向の本質。 以下のURLの説明はとても参考になります。 オブジェクト指向と10年戦ってわかったこと https://qiita.com/tutinoco/items/6952b01e5fc38914ec4e
12.
現実世界でのカプセル化 私達が普段使っているUSB(Universal Serial Bus)は 最もわかりやすいカプセル化の例です。 様々な機器に挿すだけで自動的に機能が呼び出されます。 これは『挿す』という関数をUSBというインターフェースを 使って呼び出したということになります。
13.
相手のことはよく知らない カプセル化は必要以上に相手のことを知る必要はありません。 制限されたインターフェースを使うことで、 お互いのことを知らないままでも機能を使うことが出来ます。 これがUE4においても非常に重要になってきます。
14.
なぜ重要? UE4で作ったプロジェクトは常に大規模になりやすい。 カプセル化を常に意識して作らなければ、 ブループリントやC++でも参照関係が複雑となり、 読み込みが遅くなったり、不安定なバグを生み出す原因に。 特に商業ゲームではこれを意識しないと開発後半で泣く。
15.
UE4におけるカプセル化
16.
インターフェースシステム UE4ではインターフェースを使った、 オブジェクト間の依存を持たせない仕組みが存在。 『ブループリント インターフェース』 https://docs.unrealengine.com/latest/JPN/Engine/Blueprints/ UserGuide/Types/Interface/index.html 『インターフェース(C++)』 https://docs.unrealengine.com/latest/JPN/Programming/Unre alArchitecture/Reference/Interfaces/index.html
17.
インターフェースシステム インターフェースを使うとお互いの情報を完全に隠蔽し、 依存関係を持たないまま、相手の機能を呼び出せます。 パソコンはマウスの事を知らないが、 マウスの機能を使う事が出来る。 USBインターフェース
18.
UE4で実際に使うと… キャラクターブループリント側から アニメーションブループリントヘインターフェースで呼び出し キャラクターブループリント BPインターフェース アニメーションブループリント
19.
外部とのやりとりの隠蔽 外とのやりとりは基本的にインターフェースを経由 Character BP Anim BP Weapon BP Enemy Inventory BP
20.
依存関係のチェック リファレンスビューワーを使うと依存関係がわかります。 アセットを右クリックして開く。
21.
依存関係には常に注意 何が問題になる? ・アセット依存による読み込み時間の増大 ・依存BP(C++)の増大によるコンパイル時間の増大 ・不要な依存や一部破損によるクラッシュ率の増大 ・不要アセットがパッケージされてデータ容量の増大 ・ソースコントロール上で不要なチェックアウトの発生 etc..
22.
大規模な開発ほど注意が必要 よくやっちゃうけどCastとかもあまりよくない…
23.
継承 vs 包含
24.
オブジェクト指向で良くある論議 継承(is-a)すべき?包含(has-a)しておく? 継承は便利で使いやすい。 コード(ノード)も少なくなる。 ついつい継承を使ってしまう人も多いですが。
25.
オブジェクト指向で良くある論議 一般論で言えば包含(合成)の方が都合が良いと言われます。 『クラスの「継承」より「合成」がよい理由とは? ゲーム開発におけるコードのフレキシビリティと可読性の向上』 http://postd.cc/why-composition-is-often-better-than-inheritance/ では包含でいいのでは?
26.
UE4で包含させる
27.
コンポーネントを使う UE4には多才なコンポーネント があります。 これらをアクターに追加する事 で簡単に包含を実現可能。 明確に機能を分離する。
28.
では継承は悪なのか? これもよく言われますが、継承を使うことで オブジェクトの多態性などが実現できます。 ただしなんでもかんでも継承するのはよくない。
29.
なんでもかんでもコンポーネント これはこれでマズい!! コンポーネントを追加するという事は アクターを1つ追加するという事と 実はあまり大差がなかったりする。
30.
コンポーネントの問題 Epic Games Japan
岡田さんの過去スライドより https://www.slideshare.net/EpicGamesJapan/robo-recallvr
31.
コンポーネントの問題 Epic Games Japan
岡田さんの過去スライドより https://www.slideshare.net/EpicGamesJapan/robo-recallvr
32.
コンポーネントコスト コンポーネントを増やすという事は、 それだけ高いコストをし払うという事。 特に大量に出現するようなアクターでの コンポーネントは最低限にしましょう。
33.
ケースバイケース
34.
どう使いわけるか? ■ 継承が有利に働くケース ・大量に出現するキャラの共通処理を作る ・継承クラスでの多態性を実現したい時 ・クラスの親子関係を持ちたい場合
35.
どう使いわけるか? ■ 包含が有利に働くケース ・クラス機能を明確に分割可能な時 ・多種多様なクラスで汎用処理を使いたい ・複雑な依存性を作りたくない
36.
クラス設計って大変… ┐(-。-;)┌
37.
AIキャラクタークラス
38.
AIキャラクタークラス プレイヤーキャラクタークラスよりも 圧倒的に数が多いのが、このAIキャラクタークラス。 敵だけではなく、 汎用NPCでも同様。
39.
AIについて 過去に登壇した時に使ったこのスライドが UE4のAIについて簡潔にまとめているのでおすすめ。 『はじめてのAI~ 愛のあるAIを作ろう』 https://www.slideshare.net/masahikonakamura50/ai-ai-62023284
40.
AIについて ろっさむさんが書かれた、こちらの記事もおすすめ! 『【UE4】味方AIの作り方!AIとは何かを学びながら、 ブループリントで味方キャラクターを実装しよう』 https://qiita.com/4_mio_11/items/9e8af2ce82ee2a7625b5
41.
AI概略図(抜粋)
42.
やくわり分担 ・Characterクラス(見た目&コリジョン担当) ・Animationクラス(アニメーション担当) ・AI Controllerクラス(AI制御担当) ・Behavior Tree(AIフロー担当) ・Behavior
Treeタスク(AIロジック担当) ・Blackboard(AIデータベース担当) ・AI Components(AI共通コンポーネント担当)
43.
クラス基礎設計 クラス基盤部分は多くの場合、共通なことが多い。 設計段階で共通部分を抜きだす。 ・プロパティ部分(Health, Speedなど) ・メソッド部分(Init, Action,
Moveなど)
44.
クラス基礎設計 AIの場合、他にも共通部分が多々ある。 ・AI Controller ・Behavior Tree ・Blackboard
45.
汎用タスクを作る UE4でAIを作る上で最も効率的に 使い回しやすいのが、ビヘイビアツリータスク。
46.
汎用タスクを作る時のポイント 基盤部分のクラスメンバー以外は使わない。 一方的にビヘイビアツリーから参照されるのみにする。
47.
汎用タスクを作る時のポイント もしクラス固有機能が使いたければ、 必ずインターフェースを経由する。 依存性さえなければ、そのタスクはあらゆる部分で 使いまわすことが可能となり、バグも発生しない。
48.
やりすぎない なんでもかんでも汎用化すればいい というものでもないということを念頭に置く。 使い勝手の悪いクラスやコンポーネントを用意しても 最後まで使わないという事は多々あります。
49.
複雑過ぎる処理 ボスキャラクターなど複雑でスペシャルな処理が 必要なキャラクターは特に汎用化が難しい。 そういう時は汎用化の方が 面倒なので専用タスクにしましょう!
50.
イベントドリブン設計
51.
イベントドリブン設計 UE4のAIシステムはイベントドリブン(駆動)で 動かせるように最初から設計されています。 イベントが発生するまでは何も処理させない。 イベントが来て始めてAIは行動する。
52.
Tickを使わない みんな大好きEvent Tick 。 厳密に言えばこいつもイベントですが、 CPU負荷が簡単に高くなってしまいがちだったり、 複雑な設計の場合には、処理がすぐ煩雑になる。
53.
Behavior Treeはイベントドリブン Behavior Treeはタスク、デコレーター、サービスといった ノードを使う事で、イベントドリブンに処理されます。 イベントドリブンに処理する事によって、 CPU処理負荷は最低限のものに。 サービスの場合は呼び出しインターバルを 秒単位で設定する事も出来ます。
54.
AIのイベント AI Perception Componentを使うと、 AIのためのイベントを沢山取得できるようになる。 ・視覚(発見時や消失時) ・聴覚(音発生や寿命) ・痛覚や位置予測なども
55.
AIのイベント AI Perception Componentの素晴らしき記事。 『【UE4】AI
Perception の紹介と使い方』 https://qiita.com/Dv7Pavilion/items/741402f4da609ec595a2 『【UE4】AI Perception の紹介と使い方 その2』 https://qiita.com/Dv7Pavilion/items/2984f2b03711492aa451
56.
まとめ
57.
キャラクタークラス設計まとめ ・インターフェースでカプセル化しよう ・継承と包含はケースバイケースで使いわけよう ・AIクラスは汎用化してタスクなどを上手く分けよう ・イベントドリブンで設計しよう
Download now