位置: IT常识 - 正文

浅识WebGL和Three.js(webgl1.0)

编辑:rootadmin
浅识WebGL和Three.js WebGL

推荐整理分享浅识WebGL和Three.js(webgl1.0),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:webgl1.0,webgl1和2的区别,webgl和threejs区别,webgl和threejs区别,webgl和web,webgl和three.js,webgl和webgpu,webgl和threejs区别,内容如对您有帮助,希望把文章链接给更多的朋友!

想必各位看官大大都了解过,进行3D图形渲染,主要依赖显卡(GPU)为我们提供强大的运算支持。GPU也像不同CPU架构具备不同的指令集一样,不同的显卡厂商也为不同的GPU型号提供了不同的底层指令逻辑,所支持的能力也不尽相同。为了简化方便图形应用开发和硬件适配的工作量,诞生了一些可以让不同应用方便调用的图形库,用以抹平底层硬件实现的差异,例如OpenGL、 Direct3D、Vulkan......

基本概念

WebGL(Web Graphics Library,Web图形库), 是一个JavaScript API,可在任何兼容的Web浏览器中渲染高性能的交互式3D和2D图形,而无需使用插件 。 WebGL通过引入一个与OpenGL ES 2.0非常一致的API来做到这一点,该API可以在HTML5 元素中使用。 这种一致性使API可以利用用户设备提供的硬件图形加速。通过这些接口,开发者可以直接跟GPU进行通信。

目前支持 WebGL 的浏览器有:Firefox 4+, Google Chrome 9+, Opera 12+, Safari5.1+, Internet Explorer 11+和Microsoft Edge build 10240+;然而, WebGL一些特性也需要用户的硬件设备支持。

WebGL 2 API引入了对大部分的OpenGL ES 3.0功能集的支持; 它是通过WebGL2RenderingContext界面提供的。

WebGL 程序分为 2 部分:

使用 Javascript 编写的运行在CPU的程序使用 GLSL 编写的运行在GPU的着色器程序

着色器程序接收CPU传过来的数据,并进行一定处理,最终渲染成丰富多彩的应用样式。

3D坐标系WebGL 3D坐标系渲染流程

WebGL 能绘制的基本图元只有 3 种,分别是点、线段、三角形,对应了物理世界中的点线面。所有复杂的图形或者立方体,都是先用点组成基本结构,然后用三角形将这些点构成的平面填充起来,最后由多个平面组成几何体。

但现实情况是,如果想生成满足各种应用场景的复杂形状,几何结构会非常复杂,代码写起来也会非常复杂。这时候就会有看官会问了:那我写个🐱 啊?别着急哈,咱不是前端开发者嘛,所以肯定会有对前端友好的开发方式嘛~

Three.js

Three.js是基于原生WebGL封装运行的三维引擎,在所有WebGL引擎中,Three.js是国内文资料最多、使用最广泛的三维引擎。

github链接:github.com/mrdoob/thre…

Three.js官网:threejs.org/

Three.js文档:threejs.org/docs/index.…

Three.js示例:threejs.org/examples/#w…

Three.js应用

既然Threejs是一款WebGL三维引擎,那么它可以用来做什么想必各位看官大大一定很关心。所以接下来内容会展示一些基于Three.js引擎或Three.js类似引擎开发的Web3D应用,以便大家了解~

物联网3D可视化

物联网粮仓3D可视化案例:www.yanhuangxueyuan.com/3D/liangcan…

产品720在线预览浅识WebGL和Three.js(webgl1.0)

玉镯产品在线预览案例:www.yanhuangxueyuan.com/3D/liangcan…

沙发在线预览

沙发在线预览:app.xuanke3d.com/apps/trayto…

服装在线预览

服装在线预览:suit.xuantech.cn/

洗衣机在线交互预览

 

洗衣机在线交互预览:cdn.weshape3d.com/hir001/1021…

数据可视化

解析GeoJSON数据中国GDP数据可视化:www.yanhuangxueyuan.com/3D/geojsonC…

H5/微信小游戏

非常火的微信小游戏跳一跳就是使用Three.js引擎开发的。 开发3D类的H5小游戏或者微信小游戏,Three.js引擎是非常好的选择。

通过Threejs开发的小游戏,可以直接部署在微信小程序或者web端,无需下载,方便传播,目前的生态非常和小游戏开发。

科教领域

在科教领域通过3D方式展示特定的知识相比较图像更为直观。

