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


C++ SetShaderParameters函数代码示例

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


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

示例1: SetShaderParameters

bool DeferredShader::RenderSkyBox(ID3D11DeviceContext* deviceContext, int indexCount, XMMATRIX &worldMatrix, XMMATRIX &viewMatrix,
	XMMATRIX& projectionMatrix, ID3D11ShaderResourceView* texture, int Startlocation)
{
	bool result;


	// Set the shader parameters that it will use for rendering.
	result = SetShaderParameters(deviceContext, worldMatrix, viewMatrix, projectionMatrix, texture);
	if (!result)
	{
		return false;
	}

	// Now render the prepared buffers with the shader.
	// Set the vertex and pixel shaders that will be used to render.
	deviceContext->VSSetShader(m_vertexShaderSkyBox, NULL, 0);
	deviceContext->PSSetShader(m_pixelShaderSkyBox, NULL, 0);

	// Set the sampler states in the pixel shader.
	deviceContext->PSSetSamplers(0, 1, &m_sampleStateWrap);

	// Render the geometry.
	deviceContext->DrawIndexed(indexCount, Startlocation, 0);

	return true;
}
开发者ID:AirGear18,项目名称:D3D11,代码行数:26,代码来源:DeferredShader.cpp

示例2: SetShaderParameters

bool ProjectionLightMapShaderClass::Render(
	ID3D11DeviceContext* deviceContext,
	int indexCount,
	XMMATRIX &worldMatrix,
	XMMATRIX &viewMatrix,
	XMMATRIX &projectionMatrix,
	ID3D11ShaderResourceView* texture,
	XMFLOAT4 &ambientColour,
	XMFLOAT4 &diffuseColour,
	XMFLOAT3 &lightPosition,
	XMMATRIX &projTexViewMatrix,
	XMMATRIX &projTexProjectionMatrix,
	ID3D11ShaderResourceView* projectionTexture){
	bool result;

	//set shader params
	result = SetShaderParameters(
		deviceContext,
		worldMatrix,
		viewMatrix,
		projectionMatrix,
		texture,
		ambientColour,
		diffuseColour,
		lightPosition,
		projTexViewMatrix,
		projTexProjectionMatrix,
		projectionTexture);
	if (!result) return false;

	//render prepped buffers with shader
	RenderShader(deviceContext, indexCount);

	return true;
}
开发者ID:braedy,项目名称:directx11-personal,代码行数:35,代码来源:projectionlightmapshaderclass.cpp

示例3: SetShaderParameters

void FoliageShaderClass::Render(ID3D10Device* device, int vertexCount, int instanceCount, D3DXMATRIX viewMatrix, D3DXMATRIX projectionMatrix, ID3D10ShaderResourceView* texture)
{
	SetShaderParameters(viewMatrix, projectionMatrix, texture);
	RenderShader(device, vertexCount, instanceCount);

	return;
}
开发者ID:TimothyOneill,项目名称:TimsWorkspace,代码行数:7,代码来源:FoliageShaderClass.cpp

示例4: SetShaderParameters

	void MultiTextureShader::Render(Graphics* graphics)
	{
		SetShaderParameters(graphics);

		// render the buffers
		RenderShader(graphics);
	}
开发者ID:Alriightyman,项目名称:GameEngine,代码行数:7,代码来源:MultiTextureShader.cpp

示例5: SetShaderParameters

HRESULT LightShader::RenderOrdinary(ID3D11DeviceContext* deviceContext,
						 int indexCount,
						 D3DXMATRIX worldMatrix,
						 D3DXMATRIX viewMatrix, 
						 D3DXMATRIX projectionMatrix)
{
	HRESULT result;

	// Set the shader parameters that it will use for rendering.
	result = SetShaderParameters(deviceContext,
		worldMatrix,
		viewMatrix, 
		projectionMatrix,
		false);
	if(FAILED(result)) { return result; }

	// Now render the prepared buffers with the shader.
	result = TextureShader::RenderOrdinary(deviceContext,
											indexCount,
											worldMatrix,
											viewMatrix, 
											projectionMatrix);
	if(FAILED(result)) { return result; }

	return result;
}
开发者ID:SoseUIT034,项目名称:dx11engine,代码行数:26,代码来源:LightShader.cpp

