three.js - 透明背景 THREEJS 与绽放
问题描述
我试图弄清楚如何在对其具有绽放效果的threejs画布上获得透明背景。我尝试了这个和其他stackoverflow答案,但它不起作用。这是一个示例
function main() {
const canvas = document.querySelector('#bg');
const renderer = new THREE.WebGLRenderer({ canvas, alpha: true });
renderer.setPixelRatio(window.devicePixelRatio)
renderer.setSize(window.innerWidth, window.innerHeight)
const camera = new THREE.PerspectiveCamera(75, window.innerWidth / window.innerHeight, 0.1, 500);
camera.position.z = 2;
const scene = new THREE.Scene();
const follow = new THREE.Mesh(new THREE.CubeGeometry(0.1, 0.1, 0.1))
let mat = new THREE.MeshBasicMaterial({color:0x5442f5})
follow.material = mat
scene.add(follow)
follow.position.z = 1;
//Composing & Post Processing
var width = window.innerWidth || 1;
var height = window.innerHeight || 1;
var parameters = { minFilter: THREE.LinearFilter, magFilter: THREE.LinearFilter, format: THREE.RGBAFormat, stencilBuffer: false };
var renderTarget = new THREE.WebGLRenderTarget( width, height, parameters );
const composer = new EffectComposer(renderer, renderTarget);
composer.addPass(new RenderPass(scene, camera));
var bloomSettings = {
bloomStrength: 0.8,
bloomThreshold: 0.1,
bloomRadius: 0
};
var bloomPass = new UnrealBloomPass(new THREE.Vector2(window.innerWidth, window.innerHeight), bloomSettings.bloomStrength, bloomSettings.bloomRadius, bloomSettings.bloomThreshold);
bloomPass.renderToScreen = true;
composer.addPass(bloomPass);
let then = 0;
const clock = new THREE.Clock()
function render(now) {
const deltaTime = clock.getDelta();
composer.render(deltaTime);
requestAnimationFrame(render);
}
requestAnimationFrame(render);
}
main()
解决方案
推荐阅读
- python-3.x - 如何反编译我用 Pyinstaller 制作的 exe 文件?
- python - 如何从另一行获取值以放置在熊猫数据框中的当前行中?
- rust - 如何从选项中提取数据以供独立使用?
- react-native - 有这么多时间将 react native 推送到 git
- reactjs - TypeScript Ignoring Thunk-未处理的拒绝(错误):动作必须是普通对象。使用自定义中间件进行异步操作
- python - keras.utils.plot_model 不断告诉我安装 pydot 和 graphviz
- vuejs2 - NUXT Vuex 更改状态值返回存储状态错误
- javascript - 从useEffect动态呈现样式表?
- puppet - 如何在每个循环的 hiera_hash 中设置 puppet 类变量?
- firebase - Firebase 云消息传递的任何功能都需要 Firebase 数据库吗?