没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
计
算
机
图
形
学
实
验
报
告
o
p
en G
L
的
基
本
使
用
1
.项
目代
码:
/
/ 2
3
21 3
21
.
c p
p
:
定
义控制台应
用
程
序
的
入
口点。
#
inclu
de
"
st
d af x
.
h"
#
incl
u
de<
i o
s t r
e am>
#in
c
lud
e
< s
t d io. h>
# inc
l
u
d
e< g 1 / glu t . h>
# inc
l
u d e
<gl/g 1
u.
h
>
# i n clud e <gl/ g 1 .
h
>
u s i n g
na
mesp
a
ce std;
/ /#i n
c l
u de〃vgl.h"
o
p
e ngl4.
3
编程
宝
典第
8
版库
函
数
/
/#
i n cl
u
de"lo
a dshad
e
rs. h
"
GLf
1
oa
t
x =0. 0, y
=
0 .0
,
z
=
0.
0
; //
用
于平移的变量
GL
f
lo
a
t
i=l.
0,
j
=
L
0,k=
1
.
0
;
/
/ 用
于
缩
放
的
变
量
int
d=
l
;〃用于是否判断旋转的
开
关
GLfloa t
a
n
g
l
e
=0.
O
f;
/
/旋转角度的变量
void
my D isplay (
vo
id)
6
gi c 1 e a r ( G L _ C O L O R _ B U F F E R _ B I T | GL_DEPTH_BUFF E R _
B I T ) ;
/ / 创建透视效果视图
。g IMatrixMode(GL_PRO J E C T ION);
oglL o adldenti t y ( ) ;
gluP e rspecti v e (9 0 . Of, 1. 0 f , 1. 0 f , 20. 0 f);
»g IMa t r i xMo d e(GL_M0DELVI E W ) ;
s
g ILoadlde n t i ty ();
gluLookAt(0. 0, 0.0, 10.0,0.0, 0.0, 0.0, 0. 0, 1. 0 ,
0 . 0 ) ;
glCl e a r ( G L _ C OL 0R _ B U F F E R _ B I T I G L _ D E P T H_ B U F F
ER„BIT);
。/ / 定义 4 光源,从 4 个方向入射,第一个是白光,其他为红绿蓝
»(
®GL float s u n_light_p o s i ti o n[] = { -5. Of, 5. Of, 0.
0 f , l.Of } ;
G L f 1 o a t s u n_l i gh t _ posit i o n 1 [] = { 5. 0 f,
5. Of, 0 . Of, 1. Of };
GL f lo a t sun_ 1 i g h t_ positi o n2 [] = { -5. Of, -5.
0 f , 0. Of, l.Of };
G L float sun_light_position3 [] = { 5. 0 f , —5. Of,
0. Of, 1.0 f };
G L f 1 o at s un_ 1 i g h t _ambi e n t []= { 0. Of,
0. Of, 0. 0 f , l.Of };
o
GLfloat sun_ 1 i gh t _ diffu s e [] = { 1. Of, 1 . Of,
1. 0 f, 1. 0 f };
o GLflo a t s un_light_d i f f u s e 1 [] = { 1. Of, 0. 0 f ,
0. Of, l.Of } ;
。 G L f loat sun_ligh t _di f fuse2[] = { 0. Of, l.Of , 0. Of,
l.Of );
GLfloa t s u n_ 1 ight_ diffu s e 3 [] = { 0. 0 f , 0. Of, 1.
0 f, 1.0 f } ;
o
G L f loat su n _ 1 i g h t_specu 1 a r [] = { 1, Of, 1. Of,
l.Of, l.Of };
8g 1 Ligh t f v(GL_LIGHTO, GL_PO S I TION, s un_li g ht_posi
t ion);
。 g lLightfv(GL_LIGH TO, GL_AMBI ENT , s u n_ l i ght_am
b i en t );
glL i g h tf v (GL_LIGHT 0 , GL_DIFFUSE, sun_l i g h t_
d i f fuse);
g 1 Lightf v (GL_LIGHT0, GL_SPECULAR, sun_l i g h
t_specular);
»glLight f v(GL_LIGHTl, G L _ P 0 S I T ION, s u n_ 1 i
ght_pos i ti o n 1);
。 g 1 L i ghtfv(GL_LIGHTl, GL_AMBIENT, sun_ligh t _ a
mbient);
o g 1 Light fv(GL _LIGHT 1 , G L_DIF FUSE, sun_light_
d i ffusel);
»glLi gh t f v (GL_L I GHT 1 , G L _ S P ECULAR, sun_ 1 igh t
_s p ecu 1 ar);
og ILightfv (GL_L I GHT 2 , GL_POSIT I ON, s u n_ 1 i ght_p o
sit i on2);
oog 1 L i gh t fv (GL_LIGHT2, GL_AMBIENT, sun_lig h t _ambie n
t);
1 Ligh t f v (GL_LIGHT2 , GL_D IFFUS E , s un_l i gh t _
di f f use2);
恰 1 Ligh t f v(GL_L I G H T 2, GL_SPECUL AR, sun_l i gh t
_specular);
glLightfv(GL_LIGHT3, G L_P0SITI0N, sun_light_p os
i t i o n 3 ) ;
o g 1 Ligh t fv(G L_LIGHT3, GL_AMBIENT, sun_li g
ht_ambient);
ooglL i ght f v(GL_L I GHT3, GL_DIFF USE, s un_ li ght_di
剩余15页未读,继续阅读
资源评论
无敌开心
- 粉丝: 1937
- 资源: 10万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功