ue/book/city/00_issue.md
2025-02-22 11:32:32 +09:00

4.5 KiB
Raw Permalink Blame History

issue

issue

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です。

<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 projects automated build and test.

これは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から持ってきた$(EngineDir)\Plugins\Performance\AutomatedPerfTesting\Build\Scripts\AutomatedPerfTestConfig.cs, $(EngineDir)\Plugins\Performance\AutomatedPerfTesting\Build\Scripts\AutomatedPerfTestNode.csを同ディレクトリに置きます。

また、CitySampleCookedEditor.Target.csを削除するとbuildが通ったという報告があります。

https://forums.unrealengine.com/t/automatedperftesting-plugin-does-not-build-when-building-city-sample-in-ue5-5/2134722/9

問題が起こったときに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.iniDDCVar.NewGameplayCameraSystem.Enableを追加し、関数であるSetup Cameraを実行している場合、characterのcollisionが機能せず地面に埋まってしまう問題があります。

  • Gameplay Camera
  • Setup Camera
  • DDCVar.NewGameplayCameraSystem.Enable
[/Script/Engine.DataDrivenConsoleVariableSettings]
+CVarsArray=(Type=CVarBool,Name="DDCVar.NewGameplayCameraSystem.Enable",ToolTip="",DefaultValueFloat=0.000000,DefaultValueInt=0,DefaultValueBool=True)

Setup Cameraを実行しないようにするか、DDCVar.NewGameplayCameraSystem.Enableをfalseにします。