Commit a3028ab9 by Jamie Madill

Add baked DXGI format info for 2D/3D/Cube textures.

This saves us from querying a lot of the formats on startup. BUG=angleproject:1014 Change-Id: I499625b9a131cf10791d1580d7a7b477a161045a Reviewed-on: https://chromium-review.googlesource.com/275773Reviewed-by: 's avatarKenneth Russell <kbr@chromium.org> Reviewed-by: 's avatarGeoff Lang <geofflang@chromium.org> Tested-by: 's avatarJamie Madill <jmadill@chromium.org>
parent 396ee48b
...@@ -143,23 +143,39 @@ def do_format(format_data): ...@@ -143,23 +143,39 @@ def do_format(format_data):
for format_name, format_support in sorted(format_data.iteritems()): for format_name, format_support in sorted(format_data.iteritems()):
always_supported = [] always_supported = set()
never_supported = [] never_supported = set()
optionally_supported = [] optionally_supported = set()
fl_11_0_supported = set()
for json_flag, support in format_support.iteritems(): for json_flag, support in format_support.iteritems():
d3d_flag = json_flag_to_d3d[json_flag] d3d_flag = [json_flag_to_d3d[json_flag]]
# TODO(jmadill): process different support if support == 'check':
if support != 'check': optionally_supported.update(d3d_flag)
elif support == 'always':
always_supported.update(d3d_flag)
elif support == 'never':
never_supported.update(d3d_flag)
elif support == '11_0':
fl_11_0_supported.update(d3d_flag)
elif support == '11_1':
# TODO(jmadill): D3D 11.1 handling
never_supported.update(d3d_flag)
elif support == 'dxgi1_2':
# TODO(jmadill): DXGI 1.2 handling.
always_supported.update(d3d_flag)
else:
print("Data specification error: " + support) print("Data specification error: " + support)
sys.exit(1) sys.exit(1)
optionally_supported += [d3d_flag]
for feature_level in ['10_0', '10_1', '11_0']: for feature_level in ['10_0', '10_1', '11_0']:
always = ' | '.join(sorted(always_supported)) always_for_fl = always_supported
if feature_level == '11_0':
always_for_fl = fl_11_0_supported.union(always_for_fl)
always = ' | '.join(sorted(always_for_fl))
never = ' | '.join(sorted(never_supported)) never = ' | '.join(sorted(never_supported))
optional = ' | '.join(sorted(optionally_supported)) optional = ' | '.join(sorted(optionally_supported))
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment