Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
77923346
Commit
77923346
authored
Nov 30, 2010
by
Henri Verbeet
Committed by
Alexandre Julliard
Dec 01, 2010
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
wined3d: Pass an IWineD3DDeviceImpl pointer to shader_update_float_pixel_constants().
parent
4a6d0da2
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
9 additions
and
11 deletions
+9
-11
arb_program_shader.c
dlls/wined3d/arb_program_shader.c
+3
-4
device.c
dlls/wined3d/device.c
+1
-1
glsl_shader.c
dlls/wined3d/glsl_shader.c
+3
-4
shader.c
dlls/wined3d/shader.c
+1
-1
wined3d_private.h
dlls/wined3d/wined3d_private.h
+1
-1
No files found.
dlls/wined3d/arb_program_shader.c
View file @
77923346
...
...
@@ -665,17 +665,16 @@ static void shader_arb_update_float_vertex_constants(IWineD3DDeviceImpl *device,
device
->
highest_dirty_vs_const
=
max
(
device
->
highest_dirty_vs_const
,
start
+
count
);
}
static
void
shader_arb_update_float_pixel_constants
(
IWineD3DDevice
*
ifa
ce
,
UINT
start
,
UINT
count
)
static
void
shader_arb_update_float_pixel_constants
(
IWineD3DDevice
Impl
*
devi
ce
,
UINT
start
,
UINT
count
)
{
IWineD3DDeviceImpl
*
This
=
(
IWineD3DDeviceImpl
*
)
iface
;
struct
wined3d_context
*
context
=
context_get_current
();
/* We don't want shader constant dirtification to be an O(contexts), so just dirtify the active
* context. On a context switch the old context will be fully dirtified */
if
(
!
context
||
context
->
swapchain
->
device
!=
This
)
return
;
if
(
!
context
||
context
->
swapchain
->
device
!=
device
)
return
;
memset
(
context
->
pshader_const_dirty
+
start
,
1
,
sizeof
(
*
context
->
pshader_const_dirty
)
*
count
);
This
->
highest_dirty_ps_const
=
max
(
This
->
highest_dirty_ps_const
,
start
+
count
);
device
->
highest_dirty_ps_const
=
max
(
device
->
highest_dirty_ps_const
,
start
+
count
);
}
static
DWORD
*
local_const_mapping
(
IWineD3DBaseShaderImpl
*
This
)
...
...
dlls/wined3d/device.c
View file @
77923346
...
...
@@ -3861,7 +3861,7 @@ static HRESULT WINAPI IWineD3DDeviceImpl_SetPixelShaderConstantF(
if
(
!
This
->
isRecordingState
)
{
This
->
shader_backend
->
shader_update_float_pixel_constants
(
iface
,
start
,
count
);
This
->
shader_backend
->
shader_update_float_pixel_constants
(
This
,
start
,
count
);
IWineD3DDeviceImpl_MarkStateDirty
(
This
,
STATE_PIXELSHADERCONSTANT
);
}
...
...
dlls/wined3d/glsl_shader.c
View file @
77923346
...
...
@@ -878,16 +878,15 @@ static void shader_glsl_update_float_vertex_constants(IWineD3DDeviceImpl *device
}
}
static
void
shader_glsl_update_float_pixel_constants
(
IWineD3DDevice
*
ifa
ce
,
UINT
start
,
UINT
count
)
static
void
shader_glsl_update_float_pixel_constants
(
IWineD3DDevice
Impl
*
devi
ce
,
UINT
start
,
UINT
count
)
{
IWineD3DDeviceImpl
*
This
=
(
IWineD3DDeviceImpl
*
)
iface
;
struct
shader_glsl_priv
*
priv
=
This
->
shader_priv
;
struct
shader_glsl_priv
*
priv
=
device
->
shader_priv
;
struct
constant_heap
*
heap
=
&
priv
->
pconst_heap
;
UINT
i
;
for
(
i
=
start
;
i
<
count
+
start
;
++
i
)
{
if
(
!
This
->
stateBlock
->
changed
.
pixelShaderConstantsF
[
i
])
if
(
!
device
->
stateBlock
->
changed
.
pixelShaderConstantsF
[
i
])
update_heap_entry
(
heap
,
i
,
heap
->
size
++
,
priv
->
next_constant_version
);
else
update_heap_entry
(
heap
,
i
,
heap
->
positions
[
i
],
priv
->
next_constant_version
);
...
...
dlls/wined3d/shader.c
View file @
77923346
...
...
@@ -1514,7 +1514,7 @@ static void shader_none_select_depth_blt(void *shader_priv, const struct wined3d
enum
tex_types
tex_type
,
const
SIZE
*
ds_mask_size
)
{}
static
void
shader_none_deselect_depth_blt
(
void
*
shader_priv
,
const
struct
wined3d_gl_info
*
gl_info
)
{}
static
void
shader_none_update_float_vertex_constants
(
IWineD3DDeviceImpl
*
device
,
UINT
start
,
UINT
count
)
{}
static
void
shader_none_update_float_pixel_constants
(
IWineD3DDevice
*
ifa
ce
,
UINT
start
,
UINT
count
)
{}
static
void
shader_none_update_float_pixel_constants
(
IWineD3DDevice
Impl
*
devi
ce
,
UINT
start
,
UINT
count
)
{}
static
void
shader_none_load_constants
(
const
struct
wined3d_context
*
context
,
char
usePS
,
char
useVS
)
{}
static
void
shader_none_load_np2fixup_constants
(
void
*
shader_priv
,
const
struct
wined3d_gl_info
*
gl_info
,
const
struct
wined3d_state
*
state
)
{}
...
...
dlls/wined3d/wined3d_private.h
View file @
77923346
...
...
@@ -754,7 +754,7 @@ typedef struct {
enum
tex_types
tex_type
,
const
SIZE
*
ds_mask_size
);
void
(
*
shader_deselect_depth_blt
)(
void
*
shader_priv
,
const
struct
wined3d_gl_info
*
gl_info
);
void
(
*
shader_update_float_vertex_constants
)(
IWineD3DDeviceImpl
*
device
,
UINT
start
,
UINT
count
);
void
(
*
shader_update_float_pixel_constants
)(
IWineD3DDevice
*
ifa
ce
,
UINT
start
,
UINT
count
);
void
(
*
shader_update_float_pixel_constants
)(
IWineD3DDevice
Impl
*
devi
ce
,
UINT
start
,
UINT
count
);
void
(
*
shader_load_constants
)(
const
struct
wined3d_context
*
context
,
char
usePS
,
char
useVS
);
void
(
*
shader_load_np2fixup_constants
)(
void
*
shader_priv
,
const
struct
wined3d_gl_info
*
gl_info
,
const
struct
wined3d_state
*
state
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment