Пример #1
0
/* Initializes graphics subsystem */
int gInit(GContext *context)
{
	glEnable(GL_BLEND);
	glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA);
	
	//glEnable(GL_TEXTURE_2D);
	
	glPixelStorei(GL_UNPACK_ALIGNMENT, 1);
	
	glClearColor(0,0,0,0);
	glClear(GL_COLOR_BUFFER_BIT);
	
	loadShaders(&(context->shaders));
	loadPrograms(&(context->programs),&(context->shaders));
	loadBuffers(&(context->buffers));
	
	setModelview(context,1,0,0,1);
	
	setTranslation(context,0,0);
	
	//printInfo("initGraphics()\n");

#ifdef DEBUG
	checkError();
#endif
	
	if(context->callback != NULL)
		context->callback(context->callback_data);
	
	return 0;
}
Пример #2
0
void
Lpanel::resizeWindow(void)
{
  XWindowAttributes windowattr;

  XGetWindowAttributes(dpy, window, &windowattr);

  window_xsize = windowattr.width;
  window_ysize = windowattr.height;
  view.aspect = (double) window_xsize / (double) window_ysize;
  glViewport(0, 0, windowattr.width, windowattr.height);
  glGetIntegerv (GL_VIEWPORT, viewport);

  setProjection(0);

  setModelview(0);

}
Пример #3
0
	void	model::render()
	{
	  // default material setup
	  glBindTexture(GL_TEXTURE_2D, 0);

	  glPushMatrix();
	  setModelview();
	  glBegin(GL_TRIANGLES);
	  std::list<materialAssoc>::const_iterator materialIdx = _renderMap.begin();
	  idx3d k = 0;
	  for (std::list<mesh>::const_iterator i = _mesh.begin(); i != _mesh.end();)
	    {
	      if (materialIdx != _renderMap.end())
		{
		  if (k == (*materialIdx).startIndex)
		    {
		      (*materialIdx).material->setup();
		      materialIdx++;
		    }
		}
	      
	      //glBegin(GL_LINE_STRIP);
	      for (unsigned char j = 0; j < 3 && i != _mesh.end(); j++)
		{
		  //glColor3dv(color[j]);
		  glVertex3dv(&i->vertex.x);
		  //glNormal3dv(&i->normal.x);
		  glTexCoord2dv(&i->texture.x);
		  i++;
		}
	      //glEnd();
	      k++;
	    }
	  glEnd();
	  glPopMatrix();
	}
Пример #4
0
void
Lpanel::doPickModelview(void)
{
  setModelview(1);
  //glTranslatef(0.,0.,-10.);	// so objects at z=0 don't get clipped
}
Пример #5
0
void gTransform(GContext *context, const float matrix[4])
{
	setModelview(context, matrix[0],matrix[1],matrix[2],matrix[3]);
}