Rendering: * Secondary rays * Shadows Post-processing: * Chromatic aberration * Lens dirt Scripting: * Eliminate functions that are not called / prevent them from causing type errors * Spill values in the FPU stack runs out * More checks in the execution engine * Re-execute init if shaders are changed (better yet, only execute the parts that are actually needed) * Overrides * Check for overrides on the same inputs when setting things up * Aliases * Display errors in UI * Optimizers: * Constant folding * Detect variables that are actually constants * Dead code elimination * Sampler re-use * (Output only) Support for fixed size * (Output only) Texture / framebuffer re-use Sync / inputs: * Widget for displaying single inputs * Widget for displaying overrides * Structure for undoing actions * Curve file external updates * Segment creation * Segment deletion * Segment type change * Value changes * Duration changes * Point insertion * Compaction * Local changes vs file update * Editing single values * Resizing segments * Resizing segment sections * Changing segment types * "Moving" points (duration / value changes) * Compacting curve data -> merge segments -> remove points that serve no purpose * Saving data Misc: * General overhaul (e.g. use tabs) * Color grading controls: * White balance control in components tab * Don't reset when hitting value or saturation 0 * Camera * Control for up vector - check if something more appropriate exists? * Vector controls are too sensitive