研究成果如下:
首先是游戏图片的分割问题...(这个图只是举例,不太好看,一般图的都是一个动作接一个动作的,这样看起来就像是在动)以下方法可以将上图可以分割为,一个一个小人物,背景为透明,然后返回一个人物的图片数组public static Bitmap[] getPics(Image img,int picRows,int picCols)
        {
            //初始化次图片个数
            int imgCount =picRows*picCols;
            
            Bitmap[] allImgs =new Bitmap[imgCount];            //处理图片
            Bitmap srcImg = new Bitmap(img);
            srcImg.MakeTransparent(Color.FromArgb(255,0,255));            //剪切器
            Rectangle sourceRectangle ;            
            //每个图片高宽
            int picWidth=srcImg.Width/picCols;
            int picHeight =srcImg.Height/picRows;            //剪切位置
            int x = 0;
            int y = 0;            for (int i = 0; i < imgCount; i++)
            {                sourceRectangle = new Rectangle(x,y,picWidth,picHeight);
                allImgs[i] = srcImg.Clone(sourceRectangle,System.Drawing.Imaging.PixelFormat.DontCare);                if(x<srcImg.Width-picWidth)
                {
                    x =x +picWidth;
                }
                else
                {
                    x = 0;
                    y = y +picHeight;
                }
            }
            return allImgs;        }
然后有一个 角色对象类,里面储存对象的坐标 和 图片  还有一个画 自己的方法 private int i = 0;        public override void drawSelf(Graphics g)
        {
            g.DrawImage(this.ElementPics[i], this.X, this.Y);
            if (i < this.ElementPics.Length - 1)
            {                i++;
            }
            else
            {
                i = 0;
            }
        }
最后在窗体上 用线程,或Timer控件调用对象drawSelf方法,不知道这样的代码是否规范,我想做一个类似泡泡堂的游戏,我有图片,但是遇到很多问题,不知道怎么做,比如泡泡的爆炸,爆炸的检测,人物被炸,障碍物的制作也没有思绪,好难啊 , 前辈们有 类似游戏的代码吗? 我搜索不到啊

解决方案 »

  1.   

    不难,而且不止能做小游戏,去看看XNA吧...我玩过的至少有两个风靡全球的小游戏是C#+XNA写的...当然我说的这个小是跟魔兽之类大游戏比,跟Plants vs Zombies一个级别...
      

  2.   

    翻牌游戏http://heyant.com/html/Download56.html
    贪吃蛇http://heyant.com/html/Download46.html
    坦克大战http://heyant.com/html/Download52.html
      

  3.   

    搜索下XNA,专门用C#开发游戏的
      

  4.   

    我觉得XNA还不如WPF,习惯了做winform的思考方式,XNA的理念太专业了,做小游戏有点复杂...
      

  5.   

    GDI+做游戏 性能上不行,C#做点小游戏就只有选 XNA了
      

  6.   

    XNA2D还不如WPF,我赞同,
    XNA的2D特垃圾的,
    我觉得主要就是绘画方面,和文字支持方面,撮的一塌糊涂
    与WPF相距甚远啊
      

  7.   

    不过,XNA在3D和性能方面确实还是很强大的,
    我试过除了内存用得较多(因为没有使用动态加载),
    CPU超少的
      

  8.   


    很兴趣看看具体差距WPF我很少用,不太懂学习,不过好象WPF的图形处理使用的是DX封装,XNA2D处理真有你说那么差吗?测试下吧,搞几个例子。有兴趣了解下。13楼的朋友能不能设计个把测试?
      

  9.   

    xna 2d也不错
    另外 LZ不要是用自己的算法 来透明
    你可以使用位传送,这样对图片处理比较好