can you contact devrel with a link to your test case and application ? (and which driver you were using).
fyi, on consumer boards, crossfire is not enabled by default, and is limited to fullscreen anyway.
contact devrel? sorry kinda new to the form room :S
Anyway Ill paste it here for now... I am running CCC 10.9, the motherboard is a Asus Rampage II extreme crossfire and SLI compatible. Running windows 7 x64 Pro. Ive pasted my test code at this address below.
I'd like to hear from an official AMD person on this one. On a typical use of VBO's one would do something like this...
glBufferData(GL_ARRAY_BUFFER, num_vert, verts, GL_STATIC_DRAW);
[/code]There are other calls, but that doesn't matter, as the call to glBufferData() causes the video drivers to crash. glGetString(GL_EXTENSIONS) very clearly lists VBO's as supported by the device. This occurs on my 4870x2 on win7-64. I checked on Ubuntu-x64 and it works as expected.What's up AMD?
Windows Update solved the initial problem... however...
Calling glBufferData(GL_ELEMENT_ARRAY_BUFFER,...) does not update the contents of the bound Element Array buffer.
Ok, that's a problem, but not the end of the world... so naturally one would call glBufferSubData()... except THAT will crash the video card drivers now.
So the method I've found that does work, is this...
Initialised your VBO with...
glBufferData(GL_ELEMENT_ARRAY_BUFFER, SizeOfYourDataInBytes, NULL, type);
void *p = glMapBuffer(GL_ELEMENT_ARRAY_BUFFER, GL_WRITE_ONLY);
memcpy(p, YourDataPtr, SizeOfYourDataInBytes);
If you're feeling (justifiably) paranoid, you can use GL_READ_WRITE instead and read a couple of bytes to check they're actually there.
From my limited testing, you can just go ahead and use whatever you want on Linux, I can't comment on other versions of windows although I suspect the Vista x64 drivers have similar "features".
Our engineering doesn't see anything wrong with the code.
You mentions that it works fine on a number of other systems.
Are these non AMD graphics cards?
If not, what AMD graphics cards don't show this issue?
You also mention that it works fine under Linux. Our linux driver shares almost all code with the windows one.
Could you try a fresh install and report back?
I hate to bring back an old thread, but this is relevent to the issue posted.
I'm having the same issue on my 4870x2.
glBufferData does not copy the data like it's suppose to.
I can confirm that this works as expected in Catalyst 9.12. However it stopped working with the next driver I was able to find (Catalyst 10.7). This function does not work in every Catalyst version since then. I tested this on a new Windows installation. Several other PC's with different graphics card types work just fine, it's only this 4870x2 and the Catalyst 10.x+ 11.x+ drivers.
I can confirm this, as I have the exact same problem. glBufferData does not work as expected.
I'm using Catalyst 11.11 at this time.