游戏开发论坛

 找回密码
 立即注册
搜索
查看: 4225|回复: 4

谁能讲解下 俄罗斯方块 的变形算法??

[复制链接]

4

主题

8

帖子

8

积分

新手上路

Rank: 1

积分
8
发表于 2008-6-25 17:15:00 | 显示全部楼层 |阅读模式
单个方块的数据应该怎么定义??不用4*4的数组可以吗?
顺时针转动90度应该怎么转???

3

主题

32

帖子

36

积分

注册会员

Rank: 2

积分
36
发表于 2008-6-27 12:18:00 | 显示全部楼层

Re:谁能讲解下 俄罗斯方块 的变形算法??


  1. int CShape::blocks[7][4][4][4] =
  2. {
  3.     { // 7-1                                       
  4.         { // 4-1                       
  5.             {0, 0, 0, 0},    //
  6.             {1, 1, 1, 1},    // 口口口口
  7.             {0, 0, 0, 0},    //
  8.             {0, 0, 0, 0}     //
  9.         },
  10.         { // 4-2                               
  11.             {0, 1, 0, 0},    //   口
  12.             {0, 1, 0, 0},    //   口
  13.             {0, 1, 0, 0},    //   口
  14.             {0, 1, 0, 0}     //   口
  15.         },
  16.         { // 4-3                               
  17.             {0, 0, 0, 0},    //
  18.             {1, 1, 1, 1},    // 口口口口
  19.             {0, 0, 0, 0},    //
  20.             {0, 0, 0, 0}     //
  21.         },
  22.         { // 4-4
  23.             {0, 1, 0, 0},    //   口
  24.             {0, 1, 0, 0},    //   口
  25.             {0, 1, 0, 0},    //   口
  26.             {0, 1, 0, 0}     //   口
  27.         }
  28.     }, // end 7-1
  29.     { // 7-2                                       
  30.         { // 4-1
  31.             {0, 0, 0, 0},    //
  32.             {0, 1, 1, 0},    //   口口
  33.             {0, 0, 1, 0},    //     口
  34.             {0, 0, 1, 0}     //     口
  35.         },
  36.         { // 4-2
  37.             {0, 0, 0, 0},    //
  38.             {0, 1, 1, 1},    //   口口口
  39.             {0, 1, 0, 0},    //   口
  40.             {0, 0, 0, 0}     //
  41.         },
  42.         { // 4-3
  43.             {0, 1, 0, 0},    //   口
  44.             {0, 1, 0, 0},    //   口
  45.             {0, 1, 1, 0},    //   口口
  46.             {0, 0, 0, 0}     //
  47.         },
  48.         { // 4-4
  49.             {0, 0, 0, 0},    //
  50.             {0, 0, 1, 0},    //     口
  51.             {1, 1, 1, 0},    // 口口口
  52.             {0, 0, 0, 0}     //
  53.         }
  54.     }, // end 7-2
  55.     { // 7-3
  56.         { // 4-1
  57.             {0, 0, 0, 0},    //
  58.             {0, 1, 1, 0},    //   口口
  59.             {0, 0, 1, 1},    //     口口
  60.             {0, 0, 0, 0}     //
  61.         },
  62.         { // 4-2
  63.             {0, 0, 1, 0},    //     口
  64.             {0, 1, 1, 0},    //   口口
  65.             {0, 1, 0, 0},    //   口
  66.             {0, 0, 0, 0}     //
  67.         },
  68.         { // 4-3
  69.             {0, 0, 0, 0},    //
  70.             {0, 1, 1, 0},    //   口口
  71.             {0, 0, 1, 1},    //     口口
  72.             {0, 0, 0, 0}     //
  73.         },
  74.         { // 4-4
  75.             {0, 0, 1, 0},    //     口
  76.             {0, 1, 1, 0},    //   口口
  77.             {0, 1, 0, 0},    //   口
  78.             {0, 0, 0, 0}     //
  79.        }
  80.     }, // end 7-3
  81.     { // 7-4
  82.         { // 4-1
  83.             {0, 0, 0, 0},    //
  84.             {0, 1, 1, 0},    //   口口
  85.             {0, 1, 0, 0},    //   口
  86.             {0, 1, 0, 0}     //   口
  87.         },
  88.         { // 4-2
  89.             {0, 0, 0, 0},    //
  90.             {0, 1, 0, 0},    //   口
  91.             {0, 1, 1, 1},    //   口口口
  92.             {0, 0, 0, 0}     //
  93.         },
  94.         { // 4-3
  95.             {0, 0, 1, 0},    //     口
  96.             {0, 0, 1, 0},    //     口
  97.             {0, 1, 1, 0},    //   口口
  98.             {0, 0, 0, 0}     //
  99.         },
  100.        { // 4-4
  101.             {0, 0, 0, 0},    //
  102.             {1, 1, 1, 0},    // 口口口
  103.             {0, 0, 1, 0},    //     口
  104.             {0, 0, 0, 0}     //
  105.        }
  106.     }, // end 7-4
  107.     { // 7-5
  108.         { // 4-1
  109.             {0, 0, 0, 0},    //
  110.             {0, 1, 1, 0},    //   口口
  111.             {1, 1, 0, 0},    // 口口
  112.             {0, 0, 0, 0}     //
  113.         },
  114.         { // 4-2
  115.             {0, 1, 0, 0},    //   口
  116.             {0, 1, 1, 0},    //   口口
  117.             {0, 0, 1, 0},    //     口
  118.             {0, 0, 0, 0}     //
  119.         },
  120.         { // 4-3
  121.             {0, 0, 0, 0},    //
  122.             {0, 1, 1, 0},    //   口口
  123.             {1, 1, 0, 0},    // 口口
  124.             {0, 0, 0, 0}     //
  125.         },
  126.         { // 4-4
  127.             {0, 1, 0, 0},    //   口
  128.             {0, 1, 1, 0},    //   口口
  129.             {0, 0, 1, 0},    //     口
  130.             {0, 0, 0, 0}     //
  131.         }       
  132.     }, // end 7-5
  133.     { // 7-6
  134.         { // 4-1
  135.             {0, 0, 0, 0},    //
  136.             {0, 1, 0, 0},    //   口
  137.             {1, 1, 1, 0},    // 口口口
  138.             {0, 0, 0, 0}     //
  139.         },
  140.         { // 4-2
  141.             {0, 0, 1, 0},    //     口
  142.             {0, 1, 1, 0},    //   口口
  143.             {0, 0, 1, 0},    //     口
  144.             {0, 0, 0, 0}     //
  145.         },
  146.         { // 4-3
  147.             {0, 0, 0, 0},    //
  148.             {1, 1, 1, 0},    // 口口口
  149.             {0, 1, 0, 0},    //   口
  150.             {0, 0, 0, 0}     //
  151.         },
  152.         { // 4-4
  153.             {1, 0, 0, 0},    // 口
  154.             {1, 1, 0, 0},    // 口口
  155.             {1, 0, 0, 0},    // 口
  156.             {0, 0, 0, 0}     //
  157.         }
  158.     }, // end 7-6
  159.     { // 7-7
  160.         { // 4-1
  161.             {0, 0, 0, 0},    //
  162.             {0, 1, 1, 0},    // 口口
  163.             {0, 1, 1, 0},    // 口口
  164.             {0, 0, 0, 0}     //
  165.         },
  166.         { // 4-2
  167.             {0, 0, 0, 0},    //
  168.             {0, 1, 1, 0},    // 口口
  169.             {0, 1, 1, 0},    // 口口
  170.             {0, 0, 0, 0}     //
  171.         },
  172.         { // 4-3
  173.             {0, 0, 0, 0},    //
  174.             {0, 1, 1, 0},    // 口口
  175.             {0, 1, 1, 0},    // 口口
  176.             {0, 0, 0, 0}     //
  177.         },
  178.         { // 4-4
  179.             {0, 0, 0, 0},    //
  180.             {0, 1, 1, 0},    // 口口
  181.             {0, 1, 1, 0},    // 口口
  182.             {0, 0, 0, 0}     //
  183.         }
  184.     } // end 7-7
  185. };
