본문 바로가기

LEGO 기타

새로운 브릭 가져오기(레고 인스앱)

최근에 신작 제품들을 Studio로 작업하는 와중에,

LDraw커뮤니티나 파트 트랙리스트에도 좀처럼 업데이트가 되지 않는 것들이 있어서,

'고기 잡는 법'을 배우기로 했습니다.

 

다행히 큰 도움이 된 글이 있었습니다.

 

https://forums.ldraw.org/thread-27695-post-54011.html#pid54011

 

LDraw 커뮤니티의 한 쓰레드에 있던 댓글인데요.

LDraw 회원이 아닌 분들을 위해 내용을 그대로 복사해보면..

 

1. Download Bluestacks (Android Emulator for PC)
2. Download Lego Builder app on the play store.
3. Find the set you want. Keep in mind only the ones with the green brick icon in the corner will work.
4. Open the 3D digital instructions and wait till they're done downloading.
5. Exit Lego Builder app and download RAR or any other archive application.
6. Open RAR and navigate to Android/data and look for a folder named com.lego.legobuildinginstructions
7. Archive the folder and Save it on File Manager.
8. Through the default File Manager application select it and choose "Send to Windows" and save it in your desired folder.

9. Go to System Settings in Bluestacks, navigate to the Lego Builder app and clear the cache and storage (It's necessary so the files don't get mixed up from different sets.)
10. Extract the contents of the archive you've just exported through Bluestacks to a desired folder.
10. Download AssetRipper (https://github.com/AssetRipper/AssetRipper), extract the archive contents to a desired folder.
11. Open AssetRipper.exe and go to File -> Open Folder and choose the "com.lego.legobuildinginstructions" folder you got from Bluestacks.
12. Once AssetRipper does its thing go to Export -> Export all files and choose your desired folder.
13. You will now have a folder that will contain one named "ExportedProject", within it look for the folder "decorations" or "decals", there you can find all the textures/prints used in the set.
==============(OPTIONAL) HOW TO EXTRACT MODELS ==============
13. Download Unity, any version will work.
14. In Unity Hub Explorer go to Open and navigate to the exported folder from AssetRipper and within it look for the one named "ExportedProject". Ignore the unity warning and choose to open with the version you have installed.
15. Once the scene has loaded go to Window -> Package Manager -> Packages: Unity Registry (switch from "In project") -> FBX Exporter. Install it.
16. Search the Assets folder inside Unity by type (Prefab or Mesh) and drag the desired object onto the scene.
17. In the Hierarchy select Right-click on the model name and choose Export to FBX.
18. Change the export for mat to Binary and export it to your desired folder.

 

 

 

아주 긴 여정이지만,

사용하는 프로그램별로 요약하면,

1-1. 블루스택스(가상 안드로이드 에뮬레이터): 레고 인스트럭션 앱 설치, 원하는 모델 선택후 조립 화면까지 본 뒤 종료.

1-2. 블루스택스: RAR로 인스트럭션 DATA 폴더 압축 후 데스크탑으로 보냄. -> 압축 해제.

2. Asset Ripper: 받은 파일을 유니티에서 사용할 수 있도록 변환.

3-1. 유니티: 유니티에서 FBX 변환 필터 설치.

3-2. 유니티: 유니티에서 ASSET을 불러온 뒤 화면에 원하는 브릭 가져와서 FBX로 내보내기

4. 블렌더: FBX파일을 가져와서 OBJ로 내보내기

5. 파트디자이너: OBJ파일을 가져와서 알맞게 수정후 Studio로 보내기.

 

이렇습니다.

그러니, Studio/파트디자이너를 제외하고 4개의 프로그램이 필요합니다.

 

 

그럼.. 스크린샷을 보면서 한단계씩 설명해보겠습니다.

참고로, 스크린샷의 설명은 스크린샷 아래에 있습니다.

 

 

블루스택스를 설치하고 실행하면 이런 화면이 나옵니다.

여기서 lego로 검색하면 결과가 없다고 나오고, 아래에 구글 플레이앱 열기 아이콘이 나오는데 이걸 클릭.

 

구글 플레이 진입할 때 구글 로그인이 필요합니다.

이 때 기본 사양으로 가상의 Plus One 타블렛 기기로 접속하게 되니,

로그인 이력 보실 때 참고하시기 바랍니다.

아무튼.. 거기 들어가면 일반적인 구글 플레이처럼 사용이 가능하고,

역기서 레고 빌드 가이드를 설치합니다.

 

원하는 모델을 검색해서 조립하기 아이콘 클릭.

 

조립 시작을 누릅니다.

그러면 필요한 데이터를 다운로드 합니다.

 

제대로 3D모델이 나오는지 확인후,

어플을 종료합니다.

 

다시 구글플레이 홈으로 돌아와서,

RAR어플을 설치합니다.

 

그리고 Android/data폴더로 이동.

이 폴더 전체를 체크하고, 압축을 합니다.

 

압축이 잘 진행되고 있습니다.

 

압축파일이 생겼습니다.

 

다시 구글플레이 홈으로 돌아와서,

시스템앱의 미디어 매니저(탐색기)를 실행합니다.

 

아까 압축파일이 있던 Android/data폴더로 가서,

압축된 파일을 선택하고, (길게 클릭하면 됩니다)

윈도우즈로 보내기를 클릭합니다.

 

그럼 다운로드 화면이 나오고, 원하는 곳에 저장.

그리고 압축을 풀면 이렇게 두개의 폴더가 나옵니다.

 

이제 github에서 유니티 애셋 변환기를 받아봅시다.

https://github.com/AssetRipper/AssetRipper

위의 링크에 간 뒤, 다운로드 페이지를 찾아가면,

여러가지 운영체제에서 사용 가능한 것이 나옵니다.

저는 윈도우를 사용해서 윈도우 버전 다운로드 후 설치.

 

실행을 하면, 웹브라우저 형식으로 작동합니다.

여기서 파일 메뉴에서 폴더 가져오기를 합니다.

이때 선택은 아까 다운로드 해서 받았던 폴더.

 

그러면 변환 작업이 진행되고,

2개의 폴더가 생깁니다.

 

이제 유니티로 갑시다.

유니티 허브를 설치하고, 새로운 프로젝트를 시작합니다.

3D프로젝트를 만듭니다.

 

시작화면 메뉴 중, Window->Package Manager를 선택하면 이런 화면이 나옵니다.

 

좌측 상단의 Packages를, In project에서 Unity Registry로 변경하면,

다양한 플러그인들이 나오는데,

그중에서 FBX Exporter를 선택하여 설치합니다.

 

그리고 아까 유니티 애셋 변환기에서 생성했던 폴더로 갑니다.

AuxilaryFiles/ExportedProject/Assets/Mesh 폴더로 이동합니다.

여기보면, asset확장자 파일들이 있는데,

이걸 다 드래그해서, 유니티 작업화면의 'Assets' 창에 가져갑니다.

 

그럼 Assets창에 다양한 브릭들이 나열된걸 보실수 있습니다.

중앙 팔레트에는 리스트가 있고,

이 중 하나를 클릭하면 오른편에 확대창이 나옵니다.

오른편 확대창에서는 해당 모델을 이리저리 돌려볼수 있습니다.

 

원하는 모델을 중앙의 작업화면으로 드래그하면 해당 모델이 나옵니다.

좌측편에 리스트에도 나타나는데,

헷갈리지 않도록 브릭 번호를 찾아서 써놓으면 좋습니다.

 

이제 좌측 리스트에서 원하는 모델을 우클릭합니다.

그 중 Export to FBX를 선택.

 

변환 옵션이 나오는데, 여기서 Export Format을 ASCII에서 Binary로 바꾼후 Export를 눌러 저장합니다.

 

그럼 해당 모델의 fbx파일이 생성됩니다.

 

FBX파일은 블렌더에서 읽을 수 있는 파일입니다.

블렌더를 실행해서, 파일 메뉴의 Import 기능 중 FBX파일 가져오기를 합니다.

 

원하는 모델을 선택후 Import.

 

작업화면서 해당 모델이 들어왔습니다.

 

이걸 이제 파트 디자이너에서 읽을 수 있는 OBJ파일로 넘깁니다.

 

파트 디자이너 실행후,

Import기능으로 해당 OBJ파일을 가져옵니다.

참고로 가져올 때 해당 브릭의 크기를 알고 있으면 훨씬 좋습니다.

 

깔끔하게 브릭이 들어왔습니다.

 

이제 브릭 연결 설정을 하고 Studio로 넘기면 바로 사용할 수 있습니다.

 

 

그리고 당연한 이야기이지만, 렌더링도 문제 없습니다.

 

참고로.. 어떤 브릭이든 상단 스터드는 없는 상태로 넘어오는데요..

Studio에 없는 브릭들 중에 이런 종류의 브릭이 많지는 않겠지만,

이런 경우에는 파트 디자이너에서 간단하게 스터드를 넣을 수 있기 때문에 큰 문제는 되지 않을 것 같습니다.