three打造的走光效果

代码语言:html

所属分类:三维

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

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

<title> Carpe Noctem</title>
<style>
      body {
  margin: 0;
  padding: 0;
}

#container {
  position: fixed;
  touch-action: none;
}

    </style>

</head>
<body translate="no">
<script src="http://repo.bfw.wiki/bfwrepo/js/three.js"></script>
<script id="vertexShader" type="x-shader/x-vertex">
    void main() {
        gl_Position = vec4( position, 1.0 );
    }
</script>

<script id="fragmentShader" type="x-shader/x-fragment">
  
  uniform vec2 u_resolution;
  uniform vec2 u_mouse;
  uniform float u_time;
  uniform sampler2D u_noise;
  uniform bool u_mousemoved;

  const bool shapeTest = false; // Whether to just show the shape test
  const bool addNoise = true; // Whether to add noise to the rays
  const float decay = .98; // the amount to decay each sample by
  const float exposure = .2; // the screen exposure
  const vec3 lightcolour = vec3(.5); // the colour of the light
  const vec3 falloffcolour = vec3(1.0, 1.0, 1.3); // the colour of the falloff
  const vec3 bgcolour = vec3(.05, 0.1, .1); // the base colour of the render
  const float falloff = .5;
  const int samples = 16; // The number of samples to take
  const float density = .95; // The density of the "smoke"
  const float weight = .25; // how heavily to apply each step of the supersample
  const int octaves = 1; // the number of octaves to generate in the FBM noise
  const float seed = 43758.5453123; // A random seed :)
  
  #define PI 3.141592653589793
  #define TAU 6.283185307179586
  
  float starSDF(vec2 st, int V, float s) {
      // st = st*4.-2.;
      float a = atan(st.y, st.x)/TAU;
      float seg = a * float(V);
      a = ((floor(seg) + 0.5)/.........完整代码请登录后点击上方下载按钮下载查看

网友评论0