示例6: UpdateTexture

void Sprite::Render()
{
    if (!ShouldDraw())
        return;

    UpdateTexture();

    SetBlendingMode(BlendingMode);

    // Assign our matrix.
    SetShaderParameters(ColorInvert, AffectedByLightning, Centered, false, BlackToTransparent);

    Mat4 Mat = GetMatrix();
    WindowFrame.SetUniform(U_MVP, &(Mat[0][0]));

    // Set the color.
    WindowFrame.SetUniform(U_COLOR, Red, Green, Blue, Alpha);

    SetTexturedQuadVBO(UvBuffer);
    DoQuadDraw();

    DrawLighten();

    FinalizeDraw();
}
开发者ID:alexanderkunz,项目名称:raindrop,代码行数:25,代码来源:Rendering.cpp

示例7: UpdateVBO

void Line::Render()
{
    Mat4 Identity;
    UpdateVBO();

    glDisable(GL_DEPTH_TEST);
    glBindTexture(GL_TEXTURE_2D, 0);

    // Set the color.
    SetShaderParameters(false, false, false, false, false, true);

    WindowFrame.SetUniform(U_COLOR, R, G, B, A);
    WindowFrame.SetUniform(U_MVP, &(Identity[0][0]));

    // Assign position attrib. pointer
    lnvbo->Bind();
    glVertexAttribPointer(WindowFrame.EnableAttribArray(A_POSITION), 2, GL_FLOAT, GL_FALSE, 0, 0);

    ColorBuffer->Bind();
    glVertexAttribPointer(WindowFrame.EnableAttribArray(A_COLOR), 4, GL_FLOAT, GL_FALSE, sizeof(float) * 4, 0);

    glDrawArrays(GL_LINES, 0, 2);

    WindowFrame.DisableAttribArray(A_POSITION);
    WindowFrame.DisableAttribArray(A_COLOR);

    Image::ForceRebind();

    glEnable(GL_DEPTH_TEST);
}
开发者ID:alexanderkunz,项目名称:raindrop,代码行数:30,代码来源:Rendering.cpp

示例8: SetShaderParameters

bool ParticleShaderClass::Render(
	ID3D11DeviceContext* deviceContext,
	int indexCount,
	D3DXMATRIX worldMatrix,
	D3DXMATRIX viewMatrix,
	D3DXMATRIX projectionMatrix,
	ID3D11ShaderResourceView* texture
	)
{
	bool result;

	result = SetShaderParameters( //set the shader parameters that it will use for rendering
		deviceContext,
		worldMatrix,
		viewMatrix,
		projectionMatrix,
		texture
		);
	if(!result)
	{
		return false;
	}

	RenderShader(deviceContext, indexCount); //render the prepared buffers with the shader

	return true;
}
开发者ID:NukePie,项目名称:Engine,代码行数:27,代码来源:ParticleShaderClass.cpp

示例9: SetShaderParameters

	void AlphaMapShader::Render(Graphics* graphics)
	{

		SetShaderParameters(graphics);

		RenderShader(graphics);
	}
开发者ID:Alriightyman,项目名称:GameEngine,代码行数:7,代码来源:AlphaMapShader.cpp

示例10: Render

bool CSLightD::Render(ID3D11DeviceContext *devicecontext,int indexCount,XMMATRIX worldmat,XMMATRIX viewmat,XMMATRIX projmat,ID3D11ShaderResourceView *texture,XMFLOAT3 lightDir,XMFLOAT4 diffuseCol,XMFLOAT4 ambientCol)
{
	if(!SetShaderParameters(devicecontext,worldmat,viewmat,projmat,texture,lightDir,diffuseCol,ambientCol))
		return false;
	RenderShader(devicecontext,indexCount);
	return true;
}
开发者ID:Elbe2,项目名称:Gundby,代码行数:7,代码来源:SLight.cpp

