您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ GLsizei函数代码示例

51自学网 2021-06-01 20:53:27
  C++
这篇教程C++ GLsizei函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中GLsizei函数的典型用法代码示例。如果您正苦于以下问题:C++ GLsizei函数的具体用法?C++ GLsizei怎么用?C++ GLsizei使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了GLsizei函数的28个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: set_active

	void GL1GraphicContextProvider::set_viewport(const Rectf &viewport)	{		set_active();		glViewport(			GLsizei(viewport.left),			GLsizei(viewport.top),			GLsizei(viewport.right - viewport.left),			GLsizei(viewport.bottom - viewport.top));	}
开发者ID:ArtHome12,项目名称:ClanLib,代码行数:9,


示例2: initTexture

bool initTexture(){	glGenTextures(texture::MAX, TextureName);	gli::texture2D Texture(gli::loadStorageDDS(glf::DATA_DIRECTORY + TEXTURE_DIFFUSE));	assert(!Texture.empty());	glPixelStorei(GL_UNPACK_ALIGNMENT, 1);	glActiveTexture(GL_TEXTURE0);	glBindTexture(GL_TEXTURE_2D, TextureName[texture::DIFFUSE]);	glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_SWIZZLE_R, GL_RED);	glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_SWIZZLE_G, GL_GREEN);	glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_SWIZZLE_B, GL_BLUE);	glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_SWIZZLE_A, GL_ALPHA);	glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_BASE_LEVEL, 0);	glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_LEVEL, GLint(Texture.levels() - 1));	glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_LINEAR);	glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);	glTexStorage2D(GL_TEXTURE_2D, GLint(Texture.levels()), GL_RGBA8, GLsizei(Texture[0].dimensions().x), GLsizei(Texture[0].dimensions().y));	for(gli::texture2D::size_type Level = 0; Level < Texture.levels(); ++Level)	{		glTexSubImage2D(			GL_TEXTURE_2D, 			GLint(Level), 			0, 0, 			GLsizei(Texture[Level].dimensions().x), 			GLsizei(Texture[Level].dimensions().y), 			GL_BGR, GL_UNSIGNED_BYTE, 			Texture[Level].data());	}		glPixelStorei(GL_UNPACK_ALIGNMENT, 4);	GLint TextureBufferOffset(0);	glGetIntegerv(		GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT,		&TextureBufferOffset);	GLint TextureBufferRange = glm::max(GLint(PositionSize), TextureBufferOffset);	glBindTexture(GL_TEXTURE_BUFFER, TextureName[texture::POSITION_INPUT]);	glTexBufferRange(GL_TEXTURE_BUFFER, GL_RGBA32F, BufferName[buffer::POSITION_INPUT], 0, TextureBufferRange);	glBindTexture(GL_TEXTURE_BUFFER, TextureName[texture::TEXCOORD_INPUT]);	glTexBufferRange(GL_TEXTURE_BUFFER, GL_RGBA32F, BufferName[buffer::TEXCOORD_INPUT], 0, TextureBufferRange);	glBindTexture(GL_TEXTURE_BUFFER, TextureName[texture::COLOR_INPUT]);	glTexBufferRange(GL_TEXTURE_BUFFER, GL_RGBA32F, BufferName[buffer::COLOR_INPUT], 0, TextureBufferRange);	glBindTexture(GL_TEXTURE_BUFFER, TextureName[texture::POSITION_OUTPUT]);	glTexBufferRange(GL_TEXTURE_BUFFER, GL_RGBA32F, BufferName[buffer::POSITION_OUTPUT], 0, TextureBufferRange);	glBindTexture(GL_TEXTURE_BUFFER, TextureName[texture::TEXCOORD_OUTPUT]);	glTexBufferRange(GL_TEXTURE_BUFFER, GL_RGBA32F, BufferName[buffer::TEXCOORD_OUTPUT], 0, TextureBufferRange);	glBindTexture(GL_TEXTURE_BUFFER, TextureName[texture::COLOR_OUTPUT]);	glTexBufferRange(GL_TEXTURE_BUFFER, GL_RGBA32F, BufferName[buffer::COLOR_OUTPUT], 0, TextureBufferRange);	glBindTexture(GL_TEXTURE_BUFFER, 0);	return true;}
开发者ID:alexa-infra,项目名称:ogl-samples,代码行数:56,


示例3: adjustViewport

