八ビットで色を表すとき、黒は 0、白は 255 です。単純な話に見えて、実際の画像処理はここで一段ひねりを入れます。人間の目は光の量に比例して明るさを感じるわけではなく、暗いほうの差により敏感だからです。そのため sRGB のような規格では、符号値と実際の光量のあいだにガンマと呼ばれる非線形の変換を挟み、暗い側に多くの符号値を割り当てます。限られたビット数を、暗部に厚く配る。明るいところは多少雑に扱っても気づかれないが、暗いところは雑にすると縞が出る。
この配り方を知ってから、暗さの描写についての考えが少し変わりました。厚く配られているのは 0 ではなく、0 の少し上の帯です。0 そのものには階調がない。何も入れられない。文章でも同じことが起きていて、完全な暗黒を書くと、その段落から情報が消えます。読者に渡せるものがなくなる。真っ暗だと書けば書くほど、場面は空白へ近づいていく。長さで補おうとすると、かえって空白が広がる。
では暗さの描写が効いているとき、実際には何が書かれているのか。輪郭がかろうじて分かる、色は分からない、距離の見当が狂う、床の傾きだけが足裏に届く——低い符号値の帯です。暗い場所では網膜の桿体細胞が主に働くために色の識別が落ちる、というのは生理学の側の説明ですが、暗部へ階調を厚く配るという符号化の設計と、妙な具合に重なります。人間は暗さの中で、明るさの差だけを頼りに情報を拾っている。だから描写も差分で書くしかない。
暗部の処理には、もう一つよく使われる手があります。階調の刻みが足りないと、なめらかに変化しているはずの面に縞が現れる。バンディングと呼ばれる劣化で、これを目立たなくするために、わざと微小な乱数を混ぜます。ディザと呼ばれる処理です。加えているのはノイズなのに、見えるものはむしろ増える。規則正しい段差を不規則な粒へ置き換えると、目がそれを縞として拾えなくなるからです。描写ののっぺり感も、似た仕組みで起きているように見えます。均等に暗いと書き続けると、読者は段差のない面を見せられている状態になる。そこへ不規則な粒を撒く。床板の軋み、埃の匂い、壁から離れた側だけ冷たい空気。撒き方に規則がないほうが、かえって面は立ちます。ディザが効くのは、粒が細かく、量が少ないときだけです。混ぜすぎれば画像はざらつくだけになる。描写でも事情は同じで、拾わせる刺激は二つか三つで足ります。
ここで自分に反論しておきます。それなら「墨を流したような」といった真の黒を志向する言い方は失敗なのか。そうは思えません。あの表現が書いているのは 0 ではなく、0 に至る過程です。墨は流れ、広がり、まだ白い部分を残している。静止した黒ではなく、黒くなっていく運動を書いている。ゼロを直接書かずにゼロへ向かう、という抜け道です。同じことは、光が一つずつ消えていく手順を書く場合にも言えます。消える前の一灯が、まだ階調を保っている。
符号値と違って、人間の側には順応があります。網膜が暗さに慣れるには時間がかかり、桿体が十分な感度を取り戻すまでにおよそ三十分を要するとされます。同じ光量の廊下でも、明るい部屋から出てきた直後と、夜道を歩き続けたあとでは、まるで別の場所になる。つまりこの形容詞が指しているのは、場面の光量そのものではなく、人物が直前にどこにいたかとの差です。描写の順序が効くのはそのためで、書き込む前に直前の明るさを一行置いておけば足ります。台所の蛍光灯を消してから廊下へ出る一行があるかないかで、あとに続く数行の効き方は変わります。逆に、長く闇に置かれた人物の視界は次第に開けていくはずで、同じ場所を同じ語で書き続けると、時間が止まって見える。順応の速さを場面の時計として使う手も、ここから出てきます。
ついでに気になることがあります。この形容詞は「その方面に暗い」と言えば知識の乏しさを指し、対義語のほうも「その方面に明るい」で知識の豊かさを指す。光量の語彙が、そのまま情報量の語彙へ転用されている。表情や性格についても同じ語が使われますが、こちらは読み取れる情報が少ないという意味に近い。符号値の話と、知識や表情の話が同じ一語を共有しているのは、たぶん偶然ではないのでしょう。いずれにせよ、実務上の指針は一つに絞れます。暗さを書くときは、まだ見えているものを一つだけ残す。ゼロではなく低い値を書く。読者の目も、そこにある差分にしか反応できません。