Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-cw
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-cw
Commits
496b438e
Commit
496b438e
authored
Sep 27, 2011
by
Stefan Dösinger
Committed by
Alexandre Julliard
Oct 11, 2011
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
wined3d: Remove d3d8/9 palette support.
parent
4365d290
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
2 additions
and
265 deletions
+2
-265
ddraw.c
dlls/ddraw/ddraw.c
+1
-1
device.c
dlls/wined3d/device.c
+0
-167
surface.c
dlls/wined3d/surface.c
+0
-59
texture.c
dlls/wined3d/texture.c
+0
-19
wined3d.spec
dlls/wined3d/wined3d.spec
+0
-4
wined3d_private.h
dlls/wined3d/wined3d_private.h
+0
-7
wined3d.h
include/wine/wined3d.h
+1
-8
No files found.
dlls/ddraw/ddraw.c
View file @
496b438e
...
...
@@ -5387,7 +5387,7 @@ HRESULT ddraw_init(IDirectDrawImpl *ddraw, WINED3DDEVTYPE device_type)
ddraw
->
orig_width
=
GetSystemMetrics
(
SM_CXSCREEN
);
ddraw
->
orig_height
=
GetSystemMetrics
(
SM_CYSCREEN
);
ddraw
->
wineD3D
=
wined3d_create
(
7
,
WINED3D_
PALETTE_PER_SURFACE
|
WINED3D_
LEGACY_DEPTH_BIAS
,
ddraw
->
wineD3D
=
wined3d_create
(
7
,
WINED3D_LEGACY_DEPTH_BIAS
,
&
ddraw
->
IDirectDraw7_iface
);
if
(
!
ddraw
->
wineD3D
)
{
...
...
dlls/wined3d/device.c
View file @
496b438e
...
...
@@ -1231,32 +1231,6 @@ HRESULT CDECL wined3d_device_init_3d(struct wined3d_device *device,
device
->
fb
.
render_targets
=
HeapAlloc
(
GetProcessHeap
(),
HEAP_ZERO_MEMORY
,
sizeof
(
*
device
->
fb
.
render_targets
)
*
gl_info
->
limits
.
buffers
);
device
->
palette_count
=
1
;
device
->
palettes
=
HeapAlloc
(
GetProcessHeap
(),
HEAP_ZERO_MEMORY
,
sizeof
(
PALETTEENTRY
*
));
if
(
!
device
->
palettes
||
!
device
->
fb
.
render_targets
)
{
ERR
(
"Out of memory!
\n
"
);
hr
=
E_OUTOFMEMORY
;
goto
err_out
;
}
device
->
palettes
[
0
]
=
HeapAlloc
(
GetProcessHeap
(),
0
,
sizeof
(
PALETTEENTRY
)
*
256
);
if
(
!
device
->
palettes
[
0
])
{
ERR
(
"Out of memory!
\n
"
);
hr
=
E_OUTOFMEMORY
;
goto
err_out
;
}
for
(
i
=
0
;
i
<
256
;
++
i
)
{
device
->
palettes
[
0
][
i
].
peRed
=
0xff
;
device
->
palettes
[
0
][
i
].
peGreen
=
0xff
;
device
->
palettes
[
0
][
i
].
peBlue
=
0xff
;
device
->
palettes
[
0
][
i
].
peFlags
=
0xff
;
}
device
->
currentPalette
=
0
;
/* Initialize the texture unit mapping to a 1:1 mapping */
for
(
state
=
0
;
state
<
MAX_COMBINED_SAMPLERS
;
++
state
)
{
...
...
@@ -1385,12 +1359,6 @@ err_out:
HeapFree
(
GetProcessHeap
(),
0
,
device
->
fb
.
render_targets
);
HeapFree
(
GetProcessHeap
(),
0
,
device
->
swapchains
);
device
->
swapchain_count
=
0
;
if
(
device
->
palettes
)
{
HeapFree
(
GetProcessHeap
(),
0
,
device
->
palettes
[
0
]);
HeapFree
(
GetProcessHeap
(),
0
,
device
->
palettes
);
}
device
->
palette_count
=
0
;
if
(
swapchain
)
wined3d_swapchain_decref
(
swapchain
);
if
(
device
->
stateBlock
)
...
...
@@ -1579,12 +1547,6 @@ HRESULT CDECL wined3d_device_uninit_3d(struct wined3d_device *device)
device
->
swapchains
=
NULL
;
device
->
swapchain_count
=
0
;
for
(
i
=
0
;
i
<
device
->
palette_count
;
++
i
)
HeapFree
(
GetProcessHeap
(),
0
,
device
->
palettes
[
i
]);
HeapFree
(
GetProcessHeap
(),
0
,
device
->
palettes
);
device
->
palettes
=
NULL
;
device
->
palette_count
=
0
;
HeapFree
(
GetProcessHeap
(),
0
,
device
->
fb
.
render_targets
);
device
->
fb
.
render_targets
=
NULL
;
...
...
@@ -4574,135 +4536,6 @@ HRESULT CDECL wined3d_device_validate_device(struct wined3d_device *device, DWOR
return
WINED3D_OK
;
}
static
void
dirtify_p8_texture_samplers
(
struct
wined3d_device
*
device
)
{
UINT
i
;
for
(
i
=
0
;
i
<
MAX_COMBINED_SAMPLERS
;
++
i
)
{
struct
wined3d_texture
*
texture
=
device
->
stateBlock
->
state
.
textures
[
i
];
if
(
texture
&&
(
texture
->
resource
.
format
->
id
==
WINED3DFMT_P8_UINT
||
texture
->
resource
.
format
->
id
==
WINED3DFMT_P8_UINT_A8_UNORM
))
device_invalidate_state
(
device
,
STATE_SAMPLER
(
i
));
}
}
HRESULT
CDECL
wined3d_device_set_palette_entries
(
struct
wined3d_device
*
device
,
UINT
palette_idx
,
const
PALETTEENTRY
*
entries
)
{
UINT
i
;
TRACE
(
"device %p, palette_idx %u, entries %p.
\n
"
,
device
,
palette_idx
,
entries
);
if
(
palette_idx
>=
MAX_PALETTES
)
{
WARN
(
"Invalid palette index %u.
\n
"
,
palette_idx
);
return
WINED3DERR_INVALIDCALL
;
}
if
(
palette_idx
>=
device
->
palette_count
)
{
UINT
new_size
=
device
->
palette_count
;
PALETTEENTRY
**
palettes
;
do
{
new_size
*=
2
;
}
while
(
palette_idx
>=
new_size
);
palettes
=
HeapReAlloc
(
GetProcessHeap
(),
HEAP_ZERO_MEMORY
,
device
->
palettes
,
sizeof
(
*
palettes
)
*
new_size
);
if
(
!
palettes
)
{
ERR
(
"Out of memory!
\n
"
);
return
E_OUTOFMEMORY
;
}
device
->
palettes
=
palettes
;
device
->
palette_count
=
new_size
;
}
if
(
!
device
->
palettes
[
palette_idx
])
{
device
->
palettes
[
palette_idx
]
=
HeapAlloc
(
GetProcessHeap
(),
0
,
sizeof
(
PALETTEENTRY
)
*
256
);
if
(
!
device
->
palettes
[
palette_idx
])
{
ERR
(
"Out of memory!
\n
"
);
return
E_OUTOFMEMORY
;
}
}
for
(
i
=
0
;
i
<
256
;
++
i
)
{
device
->
palettes
[
palette_idx
][
i
].
peRed
=
entries
[
i
].
peRed
;
device
->
palettes
[
palette_idx
][
i
].
peGreen
=
entries
[
i
].
peGreen
;
device
->
palettes
[
palette_idx
][
i
].
peBlue
=
entries
[
i
].
peBlue
;
device
->
palettes
[
palette_idx
][
i
].
peFlags
=
entries
[
i
].
peFlags
;
}
if
(
palette_idx
==
device
->
currentPalette
)
dirtify_p8_texture_samplers
(
device
);
return
WINED3D_OK
;
}
HRESULT
CDECL
wined3d_device_get_palette_entries
(
struct
wined3d_device
*
device
,
UINT
palette_idx
,
PALETTEENTRY
*
entries
)
{
UINT
i
;
TRACE
(
"device %p, palette_idx %u, entries %p.
\n
"
,
device
,
palette_idx
,
entries
);
if
(
palette_idx
>=
device
->
palette_count
||
!
device
->
palettes
[
palette_idx
])
{
/* What happens in such situation isn't documented; Native seems to
* silently abort on such conditions. */
WARN
(
"Invalid palette index %u.
\n
"
,
palette_idx
);
return
WINED3DERR_INVALIDCALL
;
}
for
(
i
=
0
;
i
<
256
;
++
i
)
{
entries
[
i
].
peRed
=
device
->
palettes
[
palette_idx
][
i
].
peRed
;
entries
[
i
].
peGreen
=
device
->
palettes
[
palette_idx
][
i
].
peGreen
;
entries
[
i
].
peBlue
=
device
->
palettes
[
palette_idx
][
i
].
peBlue
;
entries
[
i
].
peFlags
=
device
->
palettes
[
palette_idx
][
i
].
peFlags
;
}
return
WINED3D_OK
;
}
HRESULT
CDECL
wined3d_device_set_current_texture_palette
(
struct
wined3d_device
*
device
,
UINT
palette_idx
)
{
TRACE
(
"device %p, palette_idx %u.
\n
"
,
device
,
palette_idx
);
/* Native appears to silently abort on attempt to make an uninitialized
* palette current and render. (tested with reference rasterizer). */
if
(
palette_idx
>=
device
->
palette_count
||
!
device
->
palettes
[
palette_idx
])
{
WARN
(
"Invalid palette index %u.
\n
"
,
palette_idx
);
return
WINED3DERR_INVALIDCALL
;
}
/* TODO: stateblocks? */
if
(
device
->
currentPalette
!=
palette_idx
)
{
device
->
currentPalette
=
palette_idx
;
dirtify_p8_texture_samplers
(
device
);
}
return
WINED3D_OK
;
}
HRESULT
CDECL
wined3d_device_get_current_texture_palette
(
struct
wined3d_device
*
device
,
UINT
*
palette_idx
)
{
TRACE
(
"device %p, palette_idx %p.
\n
"
,
device
,
palette_idx
);
if
(
!
palette_idx
)
return
WINED3DERR_INVALIDCALL
;
*
palette_idx
=
device
->
currentPalette
;
return
WINED3D_OK
;
}
HRESULT
CDECL
wined3d_device_set_software_vertex_processing
(
struct
wined3d_device
*
device
,
BOOL
software
)
{
static
BOOL
warned
;
...
...
dlls/wined3d/surface.c
View file @
496b438e
...
...
@@ -3869,19 +3869,6 @@ void surface_internal_preload(struct wined3d_surface *surface, enum WINED3DSRGB
/* TODO: Use already acquired context when possible. */
context
=
context_acquire
(
device
,
NULL
);
if
(
surface
->
resource
.
format
->
id
==
WINED3DFMT_P8_UINT
||
surface
->
resource
.
format
->
id
==
WINED3DFMT_P8_UINT_A8_UNORM
)
{
if
(
palette9_changed
(
surface
))
{
TRACE
(
"Reloading surface because the d3d8/9 palette was changed
\n
"
);
/* TODO: This is not necessarily needed with hw palettized texture support */
surface_load_location
(
surface
,
SFLAG_INSYSMEM
,
NULL
);
/* Make sure the texture is reloaded because of the palette change, this kills performance though :( */
surface_modify_location
(
surface
,
SFLAG_INTEXTURE
,
FALSE
);
}
}
surface_load
(
surface
,
srgb
==
SRGB_SRGB
?
TRUE
:
FALSE
);
if
(
surface
->
resource
.
pool
==
WINED3DPOOL_DEFAULT
)
...
...
@@ -4493,9 +4480,6 @@ void d3dfmt_p8_init_palette(const struct wined3d_surface *surface, BYTE table[25
if
(
!
pal
)
{
/* In DirectDraw the palette is a property of the surface, there are no such things as device palettes. */
if
(
device
->
wined3d
->
flags
&
WINED3D_PALETTE_PER_SURFACE
)
{
ERR
(
"This code should never get entered for DirectDraw!, expect problems
\n
"
);
if
(
index_in_alpha
)
{
...
...
@@ -4506,20 +4490,6 @@ void d3dfmt_p8_init_palette(const struct wined3d_surface *surface, BYTE table[25
}
else
{
/* Direct3D >= 8 palette usage style: P8 textures use device palettes, palette entry format is A8R8G8B8,
* alpha is stored in peFlags and may be used by the app if D3DPTEXTURECAPS_ALPHAPALETTE device
* capability flag is present (wine does advertise this capability) */
for
(
i
=
0
;
i
<
256
;
++
i
)
{
table
[
i
][
0
]
=
device
->
palettes
[
device
->
currentPalette
][
i
].
peRed
;
table
[
i
][
1
]
=
device
->
palettes
[
device
->
currentPalette
][
i
].
peGreen
;
table
[
i
][
2
]
=
device
->
palettes
[
device
->
currentPalette
][
i
].
peBlue
;
table
[
i
][
3
]
=
device
->
palettes
[
device
->
currentPalette
][
i
].
peFlags
;
}
}
}
else
{
TRACE
(
"Using surface palette %p
\n
"
,
pal
);
/* Get the surface's palette */
for
(
i
=
0
;
i
<
256
;
++
i
)
...
...
@@ -4699,35 +4669,6 @@ static HRESULT d3dfmt_convert_surface(const BYTE *src, BYTE *dst, UINT pitch, UI
return
WINED3D_OK
;
}
BOOL
palette9_changed
(
struct
wined3d_surface
*
surface
)
{
struct
wined3d_device
*
device
=
surface
->
resource
.
device
;
if
(
surface
->
palette
||
(
surface
->
resource
.
format
->
id
!=
WINED3DFMT_P8_UINT
&&
surface
->
resource
.
format
->
id
!=
WINED3DFMT_P8_UINT_A8_UNORM
))
{
/* If a ddraw-style palette is attached assume no d3d9 palette change.
* Also the palette isn't interesting if the surface format isn't P8 or A8P8
*/
return
FALSE
;
}
if
(
surface
->
palette9
)
{
if
(
!
memcmp
(
surface
->
palette9
,
device
->
palettes
[
device
->
currentPalette
],
sizeof
(
PALETTEENTRY
)
*
256
))
{
return
FALSE
;
}
}
else
{
surface
->
palette9
=
HeapAlloc
(
GetProcessHeap
(),
0
,
sizeof
(
PALETTEENTRY
)
*
256
);
}
memcpy
(
surface
->
palette9
,
device
->
palettes
[
device
->
currentPalette
],
sizeof
(
PALETTEENTRY
)
*
256
);
return
TRUE
;
}
void
flip_surface
(
struct
wined3d_surface
*
front
,
struct
wined3d_surface
*
back
)
{
/* Flip the surface contents */
...
...
dlls/wined3d/texture.c
View file @
496b438e
...
...
@@ -683,25 +683,6 @@ static void texture2d_preload(struct wined3d_texture *texture, enum WINED3DSRGB
context
=
context_acquire
(
device
,
NULL
);
}
if
(
texture
->
resource
.
format
->
id
==
WINED3DFMT_P8_UINT
||
texture
->
resource
.
format
->
id
==
WINED3DFMT_P8_UINT_A8_UNORM
)
{
for
(
i
=
0
;
i
<
sub_count
;
++
i
)
{
struct
wined3d_surface
*
surface
=
surface_from_resource
(
texture
->
sub_resources
[
i
]);
if
(
palette9_changed
(
surface
))
{
TRACE
(
"Reloading surface %p because the d3d8/9 palette was changed.
\n
"
,
surface
);
/* TODO: This is not necessarily needed with hw palettized texture support. */
surface_load_location
(
surface
,
SFLAG_INSYSMEM
,
NULL
);
/* Make sure the texture is reloaded because of the palette
* change, this kills performance though :( */
surface_modify_location
(
surface
,
SFLAG_INTEXTURE
,
FALSE
);
}
}
}
if
(
gl_tex
->
dirty
)
{
/* Reload the surfaces if the texture is marked dirty. */
...
...
dlls/wined3d/wined3d.spec
View file @
496b438e
...
...
@@ -67,7 +67,6 @@
@ cdecl wined3d_device_get_clip_plane(ptr long ptr)
@ cdecl wined3d_device_get_clip_status(ptr ptr)
@ cdecl wined3d_device_get_creation_parameters(ptr ptr)
@ cdecl wined3d_device_get_current_texture_palette(ptr ptr)
@ cdecl wined3d_device_get_depth_stencil(ptr ptr)
@ cdecl wined3d_device_get_device_caps(ptr ptr)
@ cdecl wined3d_device_get_display_mode(ptr long ptr)
...
...
@@ -78,7 +77,6 @@
@ cdecl wined3d_device_get_light_enable(ptr long ptr)
@ cdecl wined3d_device_get_material(ptr ptr)
@ cdecl wined3d_device_get_npatch_mode(ptr)
@ cdecl wined3d_device_get_palette_entries(ptr long ptr)
@ cdecl wined3d_device_get_pixel_shader(ptr)
@ cdecl wined3d_device_get_primitive_type(ptr ptr)
@ cdecl wined3d_device_get_ps_consts_b(ptr long ptr long)
...
...
@@ -117,7 +115,6 @@
@ cdecl wined3d_device_set_base_vertex_index(ptr long)
@ cdecl wined3d_device_set_clip_plane(ptr long ptr)
@ cdecl wined3d_device_set_clip_status(ptr ptr)
@ cdecl wined3d_device_set_current_texture_palette(ptr long)
@ cdecl wined3d_device_set_cursor_position(ptr long long long)
@ cdecl wined3d_device_set_cursor_properties(ptr long long ptr)
@ cdecl wined3d_device_set_depth_stencil(ptr ptr)
...
...
@@ -130,7 +127,6 @@
@ cdecl wined3d_device_set_material(ptr ptr)
@ cdecl wined3d_device_set_multithreaded(ptr)
@ cdecl wined3d_device_set_npatch_mode(ptr float)
@ cdecl wined3d_device_set_palette_entries(ptr long ptr)
@ cdecl wined3d_device_set_pixel_shader(ptr ptr)
@ cdecl wined3d_device_set_primitive_type(ptr long)
@ cdecl wined3d_device_set_ps_consts_b(ptr long ptr long)
...
...
dlls/wined3d/wined3d_private.h
View file @
496b438e
...
...
@@ -1712,11 +1712,6 @@ struct wined3d_device
struct
wined3d_surface
*
onscreen_depth_stencil
;
struct
wined3d_surface
*
auto_depth_stencil
;
/* palettes texture management */
PALETTEENTRY
**
palettes
;
UINT
palette_count
;
UINT
currentPalette
;
/* For rendering to a texture using glCopyTexImage */
GLuint
depth_blt_texture
;
...
...
@@ -2180,8 +2175,6 @@ HRESULT d3dfmt_get_conv(const struct wined3d_surface *surface, BOOL need_alpha_c
struct
wined3d_format
*
format
,
CONVERT_TYPES
*
convert
)
DECLSPEC_HIDDEN
;
void
d3dfmt_p8_init_palette
(
const
struct
wined3d_surface
*
surface
,
BYTE
table
[
256
][
4
],
BOOL
colorkey
)
DECLSPEC_HIDDEN
;
BOOL
palette9_changed
(
struct
wined3d_surface
*
surface
)
DECLSPEC_HIDDEN
;
struct
wined3d_vertex_declaration_element
{
const
struct
wined3d_format
*
format
;
...
...
include/wine/wined3d.h
View file @
496b438e
...
...
@@ -1234,8 +1234,7 @@ enum wined3d_sysval_semantic
#define WINED3DDEVCAPS_RTPATCHHANDLEZERO 0x00800000
#define WINED3DDEVCAPS_NPATCHES 0x01000000
#define WINED3D_PALETTE_PER_SURFACE 0x00000001
#define WINED3D_LEGACY_DEPTH_BIAS 0x00000002
#define WINED3D_LEGACY_DEPTH_BIAS 0x00000001
/* dwDDFX */
/* arithmetic stretching along y axis */
...
...
@@ -2212,7 +2211,6 @@ HRESULT __cdecl wined3d_device_get_clip_plane(const struct wined3d_device *devic
HRESULT
__cdecl
wined3d_device_get_clip_status
(
const
struct
wined3d_device
*
device
,
WINED3DCLIPSTATUS
*
clip_status
);
HRESULT
__cdecl
wined3d_device_get_creation_parameters
(
struct
wined3d_device
*
device
,
WINED3DDEVICE_CREATION_PARAMETERS
*
creation_parameters
);
HRESULT
__cdecl
wined3d_device_get_current_texture_palette
(
struct
wined3d_device
*
device
,
UINT
*
palette_idx
);
HRESULT
__cdecl
wined3d_device_get_depth_stencil
(
struct
wined3d_device
*
device
,
struct
wined3d_surface
**
depth_stencil
);
HRESULT
__cdecl
wined3d_device_get_device_caps
(
const
struct
wined3d_device
*
device
,
WINED3DCAPS
*
caps
);
...
...
@@ -2227,8 +2225,6 @@ HRESULT __cdecl wined3d_device_get_light(const struct wined3d_device *device, UI
HRESULT
__cdecl
wined3d_device_get_light_enable
(
const
struct
wined3d_device
*
device
,
UINT
light_idx
,
BOOL
*
enable
);
HRESULT
__cdecl
wined3d_device_get_material
(
const
struct
wined3d_device
*
device
,
WINED3DMATERIAL
*
material
);
float
__cdecl
wined3d_device_get_npatch_mode
(
struct
wined3d_device
*
device
);
HRESULT
__cdecl
wined3d_device_get_palette_entries
(
struct
wined3d_device
*
device
,
UINT
palette_idx
,
PALETTEENTRY
*
entries
);
struct
wined3d_shader
*
__cdecl
wined3d_device_get_pixel_shader
(
const
struct
wined3d_device
*
device
);
void
__cdecl
wined3d_device_get_primitive_type
(
const
struct
wined3d_device
*
device
,
WINED3DPRIMITIVETYPE
*
primitive_topology
);
...
...
@@ -2291,7 +2287,6 @@ void __cdecl wined3d_device_restore_fullscreen_window(struct wined3d_device *dev
HRESULT
__cdecl
wined3d_device_set_base_vertex_index
(
struct
wined3d_device
*
device
,
INT
base_index
);
HRESULT
__cdecl
wined3d_device_set_clip_plane
(
struct
wined3d_device
*
device
,
UINT
plane_idx
,
const
float
*
plane
);
HRESULT
__cdecl
wined3d_device_set_clip_status
(
struct
wined3d_device
*
device
,
const
WINED3DCLIPSTATUS
*
clip_status
);
HRESULT
__cdecl
wined3d_device_set_current_texture_palette
(
struct
wined3d_device
*
device
,
UINT
palette_idx
);
void
__cdecl
wined3d_device_set_cursor_position
(
struct
wined3d_device
*
device
,
int
x_screen_space
,
int
y_screen_space
,
DWORD
flags
);
HRESULT
__cdecl
wined3d_device_set_cursor_properties
(
struct
wined3d_device
*
device
,
...
...
@@ -2309,8 +2304,6 @@ HRESULT __cdecl wined3d_device_set_light_enable(struct wined3d_device *device, U
HRESULT
__cdecl
wined3d_device_set_material
(
struct
wined3d_device
*
device
,
const
WINED3DMATERIAL
*
material
);
void
__cdecl
wined3d_device_set_multithreaded
(
struct
wined3d_device
*
device
);
HRESULT
__cdecl
wined3d_device_set_npatch_mode
(
struct
wined3d_device
*
device
,
float
segments
);
HRESULT
__cdecl
wined3d_device_set_palette_entries
(
struct
wined3d_device
*
device
,
UINT
palette_idx
,
const
PALETTEENTRY
*
entries
);
HRESULT
__cdecl
wined3d_device_set_pixel_shader
(
struct
wined3d_device
*
device
,
struct
wined3d_shader
*
shader
);
void
__cdecl
wined3d_device_set_primitive_type
(
struct
wined3d_device
*
device
,
WINED3DPRIMITIVETYPE
primitive_topology
);
HRESULT
__cdecl
wined3d_device_set_ps_consts_b
(
struct
wined3d_device
*
device
,
...
...
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