void adjustViewport(){	float scaleX, scaleY;	int winWidth = glutGet(GLUT_WINDOW_WIDTH);	int winHeight = glutGet(GLUT_WINDOW_HEIGHT);	getAspectRatioAdjustment(XY_ASPECT, float(winWidth) / float(winHeight), &scaleX, &scaleY);	GLsizei vpWidth = GLsizei(winWidth * scaleX);	GLsizei vpHeight = GLsizei(winHeight * scaleY);	glViewport((winWidth-vpWidth)/2, (winHeight-vpHeight)/2, vpWidth, vpHeight);}
开发者ID:avi-jit,项目名称:kinect-ultra,代码行数:10,


示例4: png_set_read_fn

void ogl::texture::load_png(const void *buf, size_t len, std::vector<GLubyte>& p){    // Initialize all PNG import data structures.    png_structp rp = 0;    png_infop   ip = 0;    png_bytep  *bp = 0;    if (!(rp = png_create_read_struct(PNG_LIBPNG_VER_STRING, 0, 0, 0)))        throw std::runtime_error("Failure creating PNG read structure");    if (!(ip = png_create_info_struct(rp)))        throw std::runtime_error("Failure creating PNG info structure");    // Initialize the user-defined IO structure.    struct png_user_io user;    user.buf = (png_bytep)  buf;    user.len = (png_size_t) len;    png_set_read_fn(rp, &user, png_user_read);    // Enable the default PNG error handler.    if (setjmp(png_jmpbuf(rp)) == 0)    {        // Read the PNG header.        png_read_png(rp, ip, PNG_TRANSFORM_EXPAND   |                             PNG_TRANSFORM_PACKING  |                             PNG_TRANSFORM_STRIP_16 |                             PNG_TRANSFORM_SWAP_ENDIAN, 0);        // Extract image properties.        w = GLsizei(png_get_image_width (rp, ip));        h = GLsizei(png_get_image_height(rp, ip));        c = GLsizei(png_get_channels    (rp, ip));        p.resize(w * h * c);        // Read the pixel data.        if ((bp = png_get_rows(rp, ip)))            for (GLsizei i = 0, j = h - 1; i < h; ++i, --j)                memcpy(&p[w * c * i], bp[j], (w * c));    }    // Release all resources.    png_destroy_read_struct(&rp, &ip, 0);}
开发者ID:rlk,项目名称:thumb,代码行数:54,


示例5: initTexture

	bool initTexture()	{		bool Validated(true);		gli::texture2d Texture(gli::load_dds((getDataDirectory() + TEXTURE_DIFFUSE).c_str()));		assert(!Texture.empty());		glPixelStorei(GL_UNPACK_ALIGNMENT, 1);		glGenTextures(texture::MAX, &TextureName[0]);		glActiveTexture(GL_TEXTURE0);		glBindTexture(GL_TEXTURE_2D, TextureName[texture::DIFFUSE]);		glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_BASE_LEVEL, 0);		glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_LEVEL, GLint(Texture.levels() - 1));		glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_LINEAR);		glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);		glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);		glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);		for(std::size_t Level = 0; Level < Texture.levels(); ++Level)		{			glCompressedTexImage2D(GL_TEXTURE_2D,				GLint(Level),				GL_COMPRESSED_RGB_S3TC_DXT1_EXT,				GLsizei(Texture[Level].extent().x), 				GLsizei(Texture[Level].extent().y), 				0, 				GLsizei(Texture[Level].size()), 				Texture[Level].data());		}			glm::ivec2 WindowSize(this->getWindowSize() * this->FramebufferScale);		glActiveTexture(GL_TEXTURE0);		glBindTexture(GL_TEXTURE_2D, TextureName[texture::COLORBUFFER]);		glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_BASE_LEVEL, 0);		glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_LEVEL, 0);		glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);		glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);		glTexImage2D(GL_TEXTURE_2D, GLint(0), GL_RGBA8, GLsizei(WindowSize.x), GLsizei(WindowSize.y), 0, GL_RGBA, GL_UNSIGNED_BYTE, nullptr);		glActiveTexture(GL_TEXTURE0);		glBindTexture(GL_TEXTURE_2D, TextureName[texture::DEPTHBUFFER]);		glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_BASE_LEVEL, 0);		glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_LEVEL, 0);		glTexImage2D(GL_TEXTURE_2D, GLint(0), GL_DEPTH_COMPONENT24, GLsizei(WindowSize.x), GLsizei(WindowSize.y), 0, GL_DEPTH_COMPONENT, GL_FLOAT, nullptr);		glActiveTexture(GL_TEXTURE0);		glBindTexture(GL_TEXTURE_2D, TextureName[texture::STENCILBUFFER]);		glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_BASE_LEVEL, 0);		glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_LEVEL, 0);		glTexImage2D(GL_TEXTURE_2D, GLint(0), GL_STENCIL_INDEX8, GLsizei(WindowSize.x), GLsizei(WindowSize.y), 0, GL_STENCIL_INDEX, GL_UNSIGNED_BYTE, nullptr);		glPixelStorei(GL_UNPACK_ALIGNMENT, 4);		return Validated;	}
