C# Class idTech4.Renderer.Backends.XNARenderBackend

Inheritance: idRenderBackendInterface
ファイルを表示 Open project: iainmckay/idtech4.net

Public Methods

Method Description
BindTexture ( idImage image ) : void
ClearTextureUnits ( ) : void
Execute ( Queue commands ) : void
Init ( ) : void
Present ( ) : void

Private Methods

Method Description
BeginDrawingView ( ) : void

Any mirrored or portaled views have already been drawn, so prepare to actually render the visible surfaces for this view.

BindVariableStageImage ( TextureStage texture, float registers ) : void

Handles generating a cinematic frame if needed.

CheckCapabilities ( ) : void
DrawElementsWithCounters ( Surface tri ) : void
DrawMaterialPasses ( DrawSurface surfaces ) : int

Draw non-light dependent passes.

DrawView ( ) : void
FillDepthBuffer ( DrawSurface surfaces ) : void

If we are rendering a subview with a near clip plane, use a second texture to force the alpha test to fail when behind that clip plane.

FillDepthBufferHandler ( DrawSurface drawSurface ) : void
FinishStageTexturing ( MaterialStage stage, DrawSurface surface, Vertex position ) : void
GetMaterialTextureMatrix ( float materialRegisters, TextureStage textureStage ) : float[]
GetModeInfo ( int &width, int &height, int mode ) : bool
LoadMaterialTextureMatrix ( float materialRegisters, TextureStage textureStage ) : void
PrepareStageTexturing ( MaterialStage stage, DrawSurface surface, Vertex position ) : void
ProcessDrawViewCommand ( DrawViewRenderCommand command ) : void
ProcessSetBufferCommand ( SetBufferRenderCommand cmd ) : void
ProcessSwapBuffersCommand ( SwapBuffersRenderCommand cmd ) : void
RenderDrawSurfaceListWithFunction ( DrawSurface surfaces, RenderHandler handler ) : void

The triangle functions can check backEnd.currentSpace != surf->space to see if they need to perform any new matrix setup. The modelview matrix will already have been loaded, and backEnd.currentSpace will be updated after the triangle function completes.

RenderMaterialPasses ( DrawSurface surface ) : void
SetCull ( CullType type ) : void

This handles the flipping needed when the view being rendered is a mirrored view.

SetDefaultState ( ) : void

This should initialize all state that any part of the entire program may touch, including the editor.

SetProgramEnvironment ( ) : void

Sets variables that can be used by all vertex programs.

SetState ( MaterialStates state ) : void

This routine is responsible for setting the most commonly changed state.

SetTextureEnvironment ( int env ) : void
SetTextureUnit ( int unit ) : void
ShowImages ( ) : void

Draw all the images to the screen, on top of whatever was there. This is used to test for texture thrashing.

UnbindIndex ( ) : void

Method Details

BindTexture() public method

public BindTexture ( idImage image ) : void
image idImage
return void

ClearTextureUnits() public method

public ClearTextureUnits ( ) : void
return void

Execute() public method

public Execute ( Queue commands ) : void
commands Queue
return void

Init() public method

public Init ( ) : void
return void

Present() public method

public Present ( ) : void
return void