JSFiddle - React, Tailwind, and code Playground

by SQShu

HTML

<!DOCTYPE html>
<html>
<head>
  <style>
    * {
        user-select: none;
    }

    body {
        background-color: #000;
        margin: 0;
        padding: 0;
        overflow: hidden;
    }
    
    h2 {
        position: absolute;
      	margin-left: 20px;
      /*	border: 1px solid white; */
        padding-left: 16px;
        padding-right:16px;
      	padding-top: 4px;
      	padding-bottom: 4px;
      	color: black;
        background-color: rgba(255,255,255,0.47);

      }
  </style>
    <link rel="stylesheet" href="styles.css">

<script src = "https://mimicproject.com/libs/maximilian.js"></script>

<script src="https://cdnjs.cloudflare.com/ajax/libs/three.js/r121/three.min.js"></script>
</head>
<body>

      <h2>W8_GLSL_beat heart_SSQ</h2>

  <!--Reference to the works of ilithya | https://codepen.io/ilithya/pen/ExyPMLJ -->


  
<div id="container"></div>
<script id="vertex" type="x-shader/x-vertex">
	void main() {    
      gl_Position = vec4(position, 1.0); 
    }
</script>

<script id="fragment" type="x-shader/x-vertex">
precision mediump float;
	
uniform vec2 u_resolution;
uniform float u_time;
uniform vec2 u_mouse;
uniform float myWave;
#define M_PI 3.14159265358979323846



void main() {

	vec2 uv = (gl_FragCoord.xy - u_resolution * 0.5) / u_resolution.yy;
    
  vec2 st =gl_FragCoord.xy/u_resolution.xy;
    
    // Centerings 定位中心點
	uv += vec2(1.3, 1.0); 

	// Create one circle 創建一個圓 
	float circle = distance(uv, vec2(0.5)) * (abs(sin(u_time))/2.0+0.5+sin(myWave)); // radius 控制半徑
	float dm = abs(sin(u_time * M_PI));  // rate 控制跳動速率
	
    
    // Create light 創建光效
	vec3 light = vec3(0.5-tan(sin(circle*0.5+dm)), 0.5-acos(tan(circle*500.0+dm)), 0.0);
    
    
    // Mix hue&rgb 混合顏色和色相
	vec3 color1 = mix(light, vec3(8.0), 0.5-circle);   
	vec3 hue = mix(vec3(1.0, 1.0, 1.0), vec3(0.0, 0.0, 0.0), (st.y+abs(sin(u_time)))*0.5);
	vec3 color2 = mix(color1, hue, abs(uv.x-0.1));
	
    // Final shader  最後著色器渲染
	gl_FragColor = vec4(color1*color2,...