1.生成掠过的光圈材质。

var uniform = {u_color: { value: new THREE.Color("#5588aa") },u_tcolor: { value: new THREE.Color("#EF5F00") },u_r: { value:0.8 },u_length: { value: 20 },//扫过区域u_max: { value: 600 }//扫过最大值
};
var Shader = {vertexShader: `varying vec3 vp;void main(){vp = position;gl_Position   = projectionMatrix * modelViewMatrix * vec4(position, 1.0);}`,fragmentShader: `varying vec3 vp;uniform vec3 u_color;uniform vec3 u_tcolor;uniform float u_r;uniform float u_length;uniform float u_max;float getLeng(float x, float y){return  sqrt((x-0.0)*(x-0.0)+(y-0.0)*(y-0.0));}void main(){float uOpacity = 0.3;vec3 vColor = u_color;float uLength = getLeng(vp.x,vp.z);if ( uLength <= u_r && uLength > u_r - u_length ) {float op = sin( (u_r - uLength) / u_length ) * 0.6 + 0.3 ;uOpacity = op;if( vp.y<0.0){vColor  = u_tcolor * 0.6;}else{vColor = u_tcolor;};}gl_FragColor = vec4(vColor,uOpacity);}`
}
aamaterial = new THREE.ShaderMaterial({vertexShader: Shader.vertexShader,fragmentShader: Shader.fragmentShader,side: THREE.DoubleSide,uniforms: uniform,transparent: true,depthWrite: false,
});
  1. animate()中执行
if (aamaterial) {aamaterial.uniforms.u_r.value += delta * 50 + 4;if (aamaterial.uniforms.u_r.value >= 600) {aamaterial.uniforms.u_r.value = 20}
}
console.log(aamaterial);

3.使用方式

plane = new THREE.Mesh( geometry, aamaterial );

4.效果

threejs生成由内而外光圈、城市掠过。相关推荐

  1. threejs生成3d地图所需

    threejs生成3d地图所需 1.threejs,郭龙邦弄的教程 熟悉形状.线绘制,绘制白模楼宇 熟悉sprite,用以做POI标注 熟悉光照 熟悉LOD,用以远近不同时加载不同物体.地面 熟悉漫游 ...

  2. 使用Navicat生成全国省份城市SQL数据库

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.表 二.使用步骤 1.引入库 2.添加城市数据 前言 网上找了关于省份-城市的数据库,不合适自己的,现在自己写一个 ...

  3. webgl(threejs)生成房间楼层

    楔子 在很多数字孪生项目中,都会涉及到楼层的建模.楼层的建模由于结构繁多,如果都是建模师进行手动建模,工作量会比较大.而楼层本身的结构,可以抽象成可以通过路径构造的对象(这和之前的文章提及的的管路以及 ...

  4. ThingMap一键城市2.0重新出发:快速生成三维城市

    在城市级可视化项目中,一般需要可视化的三维地图作为承载各种应用的载体,但大家在使用三维地图的过程中经常碰到3道难题:1.资源获取不便2.操作使用复杂3.模型效果不理想.为了降低三维地图的获取和使用难度 ...

  5. geojson地图_ThingJS的三维城市地图搭建逻辑解析

    一个城市越智慧,综合竞争力越强,面向用户的可视化更是必不可少,ThingJS的三维城市地图搭建工具应运而生. Citybuilder是ThingJS旗下三维地图城市搭建工具,使用Citybuilder ...

  6. 游戏编程中的数学——随机数字生成(RNG)的黑暗秘密

    大家好,你们能听到我讲话吗?这个演讲的内容是介绍RNG(随机数字生成)的一些黑暗秘密.如你在大屏幕上看到的,Squirrel已经介绍了一些RNG的基础概念.首先,我想详细讲解几点.他的演讲更偏重理论, ...

  7. 详谈asp生成静态页方法

    生成静态页的好处不用说,当今大型网站,为缓解服务器端的压力许的的页面都改用了静态的页面,并利用AJAX技术动态地更新其中的部分内容,如广告等. 一个简单的不用模板可以直接生成HTML静态页的方法. 如 ...

  8. python爬取天气数据山东_Python的学习《山东省各城市天气爬取》

    Python+scrapy爬取山东各城市天气预报 1.在命令提示符环境使用pip install scrapy命令安装Python扩展库scrapy,详见Python使用Scrapy爬虫框架爬取天涯社 ...

  9. 手把手教你使用Python+scrapy爬取山东各城市天气预报

    1.在命令提示符环境使用pip install scrapy命令安装Python扩展库scrapy,详见Python使用Scrapy爬虫框架爬取天涯社区小说"大宗师"全文 2.使用 ...

  10. 城市“智慧发展”的核心是人性化

    现在很多智慧城市建设规划只是将"高楼大厦.跨马路.大广场"的物质建设型城镇化模式进行了信息化升级. 经济的变局中,城市的发展起落不定,一方面,一些曾经拥有辉煌历史和重要政治经济地位 ...

最新文章

  1. xenserver 管理口显示重复IP的处理方法
  2. 重磅剧透!阿里巴巴计划开源 Nacos,为Dubbo生态发展铺路
  3. python计算运动会某个参赛选手的得分。数据保存在文件中_Python基础教程之第二章---变量和字符串(1) 搬运...
  4. 螺旋矩阵O(1)根据坐标求值
  5. pom.xml中的artifactId是什么意思?
  6. 统计一行文本的单词个数_word操作技巧:不同情况的文字统计方法
  7. 丁克是什么意思,丁克家庭是什么意思,丁克家庭为什么越来越多
  8. 面向程序员的GPGPU技术系列(1) 为什么要理解GPU体系结构?
  9. 我的世界服务器哪个有自动铺路,超简单命令方块铺路机 我的世界自动铺路机制作教程(附存档)...
  10. 通过银行卡号获取银行名称和银行图标的ICON
  11. php 使用gd库,PHP的gd库使用基础教程
  12. 使用密码查看器查看软件的密码
  13. python成绩统计_利用python进行学生成绩分析
  14. python模型保存与恢复_tensorflow1.0学习之模型的保存与恢复(Saver)_python
  15. 谈谈我了解的那些在线it学习网站
  16. HUAWEI MH5000-31 5G LGA Module Application Guide-(V100R001_01, English)
  17. 基于javaweb+jsp的在线点餐系统(java+SSM+jsp+mysql+maven)
  18. Data Availability
  19. 我要搬家到CSDN了,好吧
  20. NoSQL 数据库有哪些典型应用?

热门文章

  1. python爬取招聘网站源码及数据分析_Python爬取招聘网站进行数据分析,福利待遇一清二楚,高薪很简单...
  2. 循环小题题库存档(期末复习)
  3. jsp简介lamitry_[提拉米苏] 找人一起玩,今晚刚开的号
  4. 如何进行网站挂马检测与清除
  5. VS中给qt按钮添加图标
  6. IIS无法加载*.woff,*.woff2,*.svg文件的解决办法
  7. springboot 解决 woff2、ttf 跨域无法解析问题
  8. 笔记木计算机自动关机怎么办,为什么笔记本电脑自动关机 笔记本电脑自动关机解决方法...
  9. java gzip rest_使用restclient或postman发送gzip数据
  10. [0CTF 2016]piapiapia(反序列化逃逸)