2014-04-17 121 views
2

在桌面OpenGL上,點有時會呈現爲圓形(如果您在頂點着色器中設置了gl_PointSize)。我正在修補WebGL,它似乎始終將點作爲正方形(當設置爲gl_PointSize時)。有沒有辦法讓它們呈現爲圓形?WebGL是否將點渲染爲圓形?

回答

2

是的,有一個解決方案。你可以用點精靈來做到這一點。只需將紋理髮送到着色器,並使用精靈不必要部分的alpha混合剪切。

通常情況下(在桌面OpenGL中),當啓用MSAA和POINT_SMOOTH功能時,您可能會看到以圓圈形式呈現的點。

下面你有聯繫,你可以得到你需要的所有信息:)
OpenGL ES 2.0 Equivalent for ES 1.0 Circles Using GL_POINT_SMOOTH? http://klazuka.tumblr.com/post/249698151/point-sprites-and-opengl-es-2-0

+3

我會反對使用點個人意見。爲什麼?由於您可以繪製點的最大尺寸是GPU特定的,其中一些GPU僅允許大小爲1的點。[請參閱此答案以獲取點數](http://stackoverflow.com/questions/23048899/particle-system-using -webgl/23056518#23056518) – gman