2013-06-27 33 views

Trả lời

11
vec2 gl_FragCoord 

Nó sẽ trả về vị trí của đoạn trên màn hình tính bằng pixel. Nếu bạn vượt qua thống nhất vec2 screenResolution thì bạn có thể chơi với hai giá trị đó để xác định chính xác vị trí trên màn hình là pixel, trong đó phần nào và như vậy.

Đây là biến được tạo sẵn, vì vậy bạn có thể sử dụng nó bất cứ khi nào bạn muốn trong trình đổ bóng phân đoạn.

Dưới đây là một ví dụ về việc sử dụng chỉ để chứng minh: http://goo.gl/AG7UO

Nếu bạn muốn woorld phối hợp của các mảnh vỡ, sau đó bạn nên sử dụng varying biến.

Vertex Shader:

varying vec3 vPos; 
attribute vec3 aVertexCoord; 
uniform mat4 uMVMat; 
uniform mat4 uProjMat; 

void main() { 
    vPos = uMVMat * aVertexPos; 
    gl_Position = uProjMat * vPos; 
} 

Fragment Shader:

varying vec3 vPos; 
void main() { 
    // do something 
} 

Hope this helps.

Các vấn đề liên quan