希望高手帮帮忙~~~

来源:百度知道 编辑:UC知道 时间:2024/05/26 17:05:48
1.简单解释游戏贴图中蒙版技术的原理
2.简单解释包围盒技术在碰撞检测中的作用,假设矩形边均为竖直或水平,表示为Rectangle(left, right, top, bottom),写一个方法检测两个矩形是否碰撞。
bool isCollision(Rectangle r1, Rectangle 2)
3.简述棋类游戏设计的关键步骤,给出中国象棋棋盘在计算机中一种存储结构,基于该结构,用一段伪代码描述“象”的走法。
4.简述棋类游戏设计的关键步骤,给出黑白棋(翻转棋)在计算机中的一种存储结构,基于该结构,利用一段伪代码描述一个棋子的合法位置。

谁能帮我解答这几个问题啊~~~狂谢了~~~

1和2不会
3.只有定义一个9*9的char型数组,描述?什么叫做描述。。。。
4.存储用数组啊,然后就是判断是否合法用模拟。
我直接给你我写的一段程序吧,c的
int find_live(char a[][],int contrl)//检查是否有棋可走
{
for(int i=0;i<8;i++)
for(int j=0;j<8;j++)
if(check(a,i,j,contrl))return 1;//如果a[i][j]有棋走
return 0;
}
check(char a[][],int x,int y,int contrl)
{
if(a[x][y]!=NONE)return 0;//如果此格有东西,则返回0;
for(int i=-1;i<2;i++)
for(int j=-1;j<2;j++)
{
if(i==0&&j==0)continue;
if(check_way(a,x,y,i,j,contrl))return 1;
}
return 0;
}
check_way(char a[][],int x,int y,inti,int j,int contrl)
{
int now_x,now_y,b;
now_x=x+i;now_y=y+j;
b=0;
for(;now_x>=0&&now_x<8&&now_y>=0&&now_y<8&&a[now_x][now_y];now_x+=i,now_y+=j)
{
if(a[now_x][now_y]==contrl)
if(b==0)break;
else return 1;
}
return 0;
}