이 포스트를 작성하기 위해 4일 정도 삽질을 하면서 생긴 경험들을 정리하고자 합니다.
키넥트를 이용해서 플레시에서 제어하는 동영상을 보고 무작정 키넥트부터 질러댔다.
하지만 현실은 넘 암울...T.T libfreenect을 설치 및 컴파일을 해야하는데 C++이나 C 컴파일을 해 본적이 없다.
그러나 드뎌 해냈다.. 컹 4일만에 성공했다. 아직 많이 부족하지만 as3-server.exe를 돌리고
" ### Wait client "라는 문구가 떴을때 정말 희열을 느꼈고 이 모든것을 공유하고자 한다.
(참고 : 액션스크립트만 하고 다른 언어를 몰라도 따라서 한다면 반듯이 설치가 가능하다.)
설치환경에 따라 다소 차이가 있다..
우선 mac환경의 경우
http://www.as3kinect.org/guides/openkinect-wrapper-guide/ 를 참고 하시면 가능하고
아래 설명 할 것은 window7(32비트) 환경이다.
-------------------------------------------------------------------------------------------------------
1. 필요한 프로그램 및 파일 다운로드
- Microsoft Visual C++ 2010 Redistributable Package
- Git-1.7.7-preview20111014.exe
설치 시 다음.. 다음.. 하신 후 설치 과정에서 아래의 옵션을 체크한 후 설치
선택 "Run git from the Windows Command prompt"
선택 "Check out WIndows style, commit Unix-style line endings"
- cmake-2.8.6-win32-x86.exe
- Visual C++ Express 2010
- freenect_win_deps.zip (환경설정 시 필요한 파일, 다운로드 후 압축을 푼다)
2. 설치
- Git실행 후 명령어 실행
$ git clone git://github.com/OpenKinect/libfreenect.git //downloads the project, creates local master
$ cd libfreenect //cd to source directory
$ git branch --track unstable origin/unstable //creates a local unstable branch for remote unstable
$ git checkout unstable
$ git pull //updates the contents of the selected branch
mkdir build // build폴더 생성
cd build
cmake -G "Visual Studio 10" ..
- CMake 실행
옵션을 선택하는 과정입니다.
위의 그림은 최종 화면이고 처음에는 그림과 같이 전체 항목이 보이지 않는다.
맨 처음 보이는 항목들에 대해서만 경로를 적어주고 "Configure"버튼을 누르자.
그럼 안보이던 항목이 보일 것이다. 위의 그림처럼 전부 경로를 입력해 준 다음 "Generate" 버튼을 클릭 하면 완료.
A : git를 이용해서 파일을 다운받고 설정을 한 폴더를 지정
B : 그림과 같이 체크
C : 그림과 같이 체크
D : 위에서 다운(freenect_win_deps.zip)받은 후 압출을 해제한 경로 참고
- Visual C++ Express 2010
c:/user/사용자/libfreenect/build 폴더 안에 libfreenect.sln 더블 클릭으로 실행
이때 프로그램 선택 창이 뜬다면 "Visual C++ Express 2010" 선택 후 프로그램 실행
프로그램 좌측하단에 "Redy" 문구가 뜨면 "F7 키"를 눌러 디버그 시킨다.
디버그를 실행하면 다음과 같은 파일들이 생성된다.
위와 같이 파일이 생성되지 않았다면 디버그 과정에서 에러가 발생했기 때문이다.
이럴 땐 Output창에서 에러메세지를 추적해서 소스를 수정하거나 주석처리 하고
Solution Explorer에서 수정한 프로젝트 목록을 우클릭해서 Rebuild 해주면 된다.
처음에 as3-server.exe가 생성되지 않아서 확인해보니 코드 에러가 발생해서 에러난 부분을 주석처리 후
디버그 해서 파일을 생성하였다. C++를 잘 모르기에 이 방법을 채택했지만 정답은 아닌듯 하다.
- 필요한 dll파일 복사
아래 파일들을 c:/user/사용자명/libfreenect/build/bin/Debug 폴더에 복사해 준다.
경로 : freenect_win_deps.zip를 압축을 해제한 폴더 안에 lib 폴더에서
1) freenect.dll
2) freenect_sync.dll
3) pthreadVC2.dll
4) libjpeg-8.dll
5) glut32.dll
* 현재로썬 이 파일을 복사해 넣으면 에러가 난다. 생략한다.
경로 : platform\windows\inf\xbox nui camera\amd64
6) libusb0.dll
경로 : platform\windows\inf\xbox nui camera\x86
7) libusb0_x86.dll
3. 키넥트 드라이버 설치
- 다운로드 후 압출풀기 : freenect_drivers.zip
- 제어판 -> 장치관리자
- 기존의 kinect 드라이버 모두 삭제 (NUI or OpenNI)
1) 우클릭 ->
2) 드라이버 소프트웨어 업데이트 ->
3) 컴퓨터에서 드라이버 소프트웨어 찾아보기 ->
4) freenect_drivers.zip를 압축 푼 경로안에 inf폴더안에
xbox nui audio
xbox nui camera
xbox nui motor
camera, motor, audio 개별적으로 설치
4. 실행
1) hiview.exe
2) glpclview.exe
3) as3-server.exe
이제 플래시로 미디어 아트를 시작해 볼까요?