Would you like to tell us about a lower price? If you are a seller for this product, would you like to suggest updates through seller support? Gives instructions in programming with SVGAlib, demonstrates how to create games and other graphical applications, and gives code examples. The author is an experienced programmer and currently owns and operates an Internet provider. Annotation c. Book News, Inc.
|Published (Last):||9 April 2017|
|PDF File Size:||5.43 Mb|
|ePub File Size:||4.72 Mb|
|Price:||Free* [*Free Regsitration Required]|
If so, look no further. Email Article Print Article. Which topic are you interested in? Data Storage. IT Management. What is your company size? What is your job title? What is your job function? Searching our resource database to find your matches Enterprise Development Update. Most Popular Developer Stories. Today This Week All-Time. Most Commented On.
Acceptable Use Policy. Advertiser Disclosure:. Thanks for your registration, follow us on our social networks to keep up-to-date. What is SVGAlib? SVGAlib is a low-level graphics library for Linux. It augments the C programming language, which doesn't provide support for graphics. Yes, but they all rely on external library functions.
C itself can only give you text. That's because all graphic functions are system dependent and non-portable. Unfortunately, graphic routines coded for one operating system will not work under another unless they are completely rewritten. To code graphics in C under Linux, it is necessary to use an external set of functions which are native to Linux.
SVGAlib is one such set. This server must be started prior to using any applications that require X. Furthermore, the X server is unabashedly system-intensive i. SVGAlib, on the other hand, requires no such preparation. If SVGAlib is properly installed, the average user shouldn't even be aware of its existence. Finally, SVGAlib will not affect your virtual terminals, leaving you free to run multiple applications like always. You can have normal text on one terminal and graphics on another.
Also, poorly written SVGAlib applications can mung up your console, requiring a reboot. Finally, you shouldn't switch back and forth quickly between two consoles using SVGAlib graphics or you risk screen corruption forcing another reboot. However, it is a myth that SVGAlib is a security risk.
While SVGAlib apps must be setuid root, that privilege is given up immediately after execution. There is no need to be concerned. In summary, despite the aforementioned problems, SVGAlib's speed and ease of use make it attractive in many situations. Especially if you just want to doodle on the screen. After five seconds, it will reset your console to text mode and will exit. This relinquishes root status and initializes the SVGAlib library.
That is to say, your screen becomes a grid which is pixels wide, pixels high, and supports colors. Either statement is acceptable. We can choose any value from 0 to More colors are available with other commands but we'll stick with these basic colors for this example. Finally, we paint our pixel at coordinate 10, This is eleven spaces right of the screen's left border, and 11 spaces down.
It's 11, not 10, because the coordinate grid starts at 0. Coordinate 0,0 is in the upper left-hand corner. It's always nice to do this at the end of your program.
Otherwise, you'll make life difficult for your users. To compile this code, use the regular gcc compiler. You'll also need to link to SVGAlib with the -lvga command. Lastly, I suggest using -O3, the best level of optimization. So here's our command: gcc -O3 -o sample sample. We won't go into all of them here, though. Instead, we'll write our second sample program using a faster set of SVGAlib functions: vgagl.
Type "man vgagl", and you'll see that vgagl is "a fast, framebuffer-level graphics library based on SVGAlib.
Linux Graphics Programming with SVGAlib: An Easy-to-Use Reference for Linux Graphics Programmers
Want to read Slashdot from your mobile device? Point it at m. The Scoop XFree86 isn't the be-all end-all of Linux graphics. Consider the embedded space, or dedicated turnkey apps, or console games, or If you've never heard of SVGAlib, it's a Linux-specific graphics library providing fast functions for full-screen use, joystick and keyboard input, and even 3D.
Slashdot Top Deals
Easy graphics: A beginner's guide to SVGAlib
If so, look no further. What is SVGAlib? SVGAlib is a low-level graphics library for Linux. It augments the C programming language, which doesn't provide support for graphics.