我是OpenGL的初学者,我正在尝试创建一个游戏,其中我有一个原始图像作为背景.当游戏开始时,我显示该图像,我希望能够点击它并在之后显示另一个图像.我尝试使用该功能,glutMouseFunc但是当我尝试运行该程序时,我收到一条消息,说该程序停止工作.以下是我的代码的一些部分:我有一个全局变量onMouse; 如果我单击鼠标按钮,变量取值1,如果值为1,我尝试加载第二个图像.
int onMouse;
void mouseClicks(int button, int state, int x, int y) {
if(button == GLUT_LEFT_BUTTON && state == GLUT_DOWN) {
onMouse = 1;
}
}
Run Code Online (Sandbox Code Playgroud)
这是主要功能:
//load first texture
texture = LoadTextureRAW( "2 Lock screen.raw", TRUE );
glutMouseFunc(mouseClicks);
if(onMouse == 1){
//load second texture
texture = LoadTextureRAW( "in_game.raw", TRUE );
}
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
编辑我对代码做了一些更改,但背景图片仍然没有改变.这是新的主要功能:
glutCreateWindow("Game");
texture = LoadTextureRAW( "2 Lock screen.raw", 1 );
glutDisplayFunc(display);
glutMouseFunc(mouseClicks);
glutKeyboardFunc(key);
glutMainLoop();
if(onMouse == 1){
texture = LoadTextureRAW( "in_game.raw", 2 ); …Run Code Online (Sandbox Code Playgroud) 我试图从文件中读取一些数字并将它们存储到一个名为numbers. 我使用strip()for 每行删除\n每行末尾的 。我还使用split(' ')每一行来删除数字之间的空格。
问题是在输入文件中,该行的第一个字符和该行的最后一个字符是空格。我怎样才能擦除它们?
这是我的代码:
def read_from_file():
f = open('input_file.txt')
numbers = []
for eachLine in f:
line = eachLine.strip()
for x in eachLine.split(' '):
line2 = int(x)
numbers.append(line2)
f.close()
print numbers
Run Code Online (Sandbox Code Playgroud)
这是文本文件,其中下划线是空格:
_9 5_
_2 3 1 5 4_
_2 1 5_
_1 1_
_2 1 2_
_2 2 3_
_2 3 4_
_3 3 4 5_
_2 4 5_
_2 1 5_
_3 1 2 5_
Run Code Online (Sandbox Code Playgroud)