softpipe: comments, re-formatting, etc
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
/**************************************************************************
|
||||
*
|
||||
* Copyright 2007 Tungsten Graphics, Inc., Cedar Park, Texas.
|
||||
* Copyright 2010 VMware, Inc.
|
||||
* All Rights Reserved.
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||
@@ -18,7 +19,7 @@
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||
* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
|
||||
* IN NO EVENT SHALL TUNGSTEN GRAPHICS AND/OR ITS SUPPLIERS BE LIABLE FOR
|
||||
* IN NO EVENT SHALL THE AUTHORS AND/OR ITS SUPPLIERS BE LIABLE FOR
|
||||
* ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||
* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
@@ -26,7 +27,7 @@
|
||||
**************************************************************************/
|
||||
|
||||
/**
|
||||
* \brief Quad depth testing
|
||||
* \brief Quad depth / stencil testing
|
||||
*/
|
||||
|
||||
#include "pipe/p_defines.h"
|
||||
@@ -96,7 +97,9 @@ get_depth_stencil_values( struct depth_data *data,
|
||||
}
|
||||
}
|
||||
|
||||
/* If the shader has not been run, interpolate the depth values
|
||||
|
||||
/**
|
||||
* If the shader has not been run, interpolate the depth values
|
||||
* ourselves.
|
||||
*/
|
||||
static void
|
||||
@@ -115,6 +118,9 @@ interpolate_quad_depth( struct quad_header *quad )
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Compute the depth_data::qzzzz[] values from the float fragment Z values.
|
||||
*/
|
||||
static void
|
||||
convert_quad_depth( struct depth_data *data,
|
||||
const struct quad_header *quad )
|
||||
@@ -173,6 +179,9 @@ convert_quad_depth( struct depth_data *data,
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Write data->bzzzz[] values and data->stencilVals into the Z/stencil buffer.
|
||||
*/
|
||||
static void
|
||||
write_depth_stencil_values( struct depth_data *data,
|
||||
struct quad_header *quad )
|
||||
@@ -225,7 +234,6 @@ write_depth_stencil_values( struct depth_data *data,
|
||||
|
||||
|
||||
|
||||
|
||||
/** Only 8-bit stencil supported */
|
||||
#define STENCIL_MAX 0xff
|
||||
|
||||
@@ -408,12 +416,11 @@ apply_stencil_op(struct depth_data *data,
|
||||
|
||||
|
||||
|
||||
/*
|
||||
/**
|
||||
* To increase efficiency, we should probably have multiple versions
|
||||
* of this function that are specifically for Z16, Z32 and FP Z buffers.
|
||||
* Try to effectively do that with codegen...
|
||||
*/
|
||||
|
||||
static boolean
|
||||
depth_test_quad(struct quad_stage *qs,
|
||||
struct depth_data *data,
|
||||
@@ -523,7 +530,6 @@ depth_stencil_test_quad(struct quad_stage *qs,
|
||||
wrtMask = softpipe->depth_stencil->stencil[face].writemask;
|
||||
valMask = softpipe->depth_stencil->stencil[face].valuemask;
|
||||
|
||||
|
||||
/* do the stencil test first */
|
||||
{
|
||||
unsigned passMask, failMask;
|
||||
@@ -563,7 +569,7 @@ depth_stencil_test_quad(struct quad_stage *qs,
|
||||
|
||||
|
||||
#define ALPHATEST( FUNC, COMP ) \
|
||||
static int \
|
||||
static int \
|
||||
alpha_test_quads_##FUNC( struct quad_stage *qs, \
|
||||
struct quad_header *quads[], \
|
||||
unsigned nr ) \
|
||||
@@ -629,6 +635,7 @@ alpha_test_quads(struct quad_stage *qs,
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
static unsigned mask_count[16] =
|
||||
{
|
||||
0, /* 0x0 */
|
||||
@@ -665,6 +672,9 @@ get_depth_bits(struct quad_stage *qs)
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* General depth/stencil test function. Used when there's no fast-path.
|
||||
*/
|
||||
static void
|
||||
depth_test_quads_fallback(struct quad_stage *qs,
|
||||
struct quad_header *quads[],
|
||||
@@ -712,7 +722,6 @@ depth_test_quads_fallback(struct quad_stage *qs,
|
||||
write_depth_stencil_values(&data, quads[i]);
|
||||
}
|
||||
|
||||
|
||||
quads[pass++] = quads[i];
|
||||
}
|
||||
|
||||
@@ -848,22 +857,23 @@ choose_depth_test(struct quad_stage *qs,
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
static void depth_test_begin(struct quad_stage *qs)
|
||||
static void
|
||||
depth_test_begin(struct quad_stage *qs)
|
||||
{
|
||||
qs->run = choose_depth_test;
|
||||
qs->next->begin(qs->next);
|
||||
}
|
||||
|
||||
|
||||
static void depth_test_destroy(struct quad_stage *qs)
|
||||
static void
|
||||
depth_test_destroy(struct quad_stage *qs)
|
||||
{
|
||||
FREE( qs );
|
||||
}
|
||||
|
||||
|
||||
struct quad_stage *sp_quad_depth_test_stage( struct softpipe_context *softpipe )
|
||||
struct quad_stage *
|
||||
sp_quad_depth_test_stage(struct softpipe_context *softpipe)
|
||||
{
|
||||
struct quad_stage *stage = CALLOC_STRUCT(quad_stage);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user