在本文中,我们将看到如何使用 React-Three-Fiber 在 React JS 中创建天空着色器。它看起来像原始的天空,这确实是一个很棒的效果。Three.js是一个跨浏览器的 JavaScript 库和应用程序编程接口,用于使用 WebGL 在 Web 浏览器中创建和显示动画 3D 计算机图形
首先安装以下软件包 -
npm i --save @react-three/fiber npm i --save @react-three/drei
react-three/fiber将用作threejs和React.js之间的中间体,drei将用于在其中实现预制的可优化天空效果。
现在,在App.js中插入以下代码-
import React from "react"; import { Canvas } from "react-three-fiber"; import { Sky } from "@react-three/drei"; export default function App(props) { return ( <Canvas> <Sky distance={450000} sunPosition={[5, 1, 8]} inclination={0} azimuth={0.25} {...props} /> </Canvas> ); }
在这里,我们简单地创建了一个 Canvas,其中我们创建了<Sky>对象,该对象为不同的效果采用不同的参数。
很简单,试着调整它的参数,太阳位置,距离,倾角等,看看不同类型的效果。更改参数后,您将看到不同的效果。
输出结果
它将产生以下输出 -