Made orb look more "light"-like
git-svn-id: svn://anubis/dwscr/trunk@114 5bef9df8-b654-44bb-925b-0ff18baa8f8c
This commit is contained in:
parent
ae2f719bf3
commit
912b0a7117
@ -16,7 +16,7 @@ using namespace std;
|
|||||||
#define SIZE 5
|
#define SIZE 5
|
||||||
#define STRIDE_MULTIPLIER 1.0;
|
#define STRIDE_MULTIPLIER 1.0;
|
||||||
#define ZOOM 12.0
|
#define ZOOM 12.0
|
||||||
#define ORB_RADIUS 1.5
|
#define ORB_RADIUS 2.5
|
||||||
#define ORB_SPEED 20.0
|
#define ORB_SPEED 20.0
|
||||||
|
|
||||||
LightBounceBox::LightBounceBox(LogoBox * lb,
|
LightBounceBox::LightBounceBox(LogoBox * lb,
|
||||||
@ -131,21 +131,24 @@ LightBounce::LightBounce(SSMain * _SSMain) : SSMode(_SSMain)
|
|||||||
m_orb_dir[2] = cos(gamma);
|
m_orb_dir[2] = cos(gamma);
|
||||||
|
|
||||||
/* Create the orb display list */
|
/* Create the orb display list */
|
||||||
// TODO: fix lighting
|
|
||||||
// TODO: make it more of a "light" object and not a sphere
|
|
||||||
m_orb_dl = glGenLists(1);
|
m_orb_dl = glGenLists(1);
|
||||||
glNewList(m_orb_dl, GL_COMPILE);
|
glNewList(m_orb_dl, GL_COMPILE);
|
||||||
GLfloat mat[] = {1, 1, 0.2, 0.8};
|
/* save lights, materials, and blending information */
|
||||||
|
glPushAttrib(GL_LIGHTING_BIT | GL_COLOR_BUFFER_BIT);
|
||||||
|
GLfloat mat[] = {0.7, 0.7, 0.14, 0.6};
|
||||||
glMaterialfv(GL_FRONT, GL_AMBIENT_AND_DIFFUSE, mat);
|
glMaterialfv(GL_FRONT, GL_AMBIENT_AND_DIFFUSE, mat);
|
||||||
|
GLfloat specular[] = {0.15, 0.15, 0.03, 1.0};
|
||||||
|
glMaterialfv(GL_FRONT, GL_SPECULAR, specular);
|
||||||
GLUquadric * quad = gluNewQuadric();
|
GLUquadric * quad = gluNewQuadric();
|
||||||
gluQuadricNormals(quad, GL_TRUE);
|
gluQuadricNormals(quad, GL_TRUE);
|
||||||
glPushAttrib(GL_LIGHTING_BIT);
|
|
||||||
glPushMatrix();
|
glPushMatrix();
|
||||||
glLoadIdentity();
|
glLoadIdentity();
|
||||||
GLfloat light_pos[] = {0, 0, 1, 0};
|
GLfloat light_pos[] = {0, 0, 0, 1};
|
||||||
glLightfv(GL_LIGHT0, GL_POSITION, light_pos);
|
glLightfv(GL_LIGHT0, GL_POSITION, light_pos);
|
||||||
glPopMatrix();
|
glPopMatrix();
|
||||||
gluSphere(quad, ORB_RADIUS, 16, 8);
|
glEnable(GL_BLEND);
|
||||||
|
glBlendFunc(GL_SRC_COLOR, GL_ONE_MINUS_SRC_COLOR);
|
||||||
|
gluSphere(quad, ORB_RADIUS, 20, 12);
|
||||||
glPopAttrib();
|
glPopAttrib();
|
||||||
glEndList();
|
glEndList();
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user