WebGL

WebGL VS Canvas 2D hardware acceleration

你。 提交于 2020-12-27 17:12:42
问题 These days, I need to draw many images on a canvas. The canvas size is 800x600px, and I have many images of 256x256px(some is smaller) to draw on it, these small images will compose a complete image on the canvas. I have two ways to implement this. First, if I use canvas 2D context, that is context = canvas.getContext('2d') , then I can just use context.drawimage() method to put every image on the proper location of the canvas. Another way, I use WebGL to draw these images on the canvas. On

WebGL VS Canvas 2D hardware acceleration

让人想犯罪 __ 提交于 2020-12-27 17:10:39
问题 These days, I need to draw many images on a canvas. The canvas size is 800x600px, and I have many images of 256x256px(some is smaller) to draw on it, these small images will compose a complete image on the canvas. I have two ways to implement this. First, if I use canvas 2D context, that is context = canvas.getContext('2d') , then I can just use context.drawimage() method to put every image on the proper location of the canvas. Another way, I use WebGL to draw these images on the canvas. On

WebGL VS Canvas 2D hardware acceleration

纵然是瞬间 提交于 2020-12-27 17:10:02
问题 These days, I need to draw many images on a canvas. The canvas size is 800x600px, and I have many images of 256x256px(some is smaller) to draw on it, these small images will compose a complete image on the canvas. I have two ways to implement this. First, if I use canvas 2D context, that is context = canvas.getContext('2d') , then I can just use context.drawimage() method to put every image on the proper location of the canvas. Another way, I use WebGL to draw these images on the canvas. On

基于WebGL无插件虚拟场景漫游关键技术(完整版)ThingJS

巧了我就是萌 提交于 2020-12-16 19:40:19
#三维可视化##3D开发# WebGL, ThingJS及3DSMAX 虚拟场馆漫游技术构建 基础组件 加载三维模型 实现虚拟漫游 渲染优化 如果要构建一个具有交互性和拓展性的沉浸式漫游场景,常用到3DSMAX、three.js等软件技术,学习门槛较高;ThingJS可视化组件更加轻量化,B/S架构下的3D可视化应用构建更轻松,为不少企业客户降低了项目开发成本。 WebGL、ThingJS及3DSMAX技术实现 WebGL是一种浏览器支持的3D绘图技术,无需下载插件,有跨平台跨终端的特性。如今广泛应用到三维可视化项目中,包括虚拟校园、全景看房、可视化大屏应用等。 ThingJS平台简化了在线开发步骤,本文总结一种更通用、更合理的实现方法,全程提供3D源码,保证了统一的基础架构,加速3D项目开发: 在 CampusBuilder客户端 可以搭建3D场景,并利用模型扩展库,避免过多的建模压力; 如果有精模需求,则可以在3DSMAX中完成建模,利用3D插件将模型导入3D场景中,不重要的场景则可以隐藏或者优化掉。 3D场景应该作为一个整体来看,但是若干部件(如墙体、展柜、门等)都是独立导出的,比如门设置了动画属性,则可以在平台上进行交互开发。 CampusBuilder有自带的保存格式,数据和ThingJS技术引擎是共享的,可读取的主流三维文件格式如下: JSON, OBJ或MTL,

二三维一体化地理信息平台

房东的猫 提交于 2020-12-14 19:16:57
二三维一体化GIS管网平台是利用地理信息技术,构建地下管线二三维可视化管理平台,实现了地下管线动态更新、地下管线与地上建筑三维建模展示、三维空间分析、与物联网传感实时监测集成等功能。系统遵循数据、管理、服务与应用相分离的架构原则,采用“云GIS+数字孪生+微服务”技术,建立了灵活装配式的扩展机制,实现地下管线数据的管理、共享、融合、交换及与其它业务应用系统的集成。二三维一体化GIS管网平台为城市地下空间的规划、建设和管理提供支撑,保障地下管网安全高效运行,减少管网相关灾害事故的发生。    核心功能:    产品架构:采用微服务+WebGL免插件技术框架    产品特性:地上地下一体化   平台实现了从地上、地下场景一体化数据生产、编辑维护、数据动态更新共享到数据可视化。 来源: oschina 链接: https://my.oschina.net/u/3528190/blog/4797267

mapbox-gl添加下雪效果

自闭症网瘾萝莉.ら 提交于 2020-12-12 19:39:40
原理: webgl制作snowing效果 叠加上一个制作的snowing canvas到mapbox gl的canvas下面 效果: 源码: <! DOCTYPE html > < html lang ="en" > < head > < meta charset ="UTF-8" > < title > Title </ title > < style > #canvas { position : absolute ; top : 0 ; left : 0 ; height : 100% ; width : 100% ; } </ style > </ head > < body > < canvas id ="canvas" ></ canvas > < script src ="../resources/webgl-utils.js" ></ script > < script id ="2d-vertex-shader" type ="x-shader/x-vertex" > attribute vec2 a_position; uniform vec2 u_wh; void main() { gl_PointSize = 4.0 ; vec2 t1 = a_position * 2.0 / u_wh ; vec2 t4 = vec2(t1.x - 1.0 ,(t1.y -

基于WebGL实现智慧校园的全景漫游技术研究 ThingJS

