brunch

You can make anything
by writing

C.S.Lewis

by 배로만쌤 Mar 26. 2020

1. 블렌더 파이썬 스크립트 시작하기

오픈 소스 3D 그래픽 도구 블렌더 Python으로 알아가는 수학의 맛

블렌더는 오픈소스 3D그래픽도구로써 다음과 같은 다양한 기능을 하는 범용 3D그래픽 소프트웨어입니다.  

    마야나 3D 맥스와 같은 애니메이션 모델링  

    팅커캐드나 퓨전360과 같은 3D프린팅 모델링  

    시네마4D와 같은 애니메이션 기능   

    유니티나 언리얼과 같은 게임엔진 (2.8에서는 게임엔진은 제거되고 플러그인방식으로 지원함)  

    어도비 프리미어와 같은 동영상 편집 기능   

대부분의 3D 소프트웨어 전문가 도구들을 대체가능한 막강한 도구입니다.

오픈소스이고 국내에는 교육기관이 거의 없어서 일반 사용자가 잘 모르기도 한 도구입니다. 몇몇 그래픽 전문가들이 관심을 갖고 이용하고 있는 듯하지만 일반인들에게 잘 알려지지 않고 있습니다.

 

개발자 출신이기에 오래전부터 관심을 갖고 있다가 그래픽 프로그래밍과 데이터사이언스를 조금씩 연습하고 있습니다. 특히, 중고등학생들을 위한 수학과 컴퓨터 프로그래밍 공부를 위한 좋은 재료라고 생각됩니다.

본 연재에서는 블렌더를 이용하여 수학와 파이썬을 정리하며 공부하려 합니다.

블렌더에 대한 보다 자세한 소개는 나무위키 링크에서 확인하시면 좋습니다.

무료 오픈소스 소프트웨어라는 점에서 누구나 사용할 수 있는 장점이 있습니다. 많은 관심과 피드백을 주시면 감사하겠습니다.


본 블로그에서는 블렌더가 파이썬과 아주 밀접하게 연결되어 있어 파이썬을 공부하는 좋은 도구라는 것을 설명드릴 것입니다. 또한 수학 개념과 연결하여 설명하기에 아주 최고의 도구이기에 수학적인 개념도 함께 설명하려 합니다. 


블렌더를 파이썬으로 어떻게 프로그래밍으로 사용할 수 있는지에 대한 강좌이므로 그래픽 편집기 사용에 대한 설명은 이미 다른 분이 설명한 유튜브 영상이 있어서 링크를 참조시면 좋을 것 같습니다. 

기본적인 뷰포트 조작·제어 방법 : 블렌더 2.8 기초 강좌 #01

위 강좌가 부족한 점이 있다면 그 부족한 점을 채우는 자료를 만들어 보도록 노력 하겠습니다. 댓글로 필요한 내용을 적어주시면 참고하겠습니다.. 


시작을 위해 구글에서 “Blender Download”라고 검색하면 “https://www.blender.org/download/

사이트가 검색되니 블렌더 최신버전(현재 2.8.2a, 2020.3월35일자)을 다운로드 받으세요. 블렌더의 공식사이트는 www.blender.org 입니다. 꼭, 공식사이트에서 다운로드 받으시길 추천합니다. 

요즘 블렌더가 버전업을 자주 되다보니 블렌더 사이트에 전세게적인 트래픽이 증가해서인지 다운로드 속도는 늦은 편입니다. 다운로드한 뒤 설치하고 실행을 하시면 무료이지만 유료인 다른 3D그래픽 프로그램에 전혀 뒤질 것 없는 블렌더 화면이 보입니다.

블렌더 2.82a 시작화면

상단 메뉴바의 가장 우측의 “Scripting”메뉴를 클릭하면 전체 화면이 아래와 같은 스크립트 편집기를 위한 레이아웃으로 변합니다.

블렌더 2.8 스크립팅 UI 레이아웃

좌측 가운데 창이 스크립트 창이고 가운데 메인창이 파이썬 편집기 창입니다.

