Unreal Engine의 협업환경 구성에서 어려움이 있었다.
Unreal Engine의 협업 환경은 크게 Perforce, SVN, Git 이 있습니다.
Perforce 의 경우 서버 컴퓨터가 존재해야하고, SVN은 용량이슈가 있어서 Git을 선택했습니다.
1. 너무 큰 프로젝트 파일이 git에 올라가지 않아 문제가 있었다.
처음 시도했던건 프로젝트 파일에 필수요소만 올리는 것이었는데, .gitignore 파일은 다음과 같이 구성했었다.
# Visual Studio 2015 user specific files
.vs/
# Compiled Object files
*.slo
*.lo
*.o
*.obj
# Precompiled Headers
*.gch
*.pch
# Compiled Dynamic libraries
*.so
*.dylib
*.dll
# Fortran module files
*.mod
# Compiled Static libraries
*.lai
*.la
*.a
*.lib
# Executables
*.exe
*.out
*.app
*.ipa
# These project files can be generated by the engine
*.xcodeproj
*.xcworkspace
*.sln
*.suo
*.opensdf
*.sdf
*.VC.db
*.VC.opendb
# Precompiled Assets
SourceArt/**/*.png
SourceArt/**/*.tga
# Binary Files
Binaries/*
Plugins/*/Binaries/*
# Builds
Build/*
# Whitelist PakBlacklist-<BuildConfiguration>.txt files
!Build/*/
Build/*/**
!Build/*/PakBlacklist*.txt
# Don't ignore icon files in Build
!Build/**/*.ico
# Built data for maps
*_BuiltData.uasset
# Configuration files generated by the Editor
Saved/*
# Compiled source files for the engine to use
Intermediate/*
Plugins/*/Intermediate/*
# Cache files for the editor to use
DerivedDataCache/*
하지만 Content 파일 자체가 너무 커서 (약 20GB)
우리는 처음에 uasset 파일을 모두 제거하는 방식으로 접근하려고 했었다.
*.uasset
하지만, 그렇게되면 umap의 모든 에셋또한 사라진다.
따라서 Content의 umap이 저장된
Content/__ExternalActors__/*
Content/__ExternalObjects__/*
파일을 제외시키는 것으로 .gitignore을 작성하였다.
# Visual Studio 2015 user specific files
.vs/
# Compiled Object files
*.slo
*.lo
*.o
*.obj
# Precompiled Headers
*.gch
*.pch
# Compiled Dynamic libraries
*.so
*.dylib
*.dll
# Fortran module files
*.mod
# Compiled Static libraries
*.lai
*.la
*.a
*.lib
# Executables
*.exe
*.out
*.app
*.ipa
# These project files can be generated by the engine
*.xcodeproj
*.xcworkspace
*.sln
*.suo
*.opensdf
*.sdf
*.VC.db
*.VC.opendb
# Precompiled Assets
SourceArt/**/*.png
SourceArt/**/*.tga
# Binary Files
Binaries/*
Plugins/*/Binaries/*
# Builds
Build/*
# Whitelist PakBlacklist-<BuildConfiguration>.txt files
!Build/*/
Build/*/**
!Build/*/PakBlacklist*.txt
# Don't ignore icon files in Build
!Build/**/*.ico
# Built data for maps
*_BuiltData.uasset
# Configuration files generated by the Editor
Saved/*
# Compiled source files for the engine to use
Intermediate/*
Plugins/*/Intermediate/*
# Cache files for the editor to use
DerivedDataCache/*
!/Content/__ExternalActors__/*
!/Content/__ExternalObjects__/*
#ignore Assets
Content/Art_Background
Content/Collections
Content/ConstructionMachines
Content/Developers
Content/EuropeanHornbeam
Content/Megascans
Content/MSPresets
Content/NoneArt
Content/Resource
Content/RuralAustralia
Content/Scanned3DPeoplePack
Content/TrafficSign
Content/TrainStation
Content/VertexAnimatedFlags
그 결과 협업 환경을 구성할 수 있었다.
'Unreal Engine5 > 메타버스 개발자 경진대회' 카테고리의 다른 글
PlaneLevel 구현. -Actor이동, Camera ViewTarget변경 (0) | 2023.07.14 |
---|---|
건물가격 상정 (0) | 2023.07.14 |
구조도 (0) | 2023.07.13 |
BP project 에 C++ 코드 추가 (0) | 2023.07.12 |
메타버스 개발자 경진대회 참가기록 (0) | 2023.07.11 |