20140514 team blender_v01 (korean)

31
BLENDER 오픈소스 3D 그래픽스 소프트웨어 (주)이디 R&D 본부 파워트레인팀(기구개발팀) 김동호, 2014.05.14 팀세미나

Upload: dongho-kim

Post on 15-Feb-2017

867 views

Category:

Engineering


5 download

TRANSCRIPT

Page 1: 20140514 team blender_v01 (Korean)

BLENDER 오픈소스 3D 그래픽스 소프트웨어

(주)이디 R&D 본부

파워트레인팀(기구개발팀)

김동호, 2014.05.14

팀세미나

Page 2: 20140514 team blender_v01 (Korean)

Blender ?

Page 3: 20140514 team blender_v01 (Korean)

누가 만들었나?

창시자 : 톤 로젠달(Ton Roosendal) from 네덜란드 본인 및 그가 이끄는 핵심 개발자들은 처음부터 지금까지 계속 이탈하지 않고 Blender만 개발해 오고 있다고 함. 1988년 선행 개발 시작. 1995년 최초 개발 공개. 1998년 창업. 2000년 창투사 몇 군데에서 투자 받음. 2002년 회사가 쫄딱 망함. 알거지가 됨. 2002년말 투자자(=빚쟁이)들이 제시한 소유권 양도 금액 10만유로를 모금하는데 성공. (모금기간 7주만에 목표 달성) 비영리 법인으로 재출발. 소프트웨어 개발 계속. 소프트웨어 라이선스를 GPL로 변경하여 자유 소프트웨어가 됨. 2004년까지 3년간 쫄쫄 굶고 재정난에 시달리면서 계속 업데이트. 2008년 최초로 블렌더를 사용한 ‘오픈소스 컴퓨터 그래픽 독립영화’ 제작에 성공. (제목 Big Buck Bunny) 프로페셔널하게 사용할 수 있을만큼 강력하다는 것을 증명함. 2009년 톤 로젠달이 리드 메트로폴리탄 대학교로부터 명예박사 학위 받음. 2010년 최초로 블렌더로 개발한 ‘오픈소스 컴퓨터 게임’ 개발 완료 (YoFrankie!) 두 번째 ‘오픈소스 컴퓨터 그래픽 독립영화’ 제작 완료 (Sintel) 네덜란드 필름 페스티벌에서 450석 좌석 매진 성공 2012년 특수효과 기능을 더욱 빵빵하게 하기 위해 개발 속도 가속화. 세 번째 ‘오픈소스 컴퓨터 그래픽 독립영화’ 제작 개시 (Tears of Steel) 2013년 마야, 3D맥스 소프트웨어를 소유하고 있는 메이저 업체인 Autodesk사에 유일하게 대항 가능한 위치 점유 * 한국의 경우 : 프로페셔널 업계에서 1~2군데 정도만 공식적으로 사용하고 있는 것으로 생각됨. 아직 확산 단계는 아니지만 곧 수요가 폭발할 것으로 예상됨. (= 블렌더가 밥벌이가 될 수 있다는 예상)

Page 4: 20140514 team blender_v01 (Korean)

Blender vs Keyshot

항목

기본셋팅

풀옵션

승리자

사용자 유형 프로덕션 스튜디오, 취미가, 프로페셔널 취미가, 프로페셔널 블렌더

핵심기능 애니메이션, 모델링, 렌더링 애니메이션, 모델링, 렌더링 블렌더

가격 0원 약400만원/1카피 블렌더

라이센스 GPL 독점 블렌더

애니메이션 기능

자동 보간, 총탄 물리엔진, 유체 물리엔진, 기구학 엔진, 역기구학 엔진, 립싱크, 마스크, 모핑, 다중 카메라, 입자 엔진, 강체동역학, 애니메이션 스크립트, 소프트 바디 동역학, 타임라인, 3D 카메라 트래커, 키

프레임 애니메이션, 실시간 애니메이션

순차적 애니메이션, 3D 카메라 트래커, 키프레임 애니메이션, 실시간 애니메이션

블렌더

모델링 기능 베지에 커브, 컬러 트랜스폼, 디폼, 메타볼, NURBS, 순차적 환경 변화, 리깅, 태블릿 호환, UV 에디팅, 웨

