تقرير حول كتاب كيف تبرمج الرسومات والجرفيك بلغة سي VGA Programming in C



VGA Programming in C


David Brackeen wrote this lesson for a technological Writing classes in 96. Although the topic of VGA programming is antique, this tutorial is still useful for learning computer graphics, programming, and developing hobbyist operating systems.

Who this tutorial is for

This tutorial covers many theme in VGA programming in the C programming language. Users of this tutorial should have a complete understanding of C and should also have a knowledge with DOS and BIOS function calls and interrupts.
A general familiarity of trigonometry and/or geometry would be helpful
As with any sort of programming, an understanding of the hexadecimal number system would be helpful.


VGA Basics

Contents in this section:

    * What is VGA?
    * Structure of mode 0x13
    * Setting the video mode
    * Plotting a pixel
    * Mode 0x13 memory
    * Plotting a pixel quickly
    * Program: pixel.c
    * Shifting



Primitive Shapes & Lines

Contents in this section:

    * Why shapes and lines?
    * Drawing lines
    * Bresenham's algorithm
    * Program: lines.c
    * Drawing polygons
    * Drawing rectangles
    * Program: rect.c
    * Using tables to speed up calculations
    * Fixed-point math
    * Drawing circles
    * Program: circle.c


Bitmaps & Palette Manipulation

Contents in this section:

    * What is a bitmap?
    * The BMP file format
    * Drawing bitmaps
    * Program: bitmap.c
    * Palette manipulation
    * Program: palette.c
    * Vertical retrace


Mouse Support & Animation

Contents in this section:

    * Why a mouse?
    * Initializing the mouse
    * Mouse status
    * Mouse motion
    * Mouse buttons
    * Animation
    * Program: mouse.c


Double Buffering, Page Flipping, & Unchained Mode

Contents in this section:

    * Why double buffering and/or page flipping?
    * Double buffering
    * Page flipping
    * Structure of unchained mode
    * Tweaking mode 0x13
    * Plotting a pixel in unchained mode
    * Page flipping in unchained mode
    * Program: unchain.c
    * Other unchained modes
    * Program: modes.c

تعليقات

المشاركات الشائعة من هذه المدونة

الشاشة الإفتتاحية لإكسل

أوامر الجافا سكريبت JavaScript

مسائل علي الترانزستورات MOSFET