今天我们来聊一聊Shader的基础知识,图片旋转和平移:
首先我们的了解明白:平移矩阵和旋转矩阵 这俩个矩阵的推导过程可以自行百度,公式如下:
平移矩阵:
旋转矩阵:
这次我们在顶点着色器(Vertex Shader)里编写(因为顶点着色器(Fragment Shader)是在光栅化前面对顶点进行进行处理,这样数据量的会比较少,节省性能)
Shader "Ly/Rotate"
{
Properties{ _MainTex("Texture", 2D) = "white" {}
_RotateCenterX("RotateCenterX",Float) = 0.5
_RotateCenterY("RotateCenterY",Float) = 0.5
_TranslationX("TranslationX",float) = 0
_TranslationY("TranslationY",float) = 0
_RotateAngle("RotateAngle",Range(-360,360)) = 0
}
SubShader{
Tags{ "RenderType" = "Opaque" }
LOD 100