gpt4 book ai didi

ios - 如何将网格的每个顶点绘制为圆

转载 作者:行者123 更新时间:2023-11-28 21:44:07 24 4
gpt4 key购买 nike

如何将网格的每个顶点画成一个圆?

最佳答案

您可以使用 geometry shaders 来做到这一点创建billboarding geometry from each vertex在 GPU 上。然后,您可以将圆圈创建为几何图形,或者创建四边形并使用圆形纹理来绘制它们(我推荐后者)。 但几何着色器尚未得到广泛支持,在 iOS 中更是如此。如果您确定要运行它的那台计算机支持它,那就去做吧。

如果几何着色不是一个选项,您的两个最佳选择是:

  • 使用已经处理网格创建和广告牌的粒子系统。要在每个顶点位置创建一个粒子,请使用 ParticleSystem.Emit .您系统的模拟空间应该是 Local。如果顶点移动,使用 SetParticles更新它们。
  • 创建一个已经包含您需要的几何体的程序Mesh。如果相机和点不移动,您可以创建固定形状的网格。否则,您将需要在程序网格上或通过着色器为广告牌设置动画。

更新:5,000,000 点是一个很多。虽然 Particle Systems 可以通过创建大量内部网格来处理大量数据,但大量的处理确实会占用 CPU。即使点在空间中是静态的,没有特殊着色器的程序网格也必须每帧更新以实现广告牌效果。

我的建议是创建许多网格(单个网格无法处理那么多的几何体)。网格将每个点包含一个四边形(如果你敢的话,也可以包含三角形,以使其更快),但四个顶点将位于同一点。然后在顶点程序中使用纹理坐标将其扩展为广告牌四边形。

关于ios - 如何将网格的每个顶点绘制为圆,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30978649/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com