对于与A-Frame(aframe.io)相关的任何事情。 A-Frame是用于构建虚拟现实体验的Web框架。 A-Frame允许我们使用HTML构建场景,同时可以无限制地访问JavaScript,three.js和所有现有的Web API。 A-Frame是一个实体组件系统框架,可以促进组合和可扩展性。使用WebVR,大多数耳机/控制器可以与A-Frame一起使用:Vive,Rift,Daydream,GearVR,Cardboard或普通2D模式。
有没有办法让我在 .glb 的 a 场景组件中渲染 3D 模型?
我有一个 .glb 文件,其中包含穿着西装的人的 3D 模型。 我想在我的场景中展示这个模型。 我使用以下代码来尝试此操作: 在 MyComponent.tsx 中,我返回以下内容...
我有下面的代码,我希望在同一文件夹中渲染我本地的 gltf,但它没有渲染。根据网络流量,我可以看到纹理/网格通过......
我有一个由 1000 个球体实例组成的简单模型。我正在尝试使用实例来减少绘制调用的数量。但是,我无法更改 indi 的透明度/不透明度...
我正在尝试制作一个网络应用程序,我可以在其中使用世界跟踪来查看 3D 模型。我正在尝试使用 a-entity 标签的材质属性来更改模型的不透明度,但它没有......
我正在尝试在 Glitch 上的 A-Frame 中构建混合现实体验,除了目前看到的“VR”按钮之外,我还经常看到“AR”按钮。如何启用 AR 模式?我……
如何在 MindAR 和 A-Frame 中将按钮放置在视频叠加顶部
我有一个图像目标,可以使用 MindAR 和 A-Frame 触发视频叠加。我想在视频叠加层顶部的特定位置放置一个按钮,目标是播放音频文件...
手动控件不会渲染以编程方式附加的子实体的子实体(AFRAME 1.6.0)
对于上下文,我试图通过将对象的实体附加为带有手控组件的实体的子实体来模拟玩家用 VR 手控制器抓取虚拟对象。 我是鲁...
嗨,我是 aframe 的新手,试图在屏幕上创建按钮(如全屏 VR 模式)来模仿 wasd 控件。 我尝试了此链接上的信息,它给了我一些有关此问题的提示,但没有解决...
全景照片是 Android 相机选项中的一个选项。该过程很简单,可生成 11568 x 1696 像素、72 dpi 的图像。 但是当使用代码将该图像显示在框架中时......
定义为动态体的盒子根本不会下落。我尝试下载物理系统的 github 存储库中提供的缩小版 JS,并将我的脚本标签更改为: 定义为动态体的盒子根本不会下落。我尝试下载物理系统的 github 存储库中提供的缩小版 JS,并将我的脚本标签更改为: <script src="aframe-physics-system.min.js"></script> 这也不起作用。我尝试删除调试模式,但这又不起作用。我从存储库中的示例之一复制/粘贴了 HTML,该示例在我的系统上也不起作用(日志中没有错误),因此我假设由于某种原因物理系统没有为我导入。 我正在运行本地服务器来测试代码。 我在这里做错了什么? <script src="https://aframe.io/releases/1.6.0/aframe.min.js"></script> <script src="https://unpkg.com/aframe-event-set-component@^3.0.0/dist/aframe-event-set-component.min.js"></script> <!--PHYSICS ENGINE IMPORTED BELOW--> <script src="https://cdn.jsdelivr.net/gh/n5ro/aframe-physics-system@v$npm_package_version/dist/aframe-physics-system.min.js"></script> <body> <a-scene physics="debug: true;"> <!-- MY CUSTOM CURSOR--> <a-camera> <a-entity cursor position="0 0 -1" geometry="primitive: sphere; radius: 0.005;" material="color: #000000; opacity: 0.5;"> </a-entity> </a-camera> <!-- BOXES--> <a-sky color="#FFAA00"></a-sky> <a-box dynamic-body position="-5 2.5 -6" color="red" scale="1 1 2" animation="property: rotation; to: 360 360 0; dur: 3000; easing: linear; loop: true;" event-set__enter="_event: mouseenter; material.color: blue;" event-set__leave="_event: mouseleave; material.color: red;"> </a-box> </a-scene> 看起来 5nro fork 已存档,并且有一段时间没有更新 - 有一个注释,它是在 cframe 开发的。 从 cframes 存储库导入库后,它似乎可以正常工作: <script src="https://aframe.io/releases/1.6.0/aframe.min.js"></script> <script src="https://cdn.jsdelivr.net/gh/c-frame/[email protected]/dist/aframe-physics-system.min.js"></script> <a-scene physics="debug: true;"> <a-sky color="#FFAA00"></a-sky> <a-box dynamic-body position="-5 2.5 -6" color="red" scale="1 1 2"></a-box> </a-scene>
使用A框检查器时,使用CTL+ALT+I时会出现 - 但右侧的侧面板消失了。当我选择出现的a场景时。然而,当我选择一个对象时...
Aframe API 支持弯曲图像。然而,除了弯曲的图像之外,我还想制作弯曲的文本和平面。有人可以帮我解决这个问题吗? 我想我必须创建一个实体,但是...
我想要一个 mathjax 表达式,例如 sin{(x+y)} 以在 A 框架环境中显示
我使用这个脚本: 从 '/scripts/fetchEnv.js' 导入 { fetchEnvValues }; fetchEnvValues().then(envValues => { var Latex = envValues[1] ||...</desc> <question vote="0"> <p>我使用这个脚本:</p> <pre><code><script type="module"> import { fetchEnvValues } from '/scripts/fetchEnv.js'; fetchEnvValues().then(envValues => { var latex = envValues[1] || 'x^2 + y^2'; // Verwenden Sie einen einfachen LaTeX-Ausdruck zur Fehlersuche var js = envValues[0]; // LaTeX-Output in hidden Div rendern document.querySelector('#latexOutput').innerHTML = `$$${latex}$$`; console.log('LaTeX code set:', latex); // Check, MathJax is loaded if (typeof MathJax !== 'undefined') { console.log('MathJax is loaded'); // MathJax bereits geladen, direkt typesetPromise ausführen typesetLatex(); } else { console.log('MathJax is not loaded, waiting for window load event'); // MathJax noch nicht geladen, warte auf das Laden des Fensters, um typesetPromise auszuführen window.addEventListener('load', typesetLatex); } function typesetLatex() { MathJax.typesetPromise().then(() => { console.log('MathJax typeset complete'); const latexContainer = document.querySelector('#latexOutput'); console.log('Rendered LaTeX innerHTML:', latexContainer.innerHTML); // SVG-Element aus dem MathJax-Container abrufen const svg = document.querySelector('#latexOutput .mjx-chtml'); console.log(svg); if (svg) { console.log('SVG element found'); const serializer = new XMLSerializer(); const svgString = serializer.serializeToString(svg); console.log('SVG:', svgString); // SVG in VR-Element einfügen const vrElement = document.querySelector('#latexVR'); vrElement.setAttribute('src', `data:image/svg+xml;base64,${btoa(svgString)}`); } else { console.error('SVG element not found'); } }).catch((err) => { console.error('MathJax typeset error:', err.message); }); } </script> </code></pre> <p>这条线好像不行:</p> <pre><code>const svg = document.querySelector('#latexOutput .mjx-chtml'); </code></pre> <p>返回值为空。例如,我将 .mjx-chtml 更改为 tex-svg 。但没有成功。也许存在另一种方法?</p> </question> <answer tick="false" vote="0"> <p>MathJax v3 及更高版本没有 <pre><code>.mjx-chtml</code></pre> 元素(版本 2 有,但仅限 CommonHTML 输出,不适用于 SVG 输出)。 如果您正在寻找 SVG 元素,为什么不使用</p> <pre><code>const svg = document.querySelector('#latexOutput SVG'); </code></pre> <p>相反? 或者,如果您只是尝试排版单个表达式并捕获 SVG 输出,则可以使用 <pre><code>MathJax.tex2svgPromise()</code></pre> 代替。 这将返回包含 SVG 元素的 <pre><code>mjx-container</code></pre> 元素。</p> <p>所以你可以做</p> <p></p><div data-babel="false" data-lang="js" data-hide="false" data-console="true"> <div> <pre><code><script type="module"> const envValues = ['', '\\sin(x+y)']; // faked fetchEnv.js function typesetLatex(latex, display) { MathJax.tex2svgPromise(latex, {display}).then((node) => { const svg = node.querySelector('svg'); const svgString = MathJax.startup.adaptor.serializeXML(svg); alert(svgString); }); } window.MathJax = { startup: { ready() { MathJax.startup.defaultReady(); typesetLatex(envValues[1], true); } } }; </script> <script src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-svg.js" defer></script></code></pre> </div> </div> <p></p> <p>例如根本不需要将乳胶插入到 DOM 中。</p> </answer> </body></html>
a-frame错误'核心:a-assets警告资产加载超时3000ms
<a-scene environment="preset: forest"> <a-assets> <a-asset-item id="duck" src="./assets/duck.glb"></a-asset-item> </a-assets> <a-entity gltf-model="#duck" position="-4 -4 -4"></a-entity> <a-entity camera position="-1.946 2.807 -3.552" wasd-controls look-controls > </a-entity> </a-scene> !error message! core:propertyTypes:warn "#duck" asset not found. http://localhost:8080/assets/duck.glb 404 (Not Found) aframe-master.js?ce54:2199 core:a-assets:warn Asset loading timed out in 3000 ms 我正在尝试将 a-frame 与 Vue 连接,但我无法从 asset 获取文件。我不断收到该错误,但我根本无法解决它。我不习惯a-frame,所以我需要帮助。请帮助我。 还有一个问题是,我设置了environment="preset: forest"属性,但是当我打开服务器时,环境属性不起作用。这有什么问题吗? 默认情况下,资源加载时间设置为 3 秒。为相当大的资产设置自定义超时为我解决了这个问题。 <a-assets timeout="10000"> <a-asset-item id="duck" src="./assets/duck.glb"></a-asset-item> </a-assets>
(iOS)viewport-fit=cover 元标签与导航栏的配合不完美
我正在制作一个使用 AFrame 的 iOS 应用程序,AFrame 是一个基于 Web 的 3D 图形库。当我加载包含aframe场景的网页时,我发现网页视图没有全屏。
HoloLens 2 未能为 WebXR 提供沉浸式 AR/VR 体验
我有一个使用 A-Frame 构建的基本 WebXR 应用程序。这是标准的 AR 示例,其中包含一个平面以及放置在平面上的球体、立方体和圆柱体。 我在我的笔记本电脑上运行它并且我可以访问...
我希望能够将对象从 {x= 0, y= 0, z= 0} 移动到 {x= 5, y= 0, z= 0} 到 {x= 5, y= 5, z= 0} 例如(通过在我的脚本中调用诸如changeX(5)之类的函数)。我已经尝试过制作一个
我正在使用 A-Frame 和 AR.js 示例来创建自定义标记。 Glitch 示例页面的链接:https://opposite-bike.glitch.me/testMarker.html Glitch 项目链接:https://glitch.com/edit/#!/oppo...
我只是想插入我的模型进行预览,但我不是开发人员,无法弄清楚为什么它没有显示。 这是我的 html 代码; <question vote="0"> <p>我只是想插入我的模型进行预览,但我不是开发人员,无法弄清楚为什么它没有显示。</p> <p>这是我的html代码;</p> <pre><code> <html> <head> <script src="https://aframe.io/releases/1.5.0/aframe.min.js"></script> <script src="https://unpkg.com/<a href="/cdn-cgi/l/email-protection" data-cfemail="21404753404c440c4459555340520f404f484c4055484e4f0c4c4859445361120f150f11">[email protected]</a>/dist/aframe-extras.animation-mixer.js"></script> </head> <body> <a-scene background="color: #ECECEC"> <a-box position="-1 0.5 -3" rotation="0 45 0" color="#4CC3D9"></a-box> <a-robot id="robot" position="-5 0.5 -3" src="https://cdn.glitch.global/a268f0f6-f14a-489d-b3cb-558fda9ac16b/scene-can.gltf?v=1712935681643" ></a-robot> <a-plane position="0 0 -4" rotation="-90 0 0" width="4" height="4" color="red" ></a-plane> </a-scene> </body> </html> </code></pre> <p>这是上传的资源。</p> <p><img src="https://cdn.txt58.com/i/AWkuc3RhY2suaW1ndXIuY29tL01ZQUNSLnBuZw==" alt="assets"/></p> <p>我根本无法让我的 3D 模型出现。 谁能帮我设置一下吗?</p> </question> <answer tick="false" vote="0"> <p>元素<pre><code>a-robot</code></pre>在A-Frame中不存在,除非你自己定义它。您可能需要仔细检查 <a href="https://aframe.io/docs/1.5.0/primitives/a-gltf-model.html" rel="nofollow noreferrer"><pre><code>a-gltf-model</code></pre> 文档</a>,检查您的 JavaScript 控制台是否有任何错误并在问题中分享它们,或者进一步解释您遇到的问题。大多数模型都需要照明,而您当前的场景不包括照明。</p> <p>旁白:如果您只想显示模型而无需进一步自定义,类似 <a href="https://modelviewer.dev/" rel="nofollow noreferrer">https://modelviewer.dev/</a> 可能是一种更简单的方法。</p> </answer> </body></html>