【A-Frame】glbモデルを表示させる



犬の3Dモデル(glbファイル)をA-Frameを使ってweb上に表示させてみます。

まずは新規ディレクトリを作成

まずは新規ディレクトリを作成して、その中にhtmlファイルとglbファイルを用意します。

今回は、フリー素材サイトからダウンロードした、犬の3Dモデルを使用します。



/app   # アプリ名
│
├── index.html          # HTMLファイル
├── dog.glb 

HTMLファイルにa-frameをインポート




<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="https://aframe.io/releases/1.6.0/aframe.min.js"></script>

</head>
<body>
    <a-scene>
        <!-- このあたりにコードを書いていく -->
    </a-scene>
</body>
</html>


準備方法など基本的なことはこちらから!

a-assetsタグを記述

a-sceneタグの中にa-assetsタグを書き足します。

さらにそのなかに、a-asset-itemタグを書き足します。idを付けsrcは表示させたいglbファイルへのパスを書きます。



 <a-scene>
   <a-assets>
	<a-asset-item id="dogModel" src="dog.glb"></a-asset-item>
  </a-assets>
 </a-scene>

a-entityタグを追加

モデルを出すために、a-entityタグを追加します。

srcには先ほど、追加したa-asset-itemのidを記述します。

先頭の「#」は重要なので、忘れないように!




 <a-scene>
   <a-assets>
	<a-asset-item id="dogModel" src="dog.glb"></a-asset-item>
  </a-assets>
  
    <a-entity 
    src="#dogModel"
    position="0 0 -3" 
  ></a-entity>
 
 </a-scene>


Node.jsで動かす

そのままではglbができないようなので、Node.jsでサーバーを動かします。


Node.jsはインストールしてないひとは、インストールしてください。


http://127.0.0.1:8080で、開くことができます。


npm install -g http-server    
http-server

ブラウザで確認

うまくglbファイルを表示させることができました。

全体像

コードの全体像はこちらです。





<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="https://aframe.io/releases/1.6.0/aframe.min.js"></script>
</head>
<body>
    <a-scene>
     

        <a-assets>
            <!-- 3Dモデルの読み込み -->
            <a-asset-item id="dogModel" src="dog.glb"></a-asset-item>
        </a-assets>
        

        <a-entity gltf-model="#dogModel" position="0 0 -3"></a-entity>

    </a-scene>
</body>
</html>



コメント

タイトルとURLをコピーしました