블로그 이미지
Every unexpected event is a path to learning for you. blueasa

카테고리

분류 전체보기 (2797)
Unity3D (853)
Programming (479)
Server (33)
Unreal (4)
Gamebryo (56)
Tip & Tech (185)
협업 (61)
3DS Max (3)
Game (12)
Utility (68)
Etc (98)
Link (32)
Portfolio (19)
Subject (90)
iOS,OSX (55)
Android (14)
Linux (5)
잉여 프로젝트 (2)
게임이야기 (3)
Memories (20)
Interest (38)
Thinking (38)
한글 (30)
PaperCraft (5)
Animation (408)
Wallpaper (2)
재테크 (18)
Exercise (3)
나만의 맛집 (3)
냥이 (10)
육아 (16)
Total
Today
Yesterday

Unity 2021.3.16f1

Burst 1.6.6

----

 

유니티에서 필요한 에셋을 추가(Magica Cloth)하니 Package Manager에서 Burst도 추가를 요구한다.

추가하고 빌드하니 아래와 같은 폴더를 자동생성하고 있다.

 

[폴더명 예시] BuildName_BurstDebugInformation_DoNotShipDeleter

 

그래서 이전에 했던방식과 같이 OnPostprocessBuild에서 빌드 후 삭제하기로 함

 

using System.IO;
using UnityEditor;
using UnityEditor.Build;
using UnityEditor.Build.Reporting;

/// <summary>
/// Burst 관련 빌드 후 생성되는 백업 폴더 삭제
/// </summary>
public sealed class BurstDebugInformation_DoNotShipDeleter : IPostprocessBuildWithReport
{
    public int callbackOrder => 0;
    // 확정된 폴더명은 readonly 변수로 만듬
    private readonly string m_strBurstDebugInformation_DoNotShip = "BurstDebugInformation_DoNotShip";

    public void OnPostprocessBuild(BuildReport report)
    {
        var summary = report.summary;
        var platform = summary.platform;

        if (platform != BuildTarget.StandaloneWindows 
            && platform != BuildTarget.StandaloneWindows64
            && platform != BuildTarget.Android  // Android 플랫폼에서도 작동하도록 추가
            && platform != BuildTarget.iOS)     // iOS 플랫폼에서도 작동하도록 추가
        {
            return;
        }

        if (summary.options.HasFlag(BuildOptions.Development))
        {
            return;
        }

        var outputPath = summary.outputPath;
        var outputDirectoryPath = Path.GetDirectoryName(outputPath);

        // 빌드 폴더 이름이 FileName을 따라가서 FileName을 폴더명으로 쓰도록 수정
        var outputFileName = Path.GetFileNameWithoutExtension(outputPath);
        //var productName = PlayerSettings.productName;

        var backUpThisFolderPath = $"{outputDirectoryPath}/{outputFileName}_{m_strBurstDebugInformation_DoNotShip}";

        if (!Directory.Exists(backUpThisFolderPath))
        {
            return;
        }

        Directory.Delete(backUpThisFolderPath, true);
    }
}

 

[참조] https://forum.unity.com/threads/burstdebuginformation_donotship-in-builds.1172273/

 

BurstDebugInformation_DoNotShip in builds

After a fairly recent update to Burst, I'm not seeing a folder named this in my builds: Gravia_BurstDebugInformation_DoNotShip A couple of questions:...

forum.unity.com

 

반응형
Posted by blueasa
, |