Camera-tube target softness

How finite target resolution, charge spreading, beam footprint, and analogue bandwidth soften spatial detail in a camera-tube image.

Visible effect

Fine detail spreads across neighbouring target locations

Fine edges lose crispness across the complete picture. The effect is spatial: neighbouring target locations contribute to one output sample, so texture and small lettering soften even when nothing in the scene moves.

This softness should not be diagnosed as optical defocus from appearance alone. The lens, target, scanning beam, and downstream bandwidth can all limit the final modulation transfer.

Physics

The target and readout have finite spatial resolution

Finite target response spreads one optical point across the readoutOPTICAL POINTTARGETFINITE BEAM FOOTPRINTSPREAD RESPONSE
A finite beam footprint reads several neighbouring target locations for one nominal image point.

The photoconductive layer is not an array of perfectly isolated points. Charge spreading, target thickness, the finite electron-beam footprint, focus, and signal bandwidth combine into a spatial response.

A normalized circular point-spread approximation models this softness. A vertical ratio can make the footprint elliptical when measured horizontal and vertical response differ.

Mathematics

A normalized disk gather approximates the target response

Golden-angle samples cover equal-area annuli without favouring the horizontal, vertical, or diagonal axes. Radial weights are normalized, so a uniform target keeps the same output level.

Shader

A bounded circular texture gather

Thirty-two taps cover a disk in target-pixel units. The same distribution used for aperture bokeh is weighted here as a compact target response rather than clipped into an iris polygon.

cameraTubeTargetSoftnessGLSL
// WHAT: Replace one ideal target sample with a small weighted neighbourhood.
// HOW: Gather source pixels over a golden-angle disk, weight its centre more
// strongly, normalize the sum, and optionally stretch the disk vertically.
// WHY: A finite read-beam/target response spreads local detail; a bounded disk
// communicates that footprint without pretending to model a measured tube MTF.

// uv is normalized source position. texel is one source pixel expressed in UV.
const int TARGET_SOFTNESS_SAMPLES = 32;
const float TARGET_GOLDEN_ANGLE = 2.39996323;

vec3 cameraTubeTargetSoftness(
  sampler2D source,
  vec2 uv,
  vec2 texel,
  float radiusPx,
  float verticalRatio
) {
  vec3 weightedSum = vec3(0.0);
  float weightSum = 0.0;
  vec2 radiusUv = texel * radiusPx * vec2(1.0, verticalRatio);

  // Golden-angle positions avoid the axial pattern of a square sample grid.
  // sqrt(fraction) distributes samples approximately uniformly over disk area.
  for (int index = 0; index < TARGET_SOFTNESS_SAMPLES; index += 1) {
    float fraction = (float(index) + 0.5) / float(TARGET_SOFTNESS_SAMPLES);
    float sampleRadius = sqrt(fraction);
    float sampleAngle = float(index) * TARGET_GOLDEN_ANGLE;
    vec2 diskPosition = vec2(cos(sampleAngle), sin(sampleAngle)) * sampleRadius;
    float sampleWeight = exp(-2.0 * fraction);

    vec2 sampleUv = uv + diskPosition * radiusUv;
    weightedSum += texture(source, sampleUv).rgb * sampleWeight;
    weightSum += sampleWeight;
  }

  return weightedSum / max(weightSum, 0.0001);
}
Processing pipelineBoxes mark actual render-pass boundaries.
  1. Source texturesRGB
  2. Target-response gatherOne fullscreen render pass
    • Convert response radius to texture units
    • Gather symmetric target neighbours
    • Normalize the spatial response
    • Mix the softened target
  3. Display output

Why these steps are here

  1. Convert the response radius from pixels to texture units.
  2. Place deterministic taps on equal-area annuli with a golden-angle spiral.
  3. Apply the vertical ratio to the physical footprint, not to the image coordinate system.
  4. Weight and normalize every accepted tap so the kernel preserves a flat field.
  5. Mix with the clean source only in the playground wrapper.

Notes

  • The circular kernel is a real-time approximation, not a measured Vidicon modulation-transfer function.
  • Production emulation should use a calibrated point-spread function or MTF when tube measurements are available.
  • The 32-tap gather trades wide-radius smoothness for predictable interactive cost.

References

RCA Review, September 1954 — television pickup tubes — primary camera-tube research covering aperture response, lag, flare, transfer response, scanning, and shading.

RCA Review, June 1961 — Vidicon performance — primary research on Vidicon beam operation, lag, resolution, dark current, and local contrast.