当前位置: 首页>>代码示例>>C++>>正文


C++ Maze::Show方法代码示例

本文整理汇总了C++中Maze::Show方法的典型用法代码示例。如果您正苦于以下问题:C++ Maze::Show方法的具体用法?C++ Maze::Show怎么用?C++ Maze::Show使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Maze的用法示例。


在下文中一共展示了Maze::Show方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: main

int main(int argc, char** argv) {

	for (int i = 0; i < M.GetLayers(); i++)
	{
		M.Show(i);
		printf("\n");
	}

	current_elevator_i = M.getElevatorI();
	current_elevator_j = M.getElevatorJ();

	fvc = read_obj("flashlight.obj", fv, ftv, fn);

	initGLUT(&argc, argv);
	initGLEW();
	initOpenGL();

	
	glutKeyboardFunc(Movement);
	glutWarpPointer(200, 200);
	glutMotionFunc(MouseActiveMotion);
	glutPassiveMotionFunc(MouseMotion);
	glutMouseFunc(MouseButtons);
	glutMainLoop();

	freeVAO();
	freeVBO();
	cleanShaders();
	return 0;
}
开发者ID:kkapitan,项目名称:Maze,代码行数:30,代码来源:main_file.cpp

示例2: Movement

void Movement(unsigned char key, int x, int y) 
{
	//Obrót zrealizowany jest jako rotacja wektora od oczu obserwatora do punktu na który patrzy wokó³ wektora wskazuj¹cego 'w górê' od obserwatora, 
	//a nastêpnie wyliczenie nowego punktu skupienia wzroku obserwatora jako przesuniêcie punktu oczu o zrotowany wczeœniej wektor.

	//Przesuniêcie to translacja punktu po³o¿enia obserwatora i punktu skupienia jego wzroku o znormalizowany wektor od oczu do obserwowanego punktu
	//(w taki sposób modu³ tego wektora nie ulega zmianie).
	
	glm::vec4 vrot;
	glm::vec3 move;

	int i = 1, j = 1;


	if (key == 'a' || key == 'd' )
	{
		vrot = glm::rotate(glm::mat4(1.0f), key == 'a' ? 3.0f : -3.0f, m_up)*glm::vec4(m_center - m_eye, 0);
		m_center = m_eye + glm::vec3(vrot);

	}
	else if ((key == 'w' || key == 's') && direction == 0)
	{
		move = glm::normalize(m_center - m_eye);
		move *= 0.2;

		if (key == 's')move *= -1;

		if (fly || !CollisionX(move, i))
		{
			m_eye.x += move.x;
			m_center.x += move.x;
			p_i = i;
		}

		if (fly || !CollisionZ(move, j))
		{
			m_eye.z += move.z;
			m_center.z += move.z;
			p_j = j;
		}
		
		if (fly)
		{
				m_eye.y += move.y;  
				m_center.y += move.y;
		}
	}
	else if (key == 'c')
	{
		if (M[p_i][p_j] == 'u')Up();
		else if (M[p_i][p_j] == 'd')Down();
	}
	else if (key == 'm')
	{
		M.Show(cur_layer); 
		printf("%d %d\n", p_i, p_j);
	}
	else if (key == 'f')fly = !fly;
}
开发者ID:kkapitan,项目名称:Maze,代码行数:59,代码来源:main_file.cpp


注:本文中的Maze::Show方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。