opengl虚拟校园漫游

一、开发环境说明

-- 操作系统:windows  
-- 开发软件:Visual Studio 2017  
-- 编程语言:基于控制台下的opengl  
-- 用到的库:glu、 gluax

二、内容说明

1 、功能介绍
-- 实现场景漫游
-- 实现按键交互功能;
-- 实现纹理贴图;
-- 实现光照效果
2、操作说明
  --按键 '上'  :前进
  --按键 '下'  :后退
  --按键 '左'  :左转
  --按键 '右'  :右转
  --按键 'A'   :向左平移
  --按键 'D'   :向右平移
  --按键 'W'   :垂直上移
  --按键 'D'   :垂直下移
  --Page u     : 仰视
  --Page down  :俯视
  --按键 'L'   :白天/夜晚(环境光/散射光)开关
  --按键 'B'   :透明混合开关
  --按键 'G'   :路灯电源开关
3、程序目录截图

在这里插入图片描述

4、程序部分代码展示
//初始化,设置光源,打开纹理开关
void SceneInit(int w, int h)
{
	LoadGLTextures();			//条到处理调用位图并用此位图建立纹理的子程序
	glEnable(GL_TEXTURE_2D);	//纹理被创建,并允许2D纹理贴图
	glShadeModel(GL_SMOOTH);
	glClearColor(0.0, 0.0, 0.0, 0.5);
	glClearDepth(1.0f);
	glEnable(GL_DEPTH_TEST);
	glDepthFunc(GL_LEQUAL);
	glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST);
	//设置光源参数
	glLightfv(GL_LIGHT1, GL_AMBIENT, LightAmbient);		//设置环境光
	glLightfv(GL_LIGHT1, GL_DIFFUSE, LightDiffuse);		//设置漫反射光
	glLightfv(GL_LIGHT1, GL_POSITION, LightPosition);	//光源的位置
	glEnable(GL_LIGHT1);								//允许光源一
	glColor4f(1.0f, 1.0f, 1.0f, 0.5);					//全亮度,50%的透明
	glBlendFunc(GL_SRC_ALPHA, GL_ONE);					//基于半透明的混合方式
}
5、 运行效果展示

在这里插入图片描述
在这里插入图片描述

三、代码下载

  • 3
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值