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
9bdbf0e4
Commit
9bdbf0e4
authored
May 08, 2022
by
Chip Davis
Committed by
Alexandre Julliard
May 24, 2022
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
wined3d: Move WINED3DFMT_FLAG_BUMPMAP to the attributes group.
Move initialization of the flag itself to `wined3d_format_base_flags`. Signed-off-by:
Chip Davis
<
cdavis5x@gmail.com
>
parent
f6ee5b55
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
29 additions
and
28 deletions
+29
-28
directx.c
dlls/wined3d/directx.c
+9
-2
utils.c
dlls/wined3d/utils.c
+19
-25
wined3d_private.h
dlls/wined3d/wined3d_private.h
+1
-1
No files found.
dlls/wined3d/directx.c
View file @
9bdbf0e4
...
...
@@ -1923,9 +1923,9 @@ HRESULT CDECL wined3d_check_device_format(const struct wined3d *wined3d,
{
const
struct
wined3d_format
*
adapter_format
,
*
format
;
enum
wined3d_gl_resource_type
gl_type
,
gl_type_end
;
unsigned
int
format_flags
=
0
,
format_attrs
=
0
;
BOOL
mipmap_gen_supported
=
TRUE
;
unsigned
int
allowed_bind_flags
;
DWORD
format_flags
=
0
;
DWORD
allowed_usage
;
TRACE
(
"wined3d %p, adapter %p, device_type %s, adapter_format %s, usage %s, "
...
...
@@ -2074,7 +2074,7 @@ HRESULT CDECL wined3d_check_device_format(const struct wined3d *wined3d,
if
(
usage
&
WINED3DUSAGE_QUERY_VERTEXTEXTURE
)
format_flags
|=
WINED3DFMT_FLAG_VTF
;
if
(
usage
&
WINED3DUSAGE_QUERY_LEGACYBUMPMAP
)
format_
flags
|=
WINED3DFMT_FLAG
_BUMPMAP
;
format_
attrs
|=
WINED3D_FORMAT_ATTR
_BUMPMAP
;
if
((
format_flags
&
WINED3DFMT_FLAG_TEXTURE
)
&&
(
wined3d
->
flags
&
WINED3D_NO3D
))
{
...
...
@@ -2082,6 +2082,13 @@ HRESULT CDECL wined3d_check_device_format(const struct wined3d *wined3d,
return
WINED3DERR_NOTAVAILABLE
;
}
if
((
format
->
attrs
&
format_attrs
)
!=
format_attrs
)
{
TRACE
(
"Requested format attributes %#x, but format %s only has %#x.
\n
"
,
format_attrs
,
debug_d3dformat
(
check_format_id
),
format
->
attrs
);
return
WINED3DERR_NOTAVAILABLE
;
}
for
(;
gl_type
<=
gl_type_end
;
++
gl_type
)
{
if
((
bind_flags
&
WINED3D_BIND_RENDER_TARGET
)
...
...
dlls/wined3d/utils.c
View file @
9bdbf0e4
...
...
@@ -357,6 +357,11 @@ static const struct wined3d_format_base_flags format_base_flags[] =
{
WINED3DFMT_B5G6R5_UNORM
,
WINED3D_FORMAT_ATTR_NORMALISED
},
{
WINED3DFMT_B8G8R8_UNORM
,
WINED3D_FORMAT_ATTR_NORMALISED
},
{
WINED3DFMT_R10G10B10A2_UNORM
,
WINED3D_FORMAT_ATTR_NORMALISED
},
{
WINED3DFMT_R8G8_SNORM
,
WINED3D_FORMAT_ATTR_BUMPMAP
},
{
WINED3DFMT_R5G5_SNORM_L6_UNORM
,
WINED3D_FORMAT_ATTR_BUMPMAP
},
{
WINED3DFMT_R8G8_SNORM_L8X8_UNORM
,
WINED3D_FORMAT_ATTR_BUMPMAP
},
{
WINED3DFMT_R8G8B8A8_SNORM
,
WINED3D_FORMAT_ATTR_BUMPMAP
},
{
WINED3DFMT_R16G16_SNORM
,
WINED3D_FORMAT_ATTR_BUMPMAP
},
};
static
void
rgb888_from_rgb565
(
WORD
rgb565
,
BYTE
*
r
,
BYTE
*
g
,
BYTE
*
b
)
...
...
@@ -1751,73 +1756,62 @@ static const struct wined3d_format_texture_info format_texture_info[] =
/* Bump mapping stuff */
{
WINED3DFMT_R8G8_SNORM
,
GL_RGB8
,
GL_RGB8
,
0
,
GL_BGR
,
GL_UNSIGNED_BYTE
,
3
,
WINED3DFMT_FLAG_TEXTURE
|
WINED3DFMT_FLAG_POSTPIXELSHADER_BLENDING
|
WINED3DFMT_FLAG_FILTERING
|
WINED3DFMT_FLAG_BUMPMAP
,
WINED3DFMT_FLAG_TEXTURE
|
WINED3DFMT_FLAG_POSTPIXELSHADER_BLENDING
|
WINED3DFMT_FLAG_FILTERING
,
WINED3D_GL_EXT_NONE
,
convert_r8g8_snorm
},
{
WINED3DFMT_R8G8_SNORM
,
GL_DSDT8_NV
,
GL_DSDT8_NV
,
0
,
GL_DSDT_NV
,
GL_BYTE
,
0
,
WINED3DFMT_FLAG_TEXTURE
|
WINED3DFMT_FLAG_POSTPIXELSHADER_BLENDING
|
WINED3DFMT_FLAG_FILTERING
|
WINED3DFMT_FLAG_BUMPMAP
,
WINED3DFMT_FLAG_TEXTURE
|
WINED3DFMT_FLAG_POSTPIXELSHADER_BLENDING
|
WINED3DFMT_FLAG_FILTERING
,
NV_TEXTURE_SHADER
,
NULL
},
{
WINED3DFMT_R8G8_SNORM
,
GL_RG8_SNORM
,
GL_RG8_SNORM
,
0
,
GL_RG
,
GL_BYTE
,
0
,
WINED3DFMT_FLAG_TEXTURE
|
WINED3DFMT_FLAG_POSTPIXELSHADER_BLENDING
|
WINED3DFMT_FLAG_FILTERING
|
WINED3DFMT_FLAG_RENDERTARGET
|
WINED3DFMT_FLAG_BUMPMAP
,
|
WINED3DFMT_FLAG_RENDERTARGET
,
EXT_TEXTURE_SNORM
,
NULL
},
{
WINED3DFMT_R5G5_SNORM_L6_UNORM
,
GL_RGB5
,
GL_RGB5
,
0
,
GL_RGB
,
GL_UNSIGNED_SHORT_5_6_5
,
2
,
WINED3DFMT_FLAG_TEXTURE
|
WINED3DFMT_FLAG_POSTPIXELSHADER_BLENDING
|
WINED3DFMT_FLAG_FILTERING
|
WINED3DFMT_FLAG_BUMPMAP
,
WINED3DFMT_FLAG_TEXTURE
|
WINED3DFMT_FLAG_POSTPIXELSHADER_BLENDING
|
WINED3DFMT_FLAG_FILTERING
,
WINED3D_GL_EXT_NONE
,
convert_r5g5_snorm_l6_unorm
},
{
WINED3DFMT_R5G5_SNORM_L6_UNORM
,
GL_DSDT8_MAG8_NV
,
GL_DSDT8_MAG8_NV
,
0
,
GL_DSDT_MAG_NV
,
GL_BYTE
,
3
,
WINED3DFMT_FLAG_TEXTURE
|
WINED3DFMT_FLAG_POSTPIXELSHADER_BLENDING
|
WINED3DFMT_FLAG_FILTERING
|
WINED3DFMT_FLAG_BUMPMAP
,
WINED3DFMT_FLAG_TEXTURE
|
WINED3DFMT_FLAG_POSTPIXELSHADER_BLENDING
|
WINED3DFMT_FLAG_FILTERING
,
NV_TEXTURE_SHADER
,
convert_r5g5_snorm_l6_unorm_nv
},
{
WINED3DFMT_R5G5_SNORM_L6_UNORM
,
GL_RGB8_SNORM
,
GL_RGB8_SNORM
,
0
,
GL_RGBA
,
GL_BYTE
,
4
,
WINED3DFMT_FLAG_TEXTURE
|
WINED3DFMT_FLAG_POSTPIXELSHADER_BLENDING
|
WINED3DFMT_FLAG_FILTERING
|
WINED3DFMT_FLAG_BUMPMAP
,
WINED3DFMT_FLAG_TEXTURE
|
WINED3DFMT_FLAG_POSTPIXELSHADER_BLENDING
|
WINED3DFMT_FLAG_FILTERING
,
EXT_TEXTURE_SNORM
,
convert_r5g5_snorm_l6_unorm_ext
},
{
WINED3DFMT_R8G8_SNORM_L8X8_UNORM
,
GL_RGB8
,
GL_RGB8
,
0
,
GL_BGRA
,
GL_UNSIGNED_INT_8_8_8_8_REV
,
4
,
WINED3DFMT_FLAG_TEXTURE
|
WINED3DFMT_FLAG_POSTPIXELSHADER_BLENDING
|
WINED3DFMT_FLAG_FILTERING
|
WINED3DFMT_FLAG_BUMPMAP
,
WINED3DFMT_FLAG_TEXTURE
|
WINED3DFMT_FLAG_POSTPIXELSHADER_BLENDING
|
WINED3DFMT_FLAG_FILTERING
,
WINED3D_GL_EXT_NONE
,
convert_r8g8_snorm_l8x8_unorm
},
{
WINED3DFMT_R8G8_SNORM_L8X8_UNORM
,
GL_DSDT8_MAG8_INTENSITY8_NV
,
GL_DSDT8_MAG8_INTENSITY8_NV
,
0
,
GL_DSDT_MAG_VIB_NV
,
GL_UNSIGNED_INT_8_8_S8_S8_REV_NV
,
4
,
WINED3DFMT_FLAG_TEXTURE
|
WINED3DFMT_FLAG_POSTPIXELSHADER_BLENDING
|
WINED3DFMT_FLAG_FILTERING
|
WINED3DFMT_FLAG_BUMPMAP
,
WINED3DFMT_FLAG_TEXTURE
|
WINED3DFMT_FLAG_POSTPIXELSHADER_BLENDING
|
WINED3DFMT_FLAG_FILTERING
,
NV_TEXTURE_SHADER
,
convert_r8g8_snorm_l8x8_unorm_nv
},
{
WINED3DFMT_R8G8B8A8_SNORM
,
GL_RGBA8
,
GL_RGBA8
,
0
,
GL_BGRA
,
GL_UNSIGNED_BYTE
,
4
,
WINED3DFMT_FLAG_TEXTURE
|
WINED3DFMT_FLAG_POSTPIXELSHADER_BLENDING
|
WINED3DFMT_FLAG_FILTERING
|
WINED3DFMT_FLAG_BUMPMAP
,
WINED3DFMT_FLAG_TEXTURE
|
WINED3DFMT_FLAG_POSTPIXELSHADER_BLENDING
|
WINED3DFMT_FLAG_FILTERING
,
WINED3D_GL_EXT_NONE
,
convert_r8g8b8a8_snorm
},
{
WINED3DFMT_R8G8B8A8_SNORM
,
GL_SIGNED_RGBA8_NV
,
GL_SIGNED_RGBA8_NV
,
0
,
GL_RGBA
,
GL_BYTE
,
0
,
WINED3DFMT_FLAG_TEXTURE
|
WINED3DFMT_FLAG_POSTPIXELSHADER_BLENDING
|
WINED3DFMT_FLAG_FILTERING
|
WINED3DFMT_FLAG_BUMPMAP
,
WINED3DFMT_FLAG_TEXTURE
|
WINED3DFMT_FLAG_POSTPIXELSHADER_BLENDING
|
WINED3DFMT_FLAG_FILTERING
,
NV_TEXTURE_SHADER
,
NULL
},
{
WINED3DFMT_R8G8B8A8_SNORM
,
GL_RGBA8_SNORM
,
GL_RGBA8_SNORM
,
0
,
GL_RGBA
,
GL_BYTE
,
0
,
WINED3DFMT_FLAG_TEXTURE
|
WINED3DFMT_FLAG_POSTPIXELSHADER_BLENDING
|
WINED3DFMT_FLAG_FILTERING
|
WINED3DFMT_FLAG_RENDERTARGET
|
WINED3DFMT_FLAG_BUMPMAP
,
|
WINED3DFMT_FLAG_RENDERTARGET
,
EXT_TEXTURE_SNORM
,
NULL
},
{
WINED3DFMT_R16G16_SNORM
,
GL_RGB16
,
GL_RGB16
,
0
,
GL_BGR
,
GL_UNSIGNED_SHORT
,
6
,
WINED3DFMT_FLAG_TEXTURE
|
WINED3DFMT_FLAG_POSTPIXELSHADER_BLENDING
|
WINED3DFMT_FLAG_FILTERING
|
WINED3DFMT_FLAG_BUMPMAP
,
WINED3DFMT_FLAG_TEXTURE
|
WINED3DFMT_FLAG_POSTPIXELSHADER_BLENDING
|
WINED3DFMT_FLAG_FILTERING
,
WINED3D_GL_EXT_NONE
,
convert_r16g16_snorm
},
{
WINED3DFMT_R16G16_SNORM
,
GL_SIGNED_HILO16_NV
,
GL_SIGNED_HILO16_NV
,
0
,
GL_HILO_NV
,
GL_SHORT
,
0
,
WINED3DFMT_FLAG_TEXTURE
|
WINED3DFMT_FLAG_POSTPIXELSHADER_BLENDING
|
WINED3DFMT_FLAG_FILTERING
|
WINED3DFMT_FLAG_BUMPMAP
,
WINED3DFMT_FLAG_TEXTURE
|
WINED3DFMT_FLAG_POSTPIXELSHADER_BLENDING
|
WINED3DFMT_FLAG_FILTERING
,
NV_TEXTURE_SHADER
,
NULL
},
{
WINED3DFMT_R16G16_SNORM
,
GL_RG16_SNORM
,
GL_RG16_SNORM
,
0
,
GL_RG
,
GL_SHORT
,
0
,
WINED3DFMT_FLAG_TEXTURE
|
WINED3DFMT_FLAG_POSTPIXELSHADER_BLENDING
|
WINED3DFMT_FLAG_FILTERING
|
WINED3DFMT_FLAG_RENDERTARGET
|
WINED3DFMT_FLAG_BUMPMAP
,
|
WINED3DFMT_FLAG_RENDERTARGET
,
EXT_TEXTURE_SNORM
,
NULL
},
{
WINED3DFMT_R16G16B16A16_SNORM
,
GL_RGBA16_SNORM
,
GL_RGBA16_SNORM
,
0
,
GL_RGBA
,
GL_SHORT
,
0
,
...
...
dlls/wined3d/wined3d_private.h
View file @
9bdbf0e4
...
...
@@ -6111,6 +6111,7 @@ extern enum wined3d_format_id pixelformat_for_depth(DWORD depth) DECLSPEC_HIDDEN
#define WINED3D_FORMAT_ATTR_FLOAT 0x00000001
#define WINED3D_FORMAT_ATTR_INTEGER 0x00000002
#define WINED3D_FORMAT_ATTR_NORMALISED 0x00000004
#define WINED3D_FORMAT_ATTR_BUMPMAP 0x00000008
/* WineD3D pixel format flags */
#define WINED3DFMT_FLAG_POSTPIXELSHADER_BLENDING 0x00000001
...
...
@@ -6122,7 +6123,6 @@ extern enum wined3d_format_id pixelformat_for_depth(DWORD depth) DECLSPEC_HIDDEN
#define WINED3DFMT_FLAG_FBO_ATTACHABLE 0x00000040
#define WINED3DFMT_FLAG_FBO_ATTACHABLE_SRGB 0x00000080
#define WINED3DFMT_FLAG_DECOMPRESS 0x00000100
#define WINED3DFMT_FLAG_BUMPMAP 0x00000400
#define WINED3DFMT_FLAG_SRGB_READ 0x00000800
#define WINED3DFMT_FLAG_SRGB_WRITE 0x00001000
#define WINED3DFMT_FLAG_VTF 0x00002000
...
...
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