AR 생일카드를 만들어 봤는데, 생일이신 분들을 조금이나마 행복하게 해드릴 수 있을 것 같아요.
완성물: 입체 생일 카드
👇저는 AR 생일카드(iOS는 사파리로 열면 돼요)https://t.co/9I30r4o25M-Kosuke Yoshimura(@Yoshimura Kosuke)October 7, 2018
safari로 링크를 열고 카메라로 아래 그림을 찍으면 AR가 나올 것입니다br/>
AR.js 만져봐.
친구 생일 때 좀 놀래키고 싶었는데 지금까지 아이오나 안드로이드에서만 AR을 했는데 최근에 AR.js의 존재를 알고 AR로 뭔가를 하고 싶었어요. 그게 제가 이 일을 하게 된 계기였어요.ios의safari는ver11(2017년 9월)부터 웹RTC에 대응하기 때문에 ios에서도 AR.js를 이동할 수 있습니다p>
사용한 라이브러리
먼저 HTML 파일 만들기
index.).
AR.js의 저자가 쓴 tutorial를 참고하여 다음과 같은 내용을 기술합니다.p>
<!doctype HTML>
<html>
<script src="https://aframe.io/releases/0.6.1/aframe.min.js"></script>
<script src="https://cdn.rawgit.com/jeromeetienne/AR.js/1.5.0/aframe/build/aframe-ar.js"> </script>
<body style='margin : 0px; overflow: hidden;'>
<a-scene embedded arjs>
<a-marker preset="hiro">
<a-box position='0 0.5 0' material='color: black;'></a-box>
</a-marker>
<a-entity camera></a-entity>
</a-scene>
</body>
</html>
3D 모델 가져오기
Google Poly에서 케이크의 대상을 다운로드했습니다.Google Poly에는 다양한 3D 모델이 있기 때문에 편리합니다.
3D 모델 구성
Google Poly에서 다운로드한 zip 폴더를 열면obj와 Cake.안에 mtl이라는 파일이 있어요.이 두 index를사용obj2gltf 프로그램 라이브러리를 OBJ 형식에서 glb 형식으로 경량화하는 등급입니다.obj2gltf를 설치한 후 다음 명령을 실행하면 변환할 수 있습니다.
obj2gltf -i Cake.obj -o Cake.glb
변환에 성공하면 다음과 같이 Cake가 표시됩니다.glb라는 파일이 있어야 합니다.
만들어진 케이크.
<a-asset-item>
에서glb를 호출합니다. <a-assets>
<a-asset-item id="cake" src="Cake.glb"></a-asset-item>
</a-assets>
그리고 <a-entity>
에서 대상의 위치 등을 지정합니다.
<a-entity gltf-model="#cake" play-all-model-animations="" position="0 0 1" rotation="0 0 0" scale="0.05 0.05 0.05" visible="true">
</a-entity>
이상이면 케이크가 나타날 수 있습니다.
원본 태그 작성
AR을 표시하기 위해 식별되는 이미지(태그)는 기본적으로 지루하기 때문에 오리지널 태그를 만들기로 했습니다.p>
marker-training
원본 태그를 만들기 위해 여기에 그림만 올릴 수 있습니다.
내가 이런 느낌을 만들었어
원래 태그 포함
마지막 읽기 <a-marker>
에서 만든 원시 태그 (pattern-marker.patt)p>
<a-marker preset='custom' type='pattern' url="pattern-marker.patt">
...
</a-marker>
여기.에 모든 코드를 설치합니다.
버전 소스 코드 완성
<!DOCTYPE html>
<html>
<head>
<title></title>
<script src="https://aframe.io/releases/0.8.0/aframe.min.js"></script>
<script src="https://cdn.rawgit.com/jeromeetienne/AR.js/1.6.0/aframe/build/aframe-ar.js"></script>
</head>
<body style='margin : 0px; overflow: hidden;'>
<a-scene embedded arjs="debugUIEnabled:false; sourceType: webcam;" vr-mode-ui="enabled: false">
<a-assets>
<a-asset-item id="cake" src="Cake.glb"></a-asset-item>
</a-assets>
<a-marker preset='custom' type='pattern' url="pattern-marker.patt">
<a-text value="Happy Birthday!!!" position=" 0 0 -0.1" align="center" rotation="-90 0 0" color="#f442eb" >
</a-text>
<a-entity gltf-model="#cake" play-all-model-animations="" position="0 0 1" rotation="0 0 0" scale="0.05 0.05 0.05" visible="true">
</a-entity>
</a-marker>
<a-entity camera></a-entity>
</a-scene>
</body>
</html>
가동 여부를 확인하다
웹 RTC의 일부인 브라우저에서 카메라를 사용할 수 있는 기술을 사용하기 위해https통신을 사용해야 한다.나는github에서push만https통신을 실현할 수 있는githubpages가 가장 간단하다고 생각해서 이번에githubpages를 사용했다.github 페이지의 사용 방법 참조여기.p>
이렇게 github 페이지에 공개되면ios의safari에서 열어 보세요."Happy birthday"랑 케이크가 아마 있을 거예요.p>
총결산
AR.js를 사용하면 HTML 30줄만 있으면 AR을 개발할 수 있습니다.이번에는 생일을 위해 생일카드를 만들었어요. 어버이날과 어버이날도 사용할 수 있어요!명함으로도 사용할 수 있습니다!!
참고 문헌
Reference
이 문제에 관하여(AR 생일카드를 만들어 봤는데, 생일이신 분들을 조금이나마 행복하게 해드릴 수 있을 것 같아요.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/eyexx/items/4863cf8462fb07207ceb텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)