Hardware and DirectX differences
Eric ColemanSince this isn't a threaded forum yet, I don't want to get too offtopic in my orginal post, http://www.vbgamer.com/msgboard/topic.asp?TOPIC_ID=205 For the programmer database I was considering the option to upload a CAPS (hardware capabilities) file to allow a much more detailed search for specific hardware requirements. The problem I just encountered is that the DirectX Caps Viewer program returns different capabilities depending on the version of DirectX. For example, my video card has the D3DCAPS2_CANRENDERWINDOWED flag in the directx 8 version (File > About box > version 4.08.01.0881) but does NOT have that flag in the DirectX 9 version (File > About > 4.09.00.1126). Another example is that the dx8 version says MaxAnisotropy = 0, while the dx9 version says MaxAnisotropy = 1. Another difference is that certain capabilities between versions of DirectX are just different. It's not always the case that DirectX 9 has more. For example, if I select "View" > "All Caps" I get the following list for DX8 Caps2, [code] D3DCAPS2_CANCALIBRATEGAMMA No D3DCAPS2_CANRENDERWINDOWED Yes D3DCAPS2_FULLSCREENGAMMA Yes D3DCAPS2_NO2DDURING3DSCENE No D3DCAPS2_CANMANAGERESOURCE No D3DCAPS2_DYNAMICTEXTURES No [/code] And I get this for Directx 9 Caps2[code] D3DCAPS2_CANCALIBRATEGAMMA No D3DCAPS2_FULLSCREENGAMMA Yes D3DCAPS2_CANMANAGERESOURCE No D3DCAPS2_DYNAMICTEXTURES No D3DCAPS2_CANAUTOGENMIPMAP No[/code] Anyone have any thoughts or suggestions on how to integrate this information without having to make people upload a CAPS file for every version of directx? Another thing is that you can't have one caps file for all cards of a specific type, since the capabilities of a card changes with different drivers, especially when their are different versions of drivers written for different versions of windows.
VBBRWell, maybe just use the DirectX9 CAPS?
Eric ColemanNot everyone develops in Directx9, so they wouldn't have the dx9 version of the program. Some people still use Directx 7 and 8.
VBBROr, then, 3 profiles, one for DX7, 8 and 9. Maybe with a table showing where it differs or something like that.
Lachlan87The trouble is that if he makes it too hard to put up hardware profiles, people might decide it's not worth the trouble, and the whole idea would flop. Is it necessary to force the users to upload a specific version, or could you just leave it up to their preference?
Eric ColemanI think Lachlan's got a good point. The amount of information being collected is already starting to seem like a lot, and that may make people not want to take the time to fill out every textbox in the form. I think I'll try to keep it as simple as I possibly can and forget about loading any CAPS files. I still think it's a good idea though, and at a later date I could create a another database of hardware capabilities and features, and simply allow you to search the database by simply searching for someone's video card.
Almar JolingHow about this: - List of videocards / caps -Click on a video card, and get a new page, which uses 3 div's to make a "tabbed dialog". Every tab has DirectX7, 8 or 9 as caption. Click on the tab, and the right div is set to display: block, and the rest again to display:none (or something) Just an idea :)
Eric ColemanThe problem isn't a web page design problem, it's a "getting the content" problem.
VBBRWhat about... Create a small program (EXE, ASP or whatever) that gathers every information it can get from the person's PC and then sends that information to the server. (the person might edit the data if s/he wants to before it is sent)
Sr. GuapoThat seems a little "intrusive", and I have a feeling anyone with a firewall is going to have problems...
VBBRIf the person is behind a firewall but s/he connects to VBGamer instead of the opposite then I think there won't be any problems. (as I am behind a router/firewall myself) If the person finds it instrusive then s/he could just choose what to send. (if there are people that trust M$ for sending PC information, why not trust VBGamer? [:)]) Leaving the person the option to choose what will be sent makes s/he more confident that no information besides the relevant will.
messixVBBR's idea actually sounds pretty good to me. It'd cut back on the amount of effort everyone would have to go through to upload the data about their pc configuration, and it would also make it a lot easier to input it into the database as you could code the app to format the data they way you'd like to. Also, if we're thinking that some people are going to just sign up as testers, they might not have any idea on how to get the CAPS for the pc anyways. Might encourage more people to sign up if all they have to do is just run an exe that explains to them exactly what is going to be sent.
Eric ColemanWho wants to write a program that will enumerate everything from both DirectX 7 and DirectX 8, and also enumerate Managed DirectX 9? I hardly have any time to work on the website, I can't spend large amounts of time on such a program.
Lachlan87I would really recommend you start out pretty basic. Feature creep kills more than just games, and the idea doesn't require a lot of complexity.
Sr. GuapoI could probably do the managed DX9 (don't know DX7 at all), but I would need to know exactly what you want it to check for and what to do with the information...
VBBRI could write a module for the DirectX8 part... (actually I have created an enumeration DLL) Just tell me what to check.