summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPatrick Rudolph <[email protected]>2016-10-25 20:06:31 +0200
committerAxel Davy <[email protected]>2016-12-20 23:44:22 +0100
commit1277ceefd1e8c0c495b75de55cfe661a478d1aae (patch)
tree62c55b2d8f5f7b2df1a9892a4a42f6365d093d1e
parent3af17a671d871e725967a74617e5adb2e985e6ef (diff)
st/nine: Add struct nine_clipplane
Required to know the size exact size of the plane. Signed-off-by: Patrick Rudolph <[email protected]>
-rw-r--r--src/gallium/state_trackers/nine/device9.c2
-rw-r--r--src/gallium/state_trackers/nine/nine_state.c4
-rw-r--r--src/gallium/state_trackers/nine/nine_state.h5
3 files changed, 7 insertions, 4 deletions
diff --git a/src/gallium/state_trackers/nine/device9.c b/src/gallium/state_trackers/nine/device9.c
index 8493e706fe8..8f5f117951f 100644
--- a/src/gallium/state_trackers/nine/device9.c
+++ b/src/gallium/state_trackers/nine/device9.c
@@ -2188,7 +2188,7 @@ NineDevice9_SetClipPlane( struct NineDevice9 *This,
if (unlikely(This->is_recording))
state->changed.ucp |= 1 << Index;
else
- nine_context_set_clip_plane(This, Index, pPlane);
+ nine_context_set_clip_plane(This, Index, (struct nine_clipplane *)pPlane);
return D3D_OK;
}
diff --git a/src/gallium/state_trackers/nine/nine_state.c b/src/gallium/state_trackers/nine/nine_state.c
index 6b4c77c773a..d18435f1aef 100644
--- a/src/gallium/state_trackers/nine/nine_state.c
+++ b/src/gallium/state_trackers/nine/nine_state.c
@@ -1676,7 +1676,7 @@ nine_context_set_texture_stage_state(struct NineDevice9 *device,
void
nine_context_set_clip_plane(struct NineDevice9 *device,
DWORD Index,
- const float *pPlane)
+ struct nine_clipplane *pPlane)
{
struct nine_context *context = &device->context;
@@ -2052,7 +2052,7 @@ nine_context_apply_stateblock(struct NineDevice9 *device,
if (src->changed.ucp)
for (i = 0; i < PIPE_MAX_CLIP_PLANES; ++i)
if (src->changed.ucp & (1 << i))
- nine_context_set_clip_plane(device, i, &src->clip.ucp[i][0]);
+ nine_context_set_clip_plane(device, i, (struct nine_clipplane*)&src->clip.ucp[i][0]);
if (!(src->changed.group & NINE_STATE_FF))
return;
diff --git a/src/gallium/state_trackers/nine/nine_state.h b/src/gallium/state_trackers/nine/nine_state.h
index d5cbbd4198b..9e863bcd350 100644
--- a/src/gallium/state_trackers/nine/nine_state.h
+++ b/src/gallium/state_trackers/nine/nine_state.h
@@ -323,6 +323,9 @@ struct nine_state_sw_internal {
struct pipe_transfer *transfers_so[4];
};
+struct nine_clipplane {
+ float plane[4];
+};
/* map D3DRS -> NINE_STATE_x
*/
extern const uint32_t nine_render_state_group[NINED3DRS_COUNT];
@@ -459,7 +462,7 @@ nine_context_set_depth_stencil(struct NineDevice9 *device,
void
nine_context_set_clip_plane(struct NineDevice9 *device,
DWORD Index,
- const float *pPlane);
+ struct nine_clipplane *pPlane);
void
nine_context_set_swvp(struct NineDevice9 *device,