이것 저것 개발하고 만들어보기
article thumbnail

 

 

 

 

 

 

우리가 UI를 직접 작성해 정리하는것도 중요하지만, 내가 만든 기능들을 한데 모아 묶어 분류하는것도 중요합니다.

 

 

무엇보다 다른 컴퓨터, 혹은 일하는 동료에게 BPY를 넘겨주어야 할 때 코드 전체 파일이 아닌 한데 묶은 Add-ons 파일로 넘겨주거나 원하지 않으면 비활성화 하는등의 유연한 관리가 필요합니다.

 

 

툴의 최적화를 위해서라도 Add-ons(에드온)로 BPY를 관리하는것을 권장하는데, 오늘은 이 Add-ons(에드온)를 만들고 기능을 넣는것을 살펴보겠습니다.

 

 

 

 

 

블렌더 Add-Ons 알아보기

 

 

 

 

 

 

우선 블렌더 환경설정의 Add-ons 탭에서 아무 Add-ons의 정보를 펼쳐 보면, 해당 에드온의 정보를 알 수 있습니다.

 

 

여기서 File 항목을 보면 해당 에드온의 파일 경로를 알 수 있습니다.

 

 

우리가 Install 을 통해서 압축파일을 불러와 사용 할 때, 실제로 압축이 풀리는 경로가 블렌더 addons 폴더에 풀려서 블렌더가 사용할수 있도록 인식합니다.

 

 

 

 

 

 

 

 

해당 경로의 폴더를 열어보면, 여러 개의 파이썬 파일들을 볼 수 있습니다.

 

 

에드온 마다 이 파일의 갯수나 종류가 다르지만, 파일 '__init__.py' 을 통해 BPY가 동작합니다.

 

 

반드시 그런것은 아니지만, 대부분의 경우 블렌더가 참조하는 것은 폴더가 아닌 폴더 내의 '__init__' 를 참조합니다.

 

 

이렇게 파일이 많아지는 이유는, 파이썬의 '모듈' 과 '패키지' 개념을 통해 코드를 짜고 사용하기 때문입니다.

 

 

모듈 : 다른 프로그렘에서 재사용 가능한 단일 스크립트 파일

패키지: 여러 모듈과 결합된 폴더/디렉토리 단위

 

 

 

 

 

 

이런 여러 파일을 동시에 작성하고 수정하는데에는 블렌더의 기본 텍스쳐 편집기로는 한계가 있습니다.

 

 

수정할 여러 파일을 일일히 하나씩 따로따로 불러오면 작업 속도도 느려지고 불편함도 커지지요.

 

 

그래서 우리는 외부 코드 편집 툴을 통해서 블렌더 BPY를 만들어보고자 합니다.

 

 

 

Visual Studio Code 설치하고 세팅하기

 

 

 

파이썬으로 프로그래밍을 할 때 이런 편집기를 통해서 코딩을 많이 하게 되는데, 우리도 블렌더 BPY를 이 비주얼 스튜디오 코드에 연결해서 사용하려 합니다.

 

 

 

 

 

 

우선 파이썬과 비주얼 스튜디오 코드 공식 홈페이지에서 가장 최신 버전의 설치 파일을 다운로드 합니다.

 

 

파이썬과 비주얼 스튜디오 코드 홈페이지에서 Downloads 항목을 통해 설치파일을 받아주고 실행합니다.

 

 

 

 

 

 

 

 

비주얼 스튜디오를 설치할 때, PAHT에 추가 항목은 반드시 체크를 해 주세요.

 

 

 

 

 

 

 

 

 

파이썬에선 마찬가지로 Add python. to PATH 항목을 체크하고, Install Now를 눌러 파이썬을 설치해줍니다.

 

 

여기서 생기는 의문점은, 컴퓨터의 별도의 파이썬이 설치되어 있지 않아도 블렌더에서의 BPY는 파이썬 언어로 잘 작동했습니다 왜일까요?

 

 

 

 

 

 

 

