48 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
		
		
			
		
	
	
			48 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| 
								 | 
							
								#include "pipeline.h"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								void kinc_g5_internal_pipeline_init(kinc_g5_pipeline_t *pipe) {
							 | 
						||
| 
								 | 
							
									for (int i = 0; i < 16; ++i)
							 | 
						||
| 
								 | 
							
										pipe->inputLayout[i] = NULL;
							 | 
						||
| 
								 | 
							
									pipe->vertexShader = NULL;
							 | 
						||
| 
								 | 
							
									pipe->fragmentShader = NULL;
							 | 
						||
| 
								 | 
							
									pipe->geometryShader = NULL;
							 | 
						||
| 
								 | 
							
									pipe->tessellationControlShader = NULL;
							 | 
						||
| 
								 | 
							
									pipe->tessellationEvaluationShader = NULL;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									pipe->cullMode = KINC_G5_CULL_MODE_NEVER;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									pipe->depthWrite = false;
							 | 
						||
| 
								 | 
							
									pipe->depthMode = KINC_G5_COMPARE_MODE_ALWAYS;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									pipe->stencilMode = KINC_G5_COMPARE_MODE_ALWAYS;
							 | 
						||
| 
								 | 
							
									pipe->stencilBothPass = KINC_G5_STENCIL_ACTION_KEEP;
							 | 
						||
| 
								 | 
							
									pipe->stencilDepthFail = KINC_G5_STENCIL_ACTION_KEEP;
							 | 
						||
| 
								 | 
							
									pipe->stencilFail = KINC_G5_STENCIL_ACTION_KEEP;
							 | 
						||
| 
								 | 
							
									pipe->stencilReferenceValue = 0;
							 | 
						||
| 
								 | 
							
									pipe->stencilReadMask = 0xff;
							 | 
						||
| 
								 | 
							
									pipe->stencilWriteMask = 0xff;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									pipe->blend_source = KINC_G5_BLEND_ONE;
							 | 
						||
| 
								 | 
							
									pipe->blend_destination = KINC_G5_BLEND_ZERO;
							 | 
						||
| 
								 | 
							
									pipe->blend_operation = KINC_G5_BLENDOP_ADD;
							 | 
						||
| 
								 | 
							
									pipe->alpha_blend_source = KINC_G5_BLEND_ONE;
							 | 
						||
| 
								 | 
							
									pipe->alpha_blend_destination = KINC_G5_BLEND_ZERO;
							 | 
						||
| 
								 | 
							
									pipe->alpha_blend_operation = KINC_G5_BLENDOP_ADD;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									for (int i = 0; i < 8; ++i)
							 | 
						||
| 
								 | 
							
										pipe->colorWriteMaskRed[i] = true;
							 | 
						||
| 
								 | 
							
									for (int i = 0; i < 8; ++i)
							 | 
						||
| 
								 | 
							
										pipe->colorWriteMaskGreen[i] = true;
							 | 
						||
| 
								 | 
							
									for (int i = 0; i < 8; ++i)
							 | 
						||
| 
								 | 
							
										pipe->colorWriteMaskBlue[i] = true;
							 | 
						||
| 
								 | 
							
									for (int i = 0; i < 8; ++i)
							 | 
						||
| 
								 | 
							
										pipe->colorWriteMaskAlpha[i] = true;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									pipe->colorAttachmentCount = 1;
							 | 
						||
| 
								 | 
							
									for (int i = 0; i < 8; ++i)
							 | 
						||
| 
								 | 
							
										pipe->colorAttachment[i] = KINC_G5_RENDER_TARGET_FORMAT_32BIT;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									pipe->depthAttachmentBits = 0;
							 | 
						||
| 
								 | 
							
									pipe->stencilAttachmentBits = 0;
							 | 
						||
| 
								 | 
							
								}
							 |