使用GLScene或OpenGL for Delphi使纹理适合4点多边形/平面

赛义德

我正在为Delphi XE2使用最新的GLScene干线,并且我从事的是GUI风格的项目,该项目使用3D而不是2D在屏幕上绘制GUI元素。

它可以工作,但是由于明显的原因,图形的位置不是像素完美的。

我设法映射了3D视图,以便TGLSceneViewer上的1像素在屏幕上或多或少为1像素。对我来说足够了。

但是,我放弃了在GUI中使用3D的想法,而我将专注于仅使用GLScene for2D图形表示,因为它是GPU加速的。

然后,我记得在以前的项目中使用了Projective Transformation,在该项目中我将Graphics32用于GUI。

使用投影变换,我可以简单地在3D空间中绘制点,读取这些点的3D坐标,将坐标转换为2D坐标,然后将其应用于TBitmap32投影变换参数,中提琴,我的软件中具有3D功能。

所以,我的问题是:

是否可以在GLScene或OpenGL中“拉伸”纹理,以使该纹理适合4个点之间或一个平面内,以便每当我将平面的角移到新位置时,纹理都将相应地拉伸?

这样,我可以将GLScene用于2D图形,但是可以做一些简单的技巧来使事物看起来像3D。

下面的链接指向互联网上的图像,该图像是我所寻找内容的直观表示:http : //i.stack.imgur.com/hDdqa.png

丹尼尔

假设您没有在着色器中实现某些疯狂的功能,或者正在使用固定功能管线功能,那么这应该是微不足道的。

OpenGL中的纹理坐标始终是规范化的,这意味着它们的落入范围为[0-1];

因此,基本上,只要在绘制对象时,始终将纹理的坐标设置为最大1和最小0,就应该始终使纹理充满四边形。

您能否提供用来绘制4点的代码?如果可以看到的话,我也许可以提供帮助。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将纹理应用于OpenGL中的多边形后,纹理看起来有点模糊

来自分类Dev

使用C ++在OpenGL中纹理3d多边形

来自分类Dev

如何使用svg用纹理填充多边形?

来自分类Dev

如何使用svg用纹理填充多边形?

来自分类Dev

如何计算5点多边形中的点

来自分类Dev

使用PostGIS将点转换为多边形

来自分类Dev

使用 postgres/postgis 点的值更新多边形

来自分类Dev

如何在SFML或OpenGL中将纹理正确映射到凸多边形上?

来自分类Dev

使用OpenGL进行多边形的透视投影

来自分类Dev

围绕x,y,z轴旋转纹理并使用它绘制多边形

来自分类Dev

如何在现代openGL中用3D点绘制多边形?

来自分类Dev

VBO内的OpenGL分隔多边形

来自分类Dev

OpenGL中的多边形撕裂

来自分类Dev

OpenGL不填写多边形

来自分类Dev

VBO内的OpenGL分隔多边形

来自分类Dev

使用多边形包含

来自分类Dev

使用多边形包含

来自分类Dev

使用 PostGIS 从具有多个点的表中将点转换为多边形

来自分类Dev

点多边形算法说明

来自分类Dev

使用光线投射算法进行经度/纬度坐标的多边形点测试

来自分类Dev

使用带有大量点的WKT多边形时,Openlayer非常慢

来自分类Dev

如何使用Google Maps API捕获多边形的点位置?

来自分类Dev

使用输入点进行空间搜索并查询其中的哪个多边形

来自分类Dev

Boost :: geometry无法在点和多边形上使用内部方法吗?

来自分类Dev

使用cts:circle-intersect在Marklogic 7中搜索多边形中的点/圆

来自分类Dev

是否可以使用JavasScript确定GeoJSON点是否在GeoJSON多边形内?

来自分类Dev

使用leaflet.js在点周围添加设置大小的正方形多边形

来自分类Dev

如何使用SF通过因子从点构造/绘制多边形的凸包?

来自分类Dev

使用leaflet-pip和d3.geo包含多边形中的点

Related 相关文章

  1. 1

    将纹理应用于OpenGL中的多边形后,纹理看起来有点模糊

  2. 2

    使用C ++在OpenGL中纹理3d多边形

  3. 3

    如何使用svg用纹理填充多边形?

  4. 4

    如何使用svg用纹理填充多边形?

  5. 5

    如何计算5点多边形中的点

  6. 6

    使用PostGIS将点转换为多边形

  7. 7

    使用 postgres/postgis 点的值更新多边形

  8. 8

    如何在SFML或OpenGL中将纹理正确映射到凸多边形上?

  9. 9

    使用OpenGL进行多边形的透视投影

  10. 10

    围绕x,y,z轴旋转纹理并使用它绘制多边形

  11. 11

    如何在现代openGL中用3D点绘制多边形?

  12. 12

    VBO内的OpenGL分隔多边形

  13. 13

    OpenGL中的多边形撕裂

  14. 14

    OpenGL不填写多边形

  15. 15

    VBO内的OpenGL分隔多边形

  16. 16

    使用多边形包含

  17. 17

    使用多边形包含

  18. 18

    使用 PostGIS 从具有多个点的表中将点转换为多边形

  19. 19

    点多边形算法说明

  20. 20

    使用光线投射算法进行经度/纬度坐标的多边形点测试

  21. 21

    使用带有大量点的WKT多边形时,Openlayer非常慢

  22. 22

    如何使用Google Maps API捕获多边形的点位置?

  23. 23

    使用输入点进行空间搜索并查询其中的哪个多边形

  24. 24

    Boost :: geometry无法在点和多边形上使用内部方法吗?

  25. 25

    使用cts:circle-intersect在Marklogic 7中搜索多边形中的点/圆

  26. 26

    是否可以使用JavasScript确定GeoJSON点是否在GeoJSON多边形内?

  27. 27

    使用leaflet.js在点周围添加设置大小的正方形多边形

  28. 28

    如何使用SF通过因子从点构造/绘制多边形的凸包?

  29. 29

    使用leaflet-pip和d3.geo包含多边形中的点

热门标签

归档