科研平台-蛋白质结构可视化案例:www.rcsb.org/3d-view/2JE…

化学相关——分子结构可视化:www.yanhuangxueyuan.com/3D/fenzi/in…

地理天文相关——太阳系3D预览:www.yanhuangxueyuan.com/3D/solarSys…

机械领域

机械模型在线预览demo:www.yanhuangxueyuan.com/3D/jixiezhu…

Onshape是一款机械领域的三维建模软件,如果熟悉Solidworks、UG等CAD软件,那么你可以把Onshape理解为云Solidworks。

WebVR

对于现在比较火的VR、AR概念,WebGL技术的出现,也是一个好消息,如果你想预览一些VR内容,完全可以不下载一个VR相关的APP,通过threejs引擎实现VR内容发布,然后用户直接通过微信等社交方式推广,直接打开VR内容链接就可以观看。

VR与Web3D技术结合自然就衍生出来一个新的概念WebVR,也就是基于Web实现的VR内容。

家装室内设计相关

室内设计作品展示案例:www.yanhuangxueyuan.com/3D/houseDes…

相关库

下面表格列举了一些Three.js相关的开源库。

库功能PhysijsPhysijs是一款物理引擎,可以协助基于原生WebGL或使用three.js创建模拟物理现象,比如重力下落、物体碰撞等物理现stats.jsJavaScript性能监控器,同样也可以测试webgl的渲染性能dat.gui轻量级的icon形用户界面框架,可以用来控制Javascript的变量,比如WebGL中一个物体的尺寸、颜色tween.js借助tween.js快速创建补间动画,可以非常方便的控制机械、游戏角色运动ThreeBSP可以作为three.js的插件,完成几何模型的布尔,各类三维建模软件基本都有布尔的概念react-three-fiberThreejs的React 渲染器。gltfjsx一个小型命令行工具,可将 GLTF 资产转换为
本文链接地址:https://www.jiuchutong.com/zhishi/298844.html 转载请保留说明!

上一篇:滑模控制理论(SMC)(滑模控制理论与应用研究pdf)

