camera.c

来自「通过c语言编写的坦克大战游戏」· C语言 代码 · 共 43 行

C
43
字号
/*相机函数*/

/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/

/*定义相机结构*/
struct Camera{
              float x;
              float y;
              float x0;
              float y0;

             };

struct Camera C; /*定义相机结构C*/

/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/


void camera_update(float mx,float my)  /*更新相机*/
{
 C.x0=C.x;
 C.y0=C.y;

 C.x=mx;
 C.y=my;

}


void camera_transform(float camera_x,float camera_y,float *x,float *y)
{
 float tx,ty;


 tx=*x-camera_x; /*把相机平移到原点 得出x y的相对坐标tx ty*/
 ty=*y-camera_y;


 *x=320 + tx;  /*先在原点旋转 再平移到320,240*/
 *y=240 + ty;

} 

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?