示例11: SetShaderParametersFromFile

//------------------------------------------------------------------------------
/// Sets parameter values from configuration file.
void SetShaderParametersFromFile( GLuint program, const char* fileName )
{
	std::ifstream in( fileName );
	if( !in ) throw ShaderParameterException( std::string( "Cannot open file " ) + fileName );
	ShaderParameters params = ReadShaderParameters( in );
	SetShaderParameters( program, params );
}
开发者ID:carlfahl,项目名称:molekel,代码行数:9,代码来源:ShaderParameters.cpp

示例12:

bool DXFrame::ShadersDLights::Render(ID3D11DeviceContext* deviceContext,
											int indexCount,
											D3DXMATRIX worldMatrix,
											D3DXMATRIX viewMatrix, 
											D3DXMATRIX projectionMatrix,
											ID3D11ShaderResourceView* texture,
											D3DXVECTOR3 lightDirection, 
											D3DXVECTOR4 diffuseColor)
{
	if (!SetShaderParameters(	deviceContext,
								worldMatrix,
								viewMatrix,
								projectionMatrix,
								texture,
								lightDirection,
								diffuseColor))
		return false;

	deviceContext->IASetInputLayout(m_Layout);
	deviceContext->VSSetShader(m_VertexShader, NULL, 0);
	deviceContext->PSSetShader(m_PixelShader, NULL, 0);
	deviceContext->PSSetSamplers(0, 1, &m_SampleState);
	deviceContext->DrawIndexed(indexCount, 0, 0);
	return true;
}
开发者ID:Karegon,项目名称:DX11FRAMEWORK,代码行数:25,代码来源:ShadersDLights.cpp

示例13: SetShaderParameters

// Takes the required variables to set the shader parameters and render the buffers using the shader file
void LightShaderClass::Render(ID3D10Device* device, int indexCount, int vertexCount, int instanceCount, D3DXMATRIX worldMatrix, D3DXMATRIX viewMatrix, D3DXMATRIX projectionMatrix, 
							  ID3D10ShaderResourceView** textureArray, D3DXVECTOR3 lightDirection, D3DXVECTOR4 ambientColor, D3DXVECTOR4 diffuseColor, D3DXVECTOR3 cameraPosition,
								D3DXVECTOR4 specularColor, float specularPower){
	
	SetShaderParameters(worldMatrix, viewMatrix, projectionMatrix, textureArray, lightDirection, ambientColor, diffuseColor, cameraPosition, specularColor, specularPower);
	RenderShader(device, indexCount, vertexCount, instanceCount);
	return;
}
开发者ID:TimothyOneill,项目名称:TimsWorkspace,代码行数:9,代码来源:LightShaderClass.cpp

示例14: Render

bool ColorShader::Render(ID3D11DeviceContext *deviceContext, int indexCount, DirectX::XMMATRIX worldMatrix, DirectX::XMMATRIX viewMatrix, DirectX::XMMATRIX projectionMatrix)
{
	if (!SetShaderParameters(deviceContext, worldMatrix, viewMatrix, projectionMatrix))
		return false;
	RenderShader(deviceContext, indexCount);

	return true;
}
开发者ID:dillonwd6086,项目名称:3D-Engine-DX11,代码行数:8,代码来源:ColorShader.cpp

示例15: SetShaderParameters

bool TextureShaderClass::Render(HWND hwnd, ID3D11DeviceContext* deviceContext, int indexCount, XMMATRIX& worldMatrix, XMMATRIX& viewMatrix, XMMATRIX& projectionMatrix, ID3D11ShaderResourceView* texture, float blend, XMFLOAT4 hueColor, bool xFlip, bool yFlip){
	bool result = SetShaderParameters(hwnd, deviceContext, worldMatrix, viewMatrix, projectionMatrix, texture, blend, hueColor, xFlip, yFlip);
	if (!result){
		return false;
	}
	RenderShader(deviceContext, indexCount);
	return true;
}
开发者ID:UnlikeSuika,项目名称:General_Direct3D,代码行数:8,代码来源:TextureShaderClass.cpp


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