Compare commits
2 Commits
3315add048
...
03bc0a4668
Author | SHA1 | Date | |
---|---|---|---|
03bc0a4668 | |||
25237030df |
@ -16,8 +16,10 @@
|
||||
* [アニメーションを作成する](gas/07_anim.md)
|
||||
* [control rig sample](crs/README.md)
|
||||
* [CRでキャラクターを動かす](crs/01_character.md)
|
||||
* [ボスを作る](crs/02_boss.md)
|
||||
* [city sample](city/README.md)
|
||||
* [惑星形式のmapを作る](city/01_remove.md)
|
||||
* [橋を作る](city/02_bridge.md)
|
||||
* [json blueprint utilities](json/README.md)
|
||||
* [apiから情報を取得する](json/01_varest.md)
|
||||
* [pixel streaming](pixel/README.md)
|
||||
@ -26,4 +28,5 @@
|
||||
* [superhero fligth animations](plan/01_flying.md)
|
||||
* [ultra dynamic sky](plan/02_uds.md)
|
||||
* [ocean waves](plan/03_ocean.md)
|
||||
* [nice interaction system](plan/04_item.md)
|
||||
* [end](end/README.md)
|
||||
|
@ -12,6 +12,8 @@ game engineのmapは基本的に平面で作られています。どこまで行
|
||||
|
||||
## ocean wavesで惑星の海を作る
|
||||
|
||||
[ocean waves](https://www.unrealengine.com/marketplace/ja/product/ocean-waves)
|
||||
|
||||
必要なものを`/Content/OceanWaves/Levels/EarthSizedOceanPlanet`からcopyして持ってきましょう。
|
||||
|
||||
- `BP_EarthSizedSphericalMesh`
|
||||
@ -26,6 +28,8 @@ game engineのmapは基本的に平面で作られています。どこまで行
|
||||
|
||||
## ultra dynamic skyで天候と惑星を作る
|
||||
|
||||
[ultra dynamic sky](https://docs.google.com/document/d/1xAr0Hd3mY7Mp0g0waKLUvJaddUPaVxEeRoEEFXctCE0/)
|
||||
|
||||
1. `/Content/UltraDynamicSky/Blueprints/Ultra_Dynamic_Sky`を開きます。
|
||||
2. そこに地球と月と太陽のBPを入れます。各自が用意してください。なお、地球は`SkyAtmosphere`の下に置いてください。
|
||||
> 名前は 地球(BP_Earth), 月(BP_Moon), 太陽(BP_Sun) としておきます。
|
||||
|
9
book/city/02_bridge.md
Normal file
9
book/city/02_bridge.md
Normal file
@ -0,0 +1,9 @@
|
||||
# 橋を作る
|
||||
|
||||
[automotive bridge scene](https://www.fab.com/ja/listings/a472df9d-9179-4743-8d41-335f9ef55546)
|
||||
|
||||
1. `/Content/AutomotiveBridgeScene/Blueprints/BP_CurvedBridge`, `BP_StraightBridge`を開きます。これをつなぎ合わせていくことで橋を作ります。
|
||||
2. Lampが動きませんので、選択した上で`Static Mesh`を`city sample`に入っている`/Content/Prop/Kit_StreetLamp_C/Mesh/streetLampC`と入れ替えます。
|
||||
3. 私はベンチのところを`traversable(トラバーサブル)`するためにGASの`/Content/LevelPrototyping/LevelBlock_Traversable`を入れています。Base Materialを`/Content/Characters/Echo/Materials/M_hide`にして透明にします。
|
||||
|
||||

|
@ -2,3 +2,4 @@
|
||||
|
||||
[city sample](https://www.unrealengine.com/marketplace/ja/product/city-sample)
|
||||
|
||||
ニューヨーク(NY)をモデルに都市が作られています。人と自動車が動いています。自動車は乗ることや破壊することができます。
|
||||
|
91
book/crs/02_boss.md
Normal file
91
book/crs/02_boss.md
Normal file
@ -0,0 +1,91 @@
|
||||
# ボスを作る
|
||||
|
||||
敵(enemy)やボス(boss)には必要なものが多いです。動きや攻撃パターン、エフェクト、ステータスやドロップアイテム、ゲージ表示、BGMなどが必要になります。場合によっては演出も必要です。
|
||||
|
||||
<iframe width="100%" height="415" src="https://www.youtube.com/embed/BsLOlAr-wBY?si=jahPUVD8YMMfefvm&start=20&end=50&mute=1&rel=0&showinfo=0&controls=0" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
|
||||
|
||||
bossは`/Content/ControlRig/Characters/Mech`を元に作ります。
|
||||
|
||||
## 注意
|
||||
|
||||
ここからはbattle systemのassetを購入したほうがいいかもしれません。できれば評価が高くsale中のものを選びましょう。ほとんどこれ一つでゲームが作れてしまうので、多くの開発者はこのジャンルのassetを改造してゲームを作っています。スタイリッシュアクションの動きを見るとわかります。
|
||||
|
||||
https://www.fab.com/category/game-template/rpg
|
||||
|
||||
## 動きを作る
|
||||
|
||||
まずABPを作成し、基本的なAnimGraphを作成します。
|
||||
|
||||
projectにはsampleのABPがあるはずですからAnimGraphに`idle`, `jump`, `run`などが揃っているをcopyします。
|
||||
|
||||
[](../img/0004.png)
|
||||
|
||||
ここでは`AnimGraph -> Locomotion -> Idle`を編集します。
|
||||
|
||||
動きはABPの`Look At`が使えます。boneを指定するとPlayerに追従します。
|
||||
|
||||
`[Mech_Idle] --> [Look At](Bone to Modify:cannon_01) --> Output Animation Pose`
|
||||
|
||||
[](../img/0006.png)
|
||||
|
||||
## 攻撃を作る
|
||||
|
||||
私は最初に購入したassetの[space frontier stations & ships](https://docs.google.com/document/d/1p5MY13cpTlVtqP7sCQpAoE_k5VHklmndZ4cHeBy105Y/edit?tab=t.0#heading=h.nx19nrsdk37u)を使いました。なお、購入はおすすめしません。長いので以降は`space station`とします。
|
||||
|
||||
ここからはassetの解説になります。しかし、基本的な考え方については変わりません。まずは考え方を紹介します。
|
||||
|
||||
1. ターゲットをロック
|
||||
2. ダメージ処理
|
||||
|
||||
ターゲット(target)をロック(lock)できるようなシステムは大抵、攻撃頻度やダメージ、コリジョンなど基本設定ができるようになっています。`epic games`が提供するassetや無料のassetでも同じです。そういった物を見つけてbossのBPに組み込みます。
|
||||
|
||||
ただし、ダメージ処理、例えば、HP管理や倒した倒された処理は自分で書く必要があるかもしれません。
|
||||
|
||||
### 最初に触ったassetが影響を与える
|
||||
|
||||
ここからは少し昔の話をします。基本的には読み飛ばしてください。
|
||||
|
||||
ueで最初に始めたのがこのasset(space ship)を使ったゲーム作りでした。当時は何もわからずに手探りで自分のモデルを表示して遊んでいました。宇宙空間に自分のモデルを表示したときは本当に嬉しくて感動でした。
|
||||
|
||||
当時は`superhero flight animations`という空を飛ぶためassetも購入して同時に使っていましたが、今でもその影響は残っています。
|
||||
|
||||
その人のゲーム作りは最初に触ったassetが強く影響を与えるのだと思います。
|
||||
|
||||
### space stationの基本構造
|
||||
|
||||
1. `/Content/SpaceStation/Blueprints/Weapons`で各武器のタイプを選べます。ここでは`BP_TurretGatling`を開きます。
|
||||
2. `/Content/SpaceStation/Blueprints/Weapons/BP_TurretGatling(Self)`の詳細から`Weapon -> Shooting Delay:1`にして`Turret -> Turret Aiming Speed:150`にします。これは発射速度とターゲットに合わせる速度の設定です。
|
||||
3. `/Content/SpaceStation/Blueprints/Weapons/Parent/DT_WeaponTypes`を開きます。ここで弾丸の音(sound)やエフェクト(effect)を設定します。
|
||||
4. 最後に`/Content/Blueprints/CBP_SandboxCharacter(Self)`の詳細で`actor(アクタ) -> Tags[0] -> Allow Shooting`を追加します。これでPlayerがターゲットにロックされるようになります。なお、`Tags[1] -> ShootingTarget`を追加するとPlayerから銃撃できます。こちらは使いません。
|
||||
5. あとは`/Content/SpaceStation/Blueprints/Weapons/BP_TurretGatling`をmapに置いてください。
|
||||
|
||||
### ダメージ処理
|
||||
|
||||
damage(ダメージ)の処理を書きます。
|
||||
|
||||
`/Content/Blueprints/CBP_SandboxCharacter`で`Event Any Damage`を追加します。これでdamageを受けますが、hpを用意してそれが0になったときゲームオーバー(gameover)する処理を書いたりします。
|
||||
|
||||
<iframe src="https://blueprintue.com/render/xbwy4u36/1" scrolling="no" allowfullscreen style="width:100%;height:400px"></iframe>
|
||||
|
||||
これはGame Ability System(GAS)を使うと便利です。
|
||||
|
||||
https://dev.epicgames.com/documentation/ja-jp/unreal-engine/gameplay-ability-system-for-unreal-engine
|
||||
|
||||
## HPゲージの表示
|
||||
|
||||
`widget`で`ProgressBar`を作ります。まず`BP_Mech`にbox collisionを入れて、そこに入ると`boss active`になります。`true`ならwidgetを表示する仕組みです。
|
||||
|
||||
ProgressBarは`0.0 -> 1.0`なので注意してください。`HP_Current`から`HP_Max`を割り算します。
|
||||
|
||||
<iframe src="https://blueprintue.com/render/xbwy4u36/2" scrolling="no" allowfullscreen style="width:100%;height:400px"></iframe>
|
||||
|
||||
## 撃破処理
|
||||
|
||||
bossを撃破するまでの処理を書きます。
|
||||
|
||||
damageを受けて0になると消滅し、ドロップアイテムを落とします。消滅時はniagaraでeffectを再生します。damageを受けたときも同じです。
|
||||
|
||||
ドロップアイテムは`nice interaction system`というassetを使用しています。これは`E`を押すとアイテム(item)が取得できるものです。
|
||||
|
||||
<iframe src="https://blueprintue.com/render/xbwy4u36/3" scrolling="no" allowfullscreen style="width:100%;height:400px"></iframe>
|
||||
|
@ -2,3 +2,5 @@
|
||||
|
||||
[control rig sample](https://www.fab.com/ja/listings/2ce3fe44-9ee6-4fa7-99fc-b9424a402386)
|
||||
|
||||
`control rig sample`では人間以外のcharacterを動かすことができます。
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
ゲームは無料のassetだけでも作れます。しかし、時間やクオリティを向上させたい場合は有料のassetを使いましょう。
|
||||
|
||||
本書の一部では有料assetの使い方を解説します。
|
||||
本書の一部では有料assetの使い方を解説します。[sale](https://www.fab.com/ja/channels/unreal-engine?ui_filter_price=1&ui_filter_is_discounted=1&is_discounted=1)中のものを探しましょう。
|
||||
|
||||
## asset
|
||||
|
||||
@ -31,6 +31,7 @@
|
||||
|[superhero flight animations](https://www.fab.com/ja/listings/41185c19-5191-4153-8293-8cc9901efa95)|20241217|空を飛ぶ|
|
||||
|[ultra dynamic sky](https://docs.google.com/document/d/1xAr0Hd3mY7Mp0g0waKLUvJaddUPaVxEeRoEEFXctCE0/)|20250203|空や天候を自動化|
|
||||
|[ocean waves](https://www.unrealengine.com/marketplace/ja/product/ocean-waves)|20240923|惑星の海を作る|
|
||||
|[nice interaction system](https://www.fab.com/ja/listings/63b61e4a-dc11-4ee0-a6b1-f4860bd29198)|20250206|アイテムを取得する|
|
||||
|[magicalanimset](https://www.fab.com/ja/listings/a63386b8-7cad-42cd-8b81-a9de147e1f08)|20241222|少女の戦闘アニメーション|
|
||||
|
||||
## link
|
||||
|
@ -1,11 +1,16 @@
|
||||
# アニメーションを作成適用する
|
||||
# アニメーションを作成する
|
||||
|
||||
control rigからも作成できます。しかし、購入したものを使うのが一番です。
|
||||
|
||||
[magicalanimset](https://www.fab.com/ja/listings/a63386b8-7cad-42cd-8b81-a9de147e1f08)
|
||||
|
||||
無料でやるなら`.fbx`, `.vrma`などから作成します。
|
||||
|
||||
- https://www.mixamo.com/
|
||||
- https://booth.pm/ja/items/5512385
|
||||
- https://github.com/BandaiNamcoResearchInc/Bandai-Namco-Research-Motiondataset
|
||||
|
||||
## control rigから作る
|
||||
|
||||
再生して録画ボタンを押すと作れます。
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
[G]ame [A]nimation [S]ampleでGASと略すことがあります。
|
||||
|
||||
なお、[G]ame [A]birity [S]ystemもGASなので紛らわしいです。
|
||||
なお、[G]ame [A]bility [S]ystemもGASなので紛らわしいです。
|
||||
|
||||
まずはこれを使ってキャラクター(character)を動かしてみましょう。
|
||||
|
||||
|
BIN
book/img/0003.png
Normal file
BIN
book/img/0003.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 960 KiB |
BIN
book/img/0004.png
Normal file
BIN
book/img/0004.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 415 KiB |
BIN
book/img/0005.png
Normal file
BIN
book/img/0005.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 498 KiB |
BIN
book/img/0006.png
Normal file
BIN
book/img/0006.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 68 KiB |
@ -2,3 +2,4 @@
|
||||
|
||||
pcのdisplay(ディスプレイ)が必要になる。画面の電源もつけておく必要があります。
|
||||
|
||||
|
||||
|
9
book/plan/04_item.md
Normal file
9
book/plan/04_item.md
Normal file
@ -0,0 +1,9 @@
|
||||
# nice interaction system
|
||||
|
||||
[nice interaction system](https://www.fab.com/ja/listings/63b61e4a-dc11-4ee0-a6b1-f4860bd29198)
|
||||
|
||||
1. [docs](https://niceshadow.gitbook.io/nice-interaction-system)があります。基本的にGame Modeの設定に入っているPlayer Controller, Game Stateのファイルを開きます。GASは`GM_Snadbox`などがそれにあたります。これらのBPにcomponentを追加します。
|
||||
2. Player Controller: `AC_PC_Interaction`
|
||||
> The only thing you need to do now is open your Player Controller and add the AC_PC_Interaction component:
|
||||
3. Game State: `AC_GS_Interaction`
|
||||
> Now just add the AC_GS_Interaction component to your game state:
|
Loading…
x
Reference in New Issue
Block a user