이트 페인팅, 레이어, 폴리곤, 서피스 분할 솔리드 3D 모델 임포트, 레이어, 폴리곤, 서피스 분할 블렌더

렌더링 기능 3D 모션 블러, 환경 조화, 쉐이더 2D 입체 영상 블렌더

재질/텍스쳐 순차적 텍스쳐링, 만화 쉐이딩, 옷감 표현, 털 표현,

머리카락 표현 옷 표현, 털 표현, 머리카락 표현 블렌더

OS 윈도우, 맥, 리눅스, BSD 등 윈도우, 맥 블렌더

사후지원체제 무료 매뉴얼, 위키, FAQ, 온라인 포럼, 교육 비디오 블로그, 이메일, 홈페이지, 전화상담, FAQ, 온라인 포

험, 교육 비디오 키샷

최소요구사양 듀얼코어 + 램2GB + 하드220MB

오픈GL 지원되는 그래픽카드 듀얼코어 + 램2GB + 하드1GB

그래픽카드 가리지 않음 키샷

초보자 사용 편리성 최초 접근시 조금 어려움 매뉴얼 불필요할 만큼 쉬움 키샷

전문가 사용 편리성 기능확장 무제한 제한된 기능으로 전문적 사용에 한계 블렌더

13개 비교 항목중 10개 항목에서 블렌더가 승리. 결론적으로 블렌더가 키샷보다 훨씬 더 전문적인 고급 소프트웨어라는 점. 키샷은 시간이 부족한 제품디자이너 및 제품설계자가 가볍게 적당 렌더링해서 빨리 결과를 내 줄 수 있도록 하는 툴임. 하지만 블렌더의 초기 셋팅을 잘 해 줘서 정규화/자동화 한다면 키샷보다 훨씬 우수하고 다양한 결과를 얻을 수 있고, 계속 품질을 개선시켜갈 수 있을 것으로 기대된다.

Page 5: 20140514 team blender_v01 (Korean)

ProE .WRL Blender Cycles ProE .STP Keyshot

Page 6: 20140514 team blender_v01 (Korean)

for Engineer

Page 7: 20140514 team blender_v01 (Korean)

Approved Quality

Comparing with 2 Renderers

Page 10: 20140514 team blender_v01 (Korean)

Scientific Visualization

CAE Paraview Blender Toolchain ::: http://www.youtube.com/watch?v=5-GtdRLfeFI AddMesh (3D Mesh Functions) http://wiki.blender.org/index.php/Extensions:2.6/Py/Scripts/Add_Mesh/Add_3d_Function_Surface ColorMesh (3D Colorizing) http://wiki.blender.org/index.php/Extensions:2.6/Py/Scripts/Mesh/ColorMesh 3D Scatter Plots (for Scatters) http://www.gibert.biz/downloads/3dscatterplotswithblender Bio Blender (for DNA Render) http://www.bioblender.eu/ Cell Blender (for Moleculars) http://mcell.org/ Robotics http://wiki.blender.org/index.php/Community:Science/Robotics Architecture http://wiki.blender.org/index.php/Community:Science/Architecture BlenderFDS (for Fire Dynamics Simulator) https://code.google.com/p/blenderfds/ BlenderSciViz (Python API for 3D Plot) https://github.com/zeffii/BlenderSciViz/blob/master/README.md Python Addon for 3D Plot http://blenderscripting.blogspot.kr/2013_06_01_archive.html Atom http://wiki.blender.org/index.php/Extensions:2.6/Py/Scripts/Import-Export/PDB Hydrogen Sky http://www.blendernation.com/2013/12/17/the-hydrogen-sky/ Infographic http://albert.terras.free.fr/spip.php?article29 Blender Color Theory http://www.photo-mark.com/notes/2013/mar/13/color-theory-blender/ Supercomputer http://www.blendernation.com/2011/11/22/oak-ridge-national-laboratory-blender-on-a-supercomputer/

Page 11: 20140514 team blender_v01 (Korean)

필요 요구사양 확인

번호 요구사항 설명 Blender 특성 Blender 점수 (10점만점)

1 쉬운가?

