Mapbox 与 Babylon.js 可视化 glsl 特效篇(六)
我决定不从Babylonjs 基础来讲了 直接整合mapbox与babylonjs可视化来讲
我整合一个类库 后续不断更新中
- npm i @haibalai/mapbox-babylonjs
初始化mapbox-babylonjs 类库, map 是mapbox.gl 的map 对象
- import { BabylonMapManager } from "@haibalai/mapbox-babylonjs";
- BabylonMapManager.init(map);
添加特效
- import { BabylonMapManager } from "@haibalai/mapbox-babylonjs";
- const fragmentShader = `
- uniform float ratio;
- float PI = 3.1415926;
- uniform float iTime;
- const vec2 iResolution = vec2(1.0,1.0);
- varying vec2 vUv;
- voidmain() {
- vec2 p = (vUv - 0.5) * 2.0;
- float tau = PI * 2.0;
- float a = atan(p.x,p.y);
- float r = length(p)*0.75;
- vec2 uv = vec2(a/tau,r);
- //get the color
- float xCol = (uv.x - (iTime / 3.0)) * 3.0;
- xCol = mod(xCol, 3.0);
- vec3 horColour = vec3(0.25, 0.25, 0.25);
- if (xCol < 1.0) {
- horColour.r += 1.0 - xCol;
- horColour.g += xCol;
- }
- elseif (xCol < 2.0) {
- xCol -= 1.0;
- horColour.g += 1.0 - xCol;
- horColour.b += xCol;
- }
- else {
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律