颜色透明例子

 

#include <windows.h>  // Header File For Windows
#include <stdio.h>   // Header File For Standard Input/Output
#include <gl\gl.h>   // Header File For The OpenGL32 Library
#include <gl\glu.h>   // Header File For The GLu32 Library
#include <gl\glaux.h>
#include <GL/glut.h>

#pragma comment(lib,"opengl32.lib")
#pragma comment(lib,"glu32.lib")
#pragma comment(lib,"glaux.lib")
void CreatWindow (void)
{
 auxInitDisplayMode (AUX_RGB);
 auxInitPosition (0,0,400,400);
 auxInitWindow ("半透明");
}
 
void myinit(void)
{   
 glEnable(GL_BLEND);   
 glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);   
 glShadeModel(GL_FLAT);   
 glClearColor(1.0, 1.0, 1.0, 0.0);
}
void CALLBACK display(void)
{   
 glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);    
 glColor4f(1.0, 0.0, 0.0, 0.3);
 glTranslatef(-0.4,-0.4,0.0);
 glRectf(0.0, 0.0,1.0, 1.0);    
 glColor4f(0.0, 1.0, 0.0, 0);
 glTranslatef(0.4,0.4,0.0);
 glRectf(0.0, 0.0, 1.0, 1.0);
 glColor4f(0.0, 0.0, 1.0, 0.3);
 glTranslatef(0.30,0.30,0.0);
 glRectf(0.0, 0.0, 1.0, 1.0);
 glFlush();
}
void CALLBACK myReshape(GLsizei w, GLsizei h)
{   
 glViewport(0, 0, w, h);   
 glMatrixMode(GL_PROJECTION);   
 glLoadIdentity();   
 if (w <= h)        
  glOrtho (-4,4,4,-4,8,-8);   
 else        
  glOrtho (4,-4,-4,4,-8,8);   
}
void main()
{
 CreatWindow();
  myinit();
    auxReshapeFunc(myReshape);
 auxMainLoop(display);
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值