3d - 如何在 A 型框架中启用加法混合?

标签 3d aframe blending webvr

在 A 框架中启用加法混合的最简单方法是什么?我看到 THREE.MeshStandardMaterial 有一个 blending 属性,看起来像我需要的,但它没有被 A-Frame material 暴露组件。

我是否必须编写一个自定义组件来获取实体的 Material 并自己设置此属性?看来这个常见的要求应该已经得到满足了?

最佳答案

A-Frame 0.9.0 及更高版本:

A-Frame 现在从 0.9.0 及更高版本开始支持混合属性。请参阅https://aframe.io/docs/0.9.0/components/material.html#properties_blending

A-Frame 0.8.0 及更早版本:

我继续为此创建了自己的混合模式组件:

AFRAME.registerComponent('blendmode', {
  schema: {
    mode: {default: 'AdditiveBlending'} //Available Modes are: var blendings = [ "NoBlending", "NormalBlending", "AdditiveBlending", "SubtractiveBlending", "MultiplyBlending" ];
  },

    dependencies: ['material'],

  update: function () {
    // entity data
    var el = this.el;
    var data = this.data;

      if (el.components.hasOwnProperty("material")) {
          var mat = el.components.material.material;
          mat.blending = THREE[data.mode];
      }
  }
});

关于3d - 如何在 A 型框架中启用加法混合?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42697057/

相关文章:

c++ - 动态 3d 数组的声明和分配

JavaFX 如何获取 3D 场景中对象的坐标

javascript - 在 Three.js 中移动对象

three.js - 如何将等距柱状投影环境贴图添加到 A-Frame 中的 gltf 模型?

c# - 如何在 .Net 中使用 32 位 alpha 混合 BMP

delphi - Delphi/Native TForm GUI 中的 3D 图形

aframe - 为 A-Frame 的 WASD 控件添加速度

c++ - 透过透明物体看不到天空盒

CSS 混合背景与下面的元素

javascript - 如何通过单击框架场景中的实体/对象来制作 Div 显示