javascript - 三.js雾不渲染?

标签 javascript three.js

我正在尝试向场景添加雾,但它无法渲染?

我已经进行了一些搜索,但似乎没有解决我的问题。这是问题的截图

no fog

这是代码演示:https://jsfiddle.net/7orbmn4t/

var scene = new THREE.Scene();
scene.background = new THREE.Color(0xcce0ff);
scene.fog = new THREE.Fog(0xff0000, 10, 500);

var camera = new THREE.PerspectiveCamera(
  90,
  window.innerWidth / window.innerHeight,
  0.1,
  1000
);

camera.rotation.x = 0.7853;
camera.position.set(0, 0, 15);
var renderer = new THREE.WebGLRenderer();
renderer.setSize(window.innerWidth, window.innerHeight);

scene.add( new THREE.AmbientLight( 0xffffff ) );

var geometry = new THREE.PlaneBufferGeometry(100, 100, 0);
var material = new THREE.MeshLambertMaterial({
  color: 0x898989,
  fog: true
});
var plane = new THREE.Mesh(geometry, material);
scene.add(plane);

renderer.render(scene, camera);
document.body.appendChild(renderer.domElement);

最佳答案

Material 中的fog标志仅指定 Material 是否受雾影响:material.fog

它不会产生雾。为此,您需要首先创建雾:Fog

关于javascript - 三.js雾不渲染?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59307352/

相关文章:

javascript - ShadowMap Three.js

javascript - Three.js 中的 UV 映射立方体未正确连接面

javascript - Angular 6 : Property 'fromEvent' does not exist on type 'typeof Observable'

javascript - 使用 Struts 1.x 和 AJAX 设置 session 变量

javascript - 粘性标题动画线性背景颜色

javascript - 正弦波动画未在预期原点发生

javascript - Three.js 在点击时改变旋转

javascript - three.js 中 STL 对象的边界框

javascript - 如何显示数组中的图像? JavaScript

javascript - Scrapy 中的 Selenium + PhantomJS