Game Development Community

[RESOLVED] Black Clouds

by Steve Acaster · in Torque 3D Professional · 09/29/2009 (11:46 am) · 7 replies

Cloud Layer only comes in black on some GPUs.
OD's screenies on main blog, not sure what his GPU is, but it's way better than mine.
www.garagegames.com/community/blogs/view/18393/2#comment-138677
www.garagegames.com/community/blogs/view/18393/4#comment-138745
Original bug post. www.garagegames.com/community/forums/viewthread/97361

Also I think I've seen this on ATI screenies, so it might not just be an Nvidia issue. (can't link that)

7900GS

See bugfix below

#1
09/29/2009 (6:58 pm)
We have a couple of machines we test on and with an NVIDIA GeForxce 9600GT the sky looks fine.
With a 9700GT/GO it comes up blackish as in the images Steve linked.

On the 9600 dxdiag output:
---------------
Display Devices
---------------
Card name: NVIDIA GeForce 9600 GT
Manufacturer: NVIDIA
Chip type: GeForce 9600 GT
DAC type: Integrated RAMDAC
Device Key: Enum\PCI\VEN_10DE&DEV_0622&SUBSYS_12701462&REV_A1
Display Memory: 1907 MB
Dedicated Memory: 499 MB
Shared Memory: 1407 MB
Current Mode: 1680 x 1050 (32 bit) (60Hz)
Monitor: BenQ FP202WA
Driver Name: nvd3dum.dll,nvwgf2um.dll,nvwgf2um.dll
Driver Version: 8.16.0011.9062 (English)
DDI Version: 10
Driver Attributes: Final Retail
Driver Date/Size: 8/17/2009 00:57:00, 7569920 bytes

On the 9700GT
---------------
Display Devices
---------------
Card name: NVIDIA GeForce 7900 GT/GTO
Manufacturer: NVIDIA
Chip type: GeForce 7900 GT/GTO
DAC type: Integrated RAMDAC
Device Key: Enum\PCI\VEN_10DE&DEV_0291&SUBSYS_080110B0&REV_A1
Display Memory: 512.0 MB
Current Mode: 1280 x 1024 (32 bit) (60Hz)
Monitor: SyncMaster 940BF,SyncMaster Magic CX903B/CX916B(Digital)
Monitor Max Res: 1280,1024
Driver Name: nv4_disp.dll
Driver Version: 6.14.0011.9062 (English)
DDI Version: 9 (or higher)
Driver Attributes: Final Retail
Driver Date/Size: 8/17/2009 00:57:00, 5845760 bytes
#2
09/29/2009 (10:51 pm)
Yea... seems like an issue with some Geforces... not all of them.

We're looking into it.

THREED-753
#3
09/29/2009 (11:43 pm)
Not just GEForces, I can confirm black sky on an HD 3870
#4
10/21/2009 (12:03 pm)
On my Nvidia 8800, the clouds look fine. But on my ATI 4650 they are black.
#5
10/22/2009 (3:30 am)
Think i got the fix for this.

In CloudLayer::renderObject in source\environment\cloudLayer.cpp around line 286:

MatrixF xform(GFX->getProjectionMatrix());
   xform *= GFX->getViewMatrix();
   xform *= GFX->getWorldMatrix();

   mShaderConsts->set( mModelViewProjSC, xform );

   mShaderConsts->set( mEyePosWorldSC, camPos ); // ADDED!

   LightInfo *lightinfo = gClientSceneGraph->getLightManager()->getSpecialLight(LightManager::slSunLightType);
   const ColorF &sunlight = lightinfo->getAmbient();

Pretty lame bug... we have new stuff in 1.1 which now asserts when shader constants are unset.
#6
10/22/2009 (6:53 am)
Good fix, Tom. Coloured clouds are back on the old 7900GS. Moving to RESOLVED.
#7
10/22/2009 (9:27 pm)
Sweet!