Skip to content

Latest commit

 

History

History
 
 

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 

README.md

CPU Buffer Demo

A Windows GDI-based demonstration that creates a visually intensive animation using multiple buffers to increase CPU usage. This project showcases advanced Windows API usage and graphics programming techniques.

⬇️ Download

Features

  • Double-buffered rendering system
  • Real-time animation with configurable parameters
  • Pause/Resume functionality
  • Window focus handling
  • GDI graphics manipulation
  • CPU-intensive graphics operations

Technical Details

The project implements a sophisticated graphics system using:

  • Windows GDI (Graphics Device Interface)
  • Double buffering for smooth rendering
  • Custom window class and message handling
  • Real-time animation timing system
  • Bitmap manipulation and distortion effects

Key Components

  1. Backbuffer System

    • Manages primary and secondary buffers
    • Handles device context creation and management
    • Implements buffer swapping for smooth rendering
  2. Object System

    • Manages animated objects with properties like:
      • Amplitude
      • Frequency
      • Offset
      • Position and dimensions
  3. Message Loop

    • Implements a custom message processing system
    • Handles window events and user input
    • Manages animation timing and frame updates

Usage

  1. Build the project using Cargo:

    cargo build --release
  2. Run the executable:

    cargo run --release
  3. Controls:

    • Press Pause key to toggle animation
    • Click window to force redraw
    • Close window to exit

Dependencies

  • winapi: Windows API bindings

Warning

This demo is designed to be CPU-intensive and should be used with caution. It's recommended to run this in a controlled environment where you can monitor system resources.

Author

Created by @5mukx