우선 그래픽편집기 창에서 cube(정육면체)를 선택하고 우클릭을 하여 삭제(delete)를 합니다.

Delete 명령 실행 메뉴

그러면 좌측 맨 하단의 콘솔창에                     

bpy.ops.object.delete(use_global=False)

Deleted 1 object(s)

라는 메시지가 생성되는데 그래픽 창에는 cube가 삭제되었습니다.


이제 좌측상단  그래픽 창 바로 위의 그래픽 메뉴에서 Add를 선택하고 Mesh에서 Cube를 선택하면 위에서 지웠던 Cube가 그래픽 창에 Cube가 생성됩니다.

Cube실행 명령 메뉴

콘솔창에는 아래와 같은 스크립트가 생성됩니다.                    

bpy.ops.mesh.primitive_cube_add(size=2, enter_editmode=False, location=(0, 0, 0))


앞의 삭제 명령을 가운데 있는 스크립트 창에 입력하면 방금 생성한 Cube가 지워지는 것을 알 수 있습니다.

그리고 다시 방금 Cube를 만들며 생성된 명령을 다시 입력하면 Cube가 생성하는 것을 확인할 수 있습니다.

스크립트 명령 생행 화면

이렇듯 블렌더는 그래픽 편집을 하면서 파이썬 스크립트를 생성합니다. 그래서 복잡한 그래픽 편집과정을 스크립트로 레코딩을 할 수 있습니다. 이 부분이 강하게 매력있게 느껴지는 부분입니다.

특히, 이러한 기능은 학생들에게[ 강한 흥미를 유발하기에 충분하다고 생각합니다.


그래픽 편집기는 수학을 공부할 수 있는 수학으로 만들어진 결정체이기에 다양한 수학을 그래픽 편집기를 사용하며 배우고 더불어 Python과 3D모델링도 함께 배우는 일거삼득이 될 것입니다.


필자는 블렌더를 한글화하지 않고 진행하려 합니다. 코드는 한글화 할 수 없기에 메뉴의 영문 용어에 익숙해져야 블렌더 파이썬 코드의 영어를 이해할 수 있기 때문입니다. 그래픽 용어에 익숙해야 하니 앞으로 그래픽 용어를 쉽게 정리하며 설명하겠습니다.


좀 아쉬운 점은 3D 그래픽 프로그램이라 컴퓨터의 사양이 높아야 하는 것입니다. 일반 사무용노트북이나 PC는 느리기 때문에 적어도 RAM이 8기가 이상은 되어야 하고 가능하다면 16기가를 추천합니다. CPU는 4세대 이후의 I5 이상의 성능을 갖고 있어야 합니다. 단, i5 모바일 CPU가 장착된 노트북은 안되고 게이밍노트북은 되어야 할 것 같습니다. 여러 컴퓨터를 시험해보며 확인한 컴퓨터 사양이 아니어서 낮은 사양의 컴퓨터도 동작은 하겠지만 제대로 공부하고 싶으신 분들은 가능한 최신형 게이밍 컴퓨터가 되면 좋을 것입니다. 


마지막으로 이제까지의 내용을 실행해 봤으면 그래픽 메뉴에서 Add명령으로 생성되는 모든 도형의 도형 생성 스크립트 명령을 정리하면 좋을 것 같습니다. 나중에 다양한 모양을 만들 때 응용할 수 있으니 과제로써 한번 정리하면 어떨까요? 가능하면 엑셀파일로 각 스크립트들을 정리하면 유용할 것입니다.

앞으로 연재하는 “오픈 소스 3D 그래픽 도구 블렌더 Python으로 알아가는 수학의 맛” 시리즈에 많은 관심바라며 글을 마침니다.


배로만쌤

“배푸와 로봇 만드는 선생님"


Ref.

블렌더 나무위키

기본적인 뷰포트 조작·제어 방법 : 블렌더 2.8 기초 강좌 #01

블렌더 다운로드 링크

브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari