아침에 일찍 출근한 기념으로.
원래는 이것 저것 돌려보고 쓰고 싶었으나 웹캠이 없는 관계로 확인도 못해보고 올립니다.
아래 링크를 단순히 번역했고요. 원본글 문투를 그대로 따라해봤습니다. 번역이 이해가 안되면 기계번역으로 보시길. 간혹 그게 더 나은 경우도...^^;;
아니면 영어
http://saqoosha.net/en/flartoolkit/start-up-guide/
원본글.
http://saqoosha.net/flartoolkit/start-up-guide/
준비물
・Adobe Flash CS3 이상
・FLARToolKit
http://code.google.com/p/papervision3d/
・Web캠
・인쇄한 마커 와 마커데이터
다운로드
귀찮기도 하고해서 한번에 정리해 묶어뒀습니다.
http://saqoosha.net/lab/FLARToolKit/FLARToolKit-starter-kit.zip
추기(2009/2/8 1:50):으웩 마커용의 PDF파일을 같이 넣는걸 잊었구만요. 넣었구요. 마커만 업로드한 것도 있으니 쓰세요. http://saqoosha.net/lab/FLARToolKit/flarlogo-marker.pdf
인터렉션
Papervision3D 를 쓸 줄아는 사람이면 굉장히 간단합니다. 샘플의 메인 부분은 거의 Papervinios3D의 설정으로 되어 있고 잘모르는 사람이더라도 이 샘플은 X나게 심플하기 때문에 어렵지 않으니 걱정 마시길.
단
지 한가지 주의할 점은 좌표계가 Papervision3D 과 좀 다릅니다. Papervision3D으로 렌더링하니까 글로벌
좌표계는 물론 왼손좌표계지만 마커에 올려질 오브젝트는 아래와 같은 모양으로 마커를 정면으로 봤을 때에 오른손좌표계가 됩니다.
샘플소스 해설
순서를 쫓아 쓸정도로 어렵지 않기 때문에 소스를 짧막하게 해설할 것입니다. SimpleCube.as가 메인으로 그외의 소스는 별달리 필요없습니다. 그래서 SimpleCube.as 을 설명하는 걸로 하죠.
17 행
this.init('Data/camera_para.dat', 'Data/flarlogo.pat');
FLARToolKit
을 초기화합니다. 첫번째 인자로는 카메라 보정파일의 패쓰 이것은 FLARToolKit에 딸린 것을 지정하면 됩니다. 두번째
인자는 마커의 패턴정의 파일 이것은 사용할 마커에 따른 패턴정의 파일을 지정합니다. flarlogo.pat 이라는 것은
flarlogo-marker.pdf 용
20 행
protected override function onInit():void {
init
을 호출한 후 초기화가 문제없이 끝나면 최종적으로 이 함수가 호출됩니다. 3D 오브젝트 설정은 이 함수 안에서 하면 됩니다.
패턴 파일이 존재하지 않거나 Web 카메라가 접속되지 않으면 이 함수가 호출될 때 에러가 발생합니다.
24, 25행
var wmat:WireframeMaterial = new WireframeMaterial(0xff0000, 1, 2);
this._plane = new Plane(wmat, 80, 80);
마커가 제대로 인식되는지 확인하기 쉽도록 마커와 똑같은 사이즈의 Plane을 만들어 봅니다. 빨간 2px의 라인(와이어프레임), 80이 마커사이즈. 80mm
26 행
this._plane.rotationX = 180;
먼저 써둔대로 좌표계가 다르기 때문에 방향을 틉니다.
27행
this._baseNode.addChild(this._plane);
Papervision3D 에서는 Scene3D에 addChild 합니다만 FLARToolKit에서는 마커에 맞춰 3D오브젝트를 움직여야 하기때문에 툭별한 노드에 addChild 할 필요가 있습니다. 이것이 _baseNode。여기에 addChild하면 자동적으로 마커에 따라 움직이게 됩니다.
36, 37행
var fmat:FlatShadeMaterial = new FlatShadeMaterial(light, 0xff22aa, 0x75104e);
this._cube = new Cube(new MaterialsList({all: fmat}), 40, 40, 40);
마커 위에 Cubeㄹㄹ 올려봅시다. 핑크색 사이즈는 40mm x 40mm x 40mm。마커의 반만한 크기
38행
this._cube.z = 20;
Cube는 원점중심으로 만들어져 있기 때문에 +Z 방향 다시말해 마커 위쪽으로 20 이동시켜면 마커에 정확히 올라타게 됩니다.
움직여 본다.
SimpleCube.fla를
열어 퍼블리싱하면 웹캠의 영상이 보여집니다. 웹캠이 연결되어 있지 않으면 에러가 발생됩니다. 연결되어 있는데 그림이 나오지
않으면 오른쪽 마우스 클릭 -> 설정 -> 카메라아이콘 으로 적당한 카메라를 선택해 주세요. (MacBook이나 내장
카메라는 USB Video Class Video 라는 이름으로 되어 있습니다.)
인쇄된 마커 전체가 카메라에 비추도록 하면 오브젝트가 표시됩니다. 마커에 딱 붙어서 말이죠. 간단하조오잉?
정리 [출처] FLARToolKit (uiaa) |작성자 그으냥
샘플을 보고 알 수 있듯이 마커를 따라 오브젝트를 이동시킨다라는 것 밖에 없고 Papervision3D 으로 오브젝트를 만드는 코드를 작성하는 것만으로 되기 때문에 모두 FLARToolKit 을 시작해 봅시다아~