collada(콜라다) 파일을 gltf 파일로 변환하기
구현 방식은 OS에 맞는(윈도우) 변환용 실행 파일(exe)을 내려받고, JAVA를 통해 이 명령을 실행하여 변환하며, 변환 결과에 대한 상태 값을 출력한다.
- 1. 다운로드 페이지에 접속한다
- https://github.com/KhronosGroup/COLLADA2GLTF
- 2. releases 링크 클릭
- 3. 파일 다운로드 및 압축해제
- COLLADA2GLTF-v2.1.4-windows-Release-x64.zip
- 4. 다음과 같이 gltf 변환 명령 실행
-
- 4.1) 기본 사용 방식 : 텍스처가 gltf 안에 포함됨
- COLLADA2GLTF-bin 20181113.dae 20181113.gltf
- 4.2) 텍스처가 뒤집혀서 모델 색상이 잘 보이지 않을때 시도해봄
- COLLADA2GLTF-bin 20181113.dae 20181113.gltf --doubleSided
- 4.3) glb로 변환하고자 할때 사용
- COLLADA2GLTF-bin 20181113.dae 20181113.gltf --binary
- 4.4) 그 밖에...
- - 텍스처를 별도의 파일로 두는 옵션도 있음
- - 기존 gltf 파일은 따로 삭제하지 않아도 자동 덮어치기됨
Java에서 COLLADA2GLTF 명령을 실행하여 gltf 파일로 변환하기
//collada --> gltf 변환 시작 ==========
String[] cmds = new String[] {
"C:\\COLLADA2GLTF-v2.1.4-windows-Release-x64\\COLLADA2GLTF-bin"
, "C:\\model\\2018.dae"
, "C:\\model\\2018.gltf"
, "--doubleSided"
};
//기존 gltf 파일은 따로 삭제하지 않아도 자동 덮어치기됨
//Process process = new ProcessBuilder("cmd", "dir", "/w").start();
Process process = new ProcessBuilder(cmds).start();
BufferedReader stdOut = new BufferedReader(new InputStreamReader(process.getInputStream()));
String str = null;
// 표준출력 상태를 출력
while( (str = stdOut.readLine()) != null ) {
System.out.println(str);
LOGGER.debug(">>>Windows cmd 명령줄 출력:"+str);
}
//collada --> gltf 변환 끝 ==========