Compare commits
2 Commits
6c530812b8
...
5828440795
Author | SHA1 | Date | |
---|---|---|---|
5828440795 | |||
5578955842 |
@ -1,5 +1,5 @@
|
||||

|
||||
|
||||
# Unreal Engine 5 Guide Book
|
||||
# Unreal Engine Guide Book
|
||||
|
||||
<a href="/book.pdf" target=”_blank”>download</a> | <a href="https://ue-book.syui.ai" target="_blank">web</a>
|
||||
|
@ -1,21 +1,23 @@
|
||||
# Summary
|
||||
|
||||
* [Unreal Engine 5 Guild Book](README.md)
|
||||
* [Unreal Engine Guild Book](README.md)
|
||||
* [default](default/README.md)
|
||||
* [asset/plugin](default/00_asset.md)
|
||||
* [start](default/01_start.md)
|
||||
* [install](default/02_install.md)
|
||||
* [tips](default/03_tips.md)
|
||||
* [game animation sample](gas/README.md)
|
||||
* [キャラクターを追加する](gas/01_character.md)
|
||||
* [飛びつける高さを増やす](gas/02_jump.md)
|
||||
* [キャラクターの見た目を変える](gas/03_vrm.md)
|
||||
* [モーションキャプチャで動かす](gas/04_vmc.md)
|
||||
* [揺れものを設定する](gas/05_kawaii.md)
|
||||
* [カメラワークの設定する](gas/06_camera.md)
|
||||
* [アニメーションを作成する](gas/07_anim.md)
|
||||
* [niagaraでダメージを出す](gas/08_niagara.md)
|
||||
* [椅子に座る](gas/09_chair.md)
|
||||
* [issue](default/00_issue.md)
|
||||
* [game animation sample](gasp/README.md)
|
||||
* [キャラクターを追加する](gasp/01_character.md)
|
||||
* [飛びつける高さを増やす](gasp/02_jump.md)
|
||||
* [キャラクターの見た目を変える](gasp/03_vrm.md)
|
||||
* [モーションキャプチャで動かす](gasp/04_vmc.md)
|
||||
* [揺れものを設定する](gasp/05_kawaii.md)
|
||||
* [カメラワークの設定する](gasp/06_camera.md)
|
||||
* [アニメーションを作成する](gasp/07_anim.md)
|
||||
* [niagaraでダメージを出す](gasp/08_niagara.md)
|
||||
* [椅子に座る](gasp/09_chair.md)
|
||||
* [issue](gasp/00_issue.md)
|
||||
* [control rig sample](crs/README.md)
|
||||
* [CRでキャラクターを動かす](crs/01_character.md)
|
||||
* [ボスを作る](crs/02_boss.md)
|
||||
@ -23,6 +25,7 @@
|
||||
* [惑星形式のmapを作る](city/01_remove.md)
|
||||
* [橋を作る](city/02_bridge.md)
|
||||
* [建造物を作る](city/03_house.md)
|
||||
* [issue](city/00_issue.md)
|
||||
* [json blueprint utilities](json/README.md)
|
||||
* [apiから情報を取得する](json/01_varest.md)
|
||||
* [pixel streaming](pixel/README.md)
|
||||
@ -32,4 +35,7 @@
|
||||
* [ultra dynamic sky](plan/02_uds.md)
|
||||
* [ocean waves](plan/03_ocean.md)
|
||||
* [nice interaction system](plan/04_item.md)
|
||||
* [unity](unity/README.md)
|
||||
* [blender](blender/README.md)
|
||||
* [モデルをカスタマイズする](blender/01_model.md)
|
||||
* [end](end/README.md)
|
||||
|
22
book/blender/01_model.md
Normal file
@ -0,0 +1,22 @@
|
||||
# モデルをカスタマイズする
|
||||
|
||||
素体を作ります。色々と探したのですが、なかなか納得するものが見つかりません。できる限り現実に近いものを目指します。
|
||||
|
||||
今回は、Aモデル(vrm)とBモデル(部位)の統合をblenderで行います。統合したものをvrmにexportして、ueでimportします。Bモデルにはシェイプキーを設定しているので、ueではモーフターゲットとして動かせるようにします。
|
||||
|
||||
blenderのexportやueのimportは注意が必要です。`VRM MToon`, `ペアレントで[Body]頂点`, `UVMap`, `シェイプキーをSKkeeperで上書き`が必要でした。
|
||||
|
||||
使用する[addon](/blender/)を確認してください。
|
||||
|
||||
1. まずBモデルをblenderで読み込み、いらないものを削除します。vrmを読み込むaddonが必要です。
|
||||
2. materialに`VRM MToon`を設定します。ueでimportする際にcrashします。
|
||||
3. dataのUVマップに`UVMap_xxx`となっているときは名前を`UVMap`にします。色がおかしくなります。
|
||||
4. 編集モードでBモデルを膨らませます。これは頂点を選択して[G]を押します。
|
||||
5. addonの`SKkeeper`を使い、オブジェクトメニューからapply modifyを選択します。追加モデルのmirrorやkeyをまとめます。これをしないとvrmにexportできません。
|
||||
6. 次にAモデルの編集です。いくつかの面を削除してBモデルをくっつけても違和感ないようにします。
|
||||
7. トランスフォームのペアレントで`[Body]頂点`を選択します。G, [y, z, r]などを駆使して位置調整してください。
|
||||
|
||||
ペアレントは正しく設定されるときもあればズレることもあります。同じファイルをvrmにexportしても結果がその都度異なります。また、モーフターゲットが正しく反映されないこともあります。
|
||||
|
||||
私は`[Armatrue]ボーン(hip)`につけることで設定しました。しかし、ueで読み込んだとき少し下に表示されるので、これ自体をずらした位置で調整し、ueで確認する必要がありました。
|
||||
|
9
book/blender/README.md
Normal file
@ -0,0 +1,9 @@
|
||||
# blender
|
||||
|
||||
[blender](https://blender.org/)でモデルを編集して、ueで読み込みます。
|
||||
|
||||
|addon|body|
|
||||
|---|---|
|
||||
|https://github.com/saturday06/VRM-Addon-for-Blender|vrmを読み込む|
|
||||
|https://github.com/smokejohn/SKkeeper|modifireをobjectに反映|
|
||||
|
76
book/city/00_issue.md
Normal file
@ -0,0 +1,76 @@
|
||||
# issue
|
||||
|
||||
[issue](/default/00_issue.html)
|
||||
|
||||
## buildが遅い場合
|
||||
|
||||
もしcity sampleのmapを使わない場合は、buildが遅くなってしまいます。
|
||||
|
||||
ueのpackage化が遅い場合、使用するmap以外をbuildしないようにすることで、処理時間を短縮できます。以下の手順で設定を行います。
|
||||
|
||||
1. `プロジェクト設定`を開きます。
|
||||
2. 「パッケージ化」セクションに移動します。
|
||||
3. 「マップのみをクック」オプションにチェックを入れます。
|
||||
4. 「パッケージ化されたビルドに含めるマップのリスト」に、必要なマップ(.umapファイル)を指定します。
|
||||
|
||||
この設定により、指定したmapのみがpackage化され、データサイズが小さくなり、処理時間も短縮されます。
|
||||
|
||||
## ue5.5ではbuildが通らない
|
||||
|
||||
`2024-11-18`時点ではcity sampleはue5.5でbuildが通りません。ue5.4では通ります。
|
||||
|
||||
`Engine/Plugins/Performance/AutomatedPerfTestingにAutomatedPerfTestConfig.cs`, `AutomatedPerfTestNode.cs`が含まれていないため`${project}/Build/Script/CitySample.Automation.csproj`に記述されているcompileが通らないのです。`AutomatedPerfTesting`は5.5で追加されたpluginです。
|
||||
|
||||
```html
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
<Import Project="CitySample.Automation.csproj.props" Condition="Exists('CitySample.Automation.csproj.props')"/>
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net8.0</TargetFramework>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Compile Include="$(EngineDir)\Plugins\Performance\AutomatedPerfTesting\Build\Scripts\AutomatedPerfTestConfig.cs" />
|
||||
<Compile Include="$(EngineDir)\Plugins\Performance\AutomatedPerfTesting\Build\Scripts\AutomatedPerfTestNode.cs" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
```
|
||||
|
||||
> Experimental release of Automated Perf Testing Plugin v0.1, providing Gauntlet Test Controllers, UAT Test Nodes, and BuildGraph macros for adding common automated performance tests to a project’s automated build and test.
|
||||
|
||||
- https://dev.epicgames.com/documentation/ja-jp/unreal-engine/unreal-engine-5.5-release-notes
|
||||
- https://dev.epicgames.com/documentation/en-us/unreal-engine/API/Plugins/AutomatedPerfTesting
|
||||
|
||||
これはgithubにあるsrcから持ってくるしかありません。アクセスするにはorgに参加します。
|
||||
|
||||
https://github.com/EpicGames/UnrealEngine/tree/release/Engine/Plugins/Performance/AutomatedPerfTesting/Build/Scripts
|
||||
|
||||
1. `$(EngineDir)\Plugins\Performance\AutomatedPerfTesting\Build\Scripts`フォルダを作ります。`$(EngineDir)`はueがインストールされているディレクトリです。
|
||||
2. githubの[src](https://github.com/EpicGames/UnrealEngine/tree/release/Engine/Plugins/Performance/AutomatedPerfTesting/Build/Scripts)から持ってきた`$(EngineDir)\Plugins\Performance\AutomatedPerfTesting\Build\Scripts\AutomatedPerfTestConfig.cs`, `$(EngineDir)\Plugins\Performance\AutomatedPerfTesting\Build\Scripts\AutomatedPerfTestNode.cs`を同ディレクトリに置きます。
|
||||
|
||||
## 問題が起こったときにresetする
|
||||
|
||||
`/Content/Map/Small_City_LVL.umap`と`/Content/__ExternalActors__/Map/Small_City_LVL`を上書きします。copy元は`VaultCache`からでもいいですし、新しく作った`CitySample`のprojectからでもいいです。
|
||||
|
||||
基本的に新しいprojectを作成するときは`VaultCache`からcopyされます。これがないとdownloadから`VaultCache`が生成されます。
|
||||
|
||||
|
||||
|
||||
## characterのcollisionが機能せず地面に埋まってしまう
|
||||
|
||||
GASPと統合するとcity sampleに置かれた物体に触れられません。
|
||||
|
||||
原因は`Gameplay Camera`というpluginです。`$project/Config/DefaultEngine.ini`に`DDCVar.NewGameplayCameraSystem.Enable`を追加し、関数である`Setup Camera`を実行している場合、characterのcollisionが機能せず地面に埋まってしまう問題があります。
|
||||
|
||||
- Gameplay Camera
|
||||
- Setup Camera
|
||||
- `DDCVar.NewGameplayCameraSystem.Enable`
|
||||
|
||||
```sh
|
||||
[/Script/Engine.DataDrivenConsoleVariableSettings]
|
||||
+CVarsArray=(Type=CVarBool,Name="DDCVar.NewGameplayCameraSystem.Enable",ToolTip="",DefaultValueFloat=0.000000,DefaultValueInt=0,DefaultValueBool=True)
|
||||
```
|
||||
|
||||
`Setup Camera`を実行しないようにするか、`DDCVar.NewGameplayCameraSystem.Enable`をfalseにします。
|
||||
|
@ -10,21 +10,7 @@ game engineのmapは基本的に平面で作られています。どこまで行
|
||||
|
||||
海には境界があってそれが惑星システム(planet system)を構築する際に邪魔になるので消します。
|
||||
|
||||
## ocean wavesで惑星の海を作る
|
||||
|
||||
[ocean waves](https://www.unrealengine.com/marketplace/ja/product/ocean-waves)
|
||||
|
||||
必要なものを`/Content/OceanWaves/Levels/EarthSizedOceanPlanet`からcopyして持ってきましょう。
|
||||
|
||||
- `BP_EarthSizedSphericalMesh`
|
||||
- `BP_EarthSizedOcean`
|
||||
- `WaterVolume`
|
||||
|
||||
`BP_EarthSizedSphericalMesh`の`transform-location-z:-63600000`にします。`Sphere Radius:63600000`にします。`SphereEdge Length:16000000`になるはずです。
|
||||
|
||||
次に海上の影問題を修正するため`Material Overrides`, `Material Outer/Inner`をすべて変更します。私は`/Vefects/Water/VFX/WaterMaterials`を使用しました。
|
||||
|
||||
次に`BP_EarthSizedOcean`の`Volume Maaterials`で`WaterVolume`をセットします。`Above/Underwater`を`/Vefects/Water/VFX/UnderWater`に変更します。`height:0`にします。これは海に入って出たときに海中を適用する高さを設定します。
|
||||
`/Map/Small_City_LVL`を使います。`GroundCollisionCube`,`DroneBlockingVolume`を探して削除します。これは海面にplane(平面)を設置しています。
|
||||
|
||||
## ultra dynamic skyで天候と惑星を作る
|
||||
|
||||
@ -41,3 +27,7 @@ game engineのmapは基本的に平面で作られています。どこまで行
|
||||
|
||||
- `BP_Earth`: `transform-location-z:-636000000`, `transform-scale:6360000`
|
||||
- `Sky_Sphere_Mesh`: `transform-scale:50000`
|
||||
|
||||
## ocean wavesで惑星の海を作る
|
||||
|
||||
[こちら](/plan/03_ocean.html)
|
||||
|
325
book/city/CitySample.uproject
Normal file
@ -0,0 +1,325 @@
|
||||
{
|
||||
"FileVersion": 3,
|
||||
"EngineAssociation": "5.5",
|
||||
"Category": "Samples",
|
||||
"Description": "",
|
||||
"Modules": [
|
||||
{
|
||||
"Name": "CitySample",
|
||||
"Type": "Runtime",
|
||||
"LoadingPhase": "Default",
|
||||
"AdditionalDependencies": [
|
||||
"Engine",
|
||||
"AIModule",
|
||||
"ChaosVehicles",
|
||||
"UMG",
|
||||
"MovieScene"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Name": "CitySampleEditor",
|
||||
"Type": "Editor",
|
||||
"LoadingPhase": "Default",
|
||||
"AdditionalDependencies": [
|
||||
"Engine"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Name": "CitySampleAnimGraphRuntime",
|
||||
"Type": "UncookedOnly",
|
||||
"LoadingPhase": "Default"
|
||||
}
|
||||
],
|
||||
"Plugins": [
|
||||
{
|
||||
"Name": "AlembicHairImporter",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "HairStrands",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "PythonScriptPlugin",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "ControlRig",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "Takes",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "D3DExternalGPUStatistics",
|
||||
"Enabled": true,
|
||||
"Optional": true,
|
||||
"SupportedTargetPlatforms": [
|
||||
"Win64"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Name": "LiveLinkCurveDebugUI",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "ChaosVehiclesPlugin",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "RigLogic",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "RawInput",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "GameplayInsights",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "TraceSourceFilters",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "TraceDataFilters",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "ModelingToolsEditorMode",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "Traffic",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "CitySampleMassCrowd",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "StateTree",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "OnlineSubsystem",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "OnlineSubsystemUtils",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "MassAI",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "MassCrowd",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "MassEntity",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "MassGameplay",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "HoverDrone",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "EnhancedInput",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "Volumetrics",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "ContextualAnimation",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "ChaosCaching",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "FieldSystemPlugin",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "Paper2D",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "WinDualShock",
|
||||
"Enabled": true,
|
||||
"SupportedTargetPlatforms": [
|
||||
"Win64"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Name": "ZoneGraph",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "AnimationWarping",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "ElectraPlayer",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "LiveLinkCamera",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "AudioModulation",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "Metasound",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "MovieRenderPipeline",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "Soundscape",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "FullBodyIK",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "RemoteControl",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "ImagePlate",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "LightWeightInstancesEditor",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "GameFeatures",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "ModularGameplay",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "CitySampleSensorGrid",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "IKRig",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "ColorCorrectRegions",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "Gauntlet",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "CustomizableSequencerTracks",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "NetworkPrediction",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "NiagaraFluids",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "Text3D",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "MotoSynth",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "EditorDataStorage",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "EditorDataStorageFeatures",
|
||||
"Enabled": true,
|
||||
"TargetAllowList": [
|
||||
"Editor"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Name": "AnimToTexture",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "SequencerScripting",
|
||||
"Enabled": true,
|
||||
"TargetAllowList": [
|
||||
"Editor"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Name": "GeometryCollectionPlugin",
|
||||
"Enabled": true,
|
||||
"TargetAllowList": [
|
||||
"Editor"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Name": "AutomatedPerfTesting",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "LiveLink",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "LiveLinkControlRig",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "PoseSearch",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "AnimationLocomotionLibrary",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "MotionWarping",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "Chooser",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "Mover",
|
||||
"Enabled": true
|
||||
}
|
||||
],
|
||||
"TargetPlatforms": [
|
||||
"PS5",
|
||||
"XSX",
|
||||
"Windows"
|
||||
],
|
||||
"EpicSampleNameHash": "111"
|
||||
}
|
@ -4,34 +4,407 @@
|
||||
|
||||
ニューヨーク(NY)をモデルに都市が作られています。人と自動車が動いています。自動車は乗ることや破壊することができます。
|
||||
|
||||
## AutomatedPerfTesting
|
||||
## game animation sampleとの統合
|
||||
|
||||
`AutomatedPerfTesting`は5.5で追加されたpluginです。
|
||||
他のassetとの統合を考えるとき、city sampleをベースにします。なぜなら、city sampleは複雑すぎるためです。ここではcity sampleをinstallした上で、game animation sampleをそこにcopyします。
|
||||
|
||||
> Experimental release of Automated Perf Testing Plugin v0.1, providing Gauntlet Test Controllers, UAT Test Nodes, and BuildGraph macros for adding common automated performance tests to a project’s automated build and test.
|
||||
なお、`GameAnimationSample/Binaries/Win64/UnrealEditor.modules`だけはcopyしません。
|
||||
|
||||
- https://dev.epicgames.com/documentation/ja-jp/unreal-engine/unreal-engine-5.5-release-notes
|
||||
- https://dev.epicgames.com/documentation/en-us/unreal-engine/API/Plugins/AutomatedPerfTesting
|
||||
|
||||
そのうち解消されると思いますが、現在(2024-11-18)、city sampleはbuildできません。`Engine/Plugins/Performance/AutomatedPerfTestingにAutomatedPerfTestConfig.cs`, `AutomatedPerfTestNode.cs`が含まれていないため`${project}/Build/Script/CitySample.Automation.csproj`に記述されているcompileが通らないのです。
|
||||
|
||||
```html
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
<Import Project="CitySample.Automation.csproj.props" Condition="Exists('CitySample.Automation.csproj.props')"/>
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net8.0</TargetFramework>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Compile Include="$(EngineDir)\Plugins\Performance\AutomatedPerfTesting\Build\Scripts\AutomatedPerfTestConfig.cs" />
|
||||
<Compile Include="$(EngineDir)\Plugins\Performance\AutomatedPerfTesting\Build\Scripts\AutomatedPerfTestNode.cs" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
```sh
|
||||
# 以下のfileをcopy
|
||||
GameAnimationSample
|
||||
Binaries
|
||||
Win64/UnrealEditor.modules #このfileだけはcopy(rewrite)しない
|
||||
Build
|
||||
Content
|
||||
```
|
||||
|
||||
これはgithubにあるsrcから持ってくるしかありません。アクセスするにはorgに参加します。
|
||||
次に`CitySample/Binaries/Win64/UnrealEditor.modules`を編集します。
|
||||
|
||||
https://github.com/EpicGames/UnrealEngine/tree/release/Engine/Plugins/Performance/AutomatedPerfTesting/Build/Scripts
|
||||
```json
|
||||
{
|
||||
"BuildId": "xxx",
|
||||
"Modules":
|
||||
{
|
||||
"CitySample": "UnrealEditor-CitySample.dll",
|
||||
"CitySampleAnimGraphRuntime": "UnrealEditor-CitySampleAnimGraphRuntime.dll",
|
||||
"CitySampleEditor": "UnrealEditor-CitySampleEditor.dll"
|
||||
},
|
||||
{
|
||||
"GameAnimationSample": "UnrealEditor-GameAnimationSample.dll"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
これでGASPが機能すればokです。
|
||||
|
||||
他には`$project/Config`と`$project/xxx.uproject`を見比べてみましょう。必要そうなものを追記します。
|
||||
|
||||
```json
|
||||
{
|
||||
"FileVersion": 3,
|
||||
"EngineAssociation": "5.5",
|
||||
"Category": "Samples",
|
||||
"Description": "",
|
||||
"Modules": [
|
||||
{
|
||||
"Name": "CitySample",
|
||||
"Type": "Runtime",
|
||||
"LoadingPhase": "Default",
|
||||
"AdditionalDependencies": [
|
||||
"Engine",
|
||||
"AIModule",
|
||||
"ChaosVehicles",
|
||||
"UMG",
|
||||
"MovieScene"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Name": "CitySampleEditor",
|
||||
"Type": "Editor",
|
||||
"LoadingPhase": "Default",
|
||||
"AdditionalDependencies": [
|
||||
"Engine"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Name": "CitySampleAnimGraphRuntime",
|
||||
"Type": "UncookedOnly",
|
||||
"LoadingPhase": "Default"
|
||||
}
|
||||
],
|
||||
"Plugins": [
|
||||
{
|
||||
"Name": "AlembicHairImporter",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "HairStrands",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "PythonScriptPlugin",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "ControlRig",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "Takes",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "D3DExternalGPUStatistics",
|
||||
"Enabled": true,
|
||||
"Optional": true,
|
||||
"SupportedTargetPlatforms": [
|
||||
"Win64"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Name": "LiveLinkCurveDebugUI",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "ChaosVehiclesPlugin",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "RigLogic",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "RawInput",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "GameplayInsights",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "TraceSourceFilters",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "TraceDataFilters",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "ModelingToolsEditorMode",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "Traffic",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "CitySampleMassCrowd",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "StateTree",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "OnlineSubsystem",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "OnlineSubsystemUtils",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "MassAI",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "MassCrowd",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "MassEntity",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "MassGameplay",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "HoverDrone",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "EnhancedInput",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "Volumetrics",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "ContextualAnimation",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "ChaosCaching",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "FieldSystemPlugin",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "Paper2D",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "WinDualShock",
|
||||
"Enabled": true,
|
||||
"SupportedTargetPlatforms": [
|
||||
"Win64"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Name": "ZoneGraph",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "AnimationWarping",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "ElectraPlayer",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "LiveLinkCamera",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "AudioModulation",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "Metasound",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "MovieRenderPipeline",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "Soundscape",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "FullBodyIK",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "RemoteControl",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "ImagePlate",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "LightWeightInstancesEditor",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "GameFeatures",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "ModularGameplay",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "CitySampleSensorGrid",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "IKRig",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "ColorCorrectRegions",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "Gauntlet",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "CustomizableSequencerTracks",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "NetworkPrediction",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "NiagaraFluids",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "Text3D",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "MotoSynth",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "EditorDataStorage",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "EditorDataStorageFeatures",
|
||||
"Enabled": true,
|
||||
"TargetAllowList": [
|
||||
"Editor"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Name": "AnimToTexture",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "SequencerScripting",
|
||||
"Enabled": true,
|
||||
"TargetAllowList": [
|
||||
"Editor"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Name": "GeometryCollectionPlugin",
|
||||
"Enabled": true,
|
||||
"TargetAllowList": [
|
||||
"Editor"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Name": "AutomatedPerfTesting",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "LiveLink",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "LiveLinkControlRig",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "PoseSearch",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "AnimationLocomotionLibrary",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "MotionWarping",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "Chooser",
|
||||
"Enabled": true
|
||||
},
|
||||
{
|
||||
"Name": "Mover",
|
||||
"Enabled": true
|
||||
}
|
||||
],
|
||||
"TargetPlatforms": [
|
||||
"PS5",
|
||||
"XSX",
|
||||
"Windows"
|
||||
],
|
||||
"EpicSampleNameHash": "111"
|
||||
}
|
||||
```
|
||||
|
||||
また、`/Config/DefaultEngine.ini`に注意してください。
|
||||
|
||||
```sh
|
||||
[/Script/Engine.CollisionProfile]
|
||||
+DefaultChannelResponses=(Channel=ECC_GameTraceChannel11,DefaultResponse=ECR_Ignore,bTraceType=True,bStaticObject=False,Name="Traversable")
|
||||
+DefaultChannelResponses=(Channel=ECC_GameTraceChannel12,DefaultResponse=ECR_Ignore,bTraceType=True,bStaticObject=False,Name="EnemyProjectile")
|
||||
+DefaultChannelResponses=(Channel=ECC_GameTraceChannel13,DefaultResponse=ECR_Block,bTraceType=True,bStaticObject=False,Name="BulletHell")
|
||||
+DefaultChannelResponses=(Channel=ECC_GameTraceChannel14,DefaultResponse=ECR_Ignore,bTraceType=True,bStaticObject=False,Name="LookAtTrace")
|
||||
```
|
||||
|
||||
`Collision Trace Channel`は作り直さなければ機能しないことがあります。
|
||||
|
||||
### Gameplay Camera
|
||||
|
||||
例えば、camera(Gameplay)を有効にするには`$project/Config/DefaultEngine.ini`に`DDCVar.NewGameplayCameraSystem.Enable`の行を追加します。`CBP_SandboxCharacter`にある関数の`SetupCamera`を確認してください。
|
||||
|
||||
```sh
|
||||
[/Script/Engine.DataDrivenConsoleVariableSettings]
|
||||
+CVarsArray=(Type=CVarBool,Name="DDCVar.NewGameplayCameraSystem.Enable",ToolTip="",DefaultValueFloat=0.000000,DefaultValueInt=0,DefaultValueBool=True)
|
||||
```
|
||||
|
||||
現在、[characterのcollisionが機能しない問題](/city/00_err.html)が発生します。
|
||||
|
||||
### Collision Trace Channel
|
||||
|
||||
`Collision Trace Channel`を設定するには、`Config/DefaultEngine.ini`を編集する必要があります。以下の手順で行います。GASPは`traversable`を追加します。これが追加されていないと動きません。
|
||||
|
||||
`ECC_GameTraceChannel${n}`に注意してください。
|
||||
|
||||
```sh
|
||||
[/Script/Engine.CollisionProfile]
|
||||
+DefaultChannelResponses=(Channel=ECC_GameTraceChannel11,DefaultResponse=ECR_Ignore,bTraceType=True,bStaticObject=False,Name="Traversable")
|
||||
```
|
||||
|
||||
## 他のmapとの統合
|
||||
|
||||
mapにはactorがまとめられているものがあり、それはmapにくっついていません。移動できない場合があります。
|
||||
|
||||
基本的にはA-mapとB-mapはある程度位置を完成させてからcopyしましょう。
|
||||
|
||||
|
@ -24,8 +24,20 @@
|
||||
|[kawaiiphysics](https://github.com/pafuhana1213/KawaiiPhysics)|20241201|揺れものを設定|
|
||||
|[varest](https://github.com/ufna/VaRest)|20240828|curlのようなもの。supportが終了しているのでbuildが必要|
|
||||
|[tatools](https://www.fab.com/ja/listings/a5d3b60d-b886-4564-bf6d-15d46a8d27fe)|20241206|animを作る|
|
||||
|[ui navigation 3.0](https://www.fab.com/ja/listings/a91f6e67-5c2d-46ef-926d-00a35525579c)|20250126|スタート画面を作る|
|
||||
|
||||
## 有料
|
||||
## その他のasset
|
||||
|
||||
ここからは無料のassetでおすすめのものを紹介します。使っていないものもあります。
|
||||
|
||||
|name|body|
|
||||
|---|---|
|
||||
|[GASP-ALS](https://github.com/PolygonHive/GASP-ALS)|GASPの改造版|
|
||||
|[animal variety pack](https://www.fab.com/ja/listings/2dd7964c-a601-4264-a53d-465dcae1644c)|有名な動物モデル|
|
||||
|[quadruped fantasy creatures](https://www.fab.com/ja/listings/52d686b6-1180-4f26-901f-ce3c69a14767)|有名な幻獣モデル|
|
||||
|[ueplugin-accessvariablebyname](https://github.com/colory-games/UEPlugin-AccessVariableByName)|名前を取得するplugin|
|
||||
|
||||
## 有料のasset
|
||||
|
||||
[こちら](/plan/README.md)
|
||||
|
||||
|
40
book/default/00_issue.md
Normal file
@ -0,0 +1,40 @@
|
||||
# issue
|
||||
|
||||
問題の解決を目指します。
|
||||
|
||||
ゲーム開発をしていると、issue(問題)がたくさん発生します。特にueはbug(バグ)が多く、機能は実験的(pre releases)であることが多いです。
|
||||
|
||||
## list
|
||||
|
||||
- [game animation sample](/gasp/00_issue.html)
|
||||
- [city sample](/city/00_issue.html)
|
||||
|
||||
## error II-E1001
|
||||
|
||||
`Epic Games Launcher`に非常によく出るerrorです。
|
||||
|
||||
エラーコード「II-E1001」は、主にEpic Games LauncherまたはUnreal Engineでのプロジェクト作成やコンテンツダウンロード時に発生する問題です。このエラーの原因と解決策を以下にまとめます。`Epic Games Launcher`を再インストールすることでしか治らないこともあります。
|
||||
|
||||
1. キャッシュの破損
|
||||
> Epic Games LauncherのVault Cacheに破損したデータが残っている場合、エラーが発生することがあります7。
|
||||
2. ダウンロード中のクラッシュ
|
||||
> コンテンツのダウンロード中にPCがクラッシュした場合、未完了のデータが原因でエラーが発生することがあります7。
|
||||
3. 外部ストレージの使用
|
||||
> ライブラリが外部ハードドライブ上にある場合、ランチャーが正しく認識できないことがあります7。
|
||||
|
||||
### 解決策
|
||||
|
||||
1. Vault Cacheフォルダを確認・削除
|
||||
> Epic Games Launcherの「設定」からVault Cacheの場所を確認します。
|
||||
> 対象コンテンツのフォルダを削除します(フォルダが空の場合も削除可能)。
|
||||
> 他のフォルダを選択して、元のフォルダに戻すと解消されることがあります。
|
||||
2. Vault Cacheフォルダの属性変更
|
||||
> Vault Cacheフォルダを右クリックし、「読み取り専用」のチェックを外して適用します。
|
||||
3. Epic Games Launcherの再起動
|
||||
> ランチャーを再起動し、問題が解消されるか確認します。
|
||||
> 必要であればPC自体も再起動してください。
|
||||
4. 外部ストレージの確認
|
||||
> ライブラリが外部ストレージ上にある場合、ランチャー設定で適切なキャッシュフォルダが指定されているか確認します7。
|
||||
5. Epic Games Launcherの再インストール
|
||||
> キャッシュをクリアした後、Epic Games Launcherを再インストールします。
|
||||
> これらの手順で解決しない場合は、Epic Gamesサポート(公式ヘルプページ)に問い合わせることをお勧めします。
|
@ -27,6 +27,16 @@ ueを長く使っているとわかることですが、ゲーム制作にはあ
|
||||
|
||||
「ueはバグが多く基本的に壊れている」このことを最初に理解しておかないと「おかしいなあ」と時間を無駄にしてしまいます。また、保存せず長時間コードを書き続けるのは危険です。クラッシュ(crash)すると消えてしまいます。プロジェクト(project)そのものが壊れることもよくあります。注意しましょう。
|
||||
|
||||
## unityやblenderも使っている
|
||||
|
||||
私はキャラクター(character)を`.vrm`で作っています。
|
||||
|
||||
`.vrm`の開発は主に[unity](/unity/)が中心です。`.vrm`の仕様を作っているpixivがunityで読み込むためのpluginを開発しているからです。vrmに対応する様々なツールはunityで作られています。
|
||||
|
||||
もし`.vrm`を扱う場合は、どちらにせよ`unity`を使うことになると思います。私もモデルのカスタマイズなどでunityを使っています。
|
||||
|
||||
モデルのカスタマイズには[blender](/blender)というものもあって、`blender`も使用しています。
|
||||
|
||||
## 用語の解説
|
||||
|
||||
|title|short|body|
|
||||
|
@ -10,16 +10,30 @@ ue5でゲームを作成するまでの過程をまとめます。
|
||||
|---|---|---|
|
||||
|[unreal engine](https://dev.epicgames.com/documentation/ja-jp/unreal-engine/unreal-engine-5.5-release-notes)|5.5.3|ゲームエンジン|
|
||||
|
||||
## パソコンのスペック
|
||||
|
||||
開発するゲームによりますが、GPUはnvidiaの`RTX 4060Ti`を使っています。特に不満はありません。
|
||||
|
||||
作りたいゲームによってはGPUは不要です。オープンワールドを作るならGPUはあったほうがいいと思います。
|
||||
|
||||
多くの場合、ue5のバグのほうが問題で、GPUの性能をほとんど引き出せていないことのほうが問題です。スペックはあまり関係なかったりします。
|
||||
|
||||
ただし、ストレージの読み書き速度は重要です。ueやprojectを入れるストレージには注意してください。
|
||||
|
||||
## 使用するタグ
|
||||
|
||||
### youtube
|
||||
|
||||
`https://www.youtube.com/embed/${id}?start=0&end=10&mute=1&rel=0&showinfo=0&controls=0`
|
||||
|
||||
```html
|
||||
# youtube
|
||||
## https://www.youtube.com/embed/${id}?start=0&end=10&mute=1&rel=0&showinfo=0&controls=0
|
||||
<iframe width="100%" height="415" src="https://www.youtube.com/embed/?start=0&end=10&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>
|
||||
```
|
||||
|
||||
### blueprint
|
||||
|
||||
`https://blueprintue.com/render/${id}/${n}`
|
||||
|
||||
```html
|
||||
# blueprint
|
||||
## https://blueprintue.com/render/${id}/${n}
|
||||
<iframe src="https://blueprintue.com/render/" scrolling="no" allowfullscreen style="width:100%;height:400px"></iframe>
|
||||
```
|
||||
|
51
book/gasp/00_issue.md
Normal file
@ -0,0 +1,51 @@
|
||||
# issue
|
||||
|
||||
[issue](/default/00_issue.html)
|
||||
|
||||
## GameplayCameraをdisableにする
|
||||
|
||||
GASPで使用されるGameplayCamera(plugin)が壊れているため、これを削除する人が多いです。
|
||||
|
||||
削除方法は簡単で`/Content/Blueprints/CBP_SandboxCharacter`の`GameplayCamera`というcomponentを削除し、err箇所のnodeを修正すると完了です。
|
||||
|
||||
仕組みを解説すると、このcomponentでCameraに`/Blueprints/Cameras/CameraAsset_SandboxCharacter`を指定しています。そして、`SetupCamera`という関数でenable(有効)にします。関数では`$project/Config/DefaultEngine.ini`にある`DDCVar.NewGameplayCameraSystem.Enable`の値がtrueなら使用されます。
|
||||
|
||||
```sh
|
||||
[/Script/Engine.DataDrivenConsoleVariableSettings]
|
||||
+CVarsArray=(Type=CVarBool,Name="DDCVar.NewGameplayCameraSystem.Enable",ToolTip="",DefaultValueFloat=0.000000,DefaultValueInt=0,DefaultValueBool=True)
|
||||
```
|
||||
|
||||
`DDCVar.NewGameplayCameraSystem.Enable`をfalseにするか、あるいは`branch`の処理を削除し、false後の処理(Set View Target with Blend)につなげるかで機能をdisable(無効)にすることができます。
|
||||
|
||||
私はなるべく最新機能を使用したいと思っています。ですが、先に述べたように色々と壊れているため、問題がたくさん発生します。原因が`GameplayCamera`にあることを突き止めるのも苦労しますから、disableにしておくのが正解かもしれません。
|
||||
|
||||
## cameraが急接近する
|
||||
|
||||
よじ登ったり、柵を超えたりするとき、camera(カメラ)が急接近することがあります。
|
||||
|
||||
これは`GameplayCamera`の`CameraRig_CollisionOffset`が原因です。`/Content/Blueprints/CBP_SandboxCharacter`の`SetupCamera`という関数で使われていますので、その部分だけ外しておきましょう。
|
||||
|
||||
ただし、床が透けて映ってしまうようになります。
|
||||
|
||||
## characterのcomponentが初期化される
|
||||
|
||||
ある時点で`/Content/Blueprints/RetargetedCharacters/CBP_SandboxCharacter_${name}`にあるcompoentが初期化されていることに気づくかもしれません。
|
||||
|
||||
原因はわかりませんが、これが起こるとcameraがおかしくなったり、`IA_Sprint`でダッシュできなくなったりすることがあります。
|
||||
|
||||
これを解決する方法は、`/Content/Blueprints/CBP_SandboxCharacter`の`Event BeginPlay`でcomponentの初期設定をすることです。
|
||||
|
||||
<iframe src="https://blueprintue.com/render/0lt9y0_u/1" scrolling="no" allowfullscreen style="width:100%;height:400px"></iframe>
|
||||
|
||||
## IA_Sprintのダッシュができなくなる
|
||||
|
||||
ダッシュは`/Content/Blueprints/RetargetedCharacters/CBP_SandboxCharacter_${name}`の`Event BeginPlay`を削除することで解消しました(nodeがつながっていなくてもevent自体を削除)。
|
||||
|
||||
## traversableが機能しなくなる
|
||||
|
||||
突然、traversable(トラバーサブル)、つまり、よじ登ったりする機能が使えなくなることがあります。
|
||||
|
||||
いくつか原因が考えられますが、project設定の`collision > trace channel : Traversable`に問題があるのかもしれません。
|
||||
|
||||
collision trace channelに問題が発生するときはけっこう大変です。色々とbugがあり、一度削除して同じ名前で作り直せば動作することもありますが、余計に壊れることもあります。例えば、削除したときにBPのnodeに他のtrace channelが自動で入ってしまうことも要因になります。
|
||||
|
@ -13,7 +13,9 @@ ueで読み込むには`vrm4u`というpluginを使用します。
|
||||
2. editorのファイルエクスプローラーでモデルファイルの`.vrm`をD&Dします。色々と聞かれますが適当にokや選択します。配色タイプが聞かれます。例えば、`$project/Content/Characters`に`model`フォルダを作り`model.vrm`をimport(インポート)した場合で解説します。
|
||||
> $project/Content/Characters/$model
|
||||
|
||||
重要なファイルは`$project/Content/Characters/$model/SK_$model`, `ABP_Post_$model`, `RTG_UEFN_$model`になります。なお、`vrm 1.0`を使用します。
|
||||
モデル(model)は[こちら](https://hub.vroid.com/users/36144806)からdownloadすることができます。私は、`vrm 1.0`を使用ていますが、`vrm 0.0`のほうが安定しています。
|
||||
|
||||
重要なファイルは`$project/Content/Characters/$model/SK_$model`, `ABP_Post_$model`, `RTG_UEFN_$model`になります。
|
||||
|
||||
https://vrm.dev/vrm1/
|
||||
|
||||
@ -22,7 +24,6 @@ https://vrm.dev/vrm1/
|
||||
これは`RTG_UEFN_$model`で調整します。各指にある線を選択して値を変更します。
|
||||
|
||||
- `回転アルファ:0.5`
|
||||
- `ボールベクターオフセットを維持:false`
|
||||
|
||||
## 前髪の角度を調整する
|
||||
|
||||
@ -94,7 +95,7 @@ https://vrm.dev/vrm1/
|
||||
|
||||
アウトライン(outline)
|
||||
|
||||
1. `/Content/Blueprints/RetargetedCharacters/CBP_SandboxCharacter_$model`を作成します。前と同じ要領で新しいキャラクターを追加し、GASで使えるようにします。
|
||||
1. `/Content/Blueprints/RetargetedCharacters/CBP_SandboxCharacter_$model`を作成します。前と同じ要領で新しいキャラクターを追加し、GASPで使えるようにします。
|
||||
2. componentで`BP_VrmOutlineComponent`を追加します。
|
||||
|
||||
## 見た目をきれいにする
|
||||
@ -103,3 +104,7 @@ https://vrm.dev/vrm1/
|
||||
|
||||
私はcomponentの`VrmPoseableMesh`を追加して、そこに配色タイプの`custom`を当てることで調整しています。ベースは配色タイプの`unlit`を使用します。もし`unlit`で`.vrm`をimportしていない場合は再度importしてください。
|
||||
|
||||
1. アセットブラウザで`All/Plugins/`を見えるようにします(プラグインコンテンツを表示)。
|
||||
2. `/All/Plugins/VRM4U/Util/Actor/PostShadow/BP_PoseCopyToon`と`/All/Content/Blueprints/Characters/${name}/SK_${name}`をmapに配置します。そして、`BP_PoseCopyToon`に`SK_${name}`を選択します。
|
||||
3. `/All/Plugins/VRM4U/Util/Actor/PostShadow/MI_PostToon`が更新されているので`/All/Plugins/VRM4U/ImportData/DS_VRMCustom`を開いて、全部をMI_PostToonにする
|
||||
4. `.vrm`を`custom`で読み込む。そして、`/All/Content/Blueprints/CBP_SandboxCharater`のcomponentで`Vrm Poseable Mesh`を追加して、`custom/SK_${name}`を選択します。
|
@ -2,9 +2,9 @@
|
||||
|
||||
[game aimation sample](https://www.fab.com/ja/listings/880e319a-a59e-4ed2-b268-b32dac7fa016)は`epic games`が提供しているassetです。
|
||||
|
||||
[G]ame [A]nimation [S]ampleでGASと略すことがあります。
|
||||
[G]ame [A]nimation [S]ample [P]rojectでGASPと略すことがあります。
|
||||
|
||||
なお、[G]ame [A]bility [S]ystemもGASなので紛らわしいです。
|
||||
[G]ame [A]bility [S]ystemもGASなので紛らわしいですね。
|
||||
|
||||
まずはこれを使ってキャラクター(character)を動かしてみましょう。
|
||||
|
@ -1,3 +1,19 @@
|
||||
# superhero flight animations
|
||||
|
||||
[superhero flight animations](https://www.fab.com/ja/listings/41185c19-5191-4153-8293-8cc9901efa95)
|
||||
|
||||
GASと連携するには飛行モードを有効にするときだけABPを切り替えます。いくつかの調整が必要になります。
|
||||
|
||||
<iframe src="https://blueprintue.com/render/thxeju-z" scrolling="no" allowfullscreen style="width:100%;height:400px"></iframe>
|
||||
|
||||
## スピードとカメラ設定
|
||||
|
||||
|component|name|body|
|
||||
|---|---|---|
|
||||
|Character Movement|Max Fly Speed|基本スピード。これを上げてスピードを調整する|
|
||||
|SFA|Sprint Fly Speed|基本スピード。現時点では機能しないみたい|
|
||||
|SFA|Sprint Acceleration|徐々にスピードを上げていく値。大きいほどすぐに上昇する|
|
||||
|SFA|Flight Breaking Deceleration|小さいと飛行後のダウンタイムが発生|
|
||||
|SprintArm|Target Arm Length|最大でどれだけカメラを離すか|
|
||||
|SprintArm|Camera Lag Speed|ターゲットに到達する速度。大きいほど遅くなる|
|
||||
|SprintArm|Camera Lag Max Distance|遅れを取る最大距離|
|
||||
|
@ -7,3 +7,8 @@ blueprintなどでも`uds`と略されます。
|
||||
1. `/Content/UltraDynamicSky/Blueprints/Ultra_Dynamic_Sky`, `Ultra_Dynamic_Weather`をlevelに置きます。
|
||||
2. `Ultra_Dynamic_Weather(Self)`の詳細から`Random Weather Variation:Hourly`にします。これで天候がすぐに変わります。
|
||||
|
||||
## 雪を積もらせる
|
||||
|
||||
1. landscapeにあるmaterialを編集します。
|
||||
2. ultra dynamic weatherと検索して追加します。
|
||||
3. base color, normalなどのpinがあればつなげます。
|
||||
|
@ -1,3 +1,15 @@
|
||||
# ocean waves
|
||||
|
||||
[ocean waves](https://www.unrealengine.com/marketplace/ja/product/ocean-waves)
|
||||
|
||||
必要なものを`/Content/OceanWaves/Levels/EarthSizedOceanPlanet`からcopyして持ってきましょう。
|
||||
|
||||
- `BP_EarthSizedSphericalMesh`
|
||||
- `BP_EarthSizedOcean`
|
||||
- `WaterVolume`
|
||||
|
||||
`BP_EarthSizedSphericalMesh`の`transform-location-z:-63600000`にします。`Sphere Radius:63600000`にします。`SphereEdge Length:16000000`になるはずです。
|
||||
|
||||
次に海上の影問題を修正するため`Material Overrides`, `Material Outer/Inner`をすべて変更します。私は`/Vefects/Water/VFX/WaterMaterials`を使用しました。
|
||||
|
||||
次に`BP_EarthSizedOcean`の`Volume Maaterials`で`WaterVolume`をセットします。`Above/Underwater`を`/Vefects/Water/VFX/UnderWater`に変更します。`height:0`にします。これは海に入って出たときに海中を適用する高さを設定します。
|
||||
|
@ -7,3 +7,4 @@
|
||||
> 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:
|
||||
4. project設定にてcollisionのtrace channelに`LookAtTrace`を`ignore`で追加します。
|
||||
|
@ -8,5 +8,8 @@
|
||||
|[nice interaction system](https://www.fab.com/ja/listings/63b61e4a-dc11-4ee0-a6b1-f4860bd29198)|3|20250206|アイテムを取得する|[docs](https://niceshadow.gitbook.io/nice-interaction-system)|
|
||||
|[magicalanimset](https://www.fab.com/ja/listings/a63386b8-7cad-42cd-8b81-a9de147e1f08)|3|20241222|少女の戦闘アニメーション||
|
||||
|[space frontier stations & ships](https://www.fab.com/listings/79323b40-dc56-43bf-8aea-b13800266329)|1|20241114|宇宙船のシステム|[docs](https://docs.google.com/document/d/1p5MY13cpTlVtqP7sCQpAoE_k5VHklmndZ4cHeBy105Y/)|
|
||||
|[logicdriver](https://www.fab.com/ja/listings/a3e2fc1f-2aaa-49a1-bc26-4d5d38f7d82f)|3|20241212|ロジックのシステム|[docs](https://logicdriver.com/docs/pages/prochangelog/)|
|
||||
|[dragon ik plugin](https://www.fab.com/ja/listings/d3f8d256-d8d9-4d27-91c1-c61e55e984a6)|3|20250122|animをターゲットに追従|[docs](https://dragonik.eternalmonke.com/)|
|
||||
|[replicated interaction kit vol 3](https://www.fab.com/ja/listings/3ce13688-fd10-462f-b90d-964c85a090ad)|1|20241115|椅子に座る||
|
||||
|
||||
`rank`は更新頻度(追加)や価格から判断されます。`3`のassetがオススメです。
|
||||
|
7
book/unity/README.md
Normal file
@ -0,0 +1,7 @@
|
||||
# unity
|
||||
|
||||
[unity](https://unity.com/ja)
|
||||
|
||||
|plugin|body|
|
||||
|---|---|
|
||||
|https://github.com/vrm-c/UniVRM|vrmを読み込む|
|
Before Width: | Height: | Size: 63 KiB After Width: | Height: | Size: 63 KiB |
BIN
img/ai.png
Normal file
After Width: | Height: | Size: 140 KiB |
BIN
img/ai_min.png
Normal file
After Width: | Height: | Size: 17 KiB |
Before Width: | Height: | Size: 95 KiB After Width: | Height: | Size: 95 KiB |
Before Width: | Height: | Size: 476 KiB After Width: | Height: | Size: 476 KiB |
BIN
img/ep1.png
Normal file
After Width: | Height: | Size: 866 KiB |
BIN
img/ep2.png
Normal file
After Width: | Height: | Size: 1.2 MiB |
BIN
img/ep3.png
Normal file
After Width: | Height: | Size: 433 KiB |
BIN
img/ue.mdp
Normal file
BIN
img/ue.png
Normal file
After Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 174 KiB After Width: | Height: | Size: 174 KiB |
Before Width: | Height: | Size: 93 KiB After Width: | Height: | Size: 93 KiB |
Before Width: | Height: | Size: 792 KiB After Width: | Height: | Size: 792 KiB |
Before Width: | Height: | Size: 64 KiB After Width: | Height: | Size: 64 KiB |
Before Width: | Height: | Size: 960 KiB After Width: | Height: | Size: 960 KiB |
Before Width: | Height: | Size: 1.5 MiB After Width: | Height: | Size: 1.5 MiB |
Before Width: | Height: | Size: 510 KiB After Width: | Height: | Size: 510 KiB |
Before Width: | Height: | Size: 964 KiB After Width: | Height: | Size: 964 KiB |
Before Width: | Height: | Size: 1.1 MiB After Width: | Height: | Size: 1.1 MiB |
Before Width: | Height: | Size: 427 KiB After Width: | Height: | Size: 427 KiB |
Before Width: | Height: | Size: 372 KiB After Width: | Height: | Size: 372 KiB |
Before Width: | Height: | Size: 1.5 MiB After Width: | Height: | Size: 1.5 MiB |
Before Width: | Height: | Size: 225 KiB After Width: | Height: | Size: 225 KiB |
Before Width: | Height: | Size: 255 KiB After Width: | Height: | Size: 255 KiB |
Before Width: | Height: | Size: 760 KiB After Width: | Height: | Size: 760 KiB |
Before Width: | Height: | Size: 675 KiB After Width: | Height: | Size: 675 KiB |
Before Width: | Height: | Size: 266 KiB After Width: | Height: | Size: 266 KiB |
@ -1,56 +0,0 @@
|
||||
--- ./VMC4UE/VMC4UE/Source/VMC4UE/Source/VMC4UEBlueprintFunctionLibrary.cpp
|
||||
+++ ./VMC4UEBlueprintFunctionLibrary.cpp
|
||||
@@ -119,27 +119,29 @@ UVMC4UEStreamingSkeletalMeshTransform* UVMC4UEBlueprin
|
||||
{
|
||||
return nullptr;
|
||||
}
|
||||
-
|
||||
+
|
||||
+ UVMC4UEStreamingSkeletalMeshTransform* StreamingSkeletalMeshTransform = nullptr;
|
||||
+
|
||||
+ // Try to get existing transform
|
||||
{
|
||||
- // Get
|
||||
FRWScopeLock RWScopeLock(OSCManager->RWLock, FRWScopeLockType::SLT_ReadOnly);
|
||||
- auto StreamingSkeletalMeshTransform = OSCManager->StreamingSkeletalMeshTransformMap.Find(Port);
|
||||
- if (StreamingSkeletalMeshTransform != nullptr)
|
||||
+ auto FoundTransform = OSCManager->StreamingSkeletalMeshTransformMap.Find(Port);
|
||||
+ if (FoundTransform != nullptr)
|
||||
{
|
||||
- return *StreamingSkeletalMeshTransform;
|
||||
+ return *FoundTransform;
|
||||
}
|
||||
}
|
||||
+
|
||||
+ // Create new transform if not found
|
||||
{
|
||||
- // Create
|
||||
FRWScopeLock RWScopeLock(OSCManager->RWLock, FRWScopeLockType::SLT_Write);
|
||||
- auto StreamingSkeletalMeshTransform = OSCManager->StreamingSkeletalMeshTransformMap.Find(Port);
|
||||
- if (StreamingSkeletalMeshTransform != nullptr)
|
||||
+ auto FoundTransform = OSCManager->StreamingSkeletalMeshTransformMap.Find(Port);
|
||||
+ if (FoundTransform != nullptr)
|
||||
{
|
||||
- return *StreamingSkeletalMeshTransform;
|
||||
+ return *FoundTransform;
|
||||
}
|
||||
- UVMC4UEStreamingSkeletalMeshTransform* NewStreamingSkeletalMeshTransform = NewObject<UVMC4UEStreamingSkeletalMeshTransform>();
|
||||
|
||||
- //FRWScopeLock RWScopeLock2(NewStreamingSkeletalMeshTransform->RWLock, FRWScopeLockType::SLT_Write);
|
||||
+ UVMC4UEStreamingSkeletalMeshTransform* NewStreamingSkeletalMeshTransform = NewObject<UVMC4UEStreamingSkeletalMeshTransform>();
|
||||
OSCManager->StreamingSkeletalMeshTransformMap.Emplace(Port, NewStreamingSkeletalMeshTransform);
|
||||
|
||||
// Bind Port
|
||||
@@ -149,9 +151,10 @@ UVMC4UEStreamingSkeletalMeshTransform* UVMC4UEBlueprin
|
||||
|
||||
OSCManager->OscReceivers.Emplace(OscReceiver);
|
||||
|
||||
- return NewStreamingSkeletalMeshTransform;
|
||||
+ StreamingSkeletalMeshTransform = NewStreamingSkeletalMeshTransform;
|
||||
}
|
||||
- return nullptr;
|
||||
+
|
||||
+ return StreamingSkeletalMeshTransform;
|
||||
}
|
||||
|
||||
void UVMC4UEBlueprintFunctionLibrary::RefreshConnection(float Seconds)
|
@ -1,25 +0,0 @@
|
||||
--- ./VMC4UE/Source/VMC4UEEd/Source/VMC4UEBoneMappingAssetFactory.cpp
|
||||
+++ ./VMC4UEBoneMappingAssetFactory.cpp
|
||||
@@ -5,6 +5,8 @@
|
||||
#include "../../VMC4UE/Include/VMC4UEStreamingData.h"
|
||||
#include "Dom/JsonObject.h"
|
||||
#include "JsonObjectConverter.h"
|
||||
+#include "UObject/ConstructorHelpers.h"
|
||||
+#include "UObject/UObjectGlobals.h"
|
||||
|
||||
UVMC4UEBoneMappingAssetFactory::UVMC4UEBoneMappingAssetFactory(const FObjectInitializer &ObjectInitializer)
|
||||
: Super(ObjectInitializer)
|
||||
@@ -26,11 +28,12 @@
|
||||
return UVMC4UEVRMMapping::StaticClass();
|
||||
}
|
||||
|
||||
+
|
||||
UObject *UVMC4UEBoneMappingAssetFactory::FactoryCreateText(UClass *InClass, UObject *InParent, FName InName, EObjectFlags Flags, UObject *Context, const TCHAR *Type, const TCHAR *&Buffer, const TCHAR *BuferEnd, FFeedbackContext *Warn)
|
||||
{
|
||||
FString TextData = FString(Buffer);
|
||||
|
||||
- UVMC4UEVRMMapping *NewAsset = CastChecked<UVMC4UEVRMMapping>(StaticConstructObject_Internal(InClass, InParent, InName, Flags));
|
||||
+ UVMC4UEVRMMapping* NewAsset = NewObject<UVMC4UEVRMMapping>(InParent, InClass, InName, Flags);
|
||||
if (!IsValid(NewAsset))
|
||||
{
|
||||
return nullptr;
|
@ -1,23 +0,0 @@
|
||||
vmc4ue patch rebuild for `ue5.4`
|
||||
|
||||
- https://github.com/HAL9HARUKU/VMC4UE
|
||||
- https://github.com/HAL9HARUKU/ueOSC
|
||||
- https://github.com/HAL9HARUKU/VRMMapExporter
|
||||
- https://github.com/vrm-c/UniVRM
|
||||
|
||||
[unity](https://unity.com/)で`VRMMapExporter`から`$model.vrmmap`を作る。ABPで読み込む。
|
||||
|
||||
`VMC4UE`は`$project.sln`を生成して`visual studio solution`でrebuildする。
|
||||
|
||||
ただし、この方法で表情を動かすことはできない。
|
||||
|
||||
```sh
|
||||
$ git clone https://github.com/HAL9HARUKU/VMC4UE
|
||||
$ cd VMC4UE
|
||||
$ git reset --hard b5a6cf96e5928551d8e3e20b74705e3e8f22a1df
|
||||
$ cd ..
|
||||
|
||||
# example
|
||||
$ patch -u ./VMC4UE/VMC4UE/Source/VMC4UE/Source/VMC4UEBlueprintFunctionLibrary.cpp < VMC4UEBlueprintFunctionLibrary.cpp.patch
|
||||
$ patch -u ./VMC4UE/VMC4UE/Source/VMC4UEEd/Source/VMC4UEBoneMappingAssetFactory.cpp < VMC4UEBoneMappingAssetFactory.cpp.patch
|
||||
```
|
83
readme.md
@ -5,87 +5,4 @@
|
||||
|
||||
see [ue.json](https://git.syui.ai/ai/ue/src/branch/main/ue.json)
|
||||
|
||||
## log
|
||||
|
||||
|version|commit|
|
||||
|---|---|
|
||||
|v0.1 β|world create|
|
||||
|v0.2 β|support web|
|
||||
|v0.3 β|support vmc|
|
||||
|v0.4 β|support at|
|
||||
|v0.5 β|support battle|
|
||||
|
||||
## at
|
||||
|
||||
the player data is stored in the pds.
|
||||
|
||||
```sh
|
||||
├── [yui.syui.ai]
|
||||
│ ├── ai.syui.game.user
|
||||
│ │ ├── lv
|
||||
│ │ ├── hp
|
||||
│ │ └── coin
|
||||
│ └── ai.syui.game.login
|
||||
│ ├── login <bool>
|
||||
│ ├── updatedAt
|
||||
│ └── username
|
||||
└─── [user.bsky.social]
|
||||
└── ai.syui.game
|
||||
├── account <at://yui.syui.ai...>
|
||||
└── createdAt
|
||||
```
|
||||
|
||||
```sh
|
||||
# https://git.syui.ai/ai/at/src/branch/main/lexicons/ai/syui/game
|
||||
$ ./at.zsh u at://did:plc:4hqjfn7m6n5hno3doamuhgef/ai.syui.game.user/syui
|
||||
{
|
||||
"uri": "at://did:plc:4hqjfn7m6n5hno3doamuhgef/ai.syui.game.user/syui",
|
||||
"cid": "bafyreigijd4vonyzgjkzotrbtq5j5gyoecokoij3u7jw4sqnx6wkh7attq",
|
||||
"value": {
|
||||
"did": "did:plc:uqzpqmrjnptsxezjx4xuh2mn",
|
||||
"$type": "ai.syui.game.user",
|
||||
"aiten": 0,
|
||||
"limit": false,
|
||||
"login": false,
|
||||
"gender": "male",
|
||||
"handle": "syui.ai",
|
||||
"character": {
|
||||
"ai": {
|
||||
"hp": 9,
|
||||
"lv": 1,
|
||||
"exp": 0,
|
||||
"img": "https://cdn.bsky.app/img/feed_thumbnail/plain/did:plc:4hqjfn7m6n5hno3doamuhgef/bafkreie34pjuc6coenzcdwrgrh4fbacq7bkhsz263g5vpbsqxwaz37kkwy@jpeg",
|
||||
"mode": 0,
|
||||
"rank": 0,
|
||||
"group": "origin",
|
||||
"attach": 0,
|
||||
"season": 0,
|
||||
"critical": 1,
|
||||
"critical_d": 0,
|
||||
"attach_post": 14102
|
||||
}
|
||||
},
|
||||
"createdAt": "2024-11-29T21:34:27.833Z",
|
||||
"updatedAt": "2024年12月8日 11:25:17 GMT"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## service
|
||||
|
||||
|title|url|
|
||||
|---|---|
|
||||
|game|https://ue.syui.ai|
|
||||
|live|https://live.syui.ai|
|
||||
|chat|https://o.syui.ai|
|
||||
|
||||
## support
|
||||
|
||||
`windows 64bit`
|
||||
|
||||
|title|spec|
|
||||
|---|---|
|
||||
|cpu|AMD Ryzen 7 5700X|
|
||||
|memory|32GB / DDR4-3200 DIMM (PC4-25600)|
|
||||
|gpu|GeForce RTX 4060Ti 8GB|
|
||||
|storage|1TB M.2 NVMe SSD|
|
||||
|
BIN
verse/img/ep.mdp
BIN
verse/img/ep.png
Before Width: | Height: | Size: 433 KiB |
Before Width: | Height: | Size: 709 KiB |
Before Width: | Height: | Size: 117 KiB |
Before Width: | Height: | Size: 1.2 MiB |
Before Width: | Height: | Size: 432 KiB |
Before Width: | Height: | Size: 145 KiB |
Before Width: | Height: | Size: 252 KiB |
Before Width: | Height: | Size: 327 KiB |
Before Width: | Height: | Size: 202 KiB |
BIN
verse/img/ue.mdp
BIN
verse/img/ue.png
Before Width: | Height: | Size: 561 KiB |
BIN
verse/img/wa.png
Before Width: | Height: | Size: 140 KiB |
Before Width: | Height: | Size: 133 KiB |
@ -1,16 +0,0 @@
|
||||
# syui・ai
|
||||
|
||||
(シュイ・アイ)
|
||||
|
||||
THE FUZZY ONE
|
||||
|
||||
|title|body|
|
||||
|---|---|
|
||||
|nickname|syai|
|
||||
|age|∞|
|
||||
|height|123cm|
|
||||
|birthday|1/23|
|
||||
|lang|ja & en|
|
||||
|text|「hello ai !」 一つの言葉しか覚えられない。自分やリスナーのことをアイと呼ぶ。世界を作るのが趣味。普段は地球を歩き回っている。|
|
||||
|en|"Hello Ai!" I can only remember one word. I call myself and my listeners Ai. My hobby is creating worlds. I usually walk around the Earth.|
|
||||
|
@ -1,54 +0,0 @@
|
||||
# Unreal Engine 5.4 | 初めてのゲーム制作、世界を作る
|
||||
|
||||
## vrm4u
|
||||
|
||||
キャラクターを表示しよう。
|
||||
|
||||
## game animation sample
|
||||
|
||||
今後はこの形式が基本になりそう。
|
||||
|
||||
## city sample
|
||||
|
||||
最初に難易度と負荷を高くする。
|
||||
|
||||
## sky atmoshpere + volumetric cloud
|
||||
|
||||
`dynamic volumetric sky -> ultra dynamic sky`
|
||||
|
||||
## whisper + chatgpt + elevenlabs
|
||||
|
||||
- whisper : RuntimeSpeechRecognizer
|
||||
|
||||
```sh
|
||||
# perplexity.ai
|
||||
$ curl https://api.openai.com/v1/chat/completions \
|
||||
-H "Content-Type: application/json" \
|
||||
-H "Authorization: Bearer YOUR_API_KEY" \
|
||||
-d '{
|
||||
"model": "gpt-4o-mini",
|
||||
"messages": [{"role": "user", "content": "Your question here"}],
|
||||
"temperature": 0.7
|
||||
}'
|
||||
```
|
||||
|
||||
```sh
|
||||
# perplexity.ai
|
||||
$ curl -X POST "https://api.elevenlabs.io/v1/text-to-speech/VOICE_ID" \
|
||||
-H "xi-api-key: YOUR_API_KEY" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{
|
||||
"text": "Hello world!",
|
||||
"model_id": "eleven_monolingual_v1",
|
||||
"voice_settings": {
|
||||
"stability": 0.5,
|
||||
"similarity_boost": 0.5
|
||||
}
|
||||
}' \
|
||||
--output output.mp3
|
||||
```
|
||||
|
||||
## ue vs unity
|
||||
|
||||
ueは手順通りやっても動くことは稀。つまり、動かない。そのため情報も少ない。unityがおすすめ。
|
||||
|
@ -1,26 +0,0 @@
|
||||
# aiverse
|
||||
|
||||
aiverse project.
|
||||
|
||||
- https://youtube.com/@syai
|
||||
|
||||
## AI
|
||||
|
||||
```json
|
||||
{
|
||||
"music": "https://suno.com/@syui",
|
||||
"anime": "https://domoai.app",
|
||||
"3d": "https://tripo3d.ai"
|
||||
}
|
||||
```
|
||||
|
||||
## ref
|
||||
|
||||
- [octoverse](https://octoverse.github.com/)
|
||||
- [hololive](https://hololive.hololivepro.com/talents?gp=myth)
|
||||
|
||||
##
|
||||
|
||||
character, lyrics, composition, illustrations, game production, modeling, etc.
|
||||
|
||||
© syui
|