在 A 帧 (AR.js) 中,想要使 3D 对象看起来像是从地板上冒出来的,即以某种方式位于标记下方的 clip/mask
In A-Frame (AR.js), Want to make 3D object appear to come out of the floor, i.e. clip/mask below marker somehow
我正在寻找一种使用 Ar.js
将 3D 对象剪辑到 A 帧中特定点以下的方法。我想剪切点是 0,0,0
,标记位置。我的想法是让一个物体看起来像是从下面的标记出来的,所以在那个点以下你就看不到它了。希望我的图表能解释我的意思。
我曾尝试使用 C4D 合成标签,但正如预期的那样,它不会导出为 gltf
对象。
有一种巧妙的技术可以用来制作隐形斗篷 - 禁用 material.
的 colorWrite
属性
假设您想将对象隐藏在一个盒子中。您需要创建一个比您的对象稍大的框,并按照描述设置其 material:
AFRAME.registerComponent('cloak', {
init: function() {
var geometry = new THREE.BoxGeometry( 1.1, 1.1, 1.1 );
var material = new THREE.MeshBasicMaterial( {colorWrite: false} );
var cube = new THREE.Mesh( geometry, material );
this.el.object3D.add( cube );
}
})
然后确保它在隐形对象之前渲染:
<a-marker>
<a-entity cloak></a-entity>
<a-box animation="property: position; to: 0 1.2 0; dur: 1500;
easing: linear; loop: true; dir: alternate"> </a-box>
</a-marker>
在 this 故障中查看。
我正在寻找一种使用 Ar.js
将 3D 对象剪辑到 A 帧中特定点以下的方法。我想剪切点是 0,0,0
,标记位置。我的想法是让一个物体看起来像是从下面的标记出来的,所以在那个点以下你就看不到它了。希望我的图表能解释我的意思。
我曾尝试使用 C4D 合成标签,但正如预期的那样,它不会导出为 gltf
对象。
有一种巧妙的技术可以用来制作隐形斗篷 - 禁用 material.
的colorWrite
属性
假设您想将对象隐藏在一个盒子中。您需要创建一个比您的对象稍大的框,并按照描述设置其 material:
AFRAME.registerComponent('cloak', {
init: function() {
var geometry = new THREE.BoxGeometry( 1.1, 1.1, 1.1 );
var material = new THREE.MeshBasicMaterial( {colorWrite: false} );
var cube = new THREE.Mesh( geometry, material );
this.el.object3D.add( cube );
}
})
然后确保它在隐形对象之前渲染:
<a-marker>
<a-entity cloak></a-entity>
<a-box animation="property: position; to: 0 1.2 0; dur: 1500;
easing: linear; loop: true; dir: alternate"> </a-box>
</a-marker>
在 this 故障中查看。