簡體   English   中英

OpenGL 使紋理按比例放大而不是鉗位

[英]OpenGL make texture scale up and not clamp

我在游戲中有一個紋理,它夾在邊緣而不是線性放大。 這些是我為 OpenGL 提供的參數:

glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EGDE);

我應該如何更改它們以使紋理按比例放大?

這些是我給 OpenGL 的頂點:

typedef struct{
  float positionX;
  float positionY;
  float textureX ;
  float textureY ;
} textureVertex;

textureVertex vertices[4] = {
      {-3.5f,  3.5f, -1.0f,  1.0f},
      {-3.5f, -3.5f, -1.0f, -1.0f},
      { 3.5f, -3.5f,  1.0f, -1.0f},
      { 3.5f,  3.5f,  1.0f,  1.0f}
    };

您應該為頂點指定紋理坐標。 CLAMP 只是告訴 OpenGL 當坐標 go 超出范圍 0 -> 1 時該怎么辦。它沒有說明該范圍在哪里

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM