WebGL 绘制Line的bug(一)

WebGL在绘制线条时存在一个bug,线宽在某些机器和浏览器上只能设为1。这个问题在Chrome中尤为明显,而在Firefox中表现正常。尽管已知很久,但尚未得到修复。为解决此问题,可以考虑使用面的绘制来模拟线,通过三角形构建不随镜头变化的线宽效果。下篇将详细介绍如何实现这一模拟方法。同时,推荐对WebGL感兴趣的读者关注使用WebGL开发的3D机房项目。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

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

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

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


(麻蛋,以前的mac 下的chrome是好使的,看来这病越来越严重了)

用firefox试试:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值