版本:Unity 6(6000.0)
语言英语
  • C#

GL.TexCoord

建议更改

成功!

感谢您帮助我们改善 Unity 文档的质量。虽然我们无法接受所有提交建议,但我们确实会阅读每个来自我们用户的建议,并在适用时进行更新。

关闭

提交失败

由于某些原因,您的更改建议无法提交。请在几分钟后<a>重试</a>。还要感谢您花时间帮助我们提高 Unity 文档的质量。

关闭

取消

声明

public static void TexCoord(Vector3 v);

描述

为所有纹理单元设置当前纹理坐标 (v.x,v.y,v.z)。

在 OpenGL 中,它匹配所有纹理单元的 glMultiTexCoord 或在不可用多纹理时匹配 glTexCoord。在其他图形 API 中模拟了相同的功能。

仅在以下情况使用 Z 组件:
1. 您访问立方体贴图(可使用向量坐标访问,即 x、y 和 z)。
2. 您执行“投影纹理”,其中 X 和 Y 坐标除以 Z 以获得最终坐标。这在水面的反射和类似事物中非常有用。

此函数只能在 GL.BeginGL.End 函数之间调用。

using UnityEngine;

public class ExampleScript : MonoBehaviour { // Draws a Quad in the middle of the screen and // Adds the material's Texture to it.

Material mat; void OnPostRender() { if (!mat) { Debug.LogError("Please Assign a material on the inspector"); return; } GL.PushMatrix(); mat.SetPass(1); GL.Color(new Color(1, 1, 1, 1)); GL.LoadOrtho(); GL.Begin(GL.QUADS); GL.TexCoord(new Vector3(0, 0, 0)); GL.Vertex3(0.25f, 0.25f, 0); GL.TexCoord(new Vector3(0, 1, 0)); GL.Vertex3(0.25f, 0.75f, 0); GL.TexCoord(new Vector3(1, 1, 0)); GL.Vertex3(0.75f, 0.75f, 0); GL.TexCoord(new Vector3(1, 0, 0)); GL.Vertex3(0.75f, 0.25f, 0); GL.End(); GL.PopMatrix(); } }