计算机图形学-光照模型

这篇博客通过OpenGL展示了如何初始化光照模型,包括设置材质属性、光源位置和环境光,并使用glutSolidTeapot绘制带光照效果的茶壶,演示了基本的图形学光照处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


#include<gl/glut.h>
#include<stdlib.h>
void init(void)
{
	GLfloat mat_specular[]={1.0,1.0,1.0,1.0};
	GLfloat mat_shininess[]={50.0};
	GLfloat light_position[]={1.0,1.0,1.0,0.0};
	GLfloat white_light[]={1.0,1.0,1.0,1.0};
	GLfloat Light_Model_Ambient[]={0.2,0.2,0.2,1.0};

	glClearColor (0.0,0.0,0.0,0.0);
	glShadeModel(GL_SMOOTH);

	glMaterialfv(GL_FRONT,GL_SPECULAR,mat_specular);
	glMaterialfv(GL_FRONT,GL_SHININESS,mat_shininess);

	glLightfv(GL_LIGHT0,GL_POSITION, light_position);
	glLightfv(GL_LIGHT0,GL_DIFFUSE, white_light);
	glLightfv(GL_LIGHT0,GL_SPECULAR, white_light);
	glLightModelfv(GL_LIGHT_MODEL_AMBIENT, Light_Model_Ambient);

	glEnable(GL_LIGHTING);
	glEnable(GL_LIGHT0);
	glEnable(GL_DEPTH_TEST);
}

void display(void)
{
	glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
	glutSolidTeapot(0.5);
	glFlush();
}

void reshape(int w, int h)
{
	glViewport(0,0,(GLsizei)w, (GLsizei) h);
	glMatr
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值