threejs实现悬浮通道置换放大效果

代码语言:html

所属分类:悬停

下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">

    <title> - ThreeJS Hover Zoom Channel Displacement</title>
    <style>
        html,
        body {
            width: 100%;
            height: 100%;
            overflow: hidden;
            margin: 0;
        }

    </style>

</head>
<body>
    <canvas id="canvas"></canvas>

    <script src='//repo.bfw.wiki/bfwrepo/js/TweenMax.min.js'></script>
    <script src='//repo.bfw.wiki/bfwrepo/js/three.js'></script>
   
    <script>
        function _defineProperty(obj, key, value) {
            if (key in obj) {
                Object.defineProperty(obj, key, {
                    value: value, enumerable: true, configurable: true, writable: true
                });
            } else {
                obj[key] = value;
            }return obj;
        } /* Utils ------------------------------------------ */
        const textureLoader = new THREE.TextureLoader();

        /* Scene Subjects ----------------------------------------- */
        class PlaneSubject {



            constructor(scene) {
                _defineProperty(this, "raycaster", new THREE.Raycaster()); _defineProperty(this, "scene", null);
                const geometry = new THREE.PlaneBufferGeometry(5, 7);
                const material = new THREE.ShaderMaterial({
                    vertexShader: `
                    varying vec2 vUv;

                    void main() {
                    vUv = uv;

              .........完整代码请登录后点击上方下载按钮下载查看

网友评论0