爷,独闯天下 提交于 2020-12-09 00:20:34
#三维可视化##3D开发# 智慧校园总体设计与规划 用户与虚拟场景的互动 实现全局场景的漫游模式 国内各大高校,近几年纷纷搭建了3D智慧校园,如清华大学智慧校园系统,更是实现了虚拟课堂功能。新华三集团与优锘ThingJS达成技术战略合作,利用 ThingJS平台 构建3D智慧校园,创建一个足不出户就可以了解校园地理信息与文化背景的虚拟平台。 1. 总体设计与规划 智慧校园系统的架构设计分为基础层、数据层、服务层、应用层和表示层五个层次。 基础平台采用的是服务器, ThingJS平台提供在线发布和离线部署两个项目管理功能 ,本文选择局域部署,采用Windows平台配合Tomcat来配置服务器;数据层主要负责文本数据、多媒体数据、关系型数据的存储管理;服务层负责给应用层提供基础性服务;应用层组件可以单独使用,提供监控管理、角色模式漫游和全局模式漫游;表示层将系统进行客户端的展示,即对用户所能直观看到的页面进行展示。 构建虚拟场景,主要基于WebGL 3D绘图技术实现虚拟场景的生成整合,将前面准备好的模型导入到智慧校园场景的目标坐标内,并为建筑物和天空贴图,再添加3D交互脚本,实现用户与虚拟场景的漫游功能。 JavaScript开发逻辑下的3D框架-ThingJS,将复杂的3D功能代码封装起来,开发者可以不必关心框架内部的代码是如何实现的,只要正确的调用接口即可快速的完成应用的开发

新亚优华科技有限公司2020气象遥感招聘

旧巷老猫 提交于 2020-12-07 03:27:27
新亚优华科技有限公司经中国气象局气象产业园孵化,北京市气象局气象服务企业备案,中国气象服务协会气象企业信用AAA等级以行业融合、算法升级、科研成果转化推动气象服务市场的国家高新技术企业,公司具备ISO9001质量管理体系认证,世界气象组织自愿合作计划(WMO-VCP)援外培训师资,在依托于中国气象局业务授权具备权威卫星及气象业务化数据服务能力的同时与中国知名高校建立新时代校企合作,产学共赢,开展创新人才培养计划联合科研项目研发。 目前公司创新团队依托于卫星遥感专家及商业气象服务团队整合,其中科学算法团队利用卫星遥感技术和气象观测资料融合为技术核心突破原有模式架构、算法升级等技术难点,实现环境、应急管理、气象专业化气象服务并与欧洲,美国,东亚地区气象部门就新技术和课题开展合作,目前已拥有15项软件著作权,多项气象与卫星遥感技术相关发明专利服务领域涵盖农业、林业、环保、应急管理等多个领域。 联系人:齐丽 邮箱: qili@weattech.com 公司地址:北京市朝阳区呼家楼向军北里 22 号 公司微信公众号: (1)卫星遥感工程师(9-20k) 职位描述: 1、 从事气溶胶卫星光学及理化特性遥感反演算法研究(AOD、NO2、 SO2、 O3、CO)具有较好的数理基础和熟练的文章撰写能力。 2、 从事海洋生态环境参数(如温度、盐度、叶绿素、悬浮物、有色溶解有机物、海冰、海雾等

Three.js

会有一股神秘感。 提交于 2020-12-06 19:53:22
随着人们对用户体验越来越重视,Web开发已经不满足于2D效果的实现,而把目标放到了更加炫酷的3D效果上。 Three.js是用于实现web端3D效果的JS库,它的出现让3D应用开发更简单,本文将通过Three.js的介绍及示例带我们走进3D的奇妙世界。 一、Three.js相关概念 1.1 Three.JS Three.JS是基于WebGL的Javascript开源框架,简言之,就是能够实现3D效果的JS库。 1.2 WebGL WebGL是一种Javascript的3D图形接口,把JavaScript和OpenGL ES 2.0结合在一起。 1.3 OpenGL OpenGL是开放式图形标准,跨编程语言、跨平台,Javascript、Java 、C、C++ 、 python 等都能支持OpenGL ,OpenGL的Javascript实现就是WebGL,另外很多CAD制图软件都采用这种标准。OpenGL ES 2.0是OpenGL的子集,针对手机、游戏主机等嵌入式设备而设计。 1.4 Canvas Canvas是HTML5的画布元素,在使用Canvas时,需要用到Canvas的上下文,可以用2D上下文绘制二维的图像,也可以使用3D上下文绘制三维的图像,其中3D上下文就是指WebGL。 二、Three.js应用场景 利用Three.JS可以制作出很多酷炫的3D动画, 并且Three

webgl: fastest approach to drawing many circles

℡╲_俬逩灬. 提交于 2020-12-04 11:50:04
问题 I'm currently drawing thousands of circles, instancing a circle geometry (many triangles). alternatively, I could simply instance a quad (2 triangles), but cut out a circle in the fragment shader, using a distance function and discard . which approach would be faster? -- is drawing many triangles more expensive than the calculations done in the fragment shader? 回答1: The fastest way might depend on the GPU and lots of other factors like how you're drawing the circles, 2D, 3D, are you blending