开发者ID:byhj,项目名称:ogl-samples,代码行数:58,


示例6: initTexture

	bool initTexture()	{		bool Validated(true);		gli::gl GL(gli::gl::PROFILE_GL32);		gli::texture2d Texture(gli::load_dds((getDataDirectory() + TEXTURE_DIFFUSE).c_str()));		assert(!Texture.empty());		glPixelStorei(GL_UNPACK_ALIGNMENT, 1);		glGenTextures(texture::MAX, &TextureName[0]);		glActiveTexture(GL_TEXTURE0);		glBindTexture(GL_TEXTURE_2D, TextureName[texture::DIFFUSE]);		glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_BASE_LEVEL, 0);		glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_LEVEL, GLint(Texture.levels() - 1));		glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_LINEAR);		glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);		glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);		glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);		gli::gl::format const Format = GL.translate(Texture.format(), Texture.swizzles());		for (gli::texture2d::size_type Level = 0; Level < Texture.levels(); ++Level)		{			glTexImage2D(GL_TEXTURE_2D, static_cast<GLint>(Level),				Format.Internal,				static_cast<GLsizei>(Texture[Level].extent().x), static_cast<GLsizei>(Texture[Level].extent().y), 0,				Format.External, Format.Type,				Texture[Level].data());		}		glm::ivec2 WindowSize(this->getWindowSize() * this->FramebufferScale);		glActiveTexture(GL_TEXTURE0);		glBindTexture(GL_TEXTURE_2D, TextureName[texture::COLORBUFFER]);		glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_BASE_LEVEL, 0);		glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_LEVEL, 0);		glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);		glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);		glTexImage2D(GL_TEXTURE_2D, GLint(0), GL_RGBA8, GLsizei(WindowSize.x), GLsizei(WindowSize.y), 0, GL_RGBA, GL_UNSIGNED_BYTE, NULL);		glActiveTexture(GL_TEXTURE0);		glBindTexture(GL_TEXTURE_2D, TextureName[texture::RENDERBUFFER]);		glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_BASE_LEVEL, 0);		glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_LEVEL, 0);		glTexImage2D(GL_TEXTURE_2D, GLint(0), GL_DEPTH_COMPONENT24, GLsizei(WindowSize.x), GLsizei(WindowSize.y), 0, GL_DEPTH_COMPONENT, GL_UNSIGNED_INT, NULL);		glPixelStorei(GL_UNPACK_ALIGNMENT, 4);		return Validated;	}
开发者ID:g-truc,项目名称:ogl-samples,代码行数:51,


示例7: initTexture

bool initTexture(){	bool Validated(true);	gli::texture2D Texture(gli::loadStorageDDS(glf::DATA_DIRECTORY + TEXTURE_DIFFUSE));	assert(!Texture.empty());	glPixelStorei(GL_UNPACK_ALIGNMENT, 1);	glBindBuffer(GL_PIXEL_PACK_BUFFER, BufferName[buffer::VERTEX]);	glGenTextures(1, &TextureName);	glActiveTexture(GL_TEXTURE0);	glBindTexture(GL_TEXTURE_2D, TextureName);	glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_SWIZZLE_R, GL_RED);	glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_SWIZZLE_G, GL_GREEN);	glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_SWIZZLE_B, GL_BLUE);	glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_SWIZZLE_A, GL_ALPHA);	glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_BASE_LEVEL, 0);	glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_LEVEL, GLint(Texture.levels() - 1));	glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_LINEAR);	glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);	glTexStorage2D(GL_TEXTURE_2D,		GLint(Texture.levels()),		gli::internal_format(Texture.format()),		GLsizei(Texture.dimensions().x), GLsizei(Texture.dimensions().y));	for(gli::texture2D::size_type Level(0); Level < Texture.levels(); ++Level)	{		glTexSubImage2D(			GL_TEXTURE_2D,			GLint(Level),			0, 0,			GLsizei(Texture[Level].dimensions().x),			GLsizei(Texture[Level].dimensions().y),			gli::external_format(Texture.format()),			gli::type_format(Texture.format()),			Texture[Level].data());	}	glPixelStorei(GL_UNPACK_ALIGNMENT, 4);	// Query the texture handle and make the texture resident	TextureHandle = glGetTextureHandleNV(TextureName);	glMakeTextureHandleResidentNV(TextureHandle);	glBindTexture(GL_TEXTURE_2D, 0);	return Validated;}
开发者ID:Daft-Freak,项目名称:vogl,代码行数:51,