이유는 블렌더는 이미 파이썬이 내장되어 있기 때문에 우리가 텍스트 편집기에서 파이썬 언어로 명령어를 입력해도 정상적으로 동작했던 것 입니다.

 

 

파이썬 설치 버전과 경로는 사진과 같으며, 블렌더 3.6 기준으로 파이썬 310 버전이 내장되어 있습니다.

 

 

궁금증이 해소됐다면, PATH의 정상적 등록을 위해 이후에 컴퓨터를 한번 재부팅 해줍니다.

 

 

 

 

 

 

 

 

이후 비주얼 스튜디오를 우측 클릭해 관리자 권한 으로 실행시켜 준 뒤, 좌측 Extensions 탭에서 Blender를 검색해 사진에 표시한 두개의 확장 프로그램을 설치합니다.

 

 

마찬가지로 Python을 검색해 Python 또한 VS Code에 등록되지 않았다면, 인스톨을 통해 설치합니다.

 

 

저는 이미 설치되었기 때문에 사진과 같은 화면이지만, 처음 설치하시는 분이라면 Install 아이콘을 눌러 설치해줄 수 있습니다.

 

 

 

 

 

VScode를 통해 블렌더를 열고 닫기

 

 

 

 

 

 

 

이후 단축키 Ctrl + Shift + P 를 통해서 모든 명령어 창을 열어주고, Blender 혹은 Blender Start 를 검색해 해당명령어를 클릭한뒤 실행합니다.

 

 

 

 

 

 

 

 

이후 나오는 창에서 Choose a new Blender excutable... 을 클릭하여 블렌더 실행파일을 찾아줍니다.

 

 

블렌더를 차음 설치했을 때 별다른 경로 수정이 없었다면 보통

C:\Program Files\Blender Foundation\Blender(설치된 버전) 폴더에 EXE 파일로 존재합니다.

 

 

EXE 파일을 등록시켜 줍니다.

 

 

이후 명령어 창을 열고 Blender : Start 에 등록된 블렌더가 열리는지 확인합니다. 

 

 

 

 

 

Terminal 과 venv, fake-bpy-module

 

 

 

venv란 모듈의 일종으로 파이썬 내부에 가상 환경을 만들어 주며 프로젝트별로 독립된 개발 환경을 구성하기 위해 사용됩니다.

 

우리는 블렌더 전용의 독립된 개발 환경이 필요함으로(블렌더 파이썬 API를 사용하게 됨으로) 가상환경 설정을 해 주는 것이 좋습니다.

 

 

fake-bpy-module 이란 블렌더에서 기본 제공하는 블렌더 파이썬 API를 VSCode에서 코드를 보완하기 위해 만들어진 파이썬 패키지 입니다.

 

 

지금까지의 VScode에 설치된 블렌더 BPY는, 블렌더의 API가 VScode에 등록되어있지 않기 때문에 아래와 같은 오류를 출력합니다.

 

 

 

 

 

 

물론 오류가 나더라도 어디까지나 VScode의 오류이므로 무시해도 정상 동작하지만, 경고 표시가 출력되는 것 외에도 블렌더 BPY 자동완성이 되질 않기 때문에 코딩이 매우 까다롭게 됩니다.

 

 

이것을 Terminal을 통해 가상환경을 제어하고 프로젝트 별로 독립된 개발 환경을 구축하는 방법을 알아보려 합니다. 

 

 

 

 

 

가상환경 구축하기

 

 

 

 

 

 

가상환경을 구축하기 위해 가장 먼저 아무 폴더를 만들어 주고 이름을 변경한 후 경로를 기억합니다.

 

 

 

 

 

 

 

 

이후 VScode에서 Edit - Open Folder 를 통해 해당 폴더를 추가해 줍니다.

 

 

 

 

 

 

 

 

상단 메뉴에서 New Terminal을 통해 터미널을 실행하고 터미널 창을 확인하보면, 내가 만든 폴더를 참조로 터미널이 실행되는 것을 알 수 있습니다.

 

 

 

 

 

 

 

이 폴더에 가상환경을 구축하기 위해 터미널에 다음과 같은 명령어를 작성합니다.

 

