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
df612027
Commit
df612027
authored
Apr 06, 2017
by
Henri Verbeet
Committed by
Alexandre Julliard
Apr 07, 2017
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
wined3d: Introduce a helper function to assign wined3d_box values.
Signed-off-by:
Henri Verbeet
<
hverbeet@codeweavers.com
>
Signed-off-by:
Alexandre Julliard
<
julliard@winehq.org
>
parent
cefd0638
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
36 additions
and
121 deletions
+36
-121
device.c
dlls/d3d11/device.c
+5
-24
surface.c
dlls/d3d8/surface.c
+1
-6
texture.c
dlls/d3d8/texture.c
+2
-12
device.c
dlls/d3d9/device.c
+1
-8
surface.c
dlls/d3d9/surface.c
+1
-8
texture.c
dlls/d3d9/texture.c
+2
-12
surface.c
dlls/ddraw/surface.c
+1
-6
device.c
dlls/wined3d/device.c
+12
-45
wined3d.h
include/wine/wined3d.h
+11
-0
No files found.
dlls/d3d11/device.c
View file @
df612027
...
...
@@ -976,14 +976,8 @@ static void STDMETHODCALLTYPE d3d11_immediate_context_CopySubresourceRegion(ID3D
src_resource
,
src_subresource_idx
,
src_box
);
if
(
src_box
)
{
wined3d_src_box
.
left
=
src_box
->
left
;
wined3d_src_box
.
top
=
src_box
->
top
;
wined3d_src_box
.
front
=
src_box
->
front
;
wined3d_src_box
.
right
=
src_box
->
right
;
wined3d_src_box
.
bottom
=
src_box
->
bottom
;
wined3d_src_box
.
back
=
src_box
->
back
;
}
wined3d_box_set
(
&
wined3d_src_box
,
src_box
->
left
,
src_box
->
top
,
src_box
->
right
,
src_box
->
bottom
,
src_box
->
front
,
src_box
->
back
);
wined3d_dst_resource
=
wined3d_resource_from_d3d11_resource
(
dst_resource
);
wined3d_src_resource
=
wined3d_resource_from_d3d11_resource
(
src_resource
);
...
...
@@ -1020,14 +1014,7 @@ static void STDMETHODCALLTYPE d3d11_immediate_context_UpdateSubresource(ID3D11De
iface
,
resource
,
subresource_idx
,
box
,
data
,
row_pitch
,
depth_pitch
);
if
(
box
)
{
wined3d_box
.
left
=
box
->
left
;
wined3d_box
.
top
=
box
->
top
;
wined3d_box
.
front
=
box
->
front
;
wined3d_box
.
right
=
box
->
right
;
wined3d_box
.
bottom
=
box
->
bottom
;
wined3d_box
.
back
=
box
->
back
;
}
wined3d_box_set
(
&
wined3d_box
,
box
->
left
,
box
->
top
,
box
->
right
,
box
->
bottom
,
box
->
front
,
box
->
back
);
wined3d_resource
=
wined3d_resource_from_d3d11_resource
(
resource
);
wined3d_mutex_lock
();
...
...
@@ -3820,14 +3807,8 @@ static void STDMETHODCALLTYPE d3d10_device_CopySubresourceRegion(ID3D10Device1 *
src_resource
,
src_subresource_idx
,
src_box
);
if
(
src_box
)
{
wined3d_src_box
.
left
=
src_box
->
left
;
wined3d_src_box
.
top
=
src_box
->
top
;
wined3d_src_box
.
front
=
src_box
->
front
;
wined3d_src_box
.
right
=
src_box
->
right
;
wined3d_src_box
.
bottom
=
src_box
->
bottom
;
wined3d_src_box
.
back
=
src_box
->
back
;
}
wined3d_box_set
(
&
wined3d_src_box
,
src_box
->
left
,
src_box
->
top
,
src_box
->
right
,
src_box
->
bottom
,
src_box
->
front
,
src_box
->
back
);
wined3d_dst_resource
=
wined3d_resource_from_d3d10_resource
(
dst_resource
);
wined3d_src_resource
=
wined3d_resource_from_d3d10_resource
(
src_resource
);
...
...
dlls/d3d8/surface.c
View file @
df612027
...
...
@@ -240,12 +240,7 @@ static HRESULT WINAPI d3d8_surface_LockRect(IDirect3DSurface8 *iface,
locked_rect
->
pBits
=
NULL
;
return
D3DERR_INVALIDCALL
;
}
box
.
left
=
rect
->
left
;
box
.
top
=
rect
->
top
;
box
.
right
=
rect
->
right
;
box
.
bottom
=
rect
->
bottom
;
box
.
front
=
0
;
box
.
back
=
1
;
wined3d_box_set
(
&
box
,
rect
->
left
,
rect
->
top
,
rect
->
right
,
rect
->
bottom
,
0
,
1
);
}
hr
=
wined3d_resource_map
(
wined3d_texture_get_resource
(
surface
->
wined3d_texture
),
surface
->
sub_resource_idx
,
...
...
dlls/d3d8/texture.c
View file @
df612027
...
...
@@ -340,12 +340,7 @@ static HRESULT WINAPI d3d8_texture_2d_AddDirtyRect(IDirect3DTexture8 *iface, con
{
struct
wined3d_box
dirty_region
;
dirty_region
.
left
=
dirty_rect
->
left
;
dirty_region
.
top
=
dirty_rect
->
top
;
dirty_region
.
right
=
dirty_rect
->
right
;
dirty_region
.
bottom
=
dirty_rect
->
bottom
;
dirty_region
.
front
=
0
;
dirty_region
.
back
=
1
;
wined3d_box_set
(
&
dirty_region
,
dirty_rect
->
left
,
dirty_rect
->
top
,
dirty_rect
->
right
,
dirty_rect
->
bottom
,
0
,
1
);
hr
=
wined3d_texture_add_dirty_region
(
texture
->
wined3d_texture
,
0
,
&
dirty_region
);
}
wined3d_mutex_unlock
();
...
...
@@ -709,12 +704,7 @@ static HRESULT WINAPI d3d8_texture_cube_AddDirtyRect(IDirect3DCubeTexture8 *ifac
{
struct
wined3d_box
dirty_region
;
dirty_region
.
left
=
dirty_rect
->
left
;
dirty_region
.
top
=
dirty_rect
->
top
;
dirty_region
.
right
=
dirty_rect
->
right
;
dirty_region
.
bottom
=
dirty_rect
->
bottom
;
dirty_region
.
front
=
0
;
dirty_region
.
back
=
1
;
wined3d_box_set
(
&
dirty_region
,
dirty_rect
->
left
,
dirty_rect
->
top
,
dirty_rect
->
right
,
dirty_rect
->
bottom
,
0
,
1
);
hr
=
wined3d_texture_add_dirty_region
(
texture
->
wined3d_texture
,
face
,
&
dirty_region
);
}
wined3d_mutex_unlock
();
...
...
dlls/d3d9/device.c
View file @
df612027
...
...
@@ -1402,14 +1402,7 @@ static HRESULT WINAPI d3d9_device_UpdateSurface(IDirect3DDevice9Ex *iface,
iface
,
src_surface
,
src_rect
,
dst_surface
,
dst_point
);
if
(
src_rect
)
{
src_box
.
left
=
src_rect
->
left
;
src_box
.
top
=
src_rect
->
top
;
src_box
.
right
=
src_rect
->
right
;
src_box
.
bottom
=
src_rect
->
bottom
;
src_box
.
front
=
0
;
src_box
.
back
=
1
;
}
wined3d_box_set
(
&
src_box
,
src_rect
->
left
,
src_rect
->
top
,
src_rect
->
right
,
src_rect
->
bottom
,
0
,
1
);
wined3d_mutex_lock
();
hr
=
wined3d_device_copy_sub_resource_region
(
device
->
wined3d_device
,
...
...
dlls/d3d9/surface.c
View file @
df612027
...
...
@@ -245,14 +245,7 @@ static HRESULT WINAPI d3d9_surface_LockRect(IDirect3DSurface9 *iface,
iface
,
locked_rect
,
wine_dbgstr_rect
(
rect
),
flags
);
if
(
rect
)
{
box
.
left
=
rect
->
left
;
box
.
top
=
rect
->
top
;
box
.
right
=
rect
->
right
;
box
.
bottom
=
rect
->
bottom
;
box
.
front
=
0
;
box
.
back
=
1
;
}
wined3d_box_set
(
&
box
,
rect
->
left
,
rect
->
top
,
rect
->
right
,
rect
->
bottom
,
0
,
1
);
wined3d_mutex_lock
();
hr
=
wined3d_resource_map
(
wined3d_texture_get_resource
(
surface
->
wined3d_texture
),
surface
->
sub_resource_idx
,
...
...
dlls/d3d9/texture.c
View file @
df612027
...
...
@@ -382,12 +382,7 @@ static HRESULT WINAPI d3d9_texture_2d_AddDirtyRect(IDirect3DTexture9 *iface, con
{
struct
wined3d_box
dirty_region
;
dirty_region
.
left
=
dirty_rect
->
left
;
dirty_region
.
top
=
dirty_rect
->
top
;
dirty_region
.
right
=
dirty_rect
->
right
;
dirty_region
.
bottom
=
dirty_rect
->
bottom
;
dirty_region
.
front
=
0
;
dirty_region
.
back
=
1
;
wined3d_box_set
(
&
dirty_region
,
dirty_rect
->
left
,
dirty_rect
->
top
,
dirty_rect
->
right
,
dirty_rect
->
bottom
,
0
,
1
);
hr
=
wined3d_texture_add_dirty_region
(
texture
->
wined3d_texture
,
0
,
&
dirty_region
);
}
wined3d_mutex_unlock
();
...
...
@@ -797,12 +792,7 @@ static HRESULT WINAPI d3d9_texture_cube_AddDirtyRect(IDirect3DCubeTexture9 *ifa
{
struct
wined3d_box
dirty_region
;
dirty_region
.
left
=
dirty_rect
->
left
;
dirty_region
.
top
=
dirty_rect
->
top
;
dirty_region
.
right
=
dirty_rect
->
right
;
dirty_region
.
bottom
=
dirty_rect
->
bottom
;
dirty_region
.
front
=
0
;
dirty_region
.
back
=
1
;
wined3d_box_set
(
&
dirty_region
,
dirty_rect
->
left
,
dirty_rect
->
top
,
dirty_rect
->
right
,
dirty_rect
->
bottom
,
0
,
1
);
hr
=
wined3d_texture_add_dirty_region
(
texture
->
wined3d_texture
,
face
,
&
dirty_region
);
}
wined3d_mutex_unlock
();
...
...
dlls/ddraw/surface.c
View file @
df612027
...
...
@@ -985,12 +985,7 @@ static HRESULT surface_lock(struct ddraw_surface *surface,
wined3d_mutex_unlock
();
return
DDERR_INVALIDPARAMS
;
}
box
.
left
=
rect
->
left
;
box
.
top
=
rect
->
top
;
box
.
right
=
rect
->
right
;
box
.
bottom
=
rect
->
bottom
;
box
.
front
=
0
;
box
.
back
=
1
;
wined3d_box_set
(
&
box
,
rect
->
left
,
rect
->
top
,
rect
->
right
,
rect
->
bottom
,
0
,
1
);
}
if
(
surface
->
surface_desc
.
ddsCaps
.
dwCaps
&
DDSCAPS_PRIMARYSURFACE
)
...
...
dlls/wined3d/device.c
View file @
df612027
...
...
@@ -3876,13 +3876,7 @@ void CDECL wined3d_device_copy_resource(struct wined3d_device *device,
if
(
dst_resource
->
type
==
WINED3D_RTYPE_BUFFER
)
{
box
.
left
=
0
;
box
.
top
=
0
;
box
.
right
=
src_resource
->
size
;
box
.
bottom
=
1
;
box
.
front
=
0
;
box
.
back
=
1
;
wined3d_box_set
(
&
box
,
0
,
0
,
src_resource
->
size
,
1
,
0
,
1
);
wined3d_cs_emit_blt_sub_resource
(
device
->
cs
,
dst_resource
,
0
,
&
box
,
src_resource
,
0
,
&
box
,
0
,
NULL
,
WINED3D_TEXF_POINT
);
return
;
...
...
@@ -3908,13 +3902,10 @@ void CDECL wined3d_device_copy_resource(struct wined3d_device *device,
for
(
i
=
0
;
i
<
dst_texture
->
level_count
;
++
i
)
{
box
.
left
=
0
;
box
.
top
=
0
;
box
.
right
=
wined3d_texture_get_level_width
(
dst_texture
,
i
);
box
.
bottom
=
wined3d_texture_get_level_height
(
dst_texture
,
i
);
box
.
front
=
0
;
box
.
back
=
wined3d_texture_get_level_depth
(
dst_texture
,
i
);
wined3d_box_set
(
&
box
,
0
,
0
,
wined3d_texture_get_level_width
(
dst_texture
,
i
),
wined3d_texture_get_level_height
(
dst_texture
,
i
),
0
,
wined3d_texture_get_level_depth
(
dst_texture
,
i
));
for
(
j
=
0
;
j
<
dst_texture
->
layer_count
;
++
j
)
{
unsigned
int
idx
=
j
*
dst_texture
->
level_count
+
i
;
...
...
@@ -3975,12 +3966,7 @@ HRESULT CDECL wined3d_device_copy_sub_resource_region(struct wined3d_device *dev
if
(
!
src_box
)
{
b
.
left
=
0
;
b
.
top
=
0
;
b
.
right
=
src_resource
->
size
;
b
.
bottom
=
1
;
b
.
front
=
0
;
b
.
back
=
1
;
wined3d_box_set
(
&
b
,
0
,
0
,
src_resource
->
size
,
1
,
0
,
1
);
src_box
=
&
b
;
}
else
if
((
src_box
->
left
>=
src_box
->
right
...
...
@@ -3999,12 +3985,7 @@ HRESULT CDECL wined3d_device_copy_sub_resource_region(struct wined3d_device *dev
return
WINED3DERR_INVALIDCALL
;
}
dst_box
.
left
=
dst_x
;
dst_box
.
top
=
0
;
dst_box
.
right
=
dst_x
+
(
src_box
->
right
-
src_box
->
left
);
dst_box
.
bottom
=
1
;
dst_box
.
front
=
0
;
dst_box
.
back
=
1
;
wined3d_box_set
(
&
dst_box
,
dst_x
,
0
,
dst_x
+
(
src_box
->
right
-
src_box
->
left
),
1
,
0
,
1
);
}
else
if
(
dst_resource
->
type
==
WINED3D_RTYPE_TEXTURE_2D
)
{
...
...
@@ -4038,13 +4019,8 @@ HRESULT CDECL wined3d_device_copy_sub_resource_region(struct wined3d_device *dev
if
(
!
src_box
)
{
b
.
left
=
0
;
b
.
top
=
0
;
b
.
right
=
wined3d_texture_get_level_width
(
src_texture
,
src_level
);
b
.
bottom
=
wined3d_texture_get_level_height
(
src_texture
,
src_level
);
b
.
front
=
0
;
b
.
back
=
1
;
wined3d_box_set
(
&
b
,
0
,
0
,
wined3d_texture_get_level_width
(
src_texture
,
src_level
),
wined3d_texture_get_level_height
(
src_texture
,
src_level
),
0
,
1
);
src_box
=
&
b
;
}
else
if
(
FAILED
(
wined3d_texture_check_box_dimensions
(
src_texture
,
src_level
,
src_box
)))
...
...
@@ -4053,12 +4029,8 @@ HRESULT CDECL wined3d_device_copy_sub_resource_region(struct wined3d_device *dev
return
WINED3DERR_INVALIDCALL
;
}
dst_box
.
left
=
dst_x
;
dst_box
.
top
=
dst_y
;
dst_box
.
right
=
dst_x
+
(
src_box
->
right
-
src_box
->
left
);
dst_box
.
bottom
=
dst_y
+
(
src_box
->
bottom
-
src_box
->
top
);
dst_box
.
front
=
0
;
dst_box
.
back
=
1
;
wined3d_box_set
(
&
dst_box
,
dst_x
,
dst_y
,
dst_x
+
(
src_box
->
right
-
src_box
->
left
),
dst_y
+
(
src_box
->
bottom
-
src_box
->
top
),
0
,
1
);
if
(
FAILED
(
wined3d_texture_check_box_dimensions
(
dst_texture
,
dst_sub_resource_idx
%
dst_texture
->
level_count
,
&
dst_box
)))
{
...
...
@@ -4124,12 +4096,7 @@ void CDECL wined3d_device_update_sub_resource(struct wined3d_device *device, str
if
(
!
box
)
{
b
.
left
=
0
;
b
.
top
=
0
;
b
.
right
=
width
;
b
.
bottom
=
height
;
b
.
front
=
0
;
b
.
back
=
depth
;
wined3d_box_set
(
&
b
,
0
,
0
,
width
,
height
,
0
,
depth
);
box
=
&
b
;
}
else
if
(
box
->
left
>=
box
->
right
||
box
->
right
>
width
...
...
include/wine/wined3d.h
View file @
df612027
...
...
@@ -2659,4 +2659,15 @@ static inline unsigned int wined3d_log2i(unsigned int x)
#endif
}
static
inline
void
wined3d_box_set
(
struct
wined3d_box
*
box
,
unsigned
int
left
,
unsigned
int
top
,
unsigned
int
right
,
unsigned
int
bottom
,
unsigned
int
front
,
unsigned
int
back
)
{
box
->
left
=
left
;
box
->
top
=
top
;
box
->
right
=
right
;
box
->
bottom
=
bottom
;
box
->
front
=
front
;
box
->
back
=
back
;
}
#endif
/* __WINE_WINED3D_H */
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