OSDN Git Service

タグを打ち忘れていたついでに、html版ドキュメントを追加しました。
[ring-lang-081/ring.git] / docs / build / html / qt3d.html
diff --git a/docs/build/html/qt3d.html b/docs/build/html/qt3d.html
new file mode 100644 (file)
index 0000000..e37093c
--- /dev/null
@@ -0,0 +1,1819 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    
+    <title>Qt3D の用法 &mdash; プログラミング言語 Ring 1.12 取扱説明書</title>
+    
+    <link rel="stylesheet" href="_static/bootstrap-astropy.css" type="text/css" />
+    <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
+    
+    <script type="text/javascript">
+      var DOCUMENTATION_OPTIONS = {
+        URL_ROOT:    './',
+        VERSION:     '1.12',
+        COLLAPSE_INDEX: false,
+        FILE_SUFFIX: '.html',
+        HAS_SOURCE:  true
+      };
+    </script>
+    <script type="text/javascript" src="_static/jquery.js"></script>
+    <script type="text/javascript" src="_static/underscore.js"></script>
+    <script type="text/javascript" src="_static/doctools.js"></script>
+    <script type="text/javascript" src="_static/translations.js"></script>
+    <link rel="top" title="プログラミング言語 Ring 1.12 取扱説明書" href="index.html" />
+    <link rel="next" title="変数と属性のスコープ規則" href="scope.html" />
+    <link rel="prev" title="多国語アプリケーション" href="multilanguage.html" />
+    <link href='https://fonts.googleapis.com/css?family=Source+Sans+Pro:200,600' rel='stylesheet' type='text/css'/>
+
+  </head>
+  <body role="document">
+<div class="topbar">
+  <a class="brand" title="Documentation Home" href="index.html"><span id="logotext1">&#x1f369;Ring</span><span id="logotext2"> 1.12</span><span id="logotext3">:docs</span></a>
+  <ul>
+    
+    <li><a href="http://ring-lang.sourceforge.net/news.html">News</a></li>
+    <li><a href="http://ring-lang.sourceforge.net/download.html">Download</a></li>
+    <li><a href="https://groups.google.com/forum/#!forum/ring-lang">Get Help</a></li>
+    <li><a href="https://github.com/ring-lang/ring">Contribute</a></li>
+    <li><a href="http://ring-lang.sourceforge.net/resources.html">Resources</a></li>
+    <li><a href="http://ring-lang.sourceforge.net/team.html">Team</a></li>
+    
+    <li><a title="Ring Homepage" href="http://ring-lang.net/">Website</a></li>
+    <li><a title="総合索引" href="genindex.html">Index</a></li>
+    <li>
+      
+      
+<form action="search.html" method="get">
+  <input type="text" name="q" placeholder="Search" />
+  <input type="hidden" name="check_keywords" value="yes" />
+  <input type="hidden" name="area" value="default" />
+</form>
+      
+    </li>
+  </ul>
+</div>
+
+<div class="related">
+    <h3>ナビゲーション</h3>
+    <ul>
+      <li class="right">
+       <a href="scope.html" title="変数と属性のスコープ規則">
+         next &raquo;
+       </a>
+      </li>
+      <li class="right">
+       <a href="multilanguage.html" title="多国語アプリケーション">
+         &laquo; previous
+       </a>
+        |
+      </li>
+      <li>
+       <a href="index.html">プログラミング言語 Ring 1.12 取扱説明書</a>
+        &raquo;
+      </li>
+      
+      <li>Qt3D の用法</li> 
+    </ul>
+</div>
+  
+
+    <div class="document">
+      <div class="documentwrapper">
+        <div class="bodywrapper">
+          <div class="body" role="main">
+            
+  <div class="section" id="qt3d">
+<span id="index-0"></span><h1>Qt3D の用法<a class="headerlink" href="#qt3d" title="このヘッドラインへのパーマリンク">¶</a></h1>
+<p>この章では様々な用例を通して Qt3D の用法を学びます。</p>
+<div class="section" id="index-1">
+<span id="id1"></span><h2>立方体の描画<a class="headerlink" href="#index-1" title="このヘッドラインへのパーマリンク">¶</a></h2>
+<div class="highlight-ring"><div class="highlight"><pre><span class="k">load</span> <span class="s">&quot;guilib.ring&quot;</span>
+
+<span class="k">new</span> <span class="n">qApp</span> <span class="p">{</span>
+
+        <span class="n">oView</span> <span class="o">=</span> <span class="k">new</span> <span class="n">Qt3dwindow</span><span class="p">()</span>
+
+        <span class="n">oWidget</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QWidget</span><span class="p">()</span>
+        <span class="n">oContainer</span> <span class="o">=</span> <span class="n">oWidget</span><span class="p">.</span><span class="n">createWindowContainer</span><span class="p">(</span><span class="n">oView</span><span class="p">,</span><span class="n">oWidget</span><span class="p">,</span><span class="mi">0</span><span class="p">)</span>
+
+        <span class="n">oRootEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oContainer</span><span class="p">)</span>
+
+        <span class="n">oInput</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QInputAspect</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oView</span><span class="p">.</span><span class="n">registerAspect</span><span class="p">(</span><span class="n">oInput</span><span class="p">)</span>
+
+        <span class="n">oCameraEntity</span> <span class="o">=</span> <span class="n">oView</span><span class="p">.</span><span class="n">Camera</span><span class="p">()</span>
+
+        <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">lens</span><span class="p">().</span><span class="n">setPerspectiveProjection</span><span class="p">(</span><span class="mf">45.0</span><span class="p">,</span> <span class="mf">16.0</span><span class="o">/</span><span class="mf">9.0</span><span class="p">,</span> <span class="mf">0.1</span><span class="p">,</span> <span class="mf">1000.0</span><span class="p">)</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setPosition</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mf">20.0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setUpVector</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setViewCenter</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+
+        <span class="n">oLightEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oLight</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QPointLight</span><span class="p">(</span><span class="n">oLightEntity</span><span class="p">)</span>
+        <span class="n">oLight</span><span class="p">.</span><span class="n">setColor</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span> <span class="n">setRGB</span><span class="p">(</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">)</span> <span class="p">})</span>
+        <span class="n">oLight</span><span class="p">.</span><span class="n">setIntensity</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
+        <span class="n">oLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLight</span><span class="p">)</span>
+
+        <span class="n">oLightTransform</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QTransform</span><span class="p">(</span><span class="n">oLightEntity</span><span class="p">)</span>
+        <span class="n">oLightTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="n">oCameraEntity</span><span class="p">.</span><span class="n">position</span><span class="p">())</span>
+        <span class="n">oLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLightTransform</span><span class="p">)</span>
+
+        <span class="n">oCamController</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QFirstPersonCameraController</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oCamController</span><span class="p">.</span><span class="n">setCamera</span><span class="p">(</span><span class="n">oCameraEntity</span><span class="p">)</span>
+
+        <span class="n">oCube</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QCuboidMesh</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span> <span class="p">{</span>
+                <span class="n">setXextent</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
+                <span class="n">setYextent</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
+                <span class="n">setZextent</span><span class="p">(</span><span class="mi">3</span><span class="p">)</span>
+        <span class="p">}</span>
+
+        <span class="n">oCubeTransform</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTransform</span><span class="p">(</span><span class="n">oCube</span><span class="p">)</span>
+        <span class="n">oCubeTransform</span><span class="p">.</span><span class="n">setScale</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
+        <span class="n">oCubeTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">3</span><span class="p">,</span> <span class="mi">3</span><span class="p">,</span> <span class="mi">3</span><span class="p">))</span>
+
+        <span class="n">oCubeMaterial</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QPhongMaterial</span><span class="p">(</span><span class="n">oCube</span><span class="p">)</span>
+        <span class="n">oCubeMaterial</span><span class="p">.</span><span class="n">setDiffuse</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span><span class="n">setRGB</span><span class="p">(</span><span class="mi">200</span><span class="p">,</span><span class="mi">100</span><span class="p">,</span><span class="mi">100</span><span class="p">,</span><span class="mi">100</span><span class="p">)})</span>
+
+        <span class="n">oCubeEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+        <span class="n">oCubeEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oCube</span><span class="p">)</span>
+        <span class="n">oCubeEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oCubeMaterial</span><span class="p">)</span>
+        <span class="n">oCubeEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oCubeTransform</span><span class="p">)</span>
+
+        <span class="n">oView</span><span class="p">.</span><span class="n">setRootEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+
+        <span class="n">oLayout</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QVBoxLayout</span><span class="p">()</span>
+        <span class="n">oLayout</span><span class="p">.</span><span class="n">AddWidget</span><span class="p">(</span><span class="n">oContainer</span><span class="p">)</span>
+
+        <span class="n">oWidget</span> <span class="p">{</span>
+                <span class="n">setwindowtitle</span><span class="p">(</span><span class="s">&quot;Using Qt3D - Cube&quot;</span><span class="p">)</span>
+                <span class="n">resize</span><span class="p">(</span><span class="mi">800</span><span class="p">,</span><span class="mi">600</span><span class="p">)</span>
+                <span class="n">setLayout</span><span class="p">(</span><span class="n">oLayout</span><span class="p">)</span>
+                <span class="n">showMaximized</span><span class="p">()</span>
+        <span class="p">}</span>
+
+        <span class="n">exec</span><span class="p">()</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<img alt="Qt3D の用例 - 立方体の描画" src="_images/qt3d_ex1.png" />
+</div>
+<div class="section" id="index-2">
+<span id="id2"></span><h2>トーラスの描画<a class="headerlink" href="#index-2" title="このヘッドラインへのパーマリンク">¶</a></h2>
+<div class="highlight-ring"><div class="highlight"><pre><span class="k">load</span> <span class="s">&quot;guilib.ring&quot;</span>
+
+<span class="k">new</span> <span class="n">qApp</span> <span class="p">{</span>
+
+        <span class="n">oView</span> <span class="o">=</span> <span class="k">new</span> <span class="n">Qt3dwindow</span><span class="p">()</span>
+
+        <span class="n">oWidget</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QWidget</span><span class="p">()</span>
+        <span class="n">oContainer</span> <span class="o">=</span> <span class="n">oWidget</span><span class="p">.</span><span class="n">createWindowContainer</span><span class="p">(</span><span class="n">oView</span><span class="p">,</span><span class="n">oWidget</span><span class="p">,</span><span class="mi">0</span><span class="p">)</span>
+
+        <span class="n">oRootEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oContainer</span><span class="p">)</span>
+
+        <span class="n">oInput</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QInputAspect</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oView</span><span class="p">.</span><span class="n">registerAspect</span><span class="p">(</span><span class="n">oInput</span><span class="p">)</span>
+
+        <span class="n">oCameraEntity</span> <span class="o">=</span> <span class="n">oView</span><span class="p">.</span><span class="n">Camera</span><span class="p">()</span>
+
+        <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">lens</span><span class="p">().</span><span class="n">setPerspectiveProjection</span><span class="p">(</span><span class="mf">45.0</span><span class="p">,</span> <span class="mf">16.0</span><span class="o">/</span><span class="mf">9.0</span><span class="p">,</span> <span class="mf">0.1</span><span class="p">,</span> <span class="mf">1000.0</span><span class="p">)</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setPosition</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mf">20.0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setUpVector</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setViewCenter</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+
+        <span class="n">oLightEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oLight</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QPointLight</span><span class="p">(</span><span class="n">oLightEntity</span><span class="p">)</span>
+        <span class="n">oLight</span><span class="p">.</span><span class="n">setColor</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span> <span class="n">setRGB</span><span class="p">(</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">)</span> <span class="p">})</span>
+        <span class="n">oLight</span><span class="p">.</span><span class="n">setIntensity</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
+        <span class="n">oLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLight</span><span class="p">)</span>
+
+        <span class="n">oLightTransform</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QTransform</span><span class="p">(</span><span class="n">oLightEntity</span><span class="p">)</span>
+        <span class="n">oLightTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="n">oCameraEntity</span><span class="p">.</span><span class="n">position</span><span class="p">())</span>
+        <span class="n">oLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLightTransform</span><span class="p">)</span>
+
+        <span class="n">oCamController</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QFirstPersonCameraController</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oCamController</span><span class="p">.</span><span class="n">setCamera</span><span class="p">(</span><span class="n">oCameraEntity</span><span class="p">)</span>
+
+        <span class="n">oTorus</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTorusMesh</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oTorus</span><span class="p">.</span><span class="n">setRadius</span><span class="p">(</span><span class="mf">1.0</span><span class="p">)</span>
+                <span class="n">oTorus</span><span class="p">.</span><span class="n">setMinorRadius</span><span class="p">(</span><span class="mf">0.4</span><span class="p">)</span>
+                <span class="n">oTorus</span><span class="p">.</span><span class="n">setRings</span><span class="p">(</span><span class="mi">100</span><span class="p">)</span>
+                <span class="n">oTorus</span><span class="p">.</span><span class="n">setSlices</span><span class="p">(</span><span class="mi">20</span><span class="p">)</span>
+
+        <span class="n">oTorusTransform</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTransform</span><span class="p">(</span><span class="n">oTorus</span><span class="p">)</span>
+        <span class="n">oTorusTransform</span><span class="p">.</span><span class="n">setScale</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
+        <span class="n">oTorusTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">3</span><span class="p">,</span> <span class="mi">3</span><span class="p">,</span> <span class="mi">3</span><span class="p">))</span>
+
+        <span class="n">oTorusMaterial</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QPhongMaterial</span><span class="p">(</span><span class="n">oTorus</span><span class="p">)</span>
+        <span class="n">oTorusMaterial</span><span class="p">.</span><span class="n">setDiffuse</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span><span class="n">setRGB</span><span class="p">(</span><span class="mi">200</span><span class="p">,</span><span class="mi">100</span><span class="p">,</span><span class="mi">100</span><span class="p">,</span><span class="mi">100</span><span class="p">)})</span>
+
+        <span class="n">oTorusEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+        <span class="n">oTorusEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oTorus</span><span class="p">)</span>
+        <span class="n">oTorusEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oTorusMaterial</span><span class="p">)</span>
+        <span class="n">oTorusEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oTorusTransform</span><span class="p">)</span>
+
+        <span class="n">oView</span><span class="p">.</span><span class="n">setRootEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+
+        <span class="n">oLayout</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QVBoxLayout</span><span class="p">()</span>
+        <span class="n">oLayout</span><span class="p">.</span><span class="n">AddWidget</span><span class="p">(</span><span class="n">oContainer</span><span class="p">)</span>
+
+        <span class="n">oWidget</span> <span class="p">{</span>
+                <span class="n">setwindowtitle</span><span class="p">(</span><span class="s">&quot;Using Qt3D - Torus&quot;</span><span class="p">)</span>
+                <span class="n">resize</span><span class="p">(</span><span class="mi">800</span><span class="p">,</span><span class="mi">600</span><span class="p">)</span>
+                <span class="n">setLayout</span><span class="p">(</span><span class="n">oLayout</span><span class="p">)</span>
+                <span class="n">showMaximized</span><span class="p">()</span>
+        <span class="p">}</span>
+
+        <span class="n">exec</span><span class="p">()</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<img alt="Qt3D の用例 - トーラスの描画" src="_images/qt3d_ex2.png" />
+</div>
+<div class="section" id="index-3">
+<span id="id3"></span><h2>球体の描画<a class="headerlink" href="#index-3" title="このヘッドラインへのパーマリンク">¶</a></h2>
+<div class="highlight-ring"><div class="highlight"><pre><span class="k">load</span> <span class="s">&quot;guilib.ring&quot;</span>
+
+<span class="k">new</span> <span class="n">qApp</span> <span class="p">{</span>
+
+        <span class="n">oView</span> <span class="o">=</span> <span class="k">new</span> <span class="n">Qt3dwindow</span><span class="p">()</span>
+
+        <span class="n">oWidget</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QWidget</span><span class="p">()</span>
+        <span class="n">oContainer</span> <span class="o">=</span> <span class="n">oWidget</span><span class="p">.</span><span class="n">createWindowContainer</span><span class="p">(</span><span class="n">oView</span><span class="p">,</span><span class="n">oWidget</span><span class="p">,</span><span class="mi">0</span><span class="p">)</span>
+
+        <span class="n">oRootEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oContainer</span><span class="p">)</span>
+
+        <span class="n">oInput</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QInputAspect</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oView</span><span class="p">.</span><span class="n">registerAspect</span><span class="p">(</span><span class="n">oInput</span><span class="p">)</span>
+
+        <span class="n">oCameraEntity</span> <span class="o">=</span> <span class="n">oView</span><span class="p">.</span><span class="n">Camera</span><span class="p">()</span>
+
+        <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">lens</span><span class="p">().</span><span class="n">setPerspectiveProjection</span><span class="p">(</span><span class="mf">45.0</span><span class="p">,</span> <span class="mf">16.0</span><span class="o">/</span><span class="mf">9.0</span><span class="p">,</span> <span class="mf">0.1</span><span class="p">,</span> <span class="mf">1000.0</span><span class="p">)</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setPosition</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mf">20.0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setUpVector</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setViewCenter</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+
+        <span class="n">oLightEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oLight</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QPointLight</span><span class="p">(</span><span class="n">oLightEntity</span><span class="p">)</span>
+        <span class="n">oLight</span><span class="p">.</span><span class="n">setColor</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span> <span class="n">setRGB</span><span class="p">(</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">)</span> <span class="p">})</span>
+        <span class="n">oLight</span><span class="p">.</span><span class="n">setIntensity</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
+        <span class="n">oLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLight</span><span class="p">)</span>
+
+        <span class="n">oLightTransform</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QTransform</span><span class="p">(</span><span class="n">oLightEntity</span><span class="p">)</span>
+        <span class="n">oLightTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="n">oCameraEntity</span><span class="p">.</span><span class="n">position</span><span class="p">())</span>
+        <span class="n">oLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLightTransform</span><span class="p">)</span>
+
+        <span class="n">oCamController</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QFirstPersonCameraController</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oCamController</span><span class="p">.</span><span class="n">setCamera</span><span class="p">(</span><span class="n">oCameraEntity</span><span class="p">)</span>
+
+        <span class="n">oSphere</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QSphereMesh</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oSphere</span><span class="p">.</span><span class="n">setRadius</span><span class="p">(</span><span class="mf">1.0</span><span class="p">)</span>
+                <span class="n">oSphere</span><span class="p">.</span><span class="n">setRings</span><span class="p">(</span><span class="mi">100</span><span class="p">)</span>
+                <span class="n">oSphere</span><span class="p">.</span><span class="n">setSlices</span><span class="p">(</span><span class="mi">20</span><span class="p">)</span>
+
+        <span class="n">oSphereTransform</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTransform</span><span class="p">(</span><span class="n">oSphere</span><span class="p">)</span>
+        <span class="n">oSphereTransform</span><span class="p">.</span><span class="n">setScale</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
+        <span class="n">oSphereTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">3</span><span class="p">,</span> <span class="mi">3</span><span class="p">,</span> <span class="mi">3</span><span class="p">))</span>
+
+        <span class="n">oSphereMaterial</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QPhongMaterial</span><span class="p">(</span><span class="n">oSphere</span><span class="p">)</span>
+        <span class="n">oSphereMaterial</span><span class="p">.</span><span class="n">setDiffuse</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span><span class="n">setRGB</span><span class="p">(</span><span class="mi">200</span><span class="p">,</span><span class="mi">100</span><span class="p">,</span><span class="mi">100</span><span class="p">,</span><span class="mi">100</span><span class="p">)})</span>
+
+        <span class="n">oSphereEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+        <span class="n">oSphereEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oSphere</span><span class="p">)</span>
+        <span class="n">oSphereEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oSphereMaterial</span><span class="p">)</span>
+        <span class="n">oSphereEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oSphereTransform</span><span class="p">)</span>
+
+        <span class="n">oView</span><span class="p">.</span><span class="n">setRootEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+
+        <span class="n">oLayout</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QVBoxLayout</span><span class="p">()</span>
+        <span class="n">oLayout</span><span class="p">.</span><span class="n">AddWidget</span><span class="p">(</span><span class="n">oContainer</span><span class="p">)</span>
+
+        <span class="n">oWidget</span> <span class="p">{</span>
+                <span class="n">setwindowtitle</span><span class="p">(</span><span class="s">&quot;Using Qt3D - Sphere&quot;</span><span class="p">)</span>
+                <span class="n">resize</span><span class="p">(</span><span class="mi">800</span><span class="p">,</span><span class="mi">600</span><span class="p">)</span>
+                <span class="n">setLayout</span><span class="p">(</span><span class="n">oLayout</span><span class="p">)</span>
+                <span class="n">showMaximized</span><span class="p">()</span>
+        <span class="p">}</span>
+
+        <span class="n">exec</span><span class="p">()</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<img alt="Qt3D の用例 - 球体の描画" src="_images/qt3d_ex3.png" />
+</div>
+<div class="section" id="index-4">
+<span id="id4"></span><h2>円柱の描画<a class="headerlink" href="#index-4" title="このヘッドラインへのパーマリンク">¶</a></h2>
+<div class="highlight-ring"><div class="highlight"><pre><span class="k">load</span> <span class="s">&quot;guilib.ring&quot;</span>
+
+<span class="k">new</span> <span class="n">qApp</span> <span class="p">{</span>
+
+        <span class="n">oView</span> <span class="o">=</span> <span class="k">new</span> <span class="n">Qt3dwindow</span><span class="p">()</span>
+
+        <span class="n">oWidget</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QWidget</span><span class="p">()</span>
+        <span class="n">oContainer</span> <span class="o">=</span> <span class="n">oWidget</span><span class="p">.</span><span class="n">createWindowContainer</span><span class="p">(</span><span class="n">oView</span><span class="p">,</span><span class="n">oWidget</span><span class="p">,</span><span class="mi">0</span><span class="p">)</span>
+
+        <span class="n">oRootEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oContainer</span><span class="p">)</span>
+
+        <span class="n">oInput</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QInputAspect</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oView</span><span class="p">.</span><span class="n">registerAspect</span><span class="p">(</span><span class="n">oInput</span><span class="p">)</span>
+
+        <span class="n">oCameraEntity</span> <span class="o">=</span> <span class="n">oView</span><span class="p">.</span><span class="n">Camera</span><span class="p">()</span>
+
+        <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">lens</span><span class="p">().</span><span class="n">setPerspectiveProjection</span><span class="p">(</span><span class="mf">45.0</span><span class="p">,</span> <span class="mf">16.0</span><span class="o">/</span><span class="mf">9.0</span><span class="p">,</span> <span class="mf">0.1</span><span class="p">,</span> <span class="mf">1000.0</span><span class="p">)</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setPosition</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mf">20.0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setUpVector</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setViewCenter</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+
+        <span class="n">oLightEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oLight</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QPointLight</span><span class="p">(</span><span class="n">oLightEntity</span><span class="p">)</span>
+        <span class="n">oLight</span><span class="p">.</span><span class="n">setColor</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span> <span class="n">setRGB</span><span class="p">(</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">)</span> <span class="p">})</span>
+        <span class="n">oLight</span><span class="p">.</span><span class="n">setIntensity</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
+        <span class="n">oLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLight</span><span class="p">)</span>
+
+        <span class="n">oLightTransform</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QTransform</span><span class="p">(</span><span class="n">oLightEntity</span><span class="p">)</span>
+        <span class="n">oLightTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="n">oCameraEntity</span><span class="p">.</span><span class="n">position</span><span class="p">())</span>
+        <span class="n">oLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLightTransform</span><span class="p">)</span>
+
+        <span class="n">oCamController</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QFirstPersonCameraController</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oCamController</span><span class="p">.</span><span class="n">setCamera</span><span class="p">(</span><span class="n">oCameraEntity</span><span class="p">)</span>
+
+
+        <span class="n">oCylinder</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QCylinderMesh</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oCylinder</span><span class="p">.</span><span class="n">setRadius</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
+                <span class="n">oCylinder</span><span class="p">.</span><span class="n">setRings</span><span class="p">(</span><span class="mi">100</span><span class="p">)</span>
+                <span class="n">oCylinder</span><span class="p">.</span><span class="n">setSlices</span><span class="p">(</span><span class="mi">20</span><span class="p">)</span>
+        <span class="n">oCylinder</span><span class="p">.</span><span class="n">setLength</span><span class="p">(</span><span class="mi">5</span><span class="p">)</span>
+
+        <span class="n">oCylinderTransform</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTransform</span><span class="p">(</span><span class="n">oCylinder</span><span class="p">)</span>
+        <span class="n">oCylinderTransform</span><span class="p">.</span><span class="n">setScale</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
+        <span class="n">oCylinderTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">3</span><span class="p">))</span>
+
+        <span class="n">oCylinderMaterial</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QPhongMaterial</span><span class="p">(</span><span class="n">oCylinder</span><span class="p">)</span>
+        <span class="n">oCylinderMaterial</span><span class="p">.</span><span class="n">setDiffuse</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span><span class="n">setRGB</span><span class="p">(</span><span class="mi">200</span><span class="p">,</span><span class="mi">100</span><span class="p">,</span><span class="mi">100</span><span class="p">,</span><span class="mi">100</span><span class="p">)})</span>
+
+        <span class="n">oCylinderEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+        <span class="n">oCylinderEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oCylinder</span><span class="p">)</span>
+        <span class="n">oCylinderEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oCylinderMaterial</span><span class="p">)</span>
+        <span class="n">oCylinderEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oCylinderTransform</span><span class="p">)</span>
+
+        <span class="n">oView</span><span class="p">.</span><span class="n">setRootEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+
+        <span class="n">oLayout</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QVBoxLayout</span><span class="p">()</span>
+        <span class="n">oLayout</span><span class="p">.</span><span class="n">AddWidget</span><span class="p">(</span><span class="n">oContainer</span><span class="p">)</span>
+
+        <span class="n">oWidget</span> <span class="p">{</span>
+                <span class="n">setwindowtitle</span><span class="p">(</span><span class="s">&quot;Using Qt3D - Cylinder&quot;</span><span class="p">)</span>
+                <span class="n">resize</span><span class="p">(</span><span class="mi">800</span><span class="p">,</span><span class="mi">600</span><span class="p">)</span>
+                <span class="n">setLayout</span><span class="p">(</span><span class="n">oLayout</span><span class="p">)</span>
+                <span class="n">showMaximized</span><span class="p">()</span>
+        <span class="p">}</span>
+
+        <span class="n">exec</span><span class="p">()</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<img alt="Qt3D の用例 - 円柱の描画" src="_images/qt3d_ex4.png" />
+</div>
+<div class="section" id="index-5">
+<span id="id5"></span><h2>円錐の描画<a class="headerlink" href="#index-5" title="このヘッドラインへのパーマリンク">¶</a></h2>
+<div class="highlight-ring"><div class="highlight"><pre><span class="k">load</span> <span class="s">&quot;guilib.ring&quot;</span>
+
+<span class="k">new</span> <span class="n">qApp</span> <span class="p">{</span>
+
+        <span class="n">oView</span> <span class="o">=</span> <span class="k">new</span> <span class="n">Qt3dwindow</span><span class="p">()</span>
+
+        <span class="n">oWidget</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QWidget</span><span class="p">()</span>
+        <span class="n">oContainer</span> <span class="o">=</span> <span class="n">oWidget</span><span class="p">.</span><span class="n">createWindowContainer</span><span class="p">(</span><span class="n">oView</span><span class="p">,</span><span class="n">oWidget</span><span class="p">,</span><span class="mi">0</span><span class="p">)</span>
+
+        <span class="n">oRootEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oContainer</span><span class="p">)</span>
+
+        <span class="n">oInput</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QInputAspect</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oView</span><span class="p">.</span><span class="n">registerAspect</span><span class="p">(</span><span class="n">oInput</span><span class="p">)</span>
+
+        <span class="n">oCameraEntity</span> <span class="o">=</span> <span class="n">oView</span><span class="p">.</span><span class="n">Camera</span><span class="p">()</span>
+
+        <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">lens</span><span class="p">().</span><span class="n">setPerspectiveProjection</span><span class="p">(</span><span class="mf">45.0</span><span class="p">,</span> <span class="mf">16.0</span><span class="o">/</span><span class="mf">9.0</span><span class="p">,</span> <span class="mf">0.1</span><span class="p">,</span> <span class="mf">1000.0</span><span class="p">)</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setPosition</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mf">20.0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setUpVector</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setViewCenter</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+
+        <span class="n">oLightEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oLight</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QPointLight</span><span class="p">(</span><span class="n">oLightEntity</span><span class="p">)</span>
+        <span class="n">oLight</span><span class="p">.</span><span class="n">setColor</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span> <span class="n">setRGB</span><span class="p">(</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">)</span> <span class="p">})</span>
+        <span class="n">oLight</span><span class="p">.</span><span class="n">setIntensity</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
+        <span class="n">oLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLight</span><span class="p">)</span>
+
+        <span class="n">oLightTransform</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QTransform</span><span class="p">(</span><span class="n">oLightEntity</span><span class="p">)</span>
+        <span class="n">oLightTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="n">oCameraEntity</span><span class="p">.</span><span class="n">position</span><span class="p">())</span>
+        <span class="n">oLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLightTransform</span><span class="p">)</span>
+
+        <span class="n">oCamController</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QFirstPersonCameraController</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oCamController</span><span class="p">.</span><span class="n">setCamera</span><span class="p">(</span><span class="n">oCameraEntity</span><span class="p">)</span>
+
+
+        <span class="n">oCone</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QConeMesh</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oCone</span><span class="p">.</span><span class="n">setRings</span><span class="p">(</span><span class="mi">100</span><span class="p">)</span>
+                <span class="n">oCone</span><span class="p">.</span><span class="n">setSlices</span><span class="p">(</span><span class="mi">20</span><span class="p">)</span>
+        <span class="n">oCone</span><span class="p">.</span><span class="n">setLength</span><span class="p">(</span><span class="mi">5</span><span class="p">)</span>
+
+        <span class="n">oConeTransform</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTransform</span><span class="p">(</span><span class="n">oCone</span><span class="p">)</span>
+        <span class="n">oConeTransform</span><span class="p">.</span><span class="n">setScale</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
+        <span class="n">oConeTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">3</span><span class="p">))</span>
+
+        <span class="n">oConeMaterial</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QPhongMaterial</span><span class="p">(</span><span class="n">oCone</span><span class="p">)</span>
+        <span class="n">oConeMaterial</span><span class="p">.</span><span class="n">setDiffuse</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span><span class="n">setRGB</span><span class="p">(</span><span class="mi">200</span><span class="p">,</span><span class="mi">100</span><span class="p">,</span><span class="mi">100</span><span class="p">,</span><span class="mi">100</span><span class="p">)})</span>
+
+        <span class="n">oConeEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+        <span class="n">oConeEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oCone</span><span class="p">)</span>
+        <span class="n">oConeEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oConeMaterial</span><span class="p">)</span>
+        <span class="n">oConeEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oConeTransform</span><span class="p">)</span>
+
+        <span class="n">oView</span><span class="p">.</span><span class="n">setRootEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+
+        <span class="n">oLayout</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QVBoxLayout</span><span class="p">()</span>
+        <span class="n">oLayout</span><span class="p">.</span><span class="n">AddWidget</span><span class="p">(</span><span class="n">oContainer</span><span class="p">)</span>
+
+        <span class="n">oWidget</span> <span class="p">{</span>
+                <span class="n">setwindowtitle</span><span class="p">(</span><span class="s">&quot;Using Qt3D - Cone&quot;</span><span class="p">)</span>
+                <span class="n">resize</span><span class="p">(</span><span class="mi">800</span><span class="p">,</span><span class="mi">600</span><span class="p">)</span>
+                <span class="n">setLayout</span><span class="p">(</span><span class="n">oLayout</span><span class="p">)</span>
+                <span class="n">showMaximized</span><span class="p">()</span>
+        <span class="p">}</span>
+
+        <span class="n">exec</span><span class="p">()</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<img alt="Qt3D の用例 - 円錐の描画" src="_images/qt3d_ex5.png" />
+</div>
+<div class="section" id="index-6">
+<span id="id6"></span><h2>平面の描画<a class="headerlink" href="#index-6" title="このヘッドラインへのパーマリンク">¶</a></h2>
+<div class="highlight-ring"><div class="highlight"><pre><span class="k">load</span> <span class="s">&quot;guilib.ring&quot;</span>
+
+<span class="k">new</span> <span class="n">qApp</span> <span class="p">{</span>
+
+        <span class="n">oView</span> <span class="o">=</span> <span class="k">new</span> <span class="n">Qt3dwindow</span><span class="p">()</span>
+
+        <span class="n">oWidget</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QWidget</span><span class="p">()</span>
+        <span class="n">oContainer</span> <span class="o">=</span> <span class="n">oWidget</span><span class="p">.</span><span class="n">createWindowContainer</span><span class="p">(</span><span class="n">oView</span><span class="p">,</span><span class="n">oWidget</span><span class="p">,</span><span class="mi">0</span><span class="p">)</span>
+
+        <span class="n">oRootEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oContainer</span><span class="p">)</span>
+
+        <span class="n">oInput</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QInputAspect</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oView</span><span class="p">.</span><span class="n">registerAspect</span><span class="p">(</span><span class="n">oInput</span><span class="p">)</span>
+
+        <span class="n">oCameraEntity</span> <span class="o">=</span> <span class="n">oView</span><span class="p">.</span><span class="n">Camera</span><span class="p">()</span>
+
+        <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">lens</span><span class="p">().</span><span class="n">setPerspectiveProjection</span><span class="p">(</span><span class="mf">45.0</span><span class="p">,</span> <span class="mf">16.0</span><span class="o">/</span><span class="mf">9.0</span><span class="p">,</span> <span class="mf">0.1</span><span class="p">,</span> <span class="mf">1000.0</span><span class="p">)</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setPosition</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mf">20.0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setUpVector</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setViewCenter</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+
+        <span class="n">oLightEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oLight</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QPointLight</span><span class="p">(</span><span class="n">oLightEntity</span><span class="p">)</span>
+        <span class="n">oLight</span><span class="p">.</span><span class="n">setColor</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span> <span class="n">setRGB</span><span class="p">(</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">)</span> <span class="p">})</span>
+        <span class="n">oLight</span><span class="p">.</span><span class="n">setIntensity</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
+        <span class="n">oLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLight</span><span class="p">)</span>
+
+        <span class="n">oLightTransform</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QTransform</span><span class="p">(</span><span class="n">oLightEntity</span><span class="p">)</span>
+        <span class="n">oLightTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="n">oCameraEntity</span><span class="p">.</span><span class="n">position</span><span class="p">())</span>
+        <span class="n">oLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLightTransform</span><span class="p">)</span>
+
+        <span class="n">oCamController</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QFirstPersonCameraController</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oCamController</span><span class="p">.</span><span class="n">setCamera</span><span class="p">(</span><span class="n">oCameraEntity</span><span class="p">)</span>
+
+
+        <span class="n">oPlane</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QPlaneMesh</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+        <span class="n">oPlane</span><span class="p">.</span><span class="n">setHeight</span><span class="p">(</span><span class="mi">5</span><span class="p">)</span>
+        <span class="n">oPlane</span><span class="p">.</span><span class="n">setWidth</span><span class="p">(</span><span class="mi">5</span><span class="p">)</span>
+        <span class="n">oPlane</span><span class="p">.</span><span class="n">setmeshresolution</span><span class="p">(</span><span class="k">new</span> <span class="n">qSize</span><span class="p">(</span><span class="mi">10</span><span class="p">,</span><span class="mi">10</span><span class="p">))</span>
+
+        <span class="n">oPlaneTransform</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTransform</span><span class="p">(</span><span class="n">oPlane</span><span class="p">)</span>
+        <span class="n">oPlaneTransform</span><span class="p">.</span><span class="n">setScale</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
+        <span class="n">oPlaneTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="o">-</span><span class="mi">4</span><span class="p">,</span> <span class="mi">4</span><span class="p">))</span>
+
+        <span class="n">oPlaneMaterial</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QPhongMaterial</span><span class="p">(</span><span class="n">oPlane</span><span class="p">)</span>
+        <span class="n">oPlaneMaterial</span><span class="p">.</span><span class="n">setDiffuse</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span><span class="n">setRGB</span><span class="p">(</span><span class="mi">200</span><span class="p">,</span><span class="mi">100</span><span class="p">,</span><span class="mi">100</span><span class="p">,</span><span class="mi">100</span><span class="p">)})</span>
+
+        <span class="n">oPlaneEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+        <span class="n">oPlaneEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oPlane</span><span class="p">)</span>
+        <span class="n">oPlaneEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oPlaneMaterial</span><span class="p">)</span>
+        <span class="n">oPlaneEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oPlaneTransform</span><span class="p">)</span>
+
+        <span class="n">oView</span><span class="p">.</span><span class="n">setRootEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+
+        <span class="n">oLayout</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QVBoxLayout</span><span class="p">()</span>
+        <span class="n">oLayout</span><span class="p">.</span><span class="n">AddWidget</span><span class="p">(</span><span class="n">oContainer</span><span class="p">)</span>
+
+        <span class="n">oWidget</span> <span class="p">{</span>
+                <span class="n">setwindowtitle</span><span class="p">(</span><span class="s">&quot;Using Qt3D - Plane&quot;</span><span class="p">)</span>
+                <span class="n">resize</span><span class="p">(</span><span class="mi">800</span><span class="p">,</span><span class="mi">600</span><span class="p">)</span>
+                <span class="n">setLayout</span><span class="p">(</span><span class="n">oLayout</span><span class="p">)</span>
+                <span class="n">showMaximized</span><span class="p">()</span>
+        <span class="p">}</span>
+
+        <span class="n">exec</span><span class="p">()</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<img alt="Qt3D の用例 - 平面の描画" src="_images/qt3d_ex6.png" />
+</div>
+<div class="section" id="index-7">
+<span id="id7"></span><h2>テクスチャ<a class="headerlink" href="#index-7" title="このヘッドラインへのパーマリンク">¶</a></h2>
+<div class="highlight-ring"><div class="highlight"><pre><span class="k">load</span> <span class="s">&quot;guilib.ring&quot;</span>
+
+<span class="k">new</span> <span class="n">qApp</span> <span class="p">{</span>
+
+        <span class="n">oView</span> <span class="o">=</span> <span class="k">new</span> <span class="n">Qt3dwindow</span><span class="p">()</span>
+
+        <span class="n">oWidget</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QWidget</span><span class="p">()</span>
+        <span class="n">oContainer</span> <span class="o">=</span> <span class="n">oWidget</span><span class="p">.</span><span class="n">createWindowContainer</span><span class="p">(</span><span class="n">oView</span><span class="p">,</span><span class="n">oWidget</span><span class="p">,</span><span class="mi">0</span><span class="p">)</span>
+
+        <span class="n">oRootEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oContainer</span><span class="p">)</span>
+
+        <span class="n">oInput</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QInputAspect</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oView</span><span class="p">.</span><span class="n">registerAspect</span><span class="p">(</span><span class="n">oInput</span><span class="p">)</span>
+
+        <span class="n">oCameraEntity</span> <span class="o">=</span> <span class="n">oView</span><span class="p">.</span><span class="n">Camera</span><span class="p">()</span>
+
+        <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">lens</span><span class="p">().</span><span class="n">setPerspectiveProjection</span><span class="p">(</span><span class="mf">45.0</span><span class="p">,</span> <span class="mf">16.0</span><span class="o">/</span><span class="mf">9.0</span><span class="p">,</span> <span class="mf">0.1</span><span class="p">,</span> <span class="mf">1000.0</span><span class="p">)</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setPosition</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mf">20.0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setUpVector</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setViewCenter</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+
+        <span class="n">oLightEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oLight</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QPointLight</span><span class="p">(</span><span class="n">oLightEntity</span><span class="p">)</span>
+        <span class="n">oLight</span><span class="p">.</span><span class="n">setColor</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span> <span class="n">setRGB</span><span class="p">(</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">)</span> <span class="p">})</span>
+        <span class="n">oLight</span><span class="p">.</span><span class="n">setIntensity</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
+        <span class="n">oLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLight</span><span class="p">)</span>
+
+        <span class="n">oLightTransform</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QTransform</span><span class="p">(</span><span class="n">oLightEntity</span><span class="p">)</span>
+        <span class="n">oLightTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="n">oCameraEntity</span><span class="p">.</span><span class="n">position</span><span class="p">())</span>
+        <span class="n">oLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLightTransform</span><span class="p">)</span>
+
+        <span class="n">oCamController</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QFirstPersonCameraController</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oCamController</span><span class="p">.</span><span class="n">setCamera</span><span class="p">(</span><span class="n">oCameraEntity</span><span class="p">)</span>
+
+        <span class="n">oCube</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QCuboidMesh</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span> <span class="p">{</span>
+                <span class="n">setXextent</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
+                <span class="n">setYextent</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
+                <span class="n">setZextent</span><span class="p">(</span><span class="mi">3</span><span class="p">)</span>
+        <span class="p">}</span>
+
+        <span class="n">oCubeTransform</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTransform</span><span class="p">(</span><span class="n">oCube</span><span class="p">)</span>
+        <span class="n">oCubeTransform</span><span class="p">.</span><span class="n">setScale</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
+        <span class="n">oCubeTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">3</span><span class="p">,</span> <span class="mi">3</span><span class="p">,</span> <span class="mi">3</span><span class="p">))</span>
+
+        <span class="n">oTextureLoader</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTextureLoader</span><span class="p">(</span><span class="n">oCube</span><span class="p">);</span>
+        <span class="n">oTextureLoader</span><span class="p">.</span><span class="n">setSource</span><span class="p">(</span>
+                <span class="k">new</span> <span class="n">QUrl</span><span class="p">(</span><span class="s">&quot;file:///&quot;</span><span class="o">+</span><span class="n">currentdir</span><span class="p">()</span><span class="o">+</span><span class="s">&quot;/assets/texture/gold.jpg&quot;</span><span class="p">)</span> <span class="p">)</span>
+        <span class="n">oCubeMaterial</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QTextureMaterial</span><span class="p">(</span><span class="n">oCube</span><span class="p">)</span>
+        <span class="n">oCubeMaterial</span><span class="p">.</span><span class="n">setTexture</span><span class="p">(</span><span class="n">oTextureLoader</span><span class="p">)</span>
+
+        <span class="n">oCubeEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+        <span class="n">oCubeEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oCube</span><span class="p">)</span>
+        <span class="n">oCubeEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oCubeMaterial</span><span class="p">)</span>
+        <span class="n">oCubeEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oCubeTransform</span><span class="p">)</span>
+
+        <span class="n">oView</span><span class="p">.</span><span class="n">setRootEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+
+        <span class="n">oLayout</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QVBoxLayout</span><span class="p">()</span>
+        <span class="n">oLayout</span><span class="p">.</span><span class="n">AddWidget</span><span class="p">(</span><span class="n">oContainer</span><span class="p">)</span>
+
+        <span class="n">oWidget</span> <span class="p">{</span>
+                <span class="n">setwindowtitle</span><span class="p">(</span><span class="s">&quot;Using Qt3D - Adding Texture&quot;</span><span class="p">)</span>
+                <span class="n">resize</span><span class="p">(</span><span class="mi">800</span><span class="p">,</span><span class="mi">600</span><span class="p">)</span>
+                <span class="n">setLayout</span><span class="p">(</span><span class="n">oLayout</span><span class="p">)</span>
+                <span class="n">showMaximized</span><span class="p">()</span>
+        <span class="p">}</span>
+
+        <span class="n">exec</span><span class="p">()</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<img alt="Qt3D の用例 - テクスチャ" src="_images/qt3d_ex7.png" />
+</div>
+<div class="section" id="index-8">
+<span id="id8"></span><h2>キー入力<a class="headerlink" href="#index-8" title="このヘッドラインへのパーマリンク">¶</a></h2>
+<div class="highlight-ring"><div class="highlight"><pre><span class="k">load</span> <span class="s">&quot;guilib.ring&quot;</span>
+
+<span class="k">new</span> <span class="n">qApp</span> <span class="p">{</span>
+
+        <span class="n">oView</span> <span class="o">=</span> <span class="k">new</span> <span class="n">Qt3dwindow</span><span class="p">()</span>
+
+        <span class="n">oWidget</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QWidget</span><span class="p">()</span>
+        <span class="n">oContainer</span> <span class="o">=</span> <span class="n">oWidget</span><span class="p">.</span><span class="n">createWindowContainer</span><span class="p">(</span><span class="n">oView</span><span class="p">,</span><span class="n">oWidget</span><span class="p">,</span><span class="mi">0</span><span class="p">)</span>
+
+        <span class="n">oRootEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oContainer</span><span class="p">)</span>
+
+                <span class="n">oFilter</span> <span class="o">=</span> <span class="k">new</span> <span class="n">qallevents</span><span class="p">(</span><span class="n">oView</span><span class="p">)</span>
+                <span class="n">oFilter</span><span class="p">.</span><span class="n">setKeyPressEvent</span><span class="p">(</span><span class="s">&quot;pKeyPress()&quot;</span><span class="p">)</span>
+                <span class="n">oView</span><span class="p">.</span><span class="n">installeventfilter</span><span class="p">(</span><span class="n">oFilter</span><span class="p">)</span>
+
+        <span class="n">oInput</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QInputAspect</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oView</span><span class="p">.</span><span class="n">registerAspect</span><span class="p">(</span><span class="n">oInput</span><span class="p">)</span>
+
+        <span class="n">oCameraEntity</span> <span class="o">=</span> <span class="n">oView</span><span class="p">.</span><span class="n">Camera</span><span class="p">()</span>
+
+        <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">lens</span><span class="p">().</span><span class="n">setPerspectiveProjection</span><span class="p">(</span><span class="mf">45.0</span><span class="p">,</span> <span class="mf">16.0</span><span class="o">/</span><span class="mf">9.0</span><span class="p">,</span> <span class="mf">0.1</span><span class="p">,</span> <span class="mf">1000.0</span><span class="p">)</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setPosition</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mf">20.0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setUpVector</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setViewCenter</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+
+        <span class="n">oLightEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oLight</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QPointLight</span><span class="p">(</span><span class="n">oLightEntity</span><span class="p">)</span>
+        <span class="n">oLight</span><span class="p">.</span><span class="n">setColor</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span> <span class="n">setRGB</span><span class="p">(</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">)</span> <span class="p">})</span>
+        <span class="n">oLight</span><span class="p">.</span><span class="n">setIntensity</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
+        <span class="n">oLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLight</span><span class="p">)</span>
+
+        <span class="n">oLightTransform</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QTransform</span><span class="p">(</span><span class="n">oLightEntity</span><span class="p">)</span>
+        <span class="n">oLightTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="n">oCameraEntity</span><span class="p">.</span><span class="n">position</span><span class="p">())</span>
+        <span class="n">oLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLightTransform</span><span class="p">)</span>
+
+        <span class="n">oCamController</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QFirstPersonCameraController</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oCamController</span><span class="p">.</span><span class="n">setCamera</span><span class="p">(</span><span class="n">oCameraEntity</span><span class="p">)</span>
+        <span class="n">oCamController</span><span class="p">.</span><span class="n">setEnabled</span><span class="p">(</span><span class="kp">False</span><span class="p">)</span>
+
+        <span class="n">oCube</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QCuboidMesh</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span> <span class="p">{</span>
+                <span class="n">setXextent</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
+                <span class="n">setYextent</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
+                <span class="n">setZextent</span><span class="p">(</span><span class="mi">3</span><span class="p">)</span>
+        <span class="p">}</span>
+
+        <span class="n">oCubeTransform</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTransform</span><span class="p">(</span><span class="n">oCube</span><span class="p">)</span>
+        <span class="n">oCubeTransform</span><span class="p">.</span><span class="n">setScale</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
+        <span class="n">oCubeTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">3</span><span class="p">,</span> <span class="mi">3</span><span class="p">,</span> <span class="mi">3</span><span class="p">))</span>
+
+        <span class="n">oTextureLoader</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTextureLoader</span><span class="p">(</span><span class="n">oCube</span><span class="p">);</span>
+        <span class="n">oTextureLoader</span><span class="p">.</span><span class="n">setSource</span><span class="p">(</span>
+                <span class="k">new</span> <span class="n">QUrl</span><span class="p">(</span><span class="s">&quot;file:///&quot;</span><span class="o">+</span><span class="n">currentdir</span><span class="p">()</span><span class="o">+</span><span class="s">&quot;/assets/texture/gold.jpg&quot;</span><span class="p">)</span> <span class="p">)</span>
+        <span class="n">oCubeMaterial</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QTextureMaterial</span><span class="p">(</span><span class="n">oCube</span><span class="p">)</span>
+        <span class="n">oCubeMaterial</span><span class="p">.</span><span class="n">setTexture</span><span class="p">(</span><span class="n">oTextureLoader</span><span class="p">)</span>
+
+        <span class="n">oCubeEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+        <span class="n">oCubeEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oCube</span><span class="p">)</span>
+        <span class="n">oCubeEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oCubeMaterial</span><span class="p">)</span>
+        <span class="n">oCubeEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oCubeTransform</span><span class="p">)</span>
+
+        <span class="n">oView</span><span class="p">.</span><span class="n">setRootEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+
+        <span class="n">oLayout</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QVBoxLayout</span><span class="p">()</span>
+        <span class="n">oLayout</span><span class="p">.</span><span class="n">AddWidget</span><span class="p">(</span><span class="n">oContainer</span><span class="p">)</span>
+
+        <span class="n">oWidget</span> <span class="p">{</span>
+                <span class="n">setwindowtitle</span><span class="p">(</span><span class="s">&quot;Using Qt3D - Moving Cube using the Keyboard&quot;</span><span class="p">)</span>
+                <span class="n">resize</span><span class="p">(</span><span class="mi">800</span><span class="p">,</span><span class="mi">600</span><span class="p">)</span>
+                <span class="n">setLayout</span><span class="p">(</span><span class="n">oLayout</span><span class="p">)</span>
+                <span class="n">showMaximized</span><span class="p">()</span>
+        <span class="p">}</span>
+
+        <span class="n">oContainer</span><span class="p">.</span><span class="n">setfocus</span><span class="p">(</span><span class="mi">0</span><span class="p">)</span>
+
+        <span class="n">exec</span><span class="p">()</span>
+<span class="p">}</span>
+
+<span class="k">func</span> <span class="n">pKeyPress</span>
+        <span class="n">nKey</span> <span class="o">=</span> <span class="n">oFilter</span><span class="p">.</span><span class="n">getkeycode</span><span class="p">()</span>
+        <span class="n">oX</span> <span class="o">=</span> <span class="n">oCubeTransform</span><span class="p">.</span><span class="n">translation</span><span class="p">().</span><span class="n">x</span><span class="p">()</span>
+        <span class="n">oY</span> <span class="o">=</span> <span class="n">oCubeTransform</span><span class="p">.</span><span class="n">translation</span><span class="p">().</span><span class="n">y</span><span class="p">()</span>
+        <span class="n">oZ</span> <span class="o">=</span> <span class="n">oCubeTransform</span><span class="p">.</span><span class="n">translation</span><span class="p">().</span><span class="n">z</span><span class="p">()</span>
+        <span class="k">switch</span> <span class="n">nKey</span>
+                <span class="k">on</span> <span class="n">Qt_Key_Right</span>
+                        <span class="n">oX</span><span class="o">++</span>
+                <span class="k">on</span> <span class="n">Qt_Key_Left</span>
+                        <span class="n">oX</span><span class="o">--</span>
+                <span class="k">on</span> <span class="n">Qt_Key_Up</span>
+                        <span class="n">oY</span><span class="o">++</span>
+                <span class="k">on</span> <span class="n">Qt_Key_Down</span>
+                        <span class="n">oY</span><span class="o">--</span>
+        <span class="k">off</span>
+        <span class="n">oCubeTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="n">oX</span><span class="p">,</span> <span class="n">oY</span><span class="p">,</span> <span class="n">oZ</span><span class="p">))</span>
+</pre></div>
+</div>
+<img alt="Qt3D の用例 - キー入力" src="_images/qt3d_ex8.png" />
+</div>
+<div class="section" id="index-9">
+<span id="id9"></span><h2>オブジェクト・ピッカー<a class="headerlink" href="#index-9" title="このヘッドラインへのパーマリンク">¶</a></h2>
+<div class="highlight-ring"><div class="highlight"><pre><span class="k">load</span> <span class="s">&quot;guilib.ring&quot;</span>
+
+<span class="k">new</span> <span class="n">qApp</span> <span class="p">{</span>
+
+        <span class="n">oView</span> <span class="o">=</span> <span class="k">new</span> <span class="n">Qt3dwindow</span><span class="p">()</span>
+
+        <span class="n">oWidget</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QWidget</span><span class="p">()</span>
+        <span class="n">oContainer</span> <span class="o">=</span> <span class="n">oWidget</span><span class="p">.</span><span class="n">createWindowContainer</span><span class="p">(</span><span class="n">oView</span><span class="p">,</span><span class="n">oWidget</span><span class="p">,</span><span class="mi">0</span><span class="p">)</span>
+
+        <span class="n">oRootEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oContainer</span><span class="p">)</span>
+
+                <span class="n">oFilter</span> <span class="o">=</span> <span class="k">new</span> <span class="n">qallevents</span><span class="p">(</span><span class="n">oView</span><span class="p">)</span>
+                <span class="n">oFilter</span><span class="p">.</span><span class="n">setKeyPressEvent</span><span class="p">(</span><span class="s">&quot;pKeyPress()&quot;</span><span class="p">)</span>
+                <span class="n">oView</span><span class="p">.</span><span class="n">installeventfilter</span><span class="p">(</span><span class="n">oFilter</span><span class="p">)</span>
+
+        <span class="n">oInput</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QInputAspect</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oView</span><span class="p">.</span><span class="n">registerAspect</span><span class="p">(</span><span class="n">oInput</span><span class="p">)</span>
+
+        <span class="n">oCameraEntity</span> <span class="o">=</span> <span class="n">oView</span><span class="p">.</span><span class="n">Camera</span><span class="p">()</span>
+
+        <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">lens</span><span class="p">().</span><span class="n">setPerspectiveProjection</span><span class="p">(</span><span class="mf">45.0</span><span class="p">,</span> <span class="mf">16.0</span><span class="o">/</span><span class="mf">9.0</span><span class="p">,</span> <span class="mf">0.1</span><span class="p">,</span> <span class="mf">1000.0</span><span class="p">)</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setPosition</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mf">20.0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setUpVector</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setViewCenter</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+
+        <span class="n">oLightEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oLight</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QPointLight</span><span class="p">(</span><span class="n">oLightEntity</span><span class="p">)</span>
+        <span class="n">oLight</span><span class="p">.</span><span class="n">setColor</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span> <span class="n">setRGB</span><span class="p">(</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">)</span> <span class="p">})</span>
+        <span class="n">oLight</span><span class="p">.</span><span class="n">setIntensity</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
+        <span class="n">oLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLight</span><span class="p">)</span>
+
+        <span class="n">oLightTransform</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QTransform</span><span class="p">(</span><span class="n">oLightEntity</span><span class="p">)</span>
+        <span class="n">oLightTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="n">oCameraEntity</span><span class="p">.</span><span class="n">position</span><span class="p">())</span>
+        <span class="n">oLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLightTransform</span><span class="p">)</span>
+
+        <span class="n">oCamController</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QFirstPersonCameraController</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oCamController</span><span class="p">.</span><span class="n">setCamera</span><span class="p">(</span><span class="n">oCameraEntity</span><span class="p">)</span>
+        <span class="n">oCamController</span><span class="p">.</span><span class="n">setEnabled</span><span class="p">(</span><span class="kp">False</span><span class="p">)</span>
+
+        <span class="n">oCube</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QCuboidMesh</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span> <span class="p">{</span>
+                <span class="n">setXextent</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
+                <span class="n">setYextent</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
+                <span class="n">setZextent</span><span class="p">(</span><span class="mi">3</span><span class="p">)</span>
+        <span class="p">}</span>
+
+        <span class="n">oCubeTransform</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTransform</span><span class="p">(</span><span class="n">oCube</span><span class="p">)</span>
+        <span class="n">oCubeTransform</span><span class="p">.</span><span class="n">setScale</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
+        <span class="n">oCubeTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">3</span><span class="p">,</span> <span class="mi">3</span><span class="p">,</span> <span class="mi">3</span><span class="p">))</span>
+
+        <span class="n">oTextureLoader</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTextureLoader</span><span class="p">(</span><span class="n">oCube</span><span class="p">);</span>
+        <span class="n">oTextureLoader</span><span class="p">.</span><span class="n">setSource</span><span class="p">(</span>
+                <span class="k">new</span> <span class="n">QUrl</span><span class="p">(</span><span class="s">&quot;file:///&quot;</span><span class="o">+</span><span class="n">currentdir</span><span class="p">()</span><span class="o">+</span><span class="s">&quot;/assets/texture/gold.jpg&quot;</span><span class="p">)</span> <span class="p">)</span>
+        <span class="n">oCubeMaterial</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QTextureMaterial</span><span class="p">(</span><span class="n">oCube</span><span class="p">)</span>
+        <span class="n">oCubeMaterial</span><span class="p">.</span><span class="n">setTexture</span><span class="p">(</span><span class="n">oTextureLoader</span><span class="p">)</span>
+
+        <span class="n">oCubeEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+        <span class="n">oCubeEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oCube</span><span class="p">)</span>
+        <span class="n">oCubeEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oCubeMaterial</span><span class="p">)</span>
+        <span class="n">oCubeEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oCubeTransform</span><span class="p">)</span>
+
+        <span class="n">oPicker</span> <span class="o">=</span> <span class="k">new</span> <span class="n">qObjectPicker</span><span class="p">(</span><span class="n">oCube</span><span class="p">)</span> <span class="p">{</span>
+                <span class="n">setclickedevent</span><span class="p">(</span><span class="s">&quot;pClick()&quot;</span><span class="p">)</span>
+        <span class="p">}</span>
+        <span class="n">oCubeEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oPicker</span><span class="p">)</span>
+
+        <span class="n">oView</span><span class="p">.</span><span class="n">setRootEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+
+        <span class="n">oLayout</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QVBoxLayout</span><span class="p">()</span>
+        <span class="n">oLayout</span><span class="p">.</span><span class="n">AddWidget</span><span class="p">(</span><span class="n">oContainer</span><span class="p">)</span>
+
+        <span class="n">oWidget</span> <span class="p">{</span>
+                <span class="n">setwindowtitle</span><span class="p">(</span><span class="s">&quot;Using Qt3D - Object Picker - Click on the Cube&quot;</span><span class="p">)</span>
+                <span class="n">resize</span><span class="p">(</span><span class="mi">800</span><span class="p">,</span><span class="mi">600</span><span class="p">)</span>
+                <span class="n">setLayout</span><span class="p">(</span><span class="n">oLayout</span><span class="p">)</span>
+                <span class="n">showMaximized</span><span class="p">()</span>
+        <span class="p">}</span>
+
+        <span class="n">oContainer</span><span class="p">.</span><span class="n">setfocus</span><span class="p">(</span><span class="mi">0</span><span class="p">)</span>
+
+        <span class="n">exec</span><span class="p">()</span>
+<span class="p">}</span>
+
+<span class="k">func</span> <span class="n">pKeyPress</span>
+        <span class="n">nKey</span> <span class="o">=</span> <span class="n">oFilter</span><span class="p">.</span><span class="n">getkeycode</span><span class="p">()</span>
+        <span class="n">oX</span> <span class="o">=</span> <span class="n">oCubeTransform</span><span class="p">.</span><span class="n">translation</span><span class="p">().</span><span class="n">x</span><span class="p">()</span>
+        <span class="n">oY</span> <span class="o">=</span> <span class="n">oCubeTransform</span><span class="p">.</span><span class="n">translation</span><span class="p">().</span><span class="n">y</span><span class="p">()</span>
+        <span class="n">oZ</span> <span class="o">=</span> <span class="n">oCubeTransform</span><span class="p">.</span><span class="n">translation</span><span class="p">().</span><span class="n">z</span><span class="p">()</span>
+        <span class="k">switch</span> <span class="n">nKey</span>
+                <span class="k">on</span> <span class="n">Qt_Key_Right</span>
+                        <span class="n">oX</span><span class="o">++</span>
+                <span class="k">on</span> <span class="n">Qt_Key_Left</span>
+                        <span class="n">oX</span><span class="o">--</span>
+                <span class="k">on</span> <span class="n">Qt_Key_Up</span>
+                        <span class="n">oY</span><span class="o">++</span>
+                <span class="k">on</span> <span class="n">Qt_Key_Down</span>
+                        <span class="n">oY</span><span class="o">--</span>
+        <span class="k">off</span>
+        <span class="n">oCubeTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="n">oX</span><span class="p">,</span> <span class="n">oY</span><span class="p">,</span> <span class="n">oZ</span><span class="p">))</span>
+
+<span class="k">func</span> <span class="n">pClick</span>
+        <span class="n">msginfo</span><span class="p">(</span><span class="s">&quot;Event&quot;</span><span class="p">,</span><span class="s">&quot;Click&quot;</span><span class="p">)</span>
+        <span class="n">oContainer</span><span class="p">.</span><span class="n">setfocus</span><span class="p">(</span><span class="mi">0</span><span class="p">)</span>
+</pre></div>
+</div>
+<img alt="Qt3D の用例 - オブジェクト・ピッカー" src="_images/qt3d_ex9.png" />
+</div>
+<div class="section" id="index-10">
+<span id="id10"></span><h2>フレームアクション<a class="headerlink" href="#index-10" title="このヘッドラインへのパーマリンク">¶</a></h2>
+<div class="highlight-ring"><div class="highlight"><pre><span class="k">load</span> <span class="s">&quot;guilib.ring&quot;</span>
+
+<span class="k">new</span> <span class="n">qApp</span> <span class="p">{</span>
+
+        <span class="n">oView</span> <span class="o">=</span> <span class="k">new</span> <span class="n">Qt3dwindow</span><span class="p">()</span>
+
+        <span class="n">oWidget</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QWidget</span><span class="p">()</span>
+        <span class="n">oContainer</span> <span class="o">=</span> <span class="n">oWidget</span><span class="p">.</span><span class="n">createWindowContainer</span><span class="p">(</span><span class="n">oView</span><span class="p">,</span><span class="n">oWidget</span><span class="p">,</span><span class="mi">0</span><span class="p">)</span>
+
+        <span class="n">oRootEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oContainer</span><span class="p">)</span>
+
+        <span class="n">oInput</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QInputAspect</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oView</span><span class="p">.</span><span class="n">registerAspect</span><span class="p">(</span><span class="n">oInput</span><span class="p">)</span>
+
+        <span class="n">oCameraEntity</span> <span class="o">=</span> <span class="n">oView</span><span class="p">.</span><span class="n">Camera</span><span class="p">()</span>
+
+        <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">lens</span><span class="p">().</span><span class="n">setPerspectiveProjection</span><span class="p">(</span><span class="mf">45.0</span><span class="p">,</span> <span class="mf">16.0</span><span class="o">/</span><span class="mf">9.0</span><span class="p">,</span> <span class="mf">0.1</span><span class="p">,</span> <span class="mf">1000.0</span><span class="p">)</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setPosition</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mf">20.0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setUpVector</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setViewCenter</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+
+        <span class="n">oLightEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oLight</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QPointLight</span><span class="p">(</span><span class="n">oLightEntity</span><span class="p">)</span>
+        <span class="n">oLight</span><span class="p">.</span><span class="n">setColor</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span> <span class="n">setRGB</span><span class="p">(</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">)</span> <span class="p">})</span>
+        <span class="n">oLight</span><span class="p">.</span><span class="n">setIntensity</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
+        <span class="n">oLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLight</span><span class="p">)</span>
+
+        <span class="n">oLightTransform</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QTransform</span><span class="p">(</span><span class="n">oLightEntity</span><span class="p">)</span>
+        <span class="n">oLightTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="n">oCameraEntity</span><span class="p">.</span><span class="n">position</span><span class="p">())</span>
+        <span class="n">oLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLightTransform</span><span class="p">)</span>
+
+        <span class="n">oCamController</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QFirstPersonCameraController</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oCamController</span><span class="p">.</span><span class="n">setCamera</span><span class="p">(</span><span class="n">oCameraEntity</span><span class="p">)</span>
+        <span class="n">oCamController</span><span class="p">.</span><span class="n">setEnabled</span><span class="p">(</span><span class="kp">False</span><span class="p">)</span>
+
+        <span class="n">oCube</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QCuboidMesh</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span> <span class="p">{</span>
+                <span class="n">setXextent</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
+                <span class="n">setYextent</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
+                <span class="n">setZextent</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
+        <span class="p">}</span>
+
+        <span class="n">oCubeTransform</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTransform</span><span class="p">(</span><span class="n">oCube</span><span class="p">)</span>
+        <span class="n">oCubeTransform</span><span class="p">.</span><span class="n">setScale</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
+        <span class="n">oCubeTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="o">-</span><span class="mi">5</span><span class="p">,</span> <span class="o">-</span><span class="mi">5</span><span class="p">,</span> <span class="o">-</span><span class="mi">5</span><span class="p">))</span>
+
+        <span class="n">oTextureLoader</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTextureLoader</span><span class="p">(</span><span class="n">oCube</span><span class="p">);</span>
+        <span class="n">oTextureLoader</span><span class="p">.</span><span class="n">setSource</span><span class="p">(</span>
+                <span class="k">new</span> <span class="n">QUrl</span><span class="p">(</span><span class="s">&quot;file:///&quot;</span><span class="o">+</span><span class="n">currentdir</span><span class="p">()</span><span class="o">+</span><span class="s">&quot;/assets/texture/gold.jpg&quot;</span><span class="p">)</span> <span class="p">)</span>
+        <span class="n">oCubeMaterial</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QTextureMaterial</span><span class="p">(</span><span class="n">oCube</span><span class="p">)</span>
+        <span class="n">oCubeMaterial</span><span class="p">.</span><span class="n">setTexture</span><span class="p">(</span><span class="n">oTextureLoader</span><span class="p">)</span>
+
+        <span class="n">oCubeEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+        <span class="n">oCubeEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oCube</span><span class="p">)</span>
+        <span class="n">oCubeEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oCubeMaterial</span><span class="p">)</span>
+        <span class="n">oCubeEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oCubeTransform</span><span class="p">)</span>
+
+        <span class="n">nAngle</span><span class="o">=</span><span class="mi">0</span>        <span class="n">nSpeed</span><span class="o">=</span><span class="mf">0.1</span>
+        <span class="n">oFrameAction</span> <span class="o">=</span> <span class="k">new</span> <span class="n">qFrameAction</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span> <span class="p">{</span>
+                <span class="n">settriggeredevent</span><span class="p">(</span><span class="s">&quot;pEvent()&quot;</span><span class="p">)</span>
+        <span class="p">}</span>
+
+        <span class="n">oView</span><span class="p">.</span><span class="n">setRootEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+
+        <span class="n">oLayout</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QVBoxLayout</span><span class="p">()</span>
+        <span class="n">oLayout</span><span class="p">.</span><span class="n">AddWidget</span><span class="p">(</span><span class="n">oContainer</span><span class="p">)</span>
+
+        <span class="n">oWidget</span> <span class="p">{</span>
+                <span class="n">setwindowtitle</span><span class="p">(</span><span class="s">&quot;Using Qt3D - Frame Action&quot;</span><span class="p">)</span>
+                <span class="n">resize</span><span class="p">(</span><span class="mi">800</span><span class="p">,</span><span class="mi">600</span><span class="p">)</span>
+                <span class="n">setLayout</span><span class="p">(</span><span class="n">oLayout</span><span class="p">)</span>
+                <span class="n">showMaximized</span><span class="p">()</span>
+        <span class="p">}</span>
+
+        <span class="n">exec</span><span class="p">()</span>
+<span class="p">}</span>
+
+<span class="k">func</span> <span class="n">pEvent</span>
+
+        <span class="c"># Move the Cube</span>
+                <span class="n">oX</span> <span class="o">=</span> <span class="n">oCubeTransform</span><span class="p">.</span><span class="n">translation</span><span class="p">().</span><span class="n">x</span><span class="p">()</span>
+                <span class="n">oY</span> <span class="o">=</span> <span class="n">oCubeTransform</span><span class="p">.</span><span class="n">translation</span><span class="p">().</span><span class="n">y</span><span class="p">()</span>
+                <span class="n">oZ</span> <span class="o">=</span> <span class="n">oCubeTransform</span><span class="p">.</span><span class="n">translation</span><span class="p">().</span><span class="n">z</span><span class="p">()</span>
+                <span class="k">if</span> <span class="n">oX</span> <span class="o">&gt;=</span> <span class="mi">4</span>
+                        <span class="n">nSpeed</span><span class="o">=-</span><span class="mf">0.1</span>
+                <span class="k">but</span> <span class="n">oX</span> <span class="o">&lt;=</span> <span class="o">-</span><span class="mi">10</span>
+                        <span class="n">nSpeed</span><span class="o">=</span><span class="mf">0.1</span>
+                <span class="k">ok</span>
+                <span class="n">oCubeTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span>
+                        <span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="n">oX</span><span class="o">+</span><span class="n">nSpeed</span><span class="p">,</span> <span class="n">oY</span><span class="o">+</span><span class="n">nSpeed</span><span class="p">,</span> <span class="n">oZ</span><span class="o">+</span><span class="n">nSpeed</span><span class="p">))</span>
+
+        <span class="c"># Rotate the Cube</span>
+                <span class="n">nAngle</span><span class="o">+=</span><span class="mi">5</span>  <span class="k">if</span> <span class="n">nAngle</span><span class="o">=</span><span class="mi">360</span>  <span class="n">nAngle</span><span class="o">=</span><span class="mi">0</span> <span class="k">ok</span>
+                <span class="n">oQ</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QQuaternion</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">)</span>
+                <span class="n">oCubeTransform</span><span class="p">.</span><span class="n">setRotation</span><span class="p">(</span>
+                        <span class="n">oQ</span><span class="p">.</span><span class="n">fromAxisAndAngle</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">),</span> <span class="n">nAngle</span><span class="p">))</span>
+</pre></div>
+</div>
+<img alt="Qt3D の用例 - フレームアクション" src="_images/qt3d_ex10.png" />
+</div>
+<div class="section" id="d">
+<span id="index-11"></span><h2>2Dテキスト<a class="headerlink" href="#d" title="このヘッドラインへのパーマリンク">¶</a></h2>
+<div class="highlight-ring"><div class="highlight"><pre><span class="k">load</span> <span class="s">&quot;guilib.ring&quot;</span>
+
+<span class="k">new</span> <span class="n">qApp</span> <span class="p">{</span>
+
+        <span class="n">oView</span> <span class="o">=</span> <span class="k">new</span> <span class="n">Qt3dwindow</span><span class="p">()</span>
+
+        <span class="n">oWidget</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QWidget</span><span class="p">()</span>
+        <span class="n">oContainer</span> <span class="o">=</span> <span class="n">oWidget</span><span class="p">.</span><span class="n">createWindowContainer</span><span class="p">(</span><span class="n">oView</span><span class="p">,</span><span class="n">oWidget</span><span class="p">,</span><span class="mi">0</span><span class="p">)</span>
+
+        <span class="n">oRootEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oContainer</span><span class="p">)</span>
+
+        <span class="n">oView</span><span class="p">.</span><span class="n">defaultframegraph</span><span class="p">().</span><span class="n">setclearcolor</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span><span class="n">setRGB</span><span class="p">(</span><span class="mi">100</span><span class="p">,</span><span class="mi">250</span><span class="p">,</span><span class="mi">150</span><span class="p">,</span><span class="mi">255</span><span class="p">)})</span>
+
+        <span class="n">oInput</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QInputAspect</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oView</span><span class="p">.</span><span class="n">registerAspect</span><span class="p">(</span><span class="n">oInput</span><span class="p">)</span>
+
+        <span class="n">oCameraEntity</span> <span class="o">=</span> <span class="n">oView</span><span class="p">.</span><span class="n">Camera</span><span class="p">()</span>
+
+        <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">lens</span><span class="p">().</span><span class="n">setPerspectiveProjection</span><span class="p">(</span><span class="mf">45.0</span><span class="p">,</span> <span class="mf">16.0</span><span class="o">/</span><span class="mf">9.0</span><span class="p">,</span> <span class="mf">0.1</span><span class="p">,</span> <span class="mf">1000.0</span><span class="p">)</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setPosition</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mf">20.0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setUpVector</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setViewCenter</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+
+        <span class="n">oLightEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oLight</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QPointLight</span><span class="p">(</span><span class="n">oLightEntity</span><span class="p">)</span>
+        <span class="n">oLight</span><span class="p">.</span><span class="n">setColor</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span> <span class="n">setRGB</span><span class="p">(</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">)</span> <span class="p">})</span>
+        <span class="n">oLight</span><span class="p">.</span><span class="n">setIntensity</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
+        <span class="n">oLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLight</span><span class="p">)</span>
+
+        <span class="n">oLightTransform</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QTransform</span><span class="p">(</span><span class="n">oLightEntity</span><span class="p">)</span>
+        <span class="n">oLightTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="n">oCameraEntity</span><span class="p">.</span><span class="n">position</span><span class="p">())</span>
+        <span class="n">oLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLightTransform</span><span class="p">)</span>
+
+        <span class="n">oCamController</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QFirstPersonCameraController</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oCamController</span><span class="p">.</span><span class="n">setCamera</span><span class="p">(</span><span class="n">oCameraEntity</span><span class="p">)</span>
+
+        <span class="n">oCube</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QCuboidMesh</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span> <span class="p">{</span>
+                <span class="n">setXextent</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
+                <span class="n">setYextent</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
+                <span class="n">setZextent</span><span class="p">(</span><span class="mi">3</span><span class="p">)</span>
+        <span class="p">}</span>
+
+        <span class="n">oCubeTransform</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTransform</span><span class="p">(</span><span class="n">oCube</span><span class="p">)</span>
+        <span class="n">oCubeTransform</span><span class="p">.</span><span class="n">setScale</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
+        <span class="n">oCubeTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">3</span><span class="p">,</span> <span class="mi">4</span><span class="p">))</span>
+
+        <span class="n">oTextureLoader</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTextureLoader</span><span class="p">(</span><span class="n">oCube</span><span class="p">);</span>
+        <span class="n">oTextureLoader</span><span class="p">.</span><span class="n">setSource</span><span class="p">(</span>
+                <span class="k">new</span> <span class="n">QUrl</span><span class="p">(</span><span class="s">&quot;file:///&quot;</span><span class="o">+</span><span class="n">currentdir</span><span class="p">()</span><span class="o">+</span><span class="s">&quot;/assets/texture/ring.bmp&quot;</span><span class="p">)</span> <span class="p">)</span>
+        <span class="n">oCubeMaterial</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QTextureMaterial</span><span class="p">(</span><span class="n">oCube</span><span class="p">)</span>
+        <span class="n">oCubeMaterial</span><span class="p">.</span><span class="n">setTexture</span><span class="p">(</span><span class="n">oTextureLoader</span><span class="p">)</span>
+
+        <span class="n">oCubeEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+        <span class="n">oCubeEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oCube</span><span class="p">)</span>
+        <span class="n">oCubeEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oCubeMaterial</span><span class="p">)</span>
+        <span class="n">oCubeEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oCubeTransform</span><span class="p">)</span>
+
+
+        <span class="n">oText2DEntity</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QText2DEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span> <span class="p">{</span>
+                <span class="n">setText</span><span class="p">(</span><span class="s">&quot;Ring programming language&quot;</span><span class="p">)</span>
+                <span class="n">setWidth</span><span class="p">(</span><span class="mi">400</span><span class="p">)</span> <span class="n">setHeight</span><span class="p">(</span><span class="mi">40</span><span class="p">)</span>
+                <span class="n">setColor</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span><span class="n">setRGB</span><span class="p">(</span><span class="mi">128</span><span class="p">,</span><span class="mi">128</span><span class="p">,</span><span class="mi">128</span><span class="p">,</span><span class="mi">255</span><span class="p">)})</span>
+        <span class="p">}</span>
+
+        <span class="n">oText2DTransform</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTransform</span><span class="p">(</span><span class="n">oText2DEntity</span><span class="p">)</span>
+        <span class="n">oText2DTransform</span><span class="p">.</span><span class="n">setScale</span><span class="p">(</span><span class="mf">0.1</span><span class="p">)</span>
+        <span class="n">oText2DTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="o">-</span><span class="mf">10.5</span><span class="p">,</span> <span class="o">-</span><span class="mi">5</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+
+        <span class="n">oText2DEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oText2DTransform</span><span class="p">)</span>
+
+        <span class="n">oView</span><span class="p">.</span><span class="n">setRootEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+
+        <span class="n">oLayout</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QVBoxLayout</span><span class="p">()</span>
+        <span class="n">oLayout</span><span class="p">.</span><span class="n">AddWidget</span><span class="p">(</span><span class="n">oContainer</span><span class="p">)</span>
+
+        <span class="n">oWidget</span> <span class="p">{</span>
+                <span class="n">setwindowtitle</span><span class="p">(</span><span class="s">&quot;Using Qt3D - Text2D&quot;</span><span class="p">)</span>
+                <span class="n">resize</span><span class="p">(</span><span class="mi">800</span><span class="p">,</span><span class="mi">600</span><span class="p">)</span>
+                <span class="n">setLayout</span><span class="p">(</span><span class="n">oLayout</span><span class="p">)</span>
+                <span class="n">showMaximized</span><span class="p">()</span>
+        <span class="p">}</span>
+
+        <span class="n">exec</span><span class="p">()</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<img alt="Qt3D の用例 - 2Dテキスト" src="_images/qt3d_ex11.png" />
+</div>
+<div class="section" id="index-12">
+<span id="id11"></span><h2>テキストの押し出し<a class="headerlink" href="#index-12" title="このヘッドラインへのパーマリンク">¶</a></h2>
+<div class="highlight-ring"><div class="highlight"><pre><span class="k">load</span> <span class="s">&quot;guilib.ring&quot;</span>
+
+<span class="k">new</span> <span class="n">qApp</span> <span class="p">{</span>
+
+        <span class="n">oView</span> <span class="o">=</span> <span class="k">new</span> <span class="n">Qt3dwindow</span><span class="p">()</span>
+
+        <span class="n">oWidget</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QWidget</span><span class="p">()</span>
+        <span class="n">oContainer</span> <span class="o">=</span> <span class="n">oWidget</span><span class="p">.</span><span class="n">createWindowContainer</span><span class="p">(</span><span class="n">oView</span><span class="p">,</span><span class="n">oWidget</span><span class="p">,</span><span class="mi">0</span><span class="p">)</span>
+
+        <span class="n">oRootEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oContainer</span><span class="p">)</span>
+
+        <span class="n">oView</span><span class="p">.</span><span class="n">defaultframegraph</span><span class="p">().</span><span class="n">setclearcolor</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span><span class="n">setRGB</span><span class="p">(</span><span class="mi">100</span><span class="p">,</span><span class="mi">250</span><span class="p">,</span><span class="mi">150</span><span class="p">,</span><span class="mi">255</span><span class="p">)})</span>
+
+        <span class="n">oInput</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QInputAspect</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oView</span><span class="p">.</span><span class="n">registerAspect</span><span class="p">(</span><span class="n">oInput</span><span class="p">)</span>
+
+        <span class="n">oCameraEntity</span> <span class="o">=</span> <span class="n">oView</span><span class="p">.</span><span class="n">Camera</span><span class="p">()</span>
+
+        <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">lens</span><span class="p">().</span><span class="n">setPerspectiveProjection</span><span class="p">(</span><span class="mf">45.0</span><span class="p">,</span> <span class="mf">16.0</span><span class="o">/</span><span class="mf">9.0</span><span class="p">,</span> <span class="mf">0.1</span><span class="p">,</span> <span class="mf">1000.0</span><span class="p">)</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setPosition</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mf">20.0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setUpVector</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setViewCenter</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+
+        <span class="n">oLightEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oLight</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QPointLight</span><span class="p">(</span><span class="n">oLightEntity</span><span class="p">)</span>
+        <span class="n">oLight</span><span class="p">.</span><span class="n">setColor</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span> <span class="n">setRGB</span><span class="p">(</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">)</span> <span class="p">})</span>
+        <span class="n">oLight</span><span class="p">.</span><span class="n">setIntensity</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
+        <span class="n">oLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLight</span><span class="p">)</span>
+
+        <span class="n">oLightTransform</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QTransform</span><span class="p">(</span><span class="n">oLightEntity</span><span class="p">)</span>
+        <span class="n">oLightTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="n">oCameraEntity</span><span class="p">.</span><span class="n">position</span><span class="p">())</span>
+        <span class="n">oLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLightTransform</span><span class="p">)</span>
+
+        <span class="n">oCamController</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QFirstPersonCameraController</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oCamController</span><span class="p">.</span><span class="n">setCamera</span><span class="p">(</span><span class="n">oCameraEntity</span><span class="p">)</span>
+
+        <span class="n">oCube</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QCuboidMesh</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span> <span class="p">{</span>
+                <span class="n">setXextent</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
+                <span class="n">setYextent</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
+                <span class="n">setZextent</span><span class="p">(</span><span class="mi">3</span><span class="p">)</span>
+        <span class="p">}</span>
+
+        <span class="n">oCubeTransform</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTransform</span><span class="p">(</span><span class="n">oCube</span><span class="p">)</span>
+        <span class="n">oCubeTransform</span><span class="p">.</span><span class="n">setScale</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
+        <span class="n">oCubeTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">3</span><span class="p">,</span> <span class="mi">4</span><span class="p">))</span>
+
+        <span class="n">oTextureLoader</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTextureLoader</span><span class="p">(</span><span class="n">oCube</span><span class="p">);</span>
+        <span class="n">oTextureLoader</span><span class="p">.</span><span class="n">setSource</span><span class="p">(</span>
+                <span class="k">new</span> <span class="n">QUrl</span><span class="p">(</span><span class="s">&quot;file:///&quot;</span><span class="o">+</span><span class="n">currentdir</span><span class="p">()</span><span class="o">+</span><span class="s">&quot;/assets/texture/ring.bmp&quot;</span><span class="p">)</span> <span class="p">)</span>
+        <span class="n">oCubeMaterial</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QTextureMaterial</span><span class="p">(</span><span class="n">oCube</span><span class="p">)</span>
+        <span class="n">oCubeMaterial</span><span class="p">.</span><span class="n">setTexture</span><span class="p">(</span><span class="n">oTextureLoader</span><span class="p">)</span>
+
+        <span class="n">oCubeEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+        <span class="n">oCubeEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oCube</span><span class="p">)</span>
+        <span class="n">oCubeEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oCubeMaterial</span><span class="p">)</span>
+        <span class="n">oCubeEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oCubeTransform</span><span class="p">)</span>
+
+        <span class="n">oTextEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+
+        <span class="n">oTextMesh</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QExtrudedTextMesh</span><span class="p">(</span><span class="n">oTextEntity</span><span class="p">)</span> <span class="p">{</span>
+                <span class="n">setText</span><span class="p">(</span><span class="s">&quot;Ring&quot;</span><span class="p">)</span>
+        <span class="p">}</span>
+
+        <span class="n">oTextTransform</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTransform</span><span class="p">(</span><span class="n">oTextEntity</span><span class="p">)</span>
+        <span class="n">oTextTransform</span><span class="p">.</span><span class="n">setScale</span><span class="p">(</span><span class="mi">3</span><span class="p">)</span>
+        <span class="n">oTextTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="o">-</span><span class="mf">5.5</span><span class="p">,</span> <span class="o">-</span><span class="mi">4</span><span class="p">,</span> <span class="mi">3</span><span class="p">))</span>
+
+        <span class="n">oTextMaterial</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QPhongMaterial</span><span class="p">(</span><span class="n">oTextEntity</span><span class="p">);</span>
+        <span class="n">oTextMaterial</span><span class="p">.</span><span class="n">setDiffuse</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span><span class="n">setRGB</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">)})</span>
+
+        <span class="n">oTextEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oTextMesh</span><span class="p">)</span>
+        <span class="n">oTextEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oTextTransform</span><span class="p">)</span>
+        <span class="n">oTextEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oTextMaterial</span><span class="p">)</span>
+
+        <span class="n">oView</span><span class="p">.</span><span class="n">setRootEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+
+        <span class="n">oLayout</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QVBoxLayout</span><span class="p">()</span>
+        <span class="n">oLayout</span><span class="p">.</span><span class="n">AddWidget</span><span class="p">(</span><span class="n">oContainer</span><span class="p">)</span>
+
+        <span class="n">oWidget</span> <span class="p">{</span>
+                <span class="n">setwindowtitle</span><span class="p">(</span><span class="s">&quot;Using Qt3D - Extruded Text&quot;</span><span class="p">)</span>
+                <span class="n">resize</span><span class="p">(</span><span class="mi">800</span><span class="p">,</span><span class="mi">600</span><span class="p">)</span>
+                <span class="n">setLayout</span><span class="p">(</span><span class="n">oLayout</span><span class="p">)</span>
+                <span class="n">showMaximized</span><span class="p">()</span>
+        <span class="p">}</span>
+
+        <span class="n">exec</span><span class="p">()</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<img alt="Qt3D の用例 - テキストの押し出し" src="_images/qt3d_ex12.png" />
+</div>
+<div class="section" id="index-13">
+<span id="id12"></span><h2>モデル<a class="headerlink" href="#index-13" title="このヘッドラインへのパーマリンク">¶</a></h2>
+<div class="highlight-ring"><div class="highlight"><pre><span class="k">load</span> <span class="s">&quot;guilib.ring&quot;</span>
+
+<span class="k">new</span> <span class="n">qApp</span> <span class="p">{</span>
+
+        <span class="n">oView</span> <span class="o">=</span> <span class="k">new</span> <span class="n">Qt3dwindow</span><span class="p">()</span>
+
+        <span class="n">oWidget</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QWidget</span><span class="p">()</span>
+        <span class="n">oContainer</span> <span class="o">=</span> <span class="n">oWidget</span><span class="p">.</span><span class="n">createWindowContainer</span><span class="p">(</span><span class="n">oView</span><span class="p">,</span><span class="n">oWidget</span><span class="p">,</span><span class="mi">0</span><span class="p">)</span>
+
+        <span class="n">oRootEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oContainer</span><span class="p">)</span>
+
+        <span class="n">oInput</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QInputAspect</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oView</span><span class="p">.</span><span class="n">registerAspect</span><span class="p">(</span><span class="n">oInput</span><span class="p">)</span>
+
+        <span class="n">oCameraEntity</span> <span class="o">=</span> <span class="n">oView</span><span class="p">.</span><span class="n">Camera</span><span class="p">()</span>
+
+        <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">lens</span><span class="p">().</span><span class="n">setPerspectiveProjection</span><span class="p">(</span><span class="mf">45.0</span><span class="p">,</span> <span class="mf">16.0</span><span class="o">/</span><span class="mf">9.0</span><span class="p">,</span> <span class="mf">0.1</span><span class="p">,</span> <span class="mf">1000.0</span><span class="p">)</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setPosition</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mf">20.0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setUpVector</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setViewCenter</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+
+        <span class="n">oLightEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oLight</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QPointLight</span><span class="p">(</span><span class="n">oLightEntity</span><span class="p">)</span>
+        <span class="n">oLight</span><span class="p">.</span><span class="n">setColor</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span> <span class="n">setRGB</span><span class="p">(</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">)</span> <span class="p">})</span>
+        <span class="n">oLight</span><span class="p">.</span><span class="n">setIntensity</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
+        <span class="n">oLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLight</span><span class="p">)</span>
+
+        <span class="n">oLightTransform</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QTransform</span><span class="p">(</span><span class="n">oLightEntity</span><span class="p">)</span>
+        <span class="n">oLightTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="n">oCameraEntity</span><span class="p">.</span><span class="n">position</span><span class="p">())</span>
+        <span class="n">oLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLightTransform</span><span class="p">)</span>
+
+        <span class="n">oCamController</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QFirstPersonCameraController</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oCamController</span><span class="p">.</span><span class="n">setCamera</span><span class="p">(</span><span class="n">oCameraEntity</span><span class="p">)</span>
+
+        <span class="n">oModel</span> <span class="o">=</span> <span class="k">new</span> <span class="n">qmesh</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+
+        <span class="n">oModel</span><span class="p">.</span><span class="n">setsource</span><span class="p">(</span>
+                <span class="k">new</span> <span class="n">qURL</span><span class="p">(</span><span class="s">&quot;file:///&quot;</span><span class="o">+</span><span class="n">currentdir</span><span class="p">()</span><span class="o">+</span><span class="s">&quot;/assets/model/lucky_cat.obj&quot;</span><span class="p">)</span> <span class="p">)</span>
+
+        <span class="n">oModelTransform</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTransform</span><span class="p">(</span><span class="n">oModel</span><span class="p">)</span>
+        <span class="n">oModelTransform</span><span class="p">.</span><span class="n">setScale</span><span class="p">(</span><span class="mf">0.1</span><span class="p">)</span>
+        <span class="n">oModelTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+        <span class="n">oQ</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QQuaternion</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">)</span>
+        <span class="n">oModelTransform</span><span class="p">.</span><span class="n">setRotation</span><span class="p">(</span><span class="n">oQ</span><span class="p">.</span><span class="n">fromAxisAndAngle</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">),</span> <span class="mi">180</span><span class="p">))</span>
+
+        <span class="n">oModelMaterial</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QPhongMaterial</span><span class="p">(</span><span class="n">oModel</span><span class="p">)</span>
+        <span class="n">oModelMaterial</span><span class="p">.</span><span class="n">setDiffuse</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span><span class="n">setRGB</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">128</span><span class="p">,</span><span class="mi">255</span><span class="p">)})</span>
+
+        <span class="n">oModelEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+        <span class="n">oModelEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oModel</span><span class="p">)</span>
+        <span class="n">oModelEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oModelmaterial</span><span class="p">)</span>
+        <span class="n">oModelEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oModelTransform</span><span class="p">)</span>
+
+        <span class="n">oView</span><span class="p">.</span><span class="n">setRootEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+
+        <span class="n">oLayout</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QVBoxLayout</span><span class="p">()</span>
+        <span class="n">oLayout</span><span class="p">.</span><span class="n">AddWidget</span><span class="p">(</span><span class="n">oContainer</span><span class="p">)</span>
+
+        <span class="n">oWidget</span> <span class="p">{</span>
+                <span class="n">setwindowtitle</span><span class="p">(</span><span class="s">&quot;Using Qt3D - Model (Obj File)&quot;</span><span class="p">)</span>
+                <span class="n">resize</span><span class="p">(</span><span class="mi">800</span><span class="p">,</span><span class="mi">600</span><span class="p">)</span>
+                <span class="n">setLayout</span><span class="p">(</span><span class="n">oLayout</span><span class="p">)</span>
+                <span class="n">showMaximized</span><span class="p">()</span>
+        <span class="p">}</span>
+
+        <span class="n">exec</span><span class="p">()</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<img alt="Qt3D の用例 - モデル" src="_images/qt3d_ex13.png" />
+</div>
+<div class="section" id="index-14">
+<span id="id13"></span><h2>モデルテクスチャ<a class="headerlink" href="#index-14" title="このヘッドラインへのパーマリンク">¶</a></h2>
+<div class="highlight-ring"><div class="highlight"><pre><span class="k">load</span> <span class="s">&quot;guilib.ring&quot;</span>
+
+<span class="k">new</span> <span class="n">qApp</span> <span class="p">{</span>
+
+        <span class="n">oView</span> <span class="o">=</span> <span class="k">new</span> <span class="n">Qt3dwindow</span><span class="p">()</span>
+
+        <span class="n">oWidget</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QWidget</span><span class="p">()</span>
+        <span class="n">oContainer</span> <span class="o">=</span> <span class="n">oWidget</span><span class="p">.</span><span class="n">createWindowContainer</span><span class="p">(</span><span class="n">oView</span><span class="p">,</span><span class="n">oWidget</span><span class="p">,</span><span class="mi">0</span><span class="p">)</span>
+
+        <span class="n">oRootEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oContainer</span><span class="p">)</span>
+
+        <span class="n">oInput</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QInputAspect</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oView</span><span class="p">.</span><span class="n">registerAspect</span><span class="p">(</span><span class="n">oInput</span><span class="p">)</span>
+
+        <span class="n">oCameraEntity</span> <span class="o">=</span> <span class="n">oView</span><span class="p">.</span><span class="n">Camera</span><span class="p">()</span>
+
+        <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">lens</span><span class="p">().</span><span class="n">setPerspectiveProjection</span><span class="p">(</span><span class="mf">45.0</span><span class="p">,</span> <span class="mf">16.0</span><span class="o">/</span><span class="mf">9.0</span><span class="p">,</span> <span class="mf">0.1</span><span class="p">,</span> <span class="mf">1000.0</span><span class="p">)</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setPosition</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mf">20.0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setUpVector</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setViewCenter</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">25</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+
+        <span class="n">oLightEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oLight</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QPointLight</span><span class="p">(</span><span class="n">oLightEntity</span><span class="p">)</span>
+        <span class="n">oLight</span><span class="p">.</span><span class="n">setColor</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span> <span class="n">setRGB</span><span class="p">(</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">)</span> <span class="p">})</span>
+        <span class="n">oLight</span><span class="p">.</span><span class="n">setIntensity</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
+        <span class="n">oLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLight</span><span class="p">)</span>
+
+        <span class="n">oLightTransform</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QTransform</span><span class="p">(</span><span class="n">oLightEntity</span><span class="p">)</span>
+        <span class="n">oLightTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="n">oCameraEntity</span><span class="p">.</span><span class="n">position</span><span class="p">())</span>
+        <span class="n">oLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLightTransform</span><span class="p">)</span>
+
+        <span class="n">oCamController</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QFirstPersonCameraController</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oCamController</span><span class="p">.</span><span class="n">setCamera</span><span class="p">(</span><span class="n">oCameraEntity</span><span class="p">)</span>
+
+        <span class="n">oModel</span> <span class="o">=</span> <span class="k">new</span> <span class="n">qmesh</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+
+        <span class="n">oModel</span><span class="p">.</span><span class="n">setsource</span><span class="p">(</span>
+                <span class="k">new</span> <span class="n">qURL</span><span class="p">(</span><span class="s">&quot;file:///&quot;</span><span class="o">+</span><span class="n">currentdir</span><span class="p">()</span><span class="o">+</span><span class="s">&quot;/assets/model/Robot.obj&quot;</span><span class="p">)</span> <span class="p">)</span>
+
+        <span class="n">oModelTransform</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTransform</span><span class="p">(</span><span class="n">oModel</span><span class="p">)</span>
+        <span class="n">oModelTransform</span><span class="p">.</span><span class="n">setScale</span><span class="p">(</span><span class="mf">0.5</span><span class="p">)</span>
+        <span class="n">oModelTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">12</span><span class="p">,</span> <span class="mi">4</span><span class="p">))</span>
+
+        <span class="n">oLoader</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTextureLoader</span><span class="p">(</span><span class="n">oModel</span><span class="p">)</span>
+        <span class="n">oModelMaterial</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QTextureMaterial</span><span class="p">(</span><span class="n">oModel</span><span class="p">)</span>
+        <span class="n">oLoader</span><span class="p">.</span><span class="n">setSource</span><span class="p">(</span>
+                <span class="k">new</span> <span class="n">QUrl</span><span class="p">(</span><span class="s">&quot;file:///&quot;</span><span class="o">+</span><span class="n">currentdir</span><span class="p">()</span><span class="o">+</span><span class="s">&quot;/assets/texture/Robot.jpg&quot;</span><span class="p">)</span> <span class="p">)</span>
+        <span class="n">oModelMaterial</span><span class="p">.</span><span class="n">setTexture</span><span class="p">(</span><span class="n">oLoader</span><span class="p">)</span>
+
+        <span class="n">oModelEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+        <span class="n">oModelEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oModel</span><span class="p">)</span>
+        <span class="n">oModelEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oModelMaterial</span><span class="p">)</span>
+        <span class="n">oModelEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oModelTransform</span><span class="p">)</span>
+
+        <span class="n">oView</span><span class="p">.</span><span class="n">setRootEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+
+        <span class="n">oLayout</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QVBoxLayout</span><span class="p">()</span>
+        <span class="n">oLayout</span><span class="p">.</span><span class="n">AddWidget</span><span class="p">(</span><span class="n">oContainer</span><span class="p">)</span>
+
+        <span class="n">oWidget</span> <span class="p">{</span>
+                <span class="n">setwindowtitle</span><span class="p">(</span><span class="s">&quot;Using Qt3D - Model Texture&quot;</span><span class="p">)</span>
+                <span class="n">resize</span><span class="p">(</span><span class="mi">800</span><span class="p">,</span><span class="mi">600</span><span class="p">)</span>
+                <span class="n">setLayout</span><span class="p">(</span><span class="n">oLayout</span><span class="p">)</span>
+                <span class="n">showMaximized</span><span class="p">()</span>
+        <span class="p">}</span>
+
+        <span class="n">exec</span><span class="p">()</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<img alt="Qt3D の用例 - モデルテクスチャ" src="_images/qt3d_ex14.png" />
+</div>
+<div class="section" id="index-15">
+<span id="id14"></span><h2>事務所の描画<a class="headerlink" href="#index-15" title="このヘッドラインへのパーマリンク">¶</a></h2>
+<div class="highlight-ring"><div class="highlight"><pre><span class="k">load</span> <span class="s">&quot;guilib.ring&quot;</span>
+
+<span class="k">new</span> <span class="n">qApp</span> <span class="p">{</span>
+
+        <span class="n">oView</span> <span class="o">=</span> <span class="k">new</span> <span class="n">Qt3dwindow</span><span class="p">()</span>
+
+        <span class="n">oWidget</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QWidget</span><span class="p">()</span>
+        <span class="n">oContainer</span> <span class="o">=</span> <span class="n">oWidget</span><span class="p">.</span><span class="n">createWindowContainer</span><span class="p">(</span><span class="n">oView</span><span class="p">,</span><span class="n">oWidget</span><span class="p">,</span><span class="mi">0</span><span class="p">)</span>
+
+        <span class="n">oRootEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oContainer</span><span class="p">)</span>
+
+        <span class="n">oInput</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QInputAspect</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oView</span><span class="p">.</span><span class="n">registerAspect</span><span class="p">(</span><span class="n">oInput</span><span class="p">)</span>
+
+        <span class="n">oCameraEntity</span> <span class="o">=</span> <span class="n">oView</span><span class="p">.</span><span class="n">Camera</span><span class="p">()</span>
+
+        <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">lens</span><span class="p">().</span><span class="n">setPerspectiveProjection</span><span class="p">(</span><span class="mf">45.0</span><span class="p">,</span> <span class="mf">16.0</span><span class="o">/</span><span class="mf">9.0</span><span class="p">,</span> <span class="mf">0.1</span><span class="p">,</span> <span class="mf">1000.0</span><span class="p">)</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setPosition</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mf">20.0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setUpVector</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setViewCenter</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+
+        <span class="n">oLightEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oLight</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QPointLight</span><span class="p">(</span><span class="n">oLightEntity</span><span class="p">)</span>
+        <span class="n">oLight</span><span class="p">.</span><span class="n">setColor</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span> <span class="n">setRGB</span><span class="p">(</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">)</span> <span class="p">})</span>
+        <span class="n">oLight</span><span class="p">.</span><span class="n">setIntensity</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
+        <span class="n">oLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLight</span><span class="p">)</span>
+
+        <span class="n">oLightTransform</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QTransform</span><span class="p">(</span><span class="n">oLightEntity</span><span class="p">)</span>
+        <span class="n">oLightTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="n">oCameraEntity</span><span class="p">.</span><span class="n">position</span><span class="p">())</span>
+        <span class="n">oLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLightTransform</span><span class="p">)</span>
+
+        <span class="n">oCamController</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QFirstPersonCameraController</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oCamController</span><span class="p">.</span><span class="n">setCamera</span><span class="p">(</span><span class="n">oCameraEntity</span><span class="p">)</span>
+
+        <span class="n">oModel</span> <span class="o">=</span> <span class="k">new</span> <span class="n">qmesh</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+
+        <span class="n">oModel</span><span class="p">.</span><span class="n">setsource</span><span class="p">(</span>
+                <span class="k">new</span> <span class="n">qURL</span><span class="p">(</span><span class="s">&quot;file:///&quot;</span><span class="o">+</span><span class="n">currentdir</span><span class="p">()</span><span class="o">+</span><span class="s">&quot;/assets/model/Reception_Table.obj&quot;</span><span class="p">)</span> <span class="p">)</span>
+
+        <span class="n">oModelTransform</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTransform</span><span class="p">(</span><span class="n">oModel</span><span class="p">)</span>
+        <span class="n">oModelTransform</span><span class="p">.</span><span class="n">setScale</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
+        <span class="n">oModelTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="o">-</span><span class="mf">2.5</span><span class="p">,</span> <span class="mi">16</span><span class="p">))</span>
+
+        <span class="n">oModelMaterial</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QPhongMaterial</span><span class="p">(</span><span class="n">oModel</span><span class="p">)</span>
+        <span class="n">oModelMaterial</span><span class="p">.</span><span class="n">setDiffuse</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span><span class="n">setRGB</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">128</span><span class="p">,</span><span class="mi">255</span><span class="p">)})</span>
+
+        <span class="n">oModelEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+        <span class="n">oModelEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oModel</span><span class="p">)</span>
+        <span class="n">oModelEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oModelmaterial</span><span class="p">)</span>
+        <span class="n">oModelEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oModelTransform</span><span class="p">)</span>
+
+        <span class="n">oView</span><span class="p">.</span><span class="n">setRootEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+
+        <span class="n">oLayout</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QVBoxLayout</span><span class="p">()</span>
+        <span class="n">oLayout</span><span class="p">.</span><span class="n">AddWidget</span><span class="p">(</span><span class="n">oContainer</span><span class="p">)</span>
+
+        <span class="n">oWidget</span> <span class="p">{</span>
+                <span class="n">setwindowtitle</span><span class="p">(</span><span class="s">&quot;Using Qt3D - Model (Obj File) - Office&quot;</span><span class="p">)</span>
+                <span class="n">resize</span><span class="p">(</span><span class="mi">800</span><span class="p">,</span><span class="mi">600</span><span class="p">)</span>
+                <span class="n">setLayout</span><span class="p">(</span><span class="n">oLayout</span><span class="p">)</span>
+                <span class="n">showMaximized</span><span class="p">()</span>
+        <span class="p">}</span>
+
+        <span class="n">exec</span><span class="p">()</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<img alt="Qt3D の用例 - 事務所の描画" src="_images/qt3d_ex15.png" />
+</div>
+<div class="section" id="index-16">
+<span id="id15"></span><h2>複数オブジェクト<a class="headerlink" href="#index-16" title="このヘッドラインへのパーマリンク">¶</a></h2>
+<div class="highlight-ring"><div class="highlight"><pre><span class="k">load</span> <span class="s">&quot;guilib.ring&quot;</span>
+
+<span class="k">new</span> <span class="n">qApp</span> <span class="p">{</span>
+
+        <span class="n">oView</span> <span class="o">=</span> <span class="k">new</span> <span class="n">Qt3dwindow</span><span class="p">()</span>
+
+        <span class="n">oWidget</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QWidget</span><span class="p">()</span>
+        <span class="n">oContainer</span> <span class="o">=</span> <span class="n">oWidget</span><span class="p">.</span><span class="n">createWindowContainer</span><span class="p">(</span><span class="n">oView</span><span class="p">,</span><span class="n">oWidget</span><span class="p">,</span><span class="mi">0</span><span class="p">)</span>
+
+        <span class="n">oRootEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oContainer</span><span class="p">)</span>
+
+        <span class="n">oInput</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QInputAspect</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oView</span><span class="p">.</span><span class="n">registerAspect</span><span class="p">(</span><span class="n">oInput</span><span class="p">)</span>
+
+        <span class="n">oCameraEntity</span> <span class="o">=</span> <span class="n">oView</span><span class="p">.</span><span class="n">Camera</span><span class="p">()</span>
+
+        <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">lens</span><span class="p">().</span><span class="n">setPerspectiveProjection</span><span class="p">(</span><span class="mf">45.0</span><span class="p">,</span> <span class="mf">16.0</span><span class="o">/</span><span class="mf">9.0</span><span class="p">,</span> <span class="mf">0.1</span><span class="p">,</span> <span class="mf">1000.0</span><span class="p">)</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setPosition</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mf">20.0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setUpVector</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setViewCenter</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">20</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+
+        <span class="n">oLightEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oLight</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QPointLight</span><span class="p">(</span><span class="n">oLightEntity</span><span class="p">)</span>
+        <span class="n">oLight</span><span class="p">.</span><span class="n">setColor</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span> <span class="n">setRGB</span><span class="p">(</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">)</span> <span class="p">})</span>
+        <span class="n">oLight</span><span class="p">.</span><span class="n">setIntensity</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
+        <span class="n">oLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLight</span><span class="p">)</span>
+
+        <span class="n">oLightTransform</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QTransform</span><span class="p">(</span><span class="n">oLightEntity</span><span class="p">)</span>
+        <span class="n">oLightTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="n">oCameraEntity</span><span class="p">.</span><span class="n">position</span><span class="p">())</span>
+        <span class="n">oLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLightTransform</span><span class="p">)</span>
+
+        <span class="n">oCamController</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QFirstPersonCameraController</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oCamController</span><span class="p">.</span><span class="n">setCamera</span><span class="p">(</span><span class="n">oCameraEntity</span><span class="p">)</span>
+
+        <span class="n">oModel</span> <span class="o">=</span> <span class="k">new</span> <span class="n">qmesh</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+        <span class="n">oModel</span><span class="p">.</span><span class="n">setsource</span><span class="p">(</span>
+                <span class="k">new</span> <span class="n">qURL</span><span class="p">(</span><span class="s">&quot;file:///&quot;</span><span class="o">+</span><span class="n">currentdir</span><span class="p">()</span><span class="o">+</span><span class="s">&quot;/assets/model/Robot.obj&quot;</span><span class="p">)</span> <span class="p">)</span>
+
+        <span class="n">oModelTransform</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTransform</span><span class="p">(</span><span class="n">oModel</span><span class="p">)</span>
+        <span class="n">oModelTransform</span><span class="p">.</span><span class="n">setScale</span><span class="p">(</span><span class="mf">0.2</span><span class="p">)</span>
+        <span class="n">oModelTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">10</span><span class="p">,</span> <span class="mi">10</span><span class="p">))</span>
+
+        <span class="n">oModelMaterial</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QPhongMaterial</span><span class="p">(</span><span class="n">oModel</span><span class="p">)</span>
+        <span class="n">oModelMaterial</span><span class="p">.</span><span class="n">setDiffuse</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span><span class="n">setRGB</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="mi">100</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">)})</span>
+
+        <span class="n">oModelEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+        <span class="n">oModelEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oModel</span><span class="p">)</span>
+
+        <span class="n">oLoader</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTextureLoader</span><span class="p">(</span><span class="n">oModel</span><span class="p">);</span>
+        <span class="n">oModelMaterial</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QTextureMaterial</span><span class="p">(</span><span class="n">oModel</span><span class="p">)</span>
+        <span class="n">oLoader</span><span class="p">.</span><span class="n">setSource</span><span class="p">(</span>
+                <span class="k">new</span> <span class="n">QUrl</span><span class="p">(</span><span class="s">&quot;file:///&quot;</span><span class="o">+</span><span class="n">currentdir</span><span class="p">()</span><span class="o">+</span><span class="s">&quot;/assets/texture/gold.jpg&quot;</span><span class="p">)</span> <span class="p">)</span>
+        <span class="n">oModelMaterial</span><span class="p">.</span><span class="n">setTexture</span><span class="p">(</span><span class="n">oLoader</span><span class="p">)</span>
+
+        <span class="n">oModelEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oModelMaterial</span><span class="p">)</span>
+        <span class="n">oModelEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oModelTransform</span><span class="p">)</span>
+
+        <span class="k">for</span> <span class="n">n</span> <span class="o">=</span> <span class="mi">1</span> <span class="k">to</span> <span class="mi">10</span>
+
+                <span class="n">oTorus</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTorusMesh</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                        <span class="n">oTorus</span><span class="p">.</span><span class="n">setRadius</span><span class="p">(</span><span class="mf">1.0</span><span class="o">*</span><span class="n">n</span><span class="p">)</span>
+                        <span class="n">oTorus</span><span class="p">.</span><span class="n">setMinorRadius</span><span class="p">(</span><span class="mf">0.4</span><span class="o">*</span><span class="n">n</span><span class="p">)</span>
+                        <span class="n">oTorus</span><span class="p">.</span><span class="n">setRings</span><span class="p">(</span><span class="mi">100</span><span class="p">)</span>
+                        <span class="n">oTorus</span><span class="p">.</span><span class="n">setSlices</span><span class="p">(</span><span class="mi">20</span><span class="p">)</span>
+
+                <span class="n">oTorusTransform</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTransform</span><span class="p">(</span><span class="kp">null</span><span class="p">)</span>
+                <span class="n">oTorusTransform</span><span class="p">.</span><span class="n">setScale</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
+                <span class="n">oTorusTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mf">5.0</span><span class="o">*</span><span class="n">n</span><span class="p">,</span> <span class="mf">4.0</span><span class="o">*</span><span class="n">n</span><span class="p">,</span> <span class="mf">0.0</span><span class="p">))</span>
+
+                <span class="n">oTorusMaterial</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QPhongMaterial</span><span class="p">(</span><span class="kp">null</span><span class="p">);</span>
+                <span class="n">oTorusMaterial</span><span class="p">.</span><span class="n">setDiffuse</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span><span class="n">setRGB</span><span class="p">(</span><span class="mi">200</span><span class="p">,</span><span class="mi">100</span><span class="p">,</span><span class="mi">100</span><span class="p">,</span><span class="mi">100</span><span class="p">)})</span>
+
+                <span class="n">oTorusEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oTorusEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oTorus</span><span class="p">)</span>
+
+                <span class="n">oLoader</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTextureLoader</span><span class="p">(</span><span class="n">oTorus</span><span class="p">);</span>
+                <span class="n">oTorusMaterial</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QTextureMaterial</span><span class="p">(</span><span class="n">oTorus</span><span class="p">)</span>
+                <span class="n">oLoader</span><span class="p">.</span><span class="n">setSource</span><span class="p">(</span>
+                        <span class="k">new</span> <span class="n">QUrl</span><span class="p">(</span><span class="s">&quot;file:///&quot;</span><span class="o">+</span><span class="n">currentdir</span><span class="p">()</span><span class="o">+</span><span class="s">&quot;/assets/texture/gold.jpg&quot;</span><span class="p">)</span> <span class="p">)</span>
+                <span class="n">oTorusMaterial</span><span class="p">.</span><span class="n">setTexture</span><span class="p">(</span><span class="n">oLoader</span><span class="p">)</span>
+
+                <span class="n">oTorusEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oTorusMaterial</span><span class="p">)</span>
+                <span class="n">oTorusEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oTorusTransform</span><span class="p">)</span>
+        <span class="k">next</span>
+
+        <span class="n">oView</span><span class="p">.</span><span class="n">setRootEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+
+        <span class="n">oLayout</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QVBoxLayout</span><span class="p">()</span>
+        <span class="n">oLayout</span><span class="p">.</span><span class="n">AddWidget</span><span class="p">(</span><span class="n">oContainer</span><span class="p">)</span>
+
+        <span class="n">oWidget</span> <span class="p">{</span>
+                <span class="n">setwindowtitle</span><span class="p">(</span><span class="s">&quot;Using Qt3D - Many Objects&quot;</span><span class="p">)</span>
+                <span class="n">resize</span><span class="p">(</span><span class="mi">800</span><span class="p">,</span><span class="mi">600</span><span class="p">)</span>
+                <span class="n">setLayout</span><span class="p">(</span><span class="n">oLayout</span><span class="p">)</span>
+                <span class="n">showMaximized</span><span class="p">()</span>
+        <span class="p">}</span>
+
+        <span class="n">exec</span><span class="p">()</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<img alt="Qt3D の用例 - 複数オブジェクト" src="_images/qt3d_ex16.png" />
+</div>
+<div class="section" id="index-17">
+<span id="id16"></span><h2>カメラ<a class="headerlink" href="#index-17" title="このヘッドラインへのパーマリンク">¶</a></h2>
+<div class="highlight-ring"><div class="highlight"><pre><span class="k">load</span> <span class="s">&quot;guilib.ring&quot;</span>
+
+<span class="k">new</span> <span class="n">qApp</span> <span class="p">{</span>
+
+        <span class="n">oView</span> <span class="o">=</span> <span class="k">new</span> <span class="n">Qt3dwindow</span><span class="p">()</span>
+
+        <span class="n">oWidget</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QWidget</span><span class="p">()</span>
+        <span class="n">oContainer</span> <span class="o">=</span> <span class="n">oWidget</span><span class="p">.</span><span class="n">createWindowContainer</span><span class="p">(</span><span class="n">oView</span><span class="p">,</span><span class="n">oWidget</span><span class="p">,</span><span class="mi">0</span><span class="p">)</span>
+
+        <span class="n">oRootEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oContainer</span><span class="p">)</span>
+
+        <span class="n">oInput</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QInputAspect</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oView</span><span class="p">.</span><span class="n">registerAspect</span><span class="p">(</span><span class="n">oInput</span><span class="p">)</span>
+
+        <span class="n">oCameraEntity</span> <span class="o">=</span> <span class="n">oView</span><span class="p">.</span><span class="n">Camera</span><span class="p">()</span>
+
+        <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">lens</span><span class="p">().</span><span class="n">setPerspectiveProjection</span><span class="p">(</span><span class="mf">45.0</span><span class="p">,</span> <span class="mf">16.0</span><span class="o">/</span><span class="mf">9.0</span><span class="p">,</span> <span class="mf">0.1</span><span class="p">,</span> <span class="mf">1000.0</span><span class="p">)</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setPosition</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mf">20.0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setUpVector</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setViewCenter</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">20</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+
+        <span class="n">oLightEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oLight</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QPointLight</span><span class="p">(</span><span class="n">oLightEntity</span><span class="p">)</span>
+        <span class="n">oLight</span><span class="p">.</span><span class="n">setColor</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span> <span class="n">setRGB</span><span class="p">(</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">)</span> <span class="p">})</span>
+        <span class="n">oLight</span><span class="p">.</span><span class="n">setIntensity</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
+        <span class="n">oLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLight</span><span class="p">)</span>
+
+        <span class="n">oLightTransform</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QTransform</span><span class="p">(</span><span class="n">oLightEntity</span><span class="p">)</span>
+        <span class="n">oLightTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="n">oCameraEntity</span><span class="p">.</span><span class="n">position</span><span class="p">())</span>
+        <span class="n">oLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLightTransform</span><span class="p">)</span>
+
+        <span class="n">oCamController</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QFirstPersonCameraController</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oCamController</span><span class="p">.</span><span class="n">setCamera</span><span class="p">(</span><span class="n">oCameraEntity</span><span class="p">)</span>
+
+        <span class="n">oModel</span> <span class="o">=</span> <span class="k">new</span> <span class="n">qmesh</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+        <span class="n">oModel</span><span class="p">.</span><span class="n">setsource</span><span class="p">(</span>
+                <span class="k">new</span> <span class="n">qURL</span><span class="p">(</span><span class="s">&quot;file:///&quot;</span><span class="o">+</span><span class="n">currentdir</span><span class="p">()</span><span class="o">+</span><span class="s">&quot;/assets/model/Robot.obj&quot;</span><span class="p">)</span> <span class="p">)</span>
+
+        <span class="n">oModelTransform</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTransform</span><span class="p">(</span><span class="n">oModel</span><span class="p">)</span>
+        <span class="n">oModelTransform</span><span class="p">.</span><span class="n">setScale</span><span class="p">(</span><span class="mf">0.2</span><span class="p">)</span>
+        <span class="n">oModelTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">10</span><span class="p">,</span> <span class="mi">10</span><span class="p">))</span>
+
+        <span class="n">oModelMaterial</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QPhongMaterial</span><span class="p">(</span><span class="n">oModel</span><span class="p">)</span>
+        <span class="n">oModelMaterial</span><span class="p">.</span><span class="n">setDiffuse</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span><span class="n">setRGB</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="mi">100</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">)})</span>
+
+        <span class="n">oModelEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+        <span class="n">oModelEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oModel</span><span class="p">)</span>
+
+        <span class="n">oLoader</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTextureLoader</span><span class="p">(</span><span class="n">oModel</span><span class="p">);</span>
+        <span class="n">oModelMaterial</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QTextureMaterial</span><span class="p">(</span><span class="n">oModel</span><span class="p">)</span>
+        <span class="n">oLoader</span><span class="p">.</span><span class="n">setSource</span><span class="p">(</span>
+                <span class="k">new</span> <span class="n">QUrl</span><span class="p">(</span><span class="s">&quot;file:///&quot;</span><span class="o">+</span><span class="n">currentdir</span><span class="p">()</span><span class="o">+</span><span class="s">&quot;/assets/texture/gold.jpg&quot;</span><span class="p">)</span> <span class="p">)</span>
+        <span class="n">oModelMaterial</span><span class="p">.</span><span class="n">setTexture</span><span class="p">(</span><span class="n">oLoader</span><span class="p">)</span>
+
+        <span class="n">oModelEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oModelMaterial</span><span class="p">)</span>
+        <span class="n">oModelEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oModelTransform</span><span class="p">)</span>
+
+        <span class="k">for</span> <span class="n">n</span> <span class="o">=</span> <span class="mi">1</span> <span class="k">to</span> <span class="mi">10</span>
+
+                <span class="n">oTorus</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTorusMesh</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                        <span class="n">oTorus</span><span class="p">.</span><span class="n">setRadius</span><span class="p">(</span><span class="mf">1.0</span><span class="o">*</span><span class="n">n</span><span class="p">)</span>
+                        <span class="n">oTorus</span><span class="p">.</span><span class="n">setMinorRadius</span><span class="p">(</span><span class="mf">0.4</span><span class="o">*</span><span class="n">n</span><span class="p">)</span>
+                        <span class="n">oTorus</span><span class="p">.</span><span class="n">setRings</span><span class="p">(</span><span class="mi">100</span><span class="p">)</span>
+                        <span class="n">oTorus</span><span class="p">.</span><span class="n">setSlices</span><span class="p">(</span><span class="mi">20</span><span class="p">)</span>
+
+                <span class="n">oTorusTransform</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTransform</span><span class="p">(</span><span class="kp">null</span><span class="p">)</span>
+                <span class="n">oTorusTransform</span><span class="p">.</span><span class="n">setScale</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
+                <span class="n">oTorusTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mf">5.0</span><span class="o">*</span><span class="n">n</span><span class="p">,</span> <span class="mf">4.0</span><span class="o">*</span><span class="n">n</span><span class="p">,</span> <span class="mf">0.0</span><span class="p">))</span>
+
+                <span class="n">oTorusMaterial</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QPhongMaterial</span><span class="p">(</span><span class="kp">null</span><span class="p">);</span>
+                <span class="n">oTorusMaterial</span><span class="p">.</span><span class="n">setDiffuse</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span><span class="n">setRGB</span><span class="p">(</span><span class="mi">200</span><span class="p">,</span><span class="mi">100</span><span class="p">,</span><span class="mi">100</span><span class="p">,</span><span class="mi">100</span><span class="p">)})</span>
+
+                <span class="n">oTorusEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oTorusEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oTorus</span><span class="p">)</span>
+
+                <span class="n">oLoader</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTextureLoader</span><span class="p">(</span><span class="n">oTorus</span><span class="p">);</span>
+                <span class="n">oTorusMaterial</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QTextureMaterial</span><span class="p">(</span><span class="n">oTorus</span><span class="p">)</span>
+                <span class="n">oLoader</span><span class="p">.</span><span class="n">setSource</span><span class="p">(</span>
+                        <span class="k">new</span> <span class="n">QUrl</span><span class="p">(</span><span class="s">&quot;file:///&quot;</span><span class="o">+</span><span class="n">currentdir</span><span class="p">()</span><span class="o">+</span><span class="s">&quot;/assets/texture/gold.jpg&quot;</span><span class="p">)</span> <span class="p">)</span>
+                <span class="n">oTorusMaterial</span><span class="p">.</span><span class="n">setTexture</span><span class="p">(</span><span class="n">oLoader</span><span class="p">)</span>
+
+                <span class="n">oTorusEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oTorusMaterial</span><span class="p">)</span>
+                <span class="n">oTorusEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oTorusTransform</span><span class="p">)</span>
+        <span class="k">next</span>
+
+        <span class="n">oView</span><span class="p">.</span><span class="n">setRootEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+
+
+        <span class="n">btn1</span> <span class="o">=</span> <span class="k">new</span> <span class="n">qPushButton</span><span class="p">(</span><span class="n">oWidget</span><span class="p">)</span> <span class="p">{</span>
+                <span class="n">setText</span><span class="p">(</span><span class="s">&quot;Move the Camera and the Robot&quot;</span><span class="p">)</span> <span class="n">setClickEvent</span><span class="p">(</span><span class="s">&quot;pMove()&quot;</span><span class="p">)</span>
+        <span class="p">}</span>
+
+        <span class="n">oLayout</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QVBoxLayout</span><span class="p">()</span>
+        <span class="n">oLayout</span><span class="p">.</span><span class="n">AddWidget</span><span class="p">(</span><span class="n">oContainer</span><span class="p">)</span>
+        <span class="n">oLayout</span><span class="p">.</span><span class="n">AddWidget</span><span class="p">(</span><span class="n">btn1</span><span class="p">)</span>
+
+        <span class="n">oWidget</span> <span class="p">{</span>
+                <span class="n">setwindowtitle</span><span class="p">(</span><span class="s">&quot;Using Qt3D - Camera&quot;</span><span class="p">)</span>
+                <span class="n">resize</span><span class="p">(</span><span class="mi">800</span><span class="p">,</span><span class="mi">600</span><span class="p">)</span>
+                <span class="n">setLayout</span><span class="p">(</span><span class="n">oLayout</span><span class="p">)</span>
+                <span class="n">showMaximized</span><span class="p">()</span>
+        <span class="p">}</span>
+
+        <span class="n">exec</span><span class="p">()</span>
+<span class="p">}</span>
+
+<span class="k">func</span> <span class="n">pMove</span>
+
+        <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setPosition</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mf">20.0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setUpVector</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setViewCenter</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">20</span><span class="p">,</span> <span class="mi">15</span><span class="p">,</span> <span class="mi">20</span><span class="p">))</span>
+
+        <span class="n">oModelTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">20</span><span class="p">,</span> <span class="mi">15</span><span class="p">,</span> <span class="mi">20</span><span class="p">))</span>
+        <span class="n">oQ</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QQuaternion</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">)</span>
+        <span class="n">oModelTransform</span><span class="p">.</span><span class="n">setRotation</span><span class="p">(</span><span class="n">oQ</span><span class="p">.</span><span class="n">fromAxisAndAngle</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">),</span> <span class="mi">270</span><span class="p">))</span>
+</pre></div>
+</div>
+<img alt="Qt3D の用例 - カメラ" src="_images/qt3d_ex17.png" />
+</div>
+<div class="section" id="index-18">
+<span id="id17"></span><h2>シーン<a class="headerlink" href="#index-18" title="このヘッドラインへのパーマリンク">¶</a></h2>
+<div class="highlight-ring"><div class="highlight"><pre><span class="k">load</span> <span class="s">&quot;guilib.ring&quot;</span>
+
+<span class="k">new</span> <span class="n">qApp</span> <span class="p">{</span>
+
+        <span class="n">oWidget</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QWidget</span><span class="p">()</span>
+
+        <span class="n">oView</span> <span class="o">=</span> <span class="k">new</span> <span class="n">Qt3DWindow</span><span class="p">()</span>
+        <span class="n">oView</span><span class="p">.</span><span class="n">defaultFrameGraph</span><span class="p">().</span><span class="n">setClearColor</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span><span class="n">setRGB</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">255</span><span class="p">)})</span>
+
+        <span class="n">oContainer</span> <span class="o">=</span> <span class="n">oWidget</span><span class="p">.</span><span class="n">createWindowContainer</span><span class="p">(</span><span class="n">oView</span><span class="p">,</span><span class="n">oWidget</span><span class="p">,</span><span class="mi">0</span><span class="p">)</span>
+
+        <span class="n">oRootEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oContainer</span><span class="p">)</span>
+
+        <span class="n">oInput</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QInputAspect</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+                <span class="n">oView</span><span class="p">.</span><span class="n">registerAspect</span><span class="p">(</span><span class="n">oInput</span><span class="p">)</span>
+
+        <span class="n">oCameraEntity</span> <span class="o">=</span> <span class="n">oView</span><span class="p">.</span><span class="n">Camera</span><span class="p">()</span>
+
+        <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">lens</span><span class="p">().</span><span class="n">setPerspectiveProjection</span><span class="p">(</span><span class="mf">45.0</span><span class="p">,</span> <span class="mf">16.0</span><span class="o">/</span><span class="mf">9.0</span><span class="p">,</span> <span class="mf">0.1</span><span class="p">,</span> <span class="mi">1000</span><span class="p">)</span>
+        <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setPosition</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="o">-</span><span class="mf">13.34</span><span class="p">,</span> <span class="o">-</span><span class="mf">6.43</span><span class="p">,</span> <span class="mf">16.47</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setUpVector</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mf">0.02</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">))</span>
+                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setViewCenter</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="o">-</span><span class="mf">13.34</span><span class="p">,</span> <span class="mf">17.05</span><span class="p">,</span> <span class="mf">15.42</span><span class="p">))</span>
+
+        <span class="n">oCameraController</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QFirstPersonCameraController</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+        <span class="n">oCameraController</span><span class="p">.</span><span class="n">setCamera</span><span class="p">(</span><span class="n">oCameraEntity</span><span class="p">)</span>
+        <span class="n">oCameraController</span><span class="p">.</span><span class="n">setEnabled</span><span class="p">(</span><span class="kp">False</span><span class="p">)</span>
+
+        <span class="n">oLongRoomEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+
+        <span class="n">oLongRoomModel</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QMesh</span><span class="p">(</span><span class="n">oLongRoomEntity</span><span class="p">)</span>
+
+        <span class="n">oLongRoomModel</span><span class="p">.</span><span class="n">setSource</span><span class="p">(</span>
+                <span class="k">new</span> <span class="n">qURL</span><span class="p">(</span><span class="s">&quot;file:///&quot;</span><span class="o">+</span><span class="n">CurrentDir</span><span class="p">()</span><span class="o">+</span><span class="s">&quot;/assets/model/Long_Room.obj&quot;</span><span class="p">)</span> <span class="p">)</span>
+
+        <span class="n">oLongRoomTransform</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTransform</span><span class="p">(</span><span class="n">oLongRoomEntity</span><span class="p">)</span>
+        <span class="n">oLongRoomTransform</span><span class="p">.</span><span class="n">setScale</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
+        <span class="n">oLongRoomTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">5</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">15</span><span class="p">))</span>
+
+        <span class="n">oLongRoomLoader</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTextureLoader</span><span class="p">(</span><span class="n">oLongRoomModel</span><span class="p">)</span>
+        <span class="n">oLongRoomMaterial</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QTextureMaterial</span><span class="p">(</span><span class="n">oLongRoomModel</span><span class="p">)</span>
+        <span class="n">oLongRoomLoader</span><span class="p">.</span><span class="n">setSource</span><span class="p">(</span>
+                <span class="k">new</span> <span class="n">QUrl</span><span class="p">(</span><span class="s">&quot;file:///&quot;</span><span class="o">+</span><span class="n">currentdir</span><span class="p">()</span><span class="o">+</span><span class="s">&quot;/assets/texture/croc.jpg&quot;</span><span class="p">)</span> <span class="p">)</span>
+        <span class="n">oLongRoomMaterial</span><span class="p">.</span><span class="n">setTexture</span><span class="p">(</span><span class="n">oLongRoomLoader</span><span class="p">)</span>
+
+        <span class="n">oLongRoomEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLongRoomModel</span><span class="p">)</span>
+        <span class="n">oLongRoomEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLongRoomMaterial</span><span class="p">)</span>
+        <span class="n">oLongRoomEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oLongRoomTransform</span><span class="p">)</span>
+
+        <span class="n">oTableEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+
+        <span class="n">oTableModel</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QMesh</span><span class="p">(</span><span class="n">oTableEntity</span><span class="p">)</span>
+        <span class="n">oTableModel</span><span class="p">.</span><span class="n">setSource</span><span class="p">(</span>
+                <span class="k">new</span> <span class="n">qURL</span><span class="p">(</span><span class="s">&quot;file:///&quot;</span><span class="o">+</span><span class="n">CurrentDir</span><span class="p">()</span><span class="o">+</span><span class="s">&quot;/assets/model/Reception_Table.obj&quot;</span><span class="p">)</span> <span class="p">)</span>
+
+        <span class="n">oTableTransform</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTransform</span><span class="p">(</span><span class="n">oTableEntity</span><span class="p">)</span>
+        <span class="n">oTableTransform</span><span class="p">.</span><span class="n">setScale</span><span class="p">(</span><span class="mf">0.3</span><span class="p">)</span>
+        <span class="n">oTableTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">5</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">15</span><span class="p">))</span>
+        <span class="n">oQ</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QQuaternion</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">)</span>
+        <span class="n">oTableTransform</span><span class="p">.</span><span class="n">setRotation</span><span class="p">(</span><span class="n">oQ</span><span class="p">.</span><span class="n">fromAxisAndAngle</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">),</span> <span class="o">-</span><span class="mi">180</span><span class="p">))</span>
+
+        <span class="n">oTableModelMaterial</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QPhongMaterial</span><span class="p">(</span><span class="n">oTableEntity</span><span class="p">)</span>
+        <span class="n">oTableModelMaterial</span><span class="p">.</span><span class="n">setDiffuse</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span><span class="n">setRGB</span><span class="p">(</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">)})</span>
+
+        <span class="n">oTableEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oTableModel</span><span class="p">)</span>
+        <span class="n">oTableEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oTableModelmaterial</span><span class="p">)</span>
+        <span class="n">oTableEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oTableTransform</span><span class="p">)</span>
+
+        <span class="n">oFirstLightEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+
+                <span class="n">oFirstLight</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QPointLight</span><span class="p">(</span><span class="n">oFirstLightEntity</span><span class="p">)</span>
+        <span class="n">oFirstLight</span><span class="p">.</span><span class="n">setColor</span><span class="p">(</span><span class="k">new</span> <span class="n">qColor</span><span class="p">()</span> <span class="p">{</span> <span class="n">setRGB</span><span class="p">(</span><span class="mi">128</span><span class="p">,</span><span class="mi">128</span><span class="p">,</span><span class="mi">128</span><span class="p">,</span><span class="mi">128</span><span class="p">)</span> <span class="p">})</span>
+        <span class="n">oFirstLight</span><span class="p">.</span><span class="n">setIntensity</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
+
+        <span class="n">oFirstLightTransform</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QTransform</span><span class="p">(</span><span class="n">oFirstLightEntity</span><span class="p">)</span>
+        <span class="n">oFirstLightTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">5</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">20</span><span class="p">))</span>
+
+        <span class="n">oFirstLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oFirstLight</span><span class="p">)</span>
+        <span class="n">oFirstLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oFirstLightTransform</span><span class="p">)</span>
+
+        <span class="n">aCats</span> <span class="o">=</span> <span class="kt">list</span><span class="p">(</span><span class="mi">5</span><span class="p">)</span>
+        <span class="k">for</span> <span class="n">n</span> <span class="o">=</span> <span class="mi">1</span> <span class="k">to</span> <span class="mi">5</span>
+        <span class="n">v</span> <span class="o">=</span> <span class="n">n</span> <span class="o">*</span> <span class="mf">0.1</span>
+        <span class="n">aCats</span><span class="o">[</span><span class="n">n</span><span class="o">]</span> <span class="o">=</span> <span class="o">[]</span>
+        <span class="n">aCats</span><span class="o">[</span><span class="n">n</span><span class="o">][</span><span class="p">:</span><span class="n">oCatModelEntity</span><span class="o">]</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+        <span class="n">aCats</span><span class="o">[</span><span class="n">n</span><span class="o">][</span><span class="p">:</span><span class="n">oCatModel</span><span class="o">]</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QMesh</span><span class="p">(</span><span class="n">aCats</span><span class="o">[</span><span class="n">n</span><span class="o">][</span><span class="p">:</span><span class="n">oCatModelEntity</span><span class="o">]</span><span class="p">)</span>
+        <span class="n">aCats</span><span class="o">[</span><span class="n">n</span><span class="o">][</span><span class="p">:</span><span class="n">oCatModel</span><span class="o">]</span><span class="p">.</span><span class="n">setSource</span><span class="p">(</span>
+                <span class="k">new</span> <span class="n">qURL</span><span class="p">(</span><span class="s">&quot;file:///&quot;</span><span class="o">+</span><span class="n">CurrentDir</span><span class="p">()</span><span class="o">+</span><span class="s">&quot;/assets/model/Lucky_Cat.obj&quot;</span><span class="p">)</span> <span class="p">)</span>
+        <span class="n">aCats</span><span class="o">[</span><span class="n">n</span><span class="o">][</span><span class="p">:</span><span class="n">oCatModelMaterial</span><span class="o">]</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QPhongMaterial</span><span class="p">(</span><span class="n">aCats</span><span class="o">[</span><span class="n">n</span><span class="o">][</span><span class="p">:</span><span class="n">oCatModel</span><span class="o">]</span><span class="p">)</span>
+        <span class="n">aCats</span><span class="o">[</span><span class="n">n</span><span class="o">][</span><span class="p">:</span><span class="n">oCatModelMaterial</span><span class="o">]</span><span class="p">.</span><span class="n">setDiffuse</span><span class="p">(</span>
+                <span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span><span class="n">setRGB</span><span class="p">(</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">)})</span>
+        <span class="n">aCats</span><span class="o">[</span><span class="n">n</span><span class="o">][</span><span class="p">:</span><span class="n">oCatModelTransform</span><span class="o">]</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTransform</span><span class="p">(</span><span class="n">aCats</span><span class="o">[</span><span class="n">n</span><span class="o">][</span><span class="p">:</span><span class="n">oCatModelEntity</span><span class="o">]</span><span class="p">)</span>
+        <span class="n">aCats</span><span class="o">[</span><span class="n">n</span><span class="o">][</span><span class="p">:</span><span class="n">oCatModelTransform</span><span class="o">]</span><span class="p">.</span><span class="n">setScale</span><span class="p">(</span><span class="mf">0.01</span><span class="p">)</span>
+        <span class="n">aCats</span><span class="o">[</span><span class="n">n</span><span class="o">][</span><span class="p">:</span><span class="n">oCatModelTransform</span><span class="o">]</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span>
+                <span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="o">-</span><span class="mi">5</span><span class="o">*</span><span class="p">(</span><span class="n">v</span><span class="o">+</span><span class="n">v</span><span class="p">),</span> <span class="mi">1</span><span class="p">,</span> <span class="mf">15.2</span><span class="p">))</span>
+        <span class="n">oQ</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QQuaternion</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">)</span>
+        <span class="n">aCats</span><span class="o">[</span><span class="n">n</span><span class="o">][</span><span class="p">:</span><span class="n">oCatModelTransform</span><span class="o">]</span><span class="p">.</span><span class="n">setRotation</span><span class="p">(</span>
+                <span class="n">oQ</span><span class="p">.</span><span class="n">fromAxisAndAngle</span><span class="p">(</span>
+                        <span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">),</span> <span class="mi">180</span><span class="p">))</span>
+        <span class="n">aCats</span><span class="o">[</span><span class="n">n</span><span class="o">][</span><span class="p">:</span><span class="n">oCatModelEntity</span><span class="o">]</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">aCats</span><span class="o">[</span><span class="n">n</span><span class="o">][</span><span class="p">:</span><span class="n">oCatModel</span><span class="o">]</span><span class="p">)</span>
+        <span class="n">aCats</span><span class="o">[</span><span class="n">n</span><span class="o">][</span><span class="p">:</span><span class="n">oCatModelEntity</span><span class="o">]</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">aCats</span><span class="o">[</span><span class="n">n</span><span class="o">][</span><span class="p">:</span><span class="n">oCatModelmaterial</span><span class="o">]</span><span class="p">)</span>
+        <span class="n">aCats</span><span class="o">[</span><span class="n">n</span><span class="o">][</span><span class="p">:</span><span class="n">oCatModelEntity</span><span class="o">]</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">aCats</span><span class="o">[</span><span class="n">n</span><span class="o">][</span><span class="p">:</span><span class="n">oCatModelTransform</span><span class="o">]</span><span class="p">)</span>
+        <span class="k">next</span>
+
+        <span class="n">oSecondLightEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+
+        <span class="n">oSecondLight</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QPointLight</span><span class="p">(</span><span class="n">oSecondLightEntity</span><span class="p">)</span>
+        <span class="n">oSecondLight</span><span class="p">.</span><span class="n">setColor</span><span class="p">(</span><span class="k">new</span> <span class="n">qColor</span><span class="p">()</span> <span class="p">{</span> <span class="n">setRGB</span><span class="p">(</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">,</span><span class="mi">255</span><span class="p">)</span> <span class="p">})</span>
+        <span class="n">oSecondLight</span><span class="p">.</span><span class="n">setIntensity</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
+
+        <span class="n">oSecondLightTransform</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QTransform</span><span class="p">(</span><span class="n">oSecondLightEntity</span><span class="p">)</span>
+        <span class="n">oSecondLightTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="o">-</span><span class="mi">5</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mf">15.5</span><span class="p">))</span>
+
+        <span class="n">oSecondLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oSecondLight</span><span class="p">)</span>
+        <span class="n">oSecondLightEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oSecondLightTransform</span><span class="p">)</span>
+
+        <span class="n">oRobotEntity</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+
+        <span class="n">oRobotModel</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QMesh</span><span class="p">(</span><span class="n">oRobotEntity</span><span class="p">)</span>
+        <span class="n">oRobotModel</span><span class="p">.</span><span class="n">setSource</span><span class="p">(</span>
+                <span class="k">new</span> <span class="n">qURL</span><span class="p">(</span><span class="s">&quot;file:///&quot;</span><span class="o">+</span><span class="n">CurrentDir</span><span class="p">()</span><span class="o">+</span><span class="s">&quot;/assets/model/Fat_Robot.obj&quot;</span><span class="p">)</span> <span class="p">)</span>
+        <span class="n">oRobotTransform</span> <span class="o">=</span> <span class="k">new</span>  <span class="n">QTransform</span><span class="p">(</span><span class="n">oRobotEntity</span><span class="p">)</span>
+        <span class="n">oRobotTransform</span><span class="p">.</span><span class="n">setScale</span><span class="p">(</span><span class="mf">0.006</span><span class="p">)</span>
+
+        <span class="n">robotX</span> <span class="o">=</span> <span class="o">-</span><span class="mi">15</span>
+        <span class="n">robotY</span> <span class="o">=</span> <span class="o">-</span><span class="mi">2</span>
+        <span class="n">robotZ</span> <span class="o">=</span> <span class="mi">15</span>
+
+        <span class="n">oRobotTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="o">-</span><span class="mi">15</span><span class="p">,</span> <span class="o">-</span><span class="mi">2</span><span class="p">,</span> <span class="mi">15</span><span class="p">))</span>
+        <span class="n">oQ</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QQuaternion</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">)</span>
+        <span class="n">oRobotTransform</span><span class="p">.</span><span class="n">setRotation</span><span class="p">(</span>
+                <span class="n">oQ</span><span class="p">.</span><span class="n">fromAxisAndAngle</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">),</span> <span class="mi">170</span><span class="p">))</span>
+
+        <span class="n">oRobotMaterial</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QPhongMaterial</span><span class="p">(</span><span class="n">oRobotEntity</span><span class="p">)</span>
+        <span class="n">oRobotMaterial</span><span class="p">.</span><span class="n">setDiffuse</span><span class="p">(</span><span class="k">new</span> <span class="n">QColor</span><span class="p">()</span> <span class="p">{</span><span class="n">setRGB</span><span class="p">(</span><span class="mi">128</span><span class="p">,</span><span class="mi">128</span><span class="p">,</span><span class="mi">128</span><span class="p">,</span><span class="mi">255</span><span class="p">)})</span>
+
+        <span class="n">oRobotEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oRobotModel</span><span class="p">)</span>
+        <span class="n">oRobotEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oRobotTransform</span><span class="p">)</span>
+        <span class="n">oRobotEntity</span><span class="p">.</span><span class="n">addComponent</span><span class="p">(</span><span class="n">oRobotMaterial</span><span class="p">)</span>
+
+        <span class="n">oView</span><span class="p">.</span><span class="n">setRootEntity</span><span class="p">(</span><span class="n">oRootEntity</span><span class="p">)</span>
+
+        <span class="n">oWidget</span> <span class="p">{</span>
+                <span class="n">setwindowtitle</span><span class="p">(</span><span class="s">&quot;Using Qt3D - Scene&quot;</span><span class="p">)</span>
+                <span class="n">showfullscreen</span><span class="p">()</span>
+        <span class="p">}</span>
+
+        <span class="n">oContainer</span><span class="p">.</span><span class="n">resize</span><span class="p">(</span><span class="n">oWidget</span><span class="p">.</span><span class="n">width</span><span class="p">(),</span><span class="n">oWidget</span><span class="p">.</span><span class="n">height</span><span class="p">())</span>
+
+                <span class="n">oFilter</span> <span class="o">=</span> <span class="k">new</span> <span class="n">QAllEvents</span><span class="p">(</span><span class="n">oView</span><span class="p">)</span>
+                <span class="n">oFilter</span><span class="p">.</span><span class="n">setKeyPressEvent</span><span class="p">(</span><span class="s">&quot;pKeyPress()&quot;</span><span class="p">)</span>
+                <span class="n">oView</span><span class="p">.</span><span class="n">installeventfilter</span><span class="p">(</span><span class="n">oFilter</span><span class="p">)</span>
+        <span class="n">oContainer</span><span class="p">.</span><span class="n">setfocus</span><span class="p">(</span><span class="mi">0</span><span class="p">)</span>
+
+        <span class="n">exec</span><span class="p">()</span>
+
+<span class="p">}</span>
+
+<span class="k">func</span> <span class="n">pKeyPress</span>
+
+        <span class="n">nKey</span>    <span class="o">=</span> <span class="n">oFilter</span><span class="p">.</span><span class="n">getKeyCode</span><span class="p">()</span>
+        <span class="n">nSpeed</span>  <span class="o">=</span> <span class="mf">0.1</span>
+        <span class="n">cX</span>      <span class="o">=</span> <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">position</span><span class="p">().</span><span class="n">x</span><span class="p">()</span>
+        <span class="n">CY</span>      <span class="o">=</span> <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">position</span><span class="p">().</span><span class="n">y</span><span class="p">()</span>
+        <span class="n">cZ</span>      <span class="o">=</span> <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">position</span><span class="p">().</span><span class="n">z</span><span class="p">()</span>
+        <span class="n">cVCx</span>    <span class="o">=</span> <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">viewCenter</span><span class="p">().</span><span class="n">x</span><span class="p">()</span>
+        <span class="n">cVCy</span>    <span class="o">=</span> <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">viewCenter</span><span class="p">().</span><span class="n">y</span><span class="p">()</span>
+        <span class="n">cVCz</span>    <span class="o">=</span> <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">viewCenter</span><span class="p">().</span><span class="n">z</span><span class="p">()</span>
+
+        <span class="k">switch</span> <span class="n">nKey</span>
+                <span class="k">on</span> <span class="n">Qt_Key_Right</span>
+                        <span class="k">if</span> <span class="n">cX</span> <span class="o">&lt;</span> <span class="mf">4.8</span>
+                                <span class="n">robotX</span><span class="o">+=</span> <span class="n">nSpeed</span>
+                                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setPosition</span><span class="p">(</span>
+                                        <span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="n">cX</span><span class="o">+</span><span class="mf">0.1</span><span class="p">,</span> <span class="n">cY</span><span class="p">,</span> <span class="n">cZ</span><span class="p">))</span>
+                                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setViewCenter</span><span class="p">(</span>
+                                        <span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="n">cVCx</span><span class="o">+</span><span class="n">nSpeed</span><span class="p">,</span> <span class="n">cVCy</span><span class="p">,</span> <span class="n">cVCz</span><span class="p">))</span>
+                                <span class="n">oRobotTransform</span><span class="p">.</span><span class="n">setRotation</span><span class="p">(</span>
+                                        <span class="n">oQ</span><span class="p">.</span><span class="n">fromAxisAndAngle</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">),</span> <span class="mi">170</span><span class="p">))</span>
+                        <span class="k">ok</span>
+                <span class="k">on</span> <span class="n">Qt_Key_Left</span>
+                        <span class="k">if</span> <span class="n">cX</span> <span class="o">&gt;</span> <span class="o">-</span> <span class="mf">13.8</span>
+                                <span class="n">robotX</span><span class="o">-=</span> <span class="n">nSpeed</span>
+                                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setPosition</span><span class="p">(</span>
+                                  <span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="n">cX</span><span class="o">-</span><span class="mf">0.1</span><span class="p">,</span> <span class="n">cY</span><span class="p">,</span> <span class="n">cZ</span><span class="p">))</span>
+                                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setViewCenter</span><span class="p">(</span>
+                                  <span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="n">cVCx</span><span class="o">-</span><span class="n">nSpeed</span><span class="p">,</span> <span class="n">cVCy</span><span class="p">,</span> <span class="n">cVCz</span><span class="p">))</span>
+                                <span class="n">oRobotTransform</span><span class="p">.</span><span class="n">setRotation</span><span class="p">(</span>
+                                  <span class="n">oQ</span><span class="p">.</span><span class="n">fromAxisAndAngle</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">),</span> <span class="mi">160</span><span class="p">))</span>
+                        <span class="k">ok</span>
+                <span class="k">on</span> <span class="n">Qt_Key_Down</span>
+                        <span class="k">if</span> <span class="n">robotY</span> <span class="o">&gt;</span> <span class="o">-</span><span class="mf">3.5</span>
+                                <span class="n">robotY</span><span class="o">-=</span> <span class="n">nSpeed</span>
+                                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setPosition</span><span class="p">(</span>
+                                  <span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="n">cX</span><span class="p">,</span> <span class="n">cY</span><span class="p">,</span> <span class="n">cZ</span><span class="p">))</span>
+                                <span class="n">oRobotTransform</span><span class="p">.</span><span class="n">setRotation</span><span class="p">(</span>
+                                  <span class="n">oQ</span><span class="p">.</span><span class="n">fromAxisAndAngle</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">),</span> <span class="mi">190</span><span class="p">))</span>
+                        <span class="k">ok</span>
+                <span class="k">on</span> <span class="n">Qt_Key_Up</span>
+                        <span class="k">if</span> <span class="n">robotY</span> <span class="o">&lt;</span> <span class="mi">2</span>
+                                <span class="n">robotY</span><span class="o">+=</span> <span class="n">nSpeed</span>
+                                <span class="n">oCameraEntity</span><span class="p">.</span><span class="n">setPosition</span><span class="p">(</span>
+                                  <span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="n">cX</span><span class="p">,</span> <span class="n">cY</span><span class="p">,</span> <span class="n">cZ</span><span class="p">))</span>
+                                <span class="n">oRobotTransform</span><span class="p">.</span><span class="n">setRotation</span><span class="p">(</span>
+                                  <span class="n">oQ</span><span class="p">.</span><span class="n">fromAxisAndAngle</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">),</span> <span class="mi">180</span><span class="p">))</span>
+                        <span class="k">ok</span>
+                <span class="k">on</span> <span class="n">Qt_Key_Escape</span>
+                        <span class="n">oWidget</span><span class="p">.</span><span class="n">close</span><span class="p">()</span>
+        <span class="k">off</span>
+
+        <span class="n">oRobotTransform</span><span class="p">.</span><span class="n">setTranslation</span><span class="p">(</span><span class="k">new</span> <span class="n">QVector3D</span><span class="p">(</span><span class="n">robotX</span><span class="p">,</span> <span class="n">robotY</span><span class="p">,</span> <span class="n">robotZ</span><span class="p">))</span>
+</pre></div>
+</div>
+<img alt="Qt3D の用例 - シーン" src="_images/qt3d_ex18.png" />
+</div>
+</div>
+
+
+          </div>
+        </div>
+      </div>
+      <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
+        <div class="sphinxsidebarwrapper"><h3>ページの内容</h3>
+<ul>
+<li><a class="reference internal" href="#">Qt3D の用法</a><ul>
+<li><a class="reference internal" href="#index-1">立方体の描画</a></li>
+<li><a class="reference internal" href="#index-2">トーラスの描画</a></li>
+<li><a class="reference internal" href="#index-3">球体の描画</a></li>
+<li><a class="reference internal" href="#index-4">円柱の描画</a></li>
+<li><a class="reference internal" href="#index-5">円錐の描画</a></li>
+<li><a class="reference internal" href="#index-6">平面の描画</a></li>
+<li><a class="reference internal" href="#index-7">テクスチャ</a></li>
+<li><a class="reference internal" href="#index-8">キー入力</a></li>
+<li><a class="reference internal" href="#index-9">オブジェクト・ピッカー</a></li>
+<li><a class="reference internal" href="#index-10">フレームアクション</a></li>
+<li><a class="reference internal" href="#d">2Dテキスト</a></li>
+<li><a class="reference internal" href="#index-12">テキストの押し出し</a></li>
+<li><a class="reference internal" href="#index-13">モデル</a></li>
+<li><a class="reference internal" href="#index-14">モデルテクスチャ</a></li>
+<li><a class="reference internal" href="#index-15">事務所の描画</a></li>
+<li><a class="reference internal" href="#index-16">複数オブジェクト</a></li>
+<li><a class="reference internal" href="#index-17">カメラ</a></li>
+<li><a class="reference internal" href="#index-18">シーン</a></li>
+</ul>
+</li>
+</ul>
+
+
+  <h4>前のトピックへ</h4>
+  <p class="topless"><a href="multilanguage.html"
+                        title="前の章へ">多国語アプリケーション</a></p>
+  <h4>次のトピックへ</h4>
+  <p class="topless"><a href="scope.html"
+                        title="次の章へ">変数と属性のスコープ規則</a></p>
+  <div role="note" aria-label="source link">
+    <h3>このページ</h3>
+    <ul class="this-page-menu">
+      <li><a href="_sources/qt3d.txt"
+            rel="nofollow">ソースコードを表示</a></li>
+    </ul>
+   </div>
+      
+<form action="search.html" method="get">
+  <input type="text" name="q" placeholder="Search" />
+  <input type="hidden" name="check_keywords" value="yes" />
+  <input type="hidden" name="area" value="default" />
+</form>
+      
+        </div>
+      </div>
+      <div class="clearer"></div>
+    </div>
+<footer class="footer">
+  <p class="pull-right">
+    <a href="_sources/qt3d.txt"
+       rel="nofollow">Page Source</a> &nbsp;
+    <a href="#">Back to Top</a></p>
+  <p>
+    &copy; Copyright 2016-2020, Ring Team.<br/>
+    Created using <a href="http://www.sphinx-doc.org/en/stable/">Sphinx</a> 1.3.6. / astropy-sphinx-theme 1.1 (isVowel)
+  </p>
+</footer>
+  </body>
+</html>
\ No newline at end of file