マテリアルのアンビエントカラーを設定すると陰の部分が真っ黒になるのを防ぐことができます
DrawCube3D の前に以下の文を追加してみてください、陰の部分が真っ黒にならなくなります
MATERIALPARAM Material ;
Material.Diffuse = GetColorF( 1.0f, 1.0f, 1.0f, 1.0f ) ;
Material.Ambient = GetColorF( 1.0f, 1.0f, 1.0f, 1.0f ) ;
Material.Specular = GetColorF( 1.0f, 1.0f, 1.0f, 1.0f ) ;
Material.Emissive = GetColorF( 0.0f, 0.0f, 0.0f, 0.0f ) ;
Material.Power = 20.0f ;
SetMaterialParam( Material ) ;
陰の部分の色は上記の中の
Material.Ambient = GetColorF( 1.0f, 1.0f, 1.0f, 1.0f ) ;
こちらで決定していますので、もし仮に陰の色を赤色にしたい場合は
Material.Ambient = GetColorF( 1.0f, 0.0f, 0.0f, 1.0f ) ;
としてください
陰の部分の色の明るさを決定しているのはライトのアンビエントカラーなので、
もし陰の部分の明るさを変更したい場合は SetLightAmbColor を使用してください
// 例:陰の部分の明るさを0.5に設定する( デフォルトは 0.33f です )
SetLightAmbColor( GetColorF( 0.5f, 0.5f, 0.5f, 1.0f ) ) ;