示例8: initTexture

	bool initTexture()	{		bool Validated(true);		gli::texture2d Texture(gli::load_dds((getDataDirectory() + TEXTURE_DIFFUSE).c_str()));		assert(!Texture.empty());		glPixelStorei(GL_UNPACK_ALIGNMENT, 1);		glGenTextures(texture::MAX, &TextureName[0]);		glActiveTexture(GL_TEXTURE0);		glBindTexture(GL_TEXTURE_2D, TextureName[texture::DIFFUSE]);		glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_BASE_LEVEL, 0);		glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_LEVEL, GLint(Texture.levels() - 1));		glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST_MIPMAP_NEAREST);		glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);		glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);		glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);				for(std::size_t Level = 0; Level < Texture.levels(); ++Level)		{			glCompressedTexImage2D(GL_TEXTURE_2D,				GLint(Level),				GL_COMPRESSED_RGB_S3TC_DXT1_EXT,				GLsizei(Texture[Level].extent().x),				GLsizei(Texture[Level].extent().y),				0, 				GLsizei(Texture[Level].size()),				Texture[Level].data());		}				glm::ivec2 WindowSize(this->getWindowSize());		glActiveTexture(GL_TEXTURE0);		glBindTexture(GL_TEXTURE_2D_MULTISAMPLE, TextureName[texture::MULTISAMPLE]);				this->checkError("initTexture 1");				glTexParameteri(GL_TEXTURE_2D_MULTISAMPLE, GL_TEXTURE_BASE_LEVEL, 0);		glTexParameteri(GL_TEXTURE_2D_MULTISAMPLE, GL_TEXTURE_MAX_LEVEL, 0);				this->checkError("initTexture 2");				glTexImage2DMultisample(GL_TEXTURE_2D_MULTISAMPLE, 4, GL_DEPTH_COMPONENT24, GLsizei(WindowSize.x), GLsizei(WindowSize.y), GL_TRUE);				glPixelStorei(GL_UNPACK_ALIGNMENT, 4);		return Validated && this->checkError("initTexture");	}
开发者ID:byhj,项目名称:ogl-samples,代码行数:50,


示例9: GL_RET_CALL

// ************************************************************************* //ScissorRect::ScissorRect( float _x, float _y, float _w, float _h ){	// Store old state to restore it later	m_wasEnabled = GL_RET_CALL(glIsEnabled, GL_SCISSOR_TEST) == GL_TRUE;	GL_CALL(glGetIntegerv, GL_SCISSOR_BOX, m_previousRect); // TODO: Avoid glgetter	IVec2 size = Device::GetBackbufferSize();	// Translate coordinates to absolute pixel coordinates and set directly.	GL_CALL(glScissor, GLint((_x * 0.5f + 0.5f) * size[0]),			   GLint((_y * 0.5f + 0.5f) * size[1]),			   GLsizei(_w * 0.5f * size[0]),			   GLsizei(_h * 0.5f * size[1]) );	GL_CALL(glEnable, GL_SCISSOR_TEST);}
开发者ID:Jojendersie,项目名称:Monolith,代码行数:16,


示例10: drawElementsInstancedBaseVertex

inline void drawElementsInstancedBaseVertex(	DrawElementsInstancedBaseVertexMode mode,	GLsizei count,	DrawElementsInstancedBaseVertexType type,	GLvoid *indices,	GLsizei primcount,	GLint basevertex) {	glDrawElementsInstancedBaseVertex(		GLenum(mode),		GLsizei(count),		GLenum(type),		(GLvoid*)(indices),		GLsizei(primcount),		GLint(basevertex));}
开发者ID:ngzHappy,项目名称:OpenGL45Book,代码行数:15,


