NCOTWIKI
NCoT Wiki
Bresenham Line Algorithm
About Blog Videos Projects
Initializing search
    • NCoT Wiki
    • How this wiki is organised
    • Game Development
      • AI and Pathfinding
        • AStar Pathfinding
        • Move Toward
        • Pathfinding and Navigation
        • Steering Arrive (seek with slowdown)
        • Steering Seek
        • Steering Wander
        • Steering Behaviours
      • Camera
        • Camera Follow (with deadzone)
        • Camera Follow (with lerp smoothing)
        • Moving a camera
        • Screen Shake
      • Collision and Physics
        • AABB vs AABB (Axis-Aligned Bounding Box)
        • Basic Impulse Resolution (with restitution)
        • Circle vs AABB
        • Circle vs Circle
        • Collision Detection
        • Collision Response
        • Friction Drag
        • Gravity
        • impulse
        • Penetration Resolution (push out)
        • Reflection (bounce off a surface)
        • Separating Axis Theorem (SAT) convex polygons
        • Spatial Partitioning (uniform grid)
      • Design
        • Design by Subtraction, Not Addition
        • Enemies as Palette, Not Characters
        • Genre as Constraint Satisfaction
        • High Score Tables as the Entire Metagame
        • Juice Before Content
        • Level Design as Grammar
        • Old-School Gamedev Wisdom
        • Playtesting Was Just Playing It Yourself A Lot
        • Procedural Generation as a Space Saving Trick
        • Start From the Verb, Not the World
        • The Arcade Economics Rule Design for the Quarter
        • The Can I Explain It on the Cabinet Art Test
        • The Kishotenketsu Boss Structure
        • The Manual Did Design Work the Game Couldnt
      • Movement
        • Acceleration friction movement
        • Air control tuning three models
        • Coyote Time
        • Crouch and crawl with hitbox change
        • Dash with cooldown and invincibility
        • Double jump and triple jump
        • Floaty glide parachute toggle
        • Grid-based snap movement
        • Jump buffering
        • Jump gravity and coyote time
        • Ledge grab and climb
        • Momentum based vs snappy top down
        • Movement and Physics
        • Top down 8 directional movement
        • Twin stick movement independent of aim
        • Variable jump height
        • Wall-slide and wall-jump
    • Graphics
      • Generating a gradient image
      • Netpbm File Format
      • Writing PPM Files
      • Dithering
        • Bit Depth
        • Dithering
        • Ordered dithering with Bayer Matrix
        • Quantisation
        • Quantisation Error
        • Random Dithering
        • Thresholding
      • Procedural Generation
        • L System
        • Mandelbrot
        • Midpoint Displacement
        • Perlin Noise
      • Rasterisation
        • Affine Texture Mapping
        • Basic 3D Software Rasterisation
        • Bresenham Line Algorithm
        • Bresenhams Line Drawing Algorithm
        • Bresenhams Line Drawing Algorithm Geeks4Geeks
        • Barycentric weights
        • Drawing a line on a screen
        • decision parameter
        • Edge Function
        • Implementing a software rasteriser
        • Simple 3D Projection
        • Vertex Colouring
        • World - Screen Transforms
    • Hardware
      • ESP32 8048S070 LCD Init
      • 3D Printing
        • Ender 3 Slicer G-code
      • Agon Light
        • Agon Light Tilemap
    • Health
      • Gym Notes
    • Linux
      • Add Godot to the KDE Application Menu
      • Bind Shell
      • Hibernation on Lenovo ThinkPad T14 Arch Linux
      • Proxmox Update Instructions
      • Reverse Shell
      • Setting the Time in Arch Using NTP
      • TrueNAS / NFS / LXC / Nextcloud Permission Issue Notes
      • Udev Rules
      • Upgrading Nextcloud Manually
      • UxPlay to OBS Setup
    • Maths
      • Binary multiplication method
      • Easing Functions
      • equation for a straight line
      • Euler Integration (basic physics step)
      • Linear Interpolation (Lerp)
      • Long Decimal Multiplication
      • Random Number Generator
      • Vector Operations
      • Linear Algebra
        • 2D Rotation around a point
        • 3D Rotations with matrices
        • 3D Rotations without matrices
        • Homogeneous 4x4 matrices
        • Transformation Matrices
    • Programming
      • 2 dimensional C array
      • C Coding Convention
      • Clangd
      • Duff's Device
      • Git Instructions
      • Neovim
      • Motion Canvas
        • Animating Code
        • Creating a New Motion Canvas Project
        • Motion Canvas TypeScript and React
    • Recipes
      • Chicken Tikka Masala
      • Chickpea Protein Salad
      • Chorizo and Bean Stew
      • Creamy Cajun Chicken Pasta
      • Easy One Pot Chicken Ramen
      • Mince Hash
      • Naked Chicken Burrito Bowl
      • Noodle Bowls
      • One Pot Creamy Garlic Chicken and Rice
      • Overnight Oats
      • Potato and Chickpea Curry
      • Potato Frittata
      • Protein Bars
      • Protein Granola Bars Recipe
      • protein pancakes
      • Spicy Chicken with Couscous

    Bresenham Line Algorithm

    • Raster line-generating algorithm
    • Scan conversion uses only incremental integer calculations
    • More efficient than DDA line drawing algorithm
    • Also known as the Midpoint line algorithm

    Drawing a line on a screen requires using Equation of a Straight Line like in basic geometry.

    © 2026 NCoT Technology, don't steal my content kthx.
    Last built 2026-10-24 09:00:01