summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrian Paul <brianp@vmware.com>2009-03-31 16:56:55 -0600
committerBrian Paul <brianp@vmware.com>2009-04-03 09:07:04 -0600
commit8c093a1fb0843e152d2a515c5127ccd5999b0d94 (patch)
treec6bd6b69befc542f0725d080fe482f0dc0cdc9ba
parenta9c62a2340794977a87cba4a352c02fc16f81505 (diff)
i965: code to setup a constant buffer sampler
This code won't actually be used and will be removed in a subsequent commit. Just committing for posterity.
-rw-r--r--src/mesa/drivers/dri/i965/brw_wm_sampler_state.c43
1 files changed, 43 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_wm_sampler_state.c b/src/mesa/drivers/dri/i965/brw_wm_sampler_state.c
index 68a9296a71..e13eb28011 100644
--- a/src/mesa/drivers/dri/i965/brw_wm_sampler_state.c
+++ b/src/mesa/drivers/dri/i965/brw_wm_sampler_state.c
@@ -217,6 +217,45 @@ static void brw_update_sampler_state(struct wm_sampler_entry *key,
sampler->ss2.default_color_pointer = sdc_bo->offset >> 5; /* reloc */
}
+
+#if 0
+/**
+ * Setup the sampler state for the "constant buffer texture".
+ * The constant buffer texture is basically a 1D float[4] texture whose
+ * width == the number of program parameters/constants.
+ */
+static void
+brwm_wm_setup_constant_sampler(struct brw_context *brw,
+ struct wm_sampler_key *key)
+{
+ static const GLfloat black[4] = {0.0F, 0.0F, 0.0F, 0.0F};
+ const GLuint unit = BRW_MAX_TEX_UNIT - 1;
+ struct wm_sampler_entry *entry = &key->sampler[unit];
+
+ entry->tex_target = GL_TEXTURE_1D;
+
+ entry->wrap_r = GL_CLAMP_TO_EDGE;
+ entry->wrap_s = GL_CLAMP_TO_EDGE;
+ entry->wrap_t = GL_CLAMP_TO_EDGE;
+
+ entry->maxlod = 0.0F;
+ entry->minlod = 0.0F;
+ entry->lod_bias = 0.0F;
+ entry->max_aniso = 0.0F;
+ entry->minfilter = GL_NEAREST;
+ entry->magfilter = GL_NEAREST;
+ entry->comparemode = GL_NONE;
+ entry->comparefunc = GL_ALWAYS;
+
+ dri_bo_unreference(brw->wm.sdc_bo[unit]);
+
+ brw->wm.sdc_bo[unit] = upload_default_color(brw, black);
+
+ key->sampler_count = unit + 1;
+}
+#endif
+
+
/** Sets up the cache key for sampler state for all texture units */
static void
brw_wm_sampler_populate_key(struct brw_context *brw,
@@ -271,6 +310,10 @@ brw_wm_sampler_populate_key(struct brw_context *brw,
key->sampler_count = unit + 1;
}
}
+
+#if 0
+ brwm_wm_setup_constant_sampler(brw, key);
+#endif
}
/* All samplers must be uploaded in a single contiguous array, which