示例11: render

	bool render()	{		glm::vec2 WindowSize(this->getWindowSize());		{			glBindBuffer(GL_UNIFORM_BUFFER, BufferName[buffer::TRANSFORM]);			glm::mat4* Pointer = (glm::mat4*)glMapBufferRange(				GL_UNIFORM_BUFFER, 0,	sizeof(glm::mat4),				GL_MAP_WRITE_BIT | GL_MAP_INVALIDATE_BUFFER_BIT);			glm::mat4 Projection = glm::perspective(glm::pi<float>() * 0.25f, WindowSize.x * 0.5f / WindowSize.y, 0.1f, 100.0f);			glm::mat4 Model = glm::mat4(1.0f);					*Pointer = Projection * this->view() * Model;			// Make sure the uniform buffer is uploaded			glUnmapBuffer(GL_UNIFORM_BUFFER);		}		float Depth(1.0f);		glClearBufferfv(GL_DEPTH, 0, &Depth);		glClearBufferfv(GL_COLOR, 0, &glm::vec4(1.0f, 0.5f, 0.0f, 1.0f)[0]);		glActiveTexture(GL_TEXTURE0 + sementics::sampler::RGB8);		glBindTexture(GL_TEXTURE_2D, TextureName[texture::RGB8]);		glActiveTexture(GL_TEXTURE0 + sementics::sampler::DXT1);		glBindTexture(GL_TEXTURE_2D, TextureName[texture::DXT1]);		glBindProgramPipeline(PipelineName);		glBindBufferBase(GL_UNIFORM_BUFFER, semantic::uniform::TRANSFORM0, BufferName[buffer::TRANSFORM]);		glBindVertexArray(VertexArrayName);		glUseProgram(ProgramName);		std::vector<GLuint> Index(2);		Index[0] = sementics::sampling::RGB8;		Index[1] = sementics::sampling::DXT1;				glViewportIndexedf(0, 0, 0, GLfloat(WindowSize.x) / 2.0f, GLfloat(WindowSize.y));		glUniformSubroutinesuiv(GL_FRAGMENT_SHADER, GLsizei(1), &Index[0]);		glDrawElementsInstancedBaseVertex(GL_TRIANGLES, ElementCount, GL_UNSIGNED_INT, nullptr, 1, 0);		glViewportIndexedf(0, GLfloat(WindowSize.x) / 2.0f, 0, GLfloat(WindowSize.x) / 2.0f, GLfloat(WindowSize.y));		glUniformSubroutinesuiv(GL_FRAGMENT_SHADER, GLsizei(1), &Index[1]);		glDrawElementsInstancedBaseVertex(GL_TRIANGLES, ElementCount, GL_UNSIGNED_INT, nullptr, 1, 0);				return true;	}
开发者ID:h3rb,项目名称:ogl-samples,代码行数:48,


示例12: glBindVertexArray

    void ScreenText::draw(GLContext* context)    {      if(!usedSize_)	return;#ifdef SCIGMA_USE_OPENGL_3_2      glBindVertexArray(vertexArray_);#else      glBindBuffer(GL_ARRAY_BUFFER,glBuffer_);         prepare_attributes();#endif          glUniform4fv(fColorLocation_,1,fColor_);      glUniform4fv(bColorLocation_,1,bColor_);      glUniform2fv(offsetLocation_,1,offset_);      switch(screenAnchor_)	{	case SCREEN_ANCHOR_BOTTOM_LEFT:	  glUniform4f(screenAnchorLocation_,-1,-1,0,0);break;	case SCREEN_ANCHOR_BOTTOM_RIGHT:	  glUniform4f(screenAnchorLocation_,1,-1,0,0);break;	case SCREEN_ANCHOR_TOP_RIGHT:	  glUniform4f(screenAnchorLocation_,1,1,0,0);;break;	case SCREEN_ANCHOR_TOP_LEFT:	  glUniform4f(screenAnchorLocation_,-1,1,0,0);break;	}           glBindTexture(GL_TEXTURE_2D,font_.textureID);      glPolygonMode(GL_FRONT_AND_BACK,GL_FILL);      glDrawArrays(GL_TRIANGLES, 0, GLsizei(usedSize_/4));      GLERR;    }
开发者ID:rhoelzel,项目名称:scigma,代码行数:34,


万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。