제품설계자가 사용하는 렌더링 툴은 그래야만 한다. 렌더링 작업이 메인 잡이 아닌 것이다. CG 애니메이션 같은걸 만드는 예술가가 아니기 때문에 퀄리티는 적당히만 나와줘도 OK이다. 디지털 목업 개념으로, 제품을 실제로 만들면 대충 이런 느낌이겠구나 하는걸 보여주면 되는거다.

UI가 일반적이지 않아서 진입장벽이 있다. 그러나 기본적인 기능을 익힌 후에는 신속한 작업이 가능하다.

3

2 빠른가?

최고의 응답성을 보여주는 제품은, 실시간으로 렌더링 화면을 뿌려주는 Keyshot이다. 사실 Keyshot은 실제 렌더링 속도는 그다지 빠른 것은 아니지만, 해상도를 반복적으로 올려가는 식으로 점차 화면이 또렷해지는 방식이기 때문에 사용자는 일단 화면 상태를 곧바로 알 수 있다. 또, 렌더링 연산은 GPU와는 전혀 무관하게 CPU만 사용하기 때문에 그래픽카드를 거의 타지 않는다. 이걸 쓰는데 고급 그래픽카드를 구입해야 할 필요가 전혀 없다는거다. (대신 렌더링을 위한 컴퓨팅 파워는 제한되므로 속도는 저하됨) 아무튼, Keyshot은 코어의 퍼포먼스는 결코 빠르지 않지만 실제 사용자가 체감하는 응답이 빠르게 나오기 때문에 '빠르다'는 느낌을 주고, 때문에 사용자의 작업 속도가 대폭 향상된다.

Cycles 렌더러는 CUDA 지원되므로 GPU 연산 가능함.

7

3 OS호환성은? 윈도우, 리눅스에서 다 돌아가면 좋겠다. 심지어 안드로이드에서 돌리는 사람도 있음 10

4 오픈소스인가? 렌더링 툴을 위해서 돈은 들이기 싫다. 돈 들일거면 그냥 기존 솔루션 사용하고 만다.

GPL2 10

5 데이터 교환에 문제없

는가?

Pro/engineer의 오리지널 파일 포멧을 곧바로 읽어들일 수 있는 정도까지는 바라지도 않는다. 적절한 Neutral Format을 통해서 어찌됐든 3D CAD에서 생성한 제품 형상 데이타를 읽어들일 수 있어야 할 것이다.

BREP 파일을 직접 임포트하는 것이 불가능함. STL,VRML,X3D 등의 중간 포멧을 거쳐야 함.

3

6 라인아트 렌더링이 되

는가?

테크니컬 일러스트레이션을 위해서는 이 기능이 꼭 필요하다. 제품의 외관 윤곽선을 따서 출력해 주면, 그걸로 디자이너가 제품설명서나 사양서 같은데 쓸 삽화를 더 신속하고 아름답게 만들수 있게 해 주기 때문이다. 가장 이상적인 것은, 라인 아트 출력 파일의 포멧은, jpg/png 같은 레스터 그림 파일이 아니라 svg/ai 같은 벡터 그림 파일이어야 한다.

FreeStyle 옵션이 기본 내장되어 있음. 애드온 스크립트를 이용하여 벡터 svg 포멧으로 익스포트 가능함.

5

7 커멘드라인 실행,

강력한 스크립트 지원이 가능한가?

GUI도 물론 제공되어야 겠지만, 스크립트로 셋팅 및 렌더링 수행이 이루어질 수 있으면 금상첨화다. 표준적인 렌더링 셋팅을 잘 설정해 놓고, 새로운 제품 모델링 파일이 나올 경우 그걸 그냥 엮어서 기계적으로 렌더링을 시키는 식으로 작업하고 싶다. 그러면 최초 명령어 때려주는 것만 해 주면 내가 더 할일은 없는 거쟎아??? 매번 조명 일일이 맞추고 재질 설정해주고 쉐이딩 셋팅값 조절해 주고 맘에 안들면 또 새로 반복하고 렌더링 하는 동안 멍하니 기다리는 등등 그럴 시간 없다.

블렌더 실행파일을 옵션 줘서 커멘드라인에서 백그라운드로 실행시켜 렌더링 작업 등을 실시 가능함. 작성된 파이썬 스크립트를 백그라운드 실행시 자동적으로 작동할 수 있음.

8

요구사항은 일단 모두 만족함. 평균 6.6점 정도.

Page 12: 20140514 team blender_v01 (Korean)