复制代码

我是这样做的,7个形状,每个形状4个方向,然后就是4x4的数组,在旋转的时候,i++,换到下一个4x4的数组去显示。。

0

主题

1

帖子

5

积分

新手上路

Rank: 1

积分
5
发表于 2008-7-5 01:20:00 | 显示全部楼层

Re: 谁能讲解下 俄罗斯方块 的变形算法??

http://www.yuanma.org/data/2006/1219/article_1967.htm

6

主题

237

帖子

238

积分

中级会员

Rank: 3Rank: 3

积分
238
发表于 2008-7-6 12:04:00 | 显示全部楼层

Re:谁能讲解下 俄罗斯方块 的变形算法??

看不起你们这些做C++的。连个俄罗斯方块都不会 。
去我游戏之家论坛
我有全套中文教程
www.vbgamediy.com

0

主题

59

帖子

59

积分

注册会员

Rank: 2

积分
59
发表于 2008-7-7 08:04:00 | 显示全部楼层

Re: Re:谁能讲解下 俄罗斯方块 的变形算法??

游戏之冢站长: Re:谁能讲解下 俄罗斯方块 的变形算法??

看不起你们这些做C++的。连个俄罗斯方块都不会 。
去我游戏之家论坛
我有全套中文教程
www.vbgamediy.com


冒牌货

游戏之冢站长<>游戏之家站长=xpertsoft
[em3] [em3]
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-22 01:40

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表