WebGL 绘制Line的bug(一)

简介: WebGL 绘制Line的bug(一)

熟悉WebGL的同学都知道,WebGL绘制模式有点、线、面三种;通过点的绘制可以实现粒子系统等,通过线可以绘制一些连线关系;面就强大了,通过面,我们可以绘制我们想绘制的所有的三维对象。


一切看起来都很完美,perfect。


然而,不幸的是,WebGL在绘制线条的时候,存在一个缺陷,那就是在一些机器的一些浏览器上面(应该是大多数情况下)线宽只能设置为1,而不能设置成其他的值。


通过网址http://alteredqualia.com/tmp/webgl-linewidth-test/,我们可以测试自己的电脑是否有线宽的不能设置的bug,以下是我的电脑(mac 电脑)用chrome(版本59.0.3071.115)的测试效果:


微信图片_20220423102811.jpg


macOS chrome测试效果


用firefox试试:


微信图片_20220423102934.jpg


macOS下firefox测试结果


在firefox下面看来还是正常的。


事实上,这是一个长久以来一直存在的bug,下面这个地址就是证明:


https://bugs.chromium.org/p/chromium/issues/detail?id=60124


微信图片_20220423103151.jpg


Line width bug

很早之前就有人提过了,只是一直没有解决。


这是病,得治,只是那些搞浏览器大佬们不想出药。


我们就只能想点偏方来自己治疗了。


偏方是啥,由于Line的线宽是底层问题,我们并不好解决;不过,我们可以考虑通过面的绘制来模拟线,线的特点就是不随镜头变化而改变宽度,只要能够达到这个特点就可以达到模拟的效果。


下一篇将会介绍 如何通过三角形(面)的方式来模拟线条的绘制。





相关文章
|
Kubernetes 负载均衡 安全
【K8S系列】深入解析k8s 网络插件—kube-router
【K8S系列】深入解析k8s 网络插件—kube-router
1937 1
|
缓存 监控 负载均衡
服务网关:微服务架构的前门与护卫
在微服务架构中,服务网关扮演着关键的角色,充当着微服务系统的前门和护卫。本博客将深入探讨服务网关的概念、重要性以及如何在微服务环境中充分发挥其作用。
three.js的Gui面板使用方法
three.js的Gui面板使用方法
654 0
|
XML 存储 JSON
Android Jetpack组件 DataStore的使用和简单封装
Android Jetpack组件 DataStore的使用和简单封装
1166 0
Android Jetpack组件 DataStore的使用和简单封装
|
7月前
|
安全 网络协议 网络安全
Hyper-V无连接,常见原因及修复
Hyper-V无连接问题可能由虚拟交换机配置、网络适配器驱动、IP设置、防火墙、BIOS、Hyper-V服务、虚拟机系统及物理网络等多方面引起。解决时需逐一排查:确认虚拟交换机绑定正确、驱动兼容、IP配置无误、防火墙规则适当、BIOS启用虚拟化技术、Hyper-V服务正常运行、虚拟机系统网络完好以及物理网络设备功能正常。若仍无法解决,建议寻求专业技术支持。
|
存储 SQL 测试技术
Flink⼤状态作业调优实践指南:状态报错与启停慢篇
本文整理自俞航翔、陈婧敏、黄鹏程老师所撰写的大状态作业调优实践指南。由于内容丰富,本文分享终篇状态报错与启停慢篇.
50676 65
Flink⼤状态作业调优实践指南:状态报错与启停慢篇
|
11月前
|
消息中间件 监控 负载均衡
在Kafka中,如何进行主题的分区和复制?
在Kafka中,如何进行主题的分区和复制?
|
12月前
ThreeJs设置模型的边线
这篇文章介绍了如何在Three.js中为3D模型添加边线效果,并提供了实现这一功能的代码示例。
216 2
|
机器学习/深度学习 自然语言处理 搜索推荐
云上智能客服机器人:重塑客户服务体验的新篇章
未来,云上智能客服机器人将继续深化深度学习技术的应用,通过跨领域的知识融合和模型训练提升其在复杂场景下的理解和决策能力。同时,机器人将更加注重多模态交互技术的发展以提供更加自然流畅的交互体验。 4.2 情感智能与人性化服务 随着情感智能技术的不断发展,云上智能客服机器人将更加注重情感交互和人性化服务。机器人将能够识别用户的情感状态和需求偏好提供更加贴心和温暖的服务体验。
611 7
|
消息中间件 Java Kafka
SpringBoot中使用异步方法优化Service逻辑,提高接口响应速度
异步方法适用于逻辑与逻辑之间可以相互分割互不影响的业务中, 如生成验证码和发送验证码组成的业务, 其实无需等到真正发送成功验证码才对客户端进行响应, 可以让短信发送这一耗时操作转为异步执行, 解耦耗时操作和核心业务;