在Android和iOS的OpenGL中,图像周围恒定宽度的绘制边框

问题描述 投票:1回答:1

我正在尝试在AndroidiOS应用程序上使用OpenGL渲染的图像周围绘制边框。现在,我的方法是在图像的每个角周围指定3个顶点,如图所示,并通过绘制三角形来填充它们。

image link

我计算这些顶点的方式是通过添加/减去设置为浮点数的称为BORDER_WIDTH的绝对值。例如,渲染图像左上角的三个顶点(在上面链接的图像中标记为0,1,2)的计算如下。

[bottom_left_viewport_vertex[0] - BORDER_WIDTH, bottom_left_viewport_vertex[1], 0.0f,
bottom_left_viewport_vertex[0] - BORDER_WIDTH, bottom_left_viewport_vertex[1] - BORDER_WIDTH, 0.0f,
bottom_left_viewport_vertex[0], bottom_left_viewport_vertex[1] - BORDER_WIDTH, 0.0f] 

此方法导致两个问题:

  1. 可能是由于Retina显示,所以与Android设备相比,iOS设备上的边框要厚得多。
  2. [图像的顶部]和底部]上的边框宽度与图像的侧面上的边框宽度不同。

    解决此问题的正确方法是什么?谢谢。

我正在尝试在Android和iOS应用上使用OpenGL绘制的图像周围绘制边框。现在,我的方法是在图像的每个角周围指定3个顶点,如...

android ios opengl-es
1个回答
0
投票

[可能是因为Retina显示屏,所以与Android设备相比,iOS设备上的边框要厚得多。

© www.soinside.com 2019 - 2024. All rights reserved.