当前位置: 首页>>代码示例>>C++>>正文


C++ clPtr::Bind方法代码示例

本文整理汇总了C++中clPtr::Bind方法的典型用法代码示例。如果您正苦于以下问题:C++ clPtr::Bind方法的具体用法?C++ clPtr::Bind怎么用?C++ clPtr::Bind使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在clPtr的用法示例。


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

示例1:

void clCanvas::Rect3D( const LMatrix4& Proj, const LMatrix4& MV,
                       const LVector3& V1,
                       const LVector3& V2,
                       const LVector3& V3,
                       const LVector3& V4,
                       const clPtr<clGLTexture>& Texture,
                       const clPtr<clGLSLShaderProgram>& SP )
{
	LGL3->glDisable( GL_DEPTH_TEST );

	Texture->Bind( 0 );

	clPtr<clGLSLShaderProgram> S = SP ? SP : FRect3DSP;

	S->Bind();
	S->SetUniformNameMat4Array( "u_MVP", 1, MV * Proj );

	FRect3D->Restart( 6 );
	FRect3D->SetTexCoordV( LVector2( 0, 0 ) );
	FRect3D->EmitVertexV( V1 );
	FRect3D->SetTexCoordV( LVector2( 1, 0 ) );
	FRect3D->EmitVertexV( V2 );
	FRect3D->SetTexCoordV( LVector2( 0, 1 ) );
	FRect3D->EmitVertexV( V4 );

	FRect3D->SetTexCoordV( LVector2( 1, 0 ) );
	FRect3D->EmitVertexV( V2 );
	FRect3D->SetTexCoordV( LVector2( 1, 1 ) );
	FRect3D->EmitVertexV( V3 );
	FRect3D->SetTexCoordV( LVector2( 0, 1 ) );
	FRect3D->EmitVertexV( V4 );
	FRect3DVA->SetVertexAttribs( FRect3D );

	FRect3DVA->Draw( false );
}
开发者ID:BlastarIndia,项目名称:Android-NDK-Game-Development-Cookbook,代码行数:35,代码来源:Canvas.cpp

示例2:

void clCanvas::TexturedRect2D( float X1, float Y1, float X2, float Y2, const LVector4& Color, const clPtr<clGLTexture>& Texture )
{
	LGL3->glDisable( GL_DEPTH_TEST );

	Texture->Bind( 0 );

	FTexRectSP->Bind();
	FTexRectSP->SetUniformNameVec4Array( "u_Color", 1, Color );
	FTexRectSP->SetUniformNameVec4Array( "u_RectSize", 1, LVector4( X1, Y1, X2, Y2 ) );

	LGL3->glBlendFunc( GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA );
	LGL3->glEnable( GL_BLEND );

	FRectVA->Draw( false );

	LGL3->glDisable( GL_BLEND );
}
开发者ID:BlastarIndia,项目名称:Android-NDK-Game-Development-Cookbook,代码行数:17,代码来源:Canvas.cpp


注:本文中的clPtr::Bind方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。