RGB による色の設定では、コンピュータ・スクリーンの小さな赤・緑・青のドットをどのように光らせるかを決めるために、赤・緑・青の分量と割合を指定せねばなりません。白色は赤・緑・青それぞれが最大のときであり (1,1,1) を指定します。黒色は (0,0,0) を指定します。最も明るい赤色は (1,0,0) で指定します。これは赤色が最大であり、緑色と青色が最小であることを意味します。
下に VPython で使える RGB 色指定の色名の例をいくつか示します。
    (1,0,0) color.red | (1,1,0) color.yellow | (0,0,0) color.black |
    (0,1,0) color.green | (1,0.5,0) color.orange | (1,1,1) color.white |
    (0,0,1) color.blue | (0,1,1) color.cyan | |
     | (1,0,1) color.magenta |
下のように自分で色を指定して使うこともできます。
(0.5, 0.5, 0.5) 黒っぽい灰色
(1,0.7,0.2) 赤銅色
色はコンピュータによって、また 3D の照明具合によって異なって見えます。上で定義した色名は近似的な色に過ぎません。RGB の組み合わせによる色指定は色補正(ガンマ補正)によって変わらないからです。
VPython のデモプログラムにある colorsliders.py は、RGB スライダを調整することで見える色を変化させます。すなわちプログラムに必要な三つの RGB の色の値を決められます。そのプログラムはまた HSV スライダも備えています。hue:色相, saturation:彩度(どれぐらの白色を加えるかで色相の弱め方を指定します), value:明度を指定できます。これも色を記述する RGB とは別の方法です。
現在のところ VPython は RGB 色指定のみしか使えません。しかし RGB 三色と HSV 三パラメータを互いに変換する関数を備えています。
c2 = color.rgb_to_hsv(c) # RGB を HSV に変換します
print hsv # (0.16667, 1, 1)
c3 = color.hsv_to_rgb(c2) # HSV から RGB に戻します
print c3 # (1, 1, 0)
他の例です: sphere(radius=2, color=hsv_to_rgb( (0.5,1,0.8) )