我刚刚开始学习pygame,它几乎需要代码中的一些坐标和点才能定位对象。您是否知道我可以用作参考的任何工具或应用程序,以便我可以看到这些点的直观表示。
也许是一个有数字的网格。
pygame还包括使用数字声明颜色。
您是否知道我可以使用任何网站或应用程序作为这些数字和相应颜色的参考。像这样:230, 170, 0
这些数字是什么意思。
我正在使用Windows操作系统。
答案 0 :(得分:2)
在Pygame中,坐标的工作方式是(x,y)从左上角偏移,我相信(在x尺度上,右边的位置是正的,而在y的位置是朝向底部的位置是正面的-规模)。这是以像素数量完成的。在我使用Pygame几天之后,我能够猜出我想要的x和y值是什么,而且我总是非常接近。它只需要习惯一点。
这些颜色数字是RGB值。您可以找到有关here的更多信息。再一次,一旦你习惯了它,你通常可以很好地猜测你所追求的颜色。如果您使用的是非常特定的颜色,则可以打开Microsoft Paint,并通过双击调色板中的一种颜色来选择自定义颜色。然后单击“定义自定义颜色>>”并选择你的颜色。它会显示那里的RGB值(R为红色,G为绿色,B为蓝色)。
如果我所说的对您没有意义,请要求澄清: - )
答案 1 :(得分:2)
作为后期添加,用于解密RGB .. http://0to255.com/是一个很好的网站
答案 2 :(得分:2)
我教他们年仅12岁的学生在pygame中的坐标系,所以这并不太难。它实际上类似于在小学绘制简单的图形但是颠倒过来。
pygame允许您为游戏创建一个屏幕:
import pygame
from pygame.locals import *
#variables for your x,y axis width and height
screen_width = 500
screen height = 300
#variables for rectangle dimensions
rectangle_width = 10
rectangle_height = 20
#R G B
RED = (255, 0 , 0)
#start pygame
pygame.init()
#create a screen
SCREEN = pygame.display.set_mode((screen_width,screen_height))
#tell pygame to execute your pygame code
pygame.display.update()
使用坐标系
现在你有一个x,y网格从顶部的(0,0)开始,坐标为(500,0)在右上角和左下角(0,300),依此类推。
要放置形状,您必须记住pygame选择(对象)矩形的左上角作为系统中的参考点。
如果你想在屏幕的左上方有一个红色矩形,你可以这样做:
pygame.draw.rect(SCREEN,RED(0,0,rectangle_width,rectangle_height))
这会在左上角(0,0)放置一个大小为10宽,高度为20的红色矩形。
从这一点开始,改变矩形的位置意味着递增或递减上面矩形代码中的(0,0)参数。
例如,从左上角到左下角向下拍摄矩形只需将(0,0)更改为(0,300)
这个网站对从初学者到高级的pygame坐标进行了很好的讨论:
http://inventwithpython.com/makinggames.pdf
作者Al Sweigart也会回复您的电子邮件。
我让学生将矩形移动到中间,右下方等等,以便掌握它。
答案 3 :(得分:1)
您不需要网格来帮助您,您只需要知道原点(简单 - 它是角落之一)。由于它全部被解释,我说你只是在屏幕上显示东西,直到它点击你的脑袋。
另一部分很简单。它是红色,蓝色,绿色(每个从0到255,0是无色,255是全色)。
答案 4 :(得分:0)
颜色助手:http://www.pangloss.com/seidel/ClrHlpr/color.html
x,y坐标。它会变得相当复杂。我建议像其他建议一样做一些眼球。但是,如果你需要更精确的东西,你需要弄脏手。我写了一个关于游戏设计课程的关卡编辑器,你可以在这里找到: tstechonline.com/edward/tiles/EdwardLevelEditor.html
基本思想是将拖放界面转换为将屏幕表示为网格的文本文件。每个图块为40x40像素,并在输出文件中以字母表示。你需要某种gui - >像这样的文本转换工具可以帮助你,如果你需要比眼球更精确的东西。
希望这有帮助。
答案 5 :(得分:0)
你必须习惯想象一个点在哪里是坐标。并不困难:(0,0)点是左上角,第一个值表示从窗口左侧以像素为单位的水平距离,第二个值表示距窗口顶部的距离。如果你犯了一个错误,你可以在几秒钟内纠正它。
这是一个颜色计算器:Color calculator
如果您使用Notepad ++作为编辑器,则有一个颜色选择器插件:sourceforge.net/projects/npp-plugins/files /
答案 6 :(得分:0)
只需在鼠标运动事件中打印(x,y)坐标。即每次鼠标移动。 对于颜色,您也可以使用Microsoft Paint。
更一般地说,您可以尝试查看YouTube上的这一系列教程
用于pygame,处理位置和颜色。他没有详细介绍它,但也许你可以从他使用它的方式中汲取它。如果你刚开始的话,这些视频一般都很有启发性。
答案 7 :(得分:0)
您也可以使用人名。
import pygame
from pygame.locals import Color
# see pygame.colordict for a full list of human-named colors
player_color = Color("darkred")
# RGB/RGBA values are in the range 0 to 255
enemy_color = Color(129, 129, 129)
# RRGGBB / RRGGBBAA : hex are in the range 00 to ff
bullet_color = Color("#ffaa39")