/** * Run the shader on all blocks in a tile. This is used when a tile is * completely contained inside a triangle, and the shader is opaque. * This is a bin command called during bin processing. */ static void lp_rast_shade_tile_opaque(struct lp_rasterizer_task *task, const union lp_rast_cmd_arg arg) { LP_DBG(DEBUG_RAST, "%s\n", __FUNCTION__); assert(task->state); if (!task->state) { return; } lp_rast_shade_tile(task, arg); }
/** * Run the shader on all blocks in a tile. This is used when a tile is * completely contained inside a triangle, and the shader is opaque. * This is a bin command called during bin processing. */ static void lp_rast_shade_tile_opaque(struct lp_rasterizer_task *task, const union lp_rast_cmd_arg arg) { const struct lp_scene *scene = task->scene; unsigned i; LP_DBG(DEBUG_RAST, "%s\n", __FUNCTION__); /* this will prevent converting the layout from tiled to linear */ for (i = 0; i < scene->fb.nr_cbufs; i++) { (void)lp_rast_get_color_tile_pointer(task, i, LP_TEX_USAGE_WRITE_ALL); } lp_rast_shade_tile(task, arg); }