下一篇:5.OpenCV图像拼接(opencv拼接图片)

  • 西藏阿里地区改则县附近发生4.6级左右地震

    西藏阿里地区改则县附近发生4.6级左右地震

  • iphone13pro怎么关闭自动亮度(iphone13pro怎么关机重启)

    iphone13pro怎么关闭自动亮度(iphone13pro怎么关机重启)

  • iphone13震动在哪设置(iphone13震动在哪设置强度)

    iphone13震动在哪设置(iphone13震动在哪设置强度)

  • iphone怎么把桌面图标变大(iphone怎么把桌面文件夹快速删除)

    iphone怎么把桌面图标变大(iphone怎么把桌面文件夹快速删除)

  • 滴滴为什么抢单抢不过别人(滴滴为什么抢单慢)

    滴滴为什么抢单抢不过别人(滴滴为什么抢单慢)

  • 苹果手机为什么会烧屏(苹果手机为什么会发热发烫)

    苹果手机为什么会烧屏(苹果手机为什么会发热发烫)

  • 微信怎么发3分钟视频到朋友圈(微信怎么发3分钟以上的语音)

    微信怎么发3分钟视频到朋友圈(微信怎么发3分钟以上的语音)

  • oppor15如何正常关机(oppor15x怎么设置)

    oppor15如何正常关机(oppor15x怎么设置)

  • 手机背面粘胶怎么去除(手机背面的胶)

    手机背面粘胶怎么去除(手机背面的胶)

  • airpods显示乱码怎么办(airpodspro名称变成乱码)

    airpods显示乱码怎么办(airpodspro名称变成乱码)

  • otn设备是做什么用的(otn设备的主要构成图)

    otn设备是做什么用的(otn设备的主要构成图)

  • 小红书怎么上传原视频(小红书怎么上传原画质视频)

    小红书怎么上传原视频(小红书怎么上传原画质视频)

  • 手机没欠费为什么数据用不了(手机没欠费为什么别人打来说已停机呢?)

    手机没欠费为什么数据用不了(手机没欠费为什么别人打来说已停机呢?)

  • 智慧树分屏会被发现吗(智慧树切屏能检测到吗)

    智慧树分屏会被发现吗(智慧树切屏能检测到吗)

  • qq情侣解除照片删不掉(qq情侣解除照片会消失吗)

    qq情侣解除照片删不掉(qq情侣解除照片会消失吗)

  • 共享介质型网络中,有几种介质访问控制方式

    共享介质型网络中,有几种介质访问控制方式

  • 抖音举报对方会怎样(抖音举报对方会收到投诉原因吗)

    抖音举报对方会怎样(抖音举报对方会收到投诉原因吗)

  • 电脑显示器有电源线吗(电脑显示器有电池吗)

    电脑显示器有电源线吗(电脑显示器有电池吗)

  • qq群被禁言了怎么强制发信息(qq群被禁言了怎么强制发信息手机)

    qq群被禁言了怎么强制发信息(qq群被禁言了怎么强制发信息手机)

  • x27有nfc功能吗(x27是否支持nfc功能)

    x27有nfc功能吗(x27是否支持nfc功能)

  • 拼多多里的小猪怎么弄掉(拼多多上的小猪一直在屏幕上怎么消除)

    拼多多里的小猪怎么弄掉(拼多多上的小猪一直在屏幕上怎么消除)

  • red摄影机所有型号(red摄影机)

    red摄影机所有型号(red摄影机)

  • ppp未连接2412什么意思(ppp连接状态失败)

    ppp未连接2412什么意思(ppp连接状态失败)

  • oppok3充电多少w(oppok3充电功率)

    oppok3充电多少w(oppok3充电功率)

  • iconify图标使用(iconfonf)

    iconify图标使用(iconfonf)

  • 个税年度汇算如何补税
  • 小规模纳税人合理避税
  • 什么负债计税基础为零
  • 汇算清缴是不是按照审计报告
  • 收到商业汇票计入科目
  • 劳务报酬自行申报时间
  • 年末增值税需要计提吗
  • 幼儿园属于小型幼儿吗
  • 注册公司认缴资本不缴可以吗
  • 去银行提取备用金开支票怎么填
  • 会计人必读的20本书
  • 本单位员工投稿怎么写
  • 新办企业注册资本和投资总额
  • 固定资产原值变更当月计提折旧
  • 海关新增成交方式exw条款,如何退税?
  • 发票和实际业务发生时间不一致
  • 红字发票是销货单据吗
  • 其他债权投资通俗
  • bios设置密码有什么用
  • 什么时候不能计入开办费
  • 民间非营利组织会计制度会计科目
  • php的核心
  • 解决的英文
  • Zinnowitz pier on Usedom island in the Baltic Sea, Germany (© Frank Günther/Getty Images)
  • php ucwords() 函数将字符串中每个单词的首字符转换为大写(实现代码)
  • ajax调用
  • 涌泉的准确位置图 图解
  • 云E办接口文档
  • ue4ui界面制作
  • js中this指向有几种情况
  • php连接数据库步骤
  • 固定资产类别有哪些
  • 退回社保怎么做分录
  • 定额发票在哪查真伪
  • 小规模纳税人开专票需要交税吗
  • 销售返利账务处理及注意事项
  • 帝国cms如何使用
  • 设备调试费是什么税
  • sql server 触发器定时触发
  • 品种法成本核算的程序有哪几步?
  • 公司贷款谁签字
  • 委托加工应税消费品是指委托方提供原料和主要材料
  • 月初没报完税可以开发票吗
  • 预期信用损失率的确认依据和过程
  • 账务处理的种类有哪些
  • 固定资产改良支出
  • 盖骑缝章的合同可以双面打印吗
  • 视同销售是指什么?
  • 主营业务成本如何设置明细
  • 承兑汇票兑现怎么填写
  • 取得其他权益工具投资发生的交易费用
  • 股权稀释违法吗
  • 先开收据再打款
  • 投资收益 增加
  • 建设工程中设备计入包干价是否合法
  • 如何建立一个
  • mysql错误处理
  • 控制windows外观和工作方式
  • centos.repo
  • solaris 11.4
  • ubuntu安装教程20.04 u盘
  • 服务器迁移至新服务器方法
  • win7系统电脑开不了机
  • 在linux中使用什么命令可以执行shell脚本
  • w8系统一键恢复
  • 惠普笔记本的BIOS键
  • layui框架中修改用户成功后怎么跳转到登录界面
  • ant压缩包删除
  • oracle sql mysql
  • node的express
  • rsync include-from
  • javascript in
  • linux使用文本编辑器
  • node-js
  • jquery 使用
  • 表单验证js
  • 前端jsonp解决跨域
  • wxpython怎么用
  • jQuery UI Bootstrap是什么?
  • 北京税务局网站官网
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设