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


C++ VertexDeclaration::removeAllElements方法代码示例

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


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

示例1: setupVertexDeclaration

	//-----------------------------------------------------------------------
	void BillboardChain::setupVertexDeclaration(void)
	{
		if (mVertexDeclDirty)
		{
			VertexDeclaration* decl = mVertexData->vertexDeclaration;
			decl->removeAllElements();

			size_t offset = 0;
			// Add a description for the buffer of the positions of the vertices
			decl->addElement(0, offset, VET_FLOAT3, VES_POSITION);
			offset += VertexElement::getTypeSize(VET_FLOAT3);

			if (mUseVertexColour)
			{
				decl->addElement(0, offset, VET_COLOUR, VES_DIFFUSE);
				offset += VertexElement::getTypeSize(VET_COLOUR);
			}

			if (mUseTexCoords)
			{
				decl->addElement(0, offset, VET_FLOAT2, VES_TEXTURE_COORDINATES);
			}

			if (!mUseTexCoords && !mUseVertexColour)
			{
				LogManager::getSingleton().logMessage(
					"Error - BillboardChain '" + mName + "' is using neither "
					"texture coordinates or vertex colours; it will not be "
					"visible on some rendering APIs so you should change this "
					"so you use one or the other.");
			}
			mVertexDeclDirty = false;
		}
	}
开发者ID:dryadf68116,项目名称:vuforia-gamekit-integration,代码行数:35,代码来源:OgreBillboardChain.cpp

示例2: SimpleRenderable

SurfacePatchRenderable::SurfacePatchRenderable() : SimpleRenderable()
{
	// Set up what we can of the vertex data
	mRenderOp.vertexData = new VertexData();
	mRenderOp.vertexData->vertexStart = 0;
	mRenderOp.vertexData->vertexCount = 0;
	mRenderOp.operationType = RenderOperation::OT_TRIANGLE_LIST;

	// Set up what we can of the index data
	mRenderOp.indexData = new IndexData();
	mRenderOp.useIndexes = true;
	mRenderOp.indexData->indexStart = 0;
	mRenderOp.indexData->indexCount = 0;

	// Set up the vertex declaration
	VertexDeclaration *decl = mRenderOp.vertexData->vertexDeclaration;
	decl->removeAllElements();
	decl->addElement(0, 0, VET_FLOAT3, VES_POSITION);
	decl->addElement(0, 3 * sizeof(float), VET_FLOAT3, VES_NORMAL);
	decl->addElement(0, 6 * sizeof(float), VET_FLOAT3, VES_TEXTURE_COORDINATES);
	decl->addElement(0, 9 * sizeof(float), VET_FLOAT3, VES_TEXTURE_COORDINATES, 1);
}
开发者ID:Kanbyen,项目名称:ForeverEngine,代码行数:22,代码来源:surfacePatchRenderable.cpp


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