تقرير حول كتاب كيف تبرمج الرسومات والجرفيك بلغة سي 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:
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:
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:
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:
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:
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
تعليقات
إرسال تعليق