python -m venv blender_env

 

 

이후 EXPLORER 탭을 확인하면, 내가 만든 폴더에 가상 환경이 구축됩니다.

 

 

코드의 내용은 다음과 같습니다.

 

 

 

 

 

환경명의 경우, 본인이 원하는 대로 이름을 지어주면 됩니다.

 

 

 

 

 

fake-bpy-module 설치

 

 

 

가상환경 구축까진 성공했지만, 현재 이 가상환경은 조작이나 수정할 수 있는 상태가 아닙니다.

 

 

사용 가능한 상태로 만들어 주기 위해, 다음 명령어를 입력합니다

 

 

blender_env\Scripts\Activate.ps1

 

 

 

 

 

 

해당 명령어를 입력하게 되면 접두사에 내가 설정한 환경명이 표시됩니다. (blender_env)

 

 

\를 통해서 디렉토리를 표시해서 실행 파일을 지정해 줍니다.

 

 

 

 

 

 

설정이 완료되었다면, pip install fake-bpy-module-latest 를 통해서 블렌더 모듈을 설치합니다.

 

 

이렇게 되면 현재 프로젝트에만 블렌더 페이크 모듈이 설치됩니다.

 

 

 

 

 

 

 

 

이후 Ctrl + Shift + P 를 통해 명령어창을 불러와 Interpreter를 검색한 후, Select Interpreter를 통해서 현재 내 환경을 지정해 줍니다.

 

 

이렇게 블렌더 가상환경 설정이 끝났습니다.

 

 

만약 이 프로젝트 이외의 파이썬을 사용할 일이 생긴다면, Fake BPY에 의해서 쓰지 않는 자동완성이 생성되는 일을 막고, 반대로 블렌더 BPY 에서만 BPY 모듈을 사용할 수 있게 됩니다.

 

 

 

 

블렌더에 커스텀 Add-ons 추가하기

 

 

여기까지 세팅이 끝났다면, 이제 블렌더가 제공하는 기본 템플릿을 VSCode에서도 이용할 수 있게 됩니다.

 

 

이것을 통해 가장 기본적인 Add-ons를 추가하려 합니다.

 

 

 

 

 

 

 

 

Ctrl + Shift + P 를 통해서 Blender : New addon를 입력해 선택합니다

 

 

 

 

 

 

가장 기본적인 에드온을 만들 것 이므로 Simple을 클릭합니다.

 

 

 

 

 

 

여기서 총 2번을 입력하게 되는데 첫번째는 에드온의 이름을, 두번째는 개발자 명을 입력할 수 있습니다.

 

 

테스트를 위해서 일단 저는 개발자명과 에드온명을 같은 이름으로 지어주었습니다.

 

 

 

 

 

 

 

 

이후 파일을 생성할 디렉토리를 지정해주고 난 뒤에, Addons의 코드가 자동 생성됩니다.

 

 

 

 

 

 

이제 VScode의 명령어 패널을 다시 열어, 블렌더를 실행합니다

 

 

 

 

 

 

블렌더 Add-ons 탭에서 자신이 지정한 이름으로 검색하면, 내가 지정한 에드온이 등록되어 있는것을 확인 할 수 있습니다.

 

 

만약 보이지 않는다면, 우측 상단 Refresh 버튼을 통해서 새로고침하면 보이게 됩니다.

 

 

이렇게 커스텀 Addons를 등록하는데 성공하였습니다.

 

 

다음에는 이 에드온이 실제로 작동할 수 있도록 블렌더의 일부 기능을 에드온에 포함시켜보겠습니다.

 

 

 

 

 

 

 

참고한 서적 : https://t0rry.booth.pm/items/4915486

 

Blender Addon 開発する前に読む本 - と りさんの巣 - BOOTH

1.商品説明 「Blender Addon 開発する前に読む本」 非プログラマーBlenderユーザーのためのBlenderアドオン開発解説本です。 アドオンを開発するための環境構築から基礎的なアドオンの制作過程

t0rry.booth.pm

 

profile

이것 저것 개발하고 만들어보기

@Tintana'k