canvasmanager+shaderbuilder+webgl实现宇宙黑洞动画效果代码

代码语言:html

所属分类:动画

代码描述:canvasmanager+shaderbuilder+webgl实现宇宙黑洞动画效果代码

代码标签: canvasmanager shaderbuilder webgl 宇宙 黑洞 动画

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

<!DOCTYPE html>
<html lang="en" >

<head>
  <meta charset="UTF-8">
  

  <link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<meta name="viewport" content="width=device-width, initial-scale=1">
  
  <link rel='stylesheet' href='https://fonts.googleapis.com/css2?family=Rajdhani:wght@300;400;500;600;700&amp;display=swap'>
  
<style>
body {
    width: 100vw;
    height: 100vh;
    margin: 0;
    padding: 0;
    display: grid;
    place-items: center;
    overflow: hidden;
    background: #000;
    font: normal 400 1.3rem 'Rajdhani', sans-serif;
}

.credit {
    width: 200px;
    height: 60px;
    padding: 10px;
    position: fixed;
    bottom: 20px;
    right: 20px;
    border-radius: 10px;
    background: rgba(0, 0, 0, 0.35);
    border: 1px solid rgba(0, 0, 0, 0.5);
    color: #efefef;
    backdrop-filter: blur(20px);
}
.credit a {
    display: block;
    text-decoration: none;
    color: #ff8080
}
</style>


  
  
</head>

<body translate="no">
  <canvas id="simulation"></canvas>


      <script type="module">
import canvasManager from '//repo.bfw.wiki/bfwrepo/js/canvasmanager.module.js';
import { ShaderBuilder, RenderPipeline } from '//repo.bfw.wiki/bfwrepo/js/shaderbuilder.module.js';
import FPSCounter from '//repo.bfw.wiki/bfwrepo/js/fps.module.js';

const manager = canvasManager().attach('simulation');
const canvas = manager.el;
const gl = manager.context('webgl2');

manager.resize('full', 'full').listen('resize');

const fps = new FPSCounter();

const discColor = { r: 0.22, g: 0.32, b: 1.0 };

const vsource = `#version 300 es
precision highp float;

in vec2 a_position;
out vec2 v_texCoord;

void main() {
    v_texCoord = a_position * 0.5 + 0.5;
    gl_Position = vec4(a_position, 0.0, 1.0);
}`;

const fsource = `#version 300 es
precision highp float;

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

网友评论0