Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在VB.NET中绘制上图_Vb.net_Graphics_2d - Fatal编程技术网

如何在VB.NET中绘制上图

如何在VB.NET中绘制上图,vb.net,graphics,2d,Vb.net,Graphics,2d,我正在构建一个2D游戏,其中用户是一个圆圈(:p),敌人是向他走来的矩形。然而,我的问题是,当我在互联网上找到一张非常漂亮的空间图片时,屏幕会在这张图片下面画出它所需要的任何东西。一切都正常,当有什么东西撞到我身上时,我仍然可以看到我的生活在下降——除了这张照片掩盖了一切 简言之,我的问题是:如何在此基础上绘制所有内容?(我尝试使用“返回发送”命令) 编辑:表单通过计时器绘制所有内容,用户通过按键控制角色。这可能不会有帮助,但如果有帮助,它就在这里。 对不起,人们认为你不需要密码。这是: 在my

我正在构建一个2D游戏,其中用户是一个圆圈(:p),敌人是向他走来的矩形。然而,我的问题是,当我在互联网上找到一张非常漂亮的空间图片时,屏幕会在这张图片下面画出它所需要的任何东西。一切都正常,当有什么东西撞到我身上时,我仍然可以看到我的生活在下降——除了这张照片掩盖了一切

简言之,我的问题是:如何在此基础上绘制所有内容?(我尝试使用“返回发送”命令)

编辑:表单通过计时器绘制所有内容,用户通过按键控制角色。这可能不会有帮助,但如果有帮助,它就在这里。 对不起,人们认为你不需要密码。这是:

在mybase.load过程中:
PicBackGround.Dock=DockStyle.Fill
PicBackGround是带有图像的图片框

在喷漆程序中:

 e.Graphics.Clear(Color.Black)
        e.Graphics.FillEllipse(Brushes.Orange, Player)

        'Projectiles
        Dim i As Integer = 0
        Do
            If Current_Projectile(i).IsEmpty = False Then e.Graphics.FillRectangle(Brushes.Red, Current_Projectile(i))
            i += 1
        Loop Until i = UBound(Current_Projectile)

        'Objects
        i = 0
        Do
            If Objects(i).IsEmpty = False Then e.Graphics.FillRectangle(Brushes.Blue, Objects(i))
            i += 1
        Loop Until i = UBound(Objects)
好:播放器是一个在顶部声明的矩形,
将播放器变暗为新矩形(0,0,50,50)
; 然后是数组对象,它存储了所有关于敌人攻击玩家的数据,当前的_射弹只是一个数组,用来存储玩家发射的矩形(子弹)的数据


您还想知道什么,请告诉我。

是的,控件与您在表单上绘制的任何内容重叠。一个简单的解决方案是使用表单的BackgroundImage属性。或者自己绘制图像。

张贴您正在使用的代码。是否偏移图形坐标以补偿图像?好的,添加了代码。你觉得怎么样?嘿,我试着设置背景图像,但是没用。我删除了一行:e.Graphics.Clear(Color.Black),现在它可以正常工作了。首先,谢谢你。其次,我想知道,删除这一行是否会产生后果——比如对gpu的压力过大?对,使用Clear()会在背景图像上涂满黑色。显然你不想要它。而且会更快,对。但它实际上做什么呢?要清除当前帧吗?(我认为清晰意味着像清晰的图形一样——因此我认为GPU上的压力过大,因为你每秒都在重新绘制越来越多的帧)