Closed Bug 593738 Opened 9 years ago Closed 9 years ago

D3D is not ON by default for compatible graphic card

Categories

(Core :: Graphics, defect)

x86_64
Windows XP
defect
Not set

Tracking

()

RESOLVED INVALID

People

(Reporter: bugmozz, Unassigned)

References

Details

Attachments

(2 files)

That GPU does not meet the current requirements for D3D9 retained layers.
OK,
then how/what is minimum system requirement ?
Why are we not correctly pulling out vendor/device/driver version etc in about:support?
(In reply to comment #1)
> That GPU does not meet the current requirements for D3D9 retained layers.

(In reply to comment #2)
> then how/what is minimum system requirement ?

no reply ?
please tell me/us ?
what is current requirements ?
(In reply to comment #4)
> (In reply to comment #1)
> > That GPU does not meet the current requirements for D3D9 retained layers.
> 
> (In reply to comment #2)
> > then how/what is minimum system requirement ?
> 
> no reply ?
> please tell me/us ?
> what is current requirements ?

It's quite complicated, but the requirement this device is most likely failing on is that it needs support for 4096x4096 textures.
(In reply to comment #5)

thanks for reply.
just a question but is it specific to a certain revision of D3D9?, there are 4 revisions after all, 9.0 - 9.0c

probably be safer (but somewhat misleading) to say that Dx9c Compliant hardware is required for D3D Layers, since the first Dx9 cards (Radeon R300, Radeon R400) only did 2048x2048, while the Geforce cards have supported 4096x4096 since Geforce 3(D3D8).

4096*2 is a Dx9c/SM3 compliance requirement going by memory.
(In reply to comment #7)
> just a question but is it specific to a certain revision of D3D9?, there are 4
> revisions after all, 9.0 - 9.0c
> 
> probably be safer (but somewhat misleading) to say that Dx9c Compliant hardware
> is required for D3D Layers, since the first Dx9 cards (Radeon R300, Radeon
> R400) only did 2048x2048, while the Geforce cards have supported 4096x4096
> since Geforce 3(D3D8).
> 
> 4096*2 is a Dx9c/SM3 compliance requirement going by memory.

I believe your right, we only require SM2 though, and as you say there's hardware that supports 4096x4096 with SM2.

We check caps here if you want to look at it yourself:
http://mxr.mozilla.org/mozilla-central/source/gfx/layers/d3d9/DeviceManagerD3D9.cpp#549
Attached image shot from about:support
Is there any explanation why the GM45 chipset graphics would be blacklisted though? The graphics portion is "GMA X4500HD", which, according to Wikipedia and GPU-Z supports SM4.0 with a max texture size of 4096x4096. Since about 3-4 days ago in the nightlies though, both DirectWrite and Direct2D come up as disabled, though GPU Accelerated Windows IS enabled. This is on WIn7 x64 with the latest intel drivers.
OS: Windows XP → Windows 7
Hardware: x86 → x86_64
Thanks, but I assume that a procedure as described in that other bug's comment shouldn't be necessary? Mozilla shouldn't be black listing this device in the first place is the problem.
Intel lies about their devices capabilities. The x4500 doesn't even have proper D3D8 support so it can't be trusted to support D3D9.
i don't know technical specs but any dx9c application i run on X4500 and X3100 runs, slowly but runs.
Agreed. I don't think it's an issue of Intel "lying" in this case. The X4500HD is a DX10 part, a crappy one, but still DX10. It was running fine up until the blacklist was put in place.
May be it is a consequence of bug 594976.
Summary: D3D does not ON by default → D3D is not ON by default for compatible graphic card
The 4096 texture size requirement leaves out a lot of otherwise fine cards. It wasn't until the SM3 cards that 4096 became common. The Radeon 9500-X880 should be quite fine for layers acceleration but won't work because of this, as well as many Intel cards. The Desktop Window Manager in Vista/7 works fine with those.

Why is 4096 required? If it puts a limit to something such as image size, 4096 is too low anyway and you must be able to subdivide into smaller textures. If it's window size, 2048 has you covered up to 1920x1200 which is quite reasonable.
(In reply to comment #16)
> The 4096 texture size requirement leaves out a lot of otherwise fine cards. It
> wasn't until the SM3 cards that 4096 became common. The Radeon 9500-X880 should
> be quite fine for layers acceleration but won't work because of this, as well
> as many Intel cards. The Desktop Window Manager in Vista/7 works fine with
> those.
> 
> Why is 4096 required? If it puts a limit to something such as image size, 4096
> is too low anyway and you must be able to subdivide into smaller textures. If
> it's window size, 2048 has you covered up to 1920x1200 which is quite
> reasonable.

It certainly has to do with image size, subdividing is not trivial though, there are problems concerning seaming which are very hard to solve.

Window size is a more serious problem, take for example a dual 1680x1050 setup which if you extend the window over two desktops already violates the 2048 requirement. We will going forward most likely work with smaller texture sizes, and fallback to software rendering as soon as a larger size is required.
As this graphic card does not meet the minimal HW requirement for D3D9 acceleration, I close the bug as "Won't fix".

I filed bug 601079 to update the minimal HW requirement page.
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → WONTFIX
Duplicate of this bug: 600625
OS: Windows 7 → Windows XP
Resolution: WONTFIX → INVALID
You need to log in before you can comment on or make changes to this bug.