클라우드 렌더링

EDPDM

STP 파일 업로드

자동 파일 포멧 변환 STP X3D

자동 렌더링 X3D PNG,SVG

렌더링 결과 다운로드 PNG,SVG

리눅스 Bash 쉘스크립트 파이썬 스크립트 렌더링 탬플릿 재질 라이브러리 EDPDM에 UI 추가

1. PDM-SERVER의 컴퓨팅 파워 활용률 극대화 2. 개인용 PC의 부하 제거 3. 렌더링 셋팅 시간 소모 제거

Page 13: 20140514 team blender_v01 (Korean)

Install

Page 14: 20140514 team blender_v01 (Korean)

http://www.blender.org/download/ 으로 가서 자신에게 맞는 것을 받아서 깔면 됨. 윈도우용의 경우, 가급적 Installer 버전 말고 .ZIP 버전을 받도록 한다. 그냥 받아서 원하는 위치에 압축을 풀기만 하면 설치 완료. 안에 들어있는 실행파일을 실행시키면 된다. 버전업이 자주 되므로, 새로운 버전이 나오면 새로 압축본을 다운받아 풀어서 사용하는 식으로 하는 것이 편하다.

Page 15: 20140514 team blender_v01 (Korean)
Page 16: 20140514 team blender_v01 (Korean)

Data Exchange

Page 17: 20140514 team blender_v01 (Korean)

WebGL

렌더링용 데이터 교환 포멧은 향후 트랜드를 생각해서 WebGL에 대응 가능한 .X3D 표준을 지향하는 것이 좋겠음. X3D 포멧 관련 참고 자료 : http://x3dgraphics.com/slidesets/X3dForAdvancedModeling/ComputerAidedDesignInterchangeProfile.pdf Sage Notebook의 3D Plot 기능도 현재의 JavaScript 플러그인에 의존한 것에서, WebGL로 변경할 것으로 예상됨 (W.Stein이 이미 개발 들어갔음)

WebGL로 웹에서 과학기술용 3D 플랏을 구현한 사례

Page 18: 20140514 team blender_v01 (Korean)

Excercise

Page 19: 20140514 team blender_v01 (Korean)

Cycles

ProE .SLP Belnder 2.49b .blend Blender 2.70a

Page 20: 20140514 team blender_v01 (Korean)

Freestyle Option

Page 21: 20140514 team blender_v01 (Korean)

Freestyle + FreestyleSVG-master Python Script

FreeStyle 소개 http://libregraphicsworld.org/blog/entry/freestyle-jot-and-the-future-of-non-photorealistic-rendering FreestyleSVG-master 설치 및 사용법 http://togetter.com/li/655463

Page 22: 20140514 team blender_v01 (Korean)

SVG Output

Page 23: 20140514 team blender_v01 (Korean)

Quality

Page 24: 20140514 team blender_v01 (Korean)

Blender FreeStyle SVG

Page 25: 20140514 team blender_v01 (Korean)

Blender FreeStyle

Page 26: 20140514 team blender_v01 (Korean)

Blender Default Renderer

Page 27: 20140514 team blender_v01 (Korean)

Blender Cycles Renderer

Page 28: 20140514 team blender_v01 (Korean)

Keyshot

Page 29: 20140514 team blender_v01 (Korean)

우리도 이런거 자동으로

만들어 보자.

Page 31: 20140514 team blender_v01 (Korean)

참고

생전 처음 사용할 때 무조건 30분만 따라하기 http://flashfriend.tistory.com/4552 단축키 정리 http://amazing-blender3d.blogspot.kr/2013/12/blender3d-interface.html 초보자용 강좌 블로그 http://grandkim.blogspot.kr/2013/06/blog-post_21.html 초보자용 강좌 문서(한글워드) https://www.linux.co.kr/home2/board/subbs/board.php?bo_table=pds&wr_id=149&sfl=&stx=&sst=wr_datetime&sod=desc&sop=and&page=8 블렌더코리아 http://blenderkorea.com/ 커멘드라인에서 블렌더 백그라운드 실행 방법 예제 http://blenderartists.org/forum/archive/index.php/t-117999.html 자동 렌더링 파이썬 스크립트 예제 http://www.tt-forums.net/viewtopic.php?f=19&t=30285