old-www/LDP/LG/issue11/gm.html

286 lines
11 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<TITLE>
Graphics Muse
</TITLE>
</HEAD>
<BODY text="#000000" background="../gx/hammel/bg.gif"
vlink="#fa3333" alink="#33CC33" link="#0000FA">
<H4><IMG ALIGN=MIDDLE SRC="./gx/bat-l.gif">
&quot;Linux Gazette...<I>making Linux just a little less scary!</I>
&quot;<IMG ALIGN=MIDDLE SRC="./gx/bat-r.gif"> </H4>
<P> <HR> <P>
<!--===================================================================-->
<TABLE>
<tr>
<td valign="top">
<IMG SRC="../gx/hammel/lgpenguin.gif" ALT="Larry Ewing's Penguin Gazette"
WIDTH="161" HEIGHT="160" border="0">
</td>
<td valign="center">
<H1> The Graphics Muse </H1>
<table>
<tr>
<td>by</td>
<td><A HREF="mailto:mjhammel@csn.net">
<IMG SRC="./gx/hammel/sig.gif" ALT="Michael J. Hammel"
ALIGN="left" WIDTH="240" HEIGHT="23" border="0">
</A>
</td>
</table>
</td>
<tr>
<td align=center colspan=2>
<HR>
</td>
<tr>
<td align=left colspan=2>
<B>muse:</B>
<OL>
<LI><I>v;</I> to become absorbed in thought
<LI><I>n;</I> [ fr. Any of the nine sister goddesses of learning and the
arts in Greek Mythology ]: a source of inspiration
</OL>
</td>
<tr>
<td align=center colspan=2>
<HR>
</td>
</table>
<UL>
<LI><A HREF="#mews">Graphics Mews</A>
<LI><A HREF="#musings">Musings</A>
<LI><A HREF="#future">Future directions</A>
</UL>
<HR>
Welcome to the Graphics Muse! This is the first in what I hope will be a
long running monthly column relating to computer graphics on Linux systems.
Why a "muse"? Well, except for the sisters aspect, the above definitions are
pretty much the way I'd describe my own interest in computer graphics:
it keeps me deep in thought and it is a daily source of inspiration.
<P>
This column will be divided into two sections:
<A HREF="#mews"><I>Graphics Mews</I></A>,
a section devoted to the latest news in graphics such as new releases of
products (free or commercial), people in the news, conventions and
conferences and whatever else might be of general interest to the graphics
community, and
<A HREF="#musings"><I>Musings</I></A>,
a section where I can spew whatever I think
needs to be covered more in depth. The later section I hope will cover
things like reviews of products, tips and tricks, interviews with graphics
people, or maybe just my philosophies on life. You'll just have to come
back each month and see where things go.
<P>
I'm open to suggestions on topics for the Musings section. I'll also take
any and all notices regarding graphics tools that are being released or
updated. Please don't send notices as advertisements - I only want to know
about new releases or new products. I'm only doing that to keep my workload
down a little.
<P>
One thing this column <I>won't</I> cover is X programming or windowing
API's (unless they are specifically designed for the development of
graphics tools). There are lots of places to get information about X.
This column is about computer graphics in general.
<P>
<A NAME="mews">
<H2>Graphics Mews</H2>
</A>
Before I get too far into this I should note that any of the news items I
post in this section are just that - news. Either I happened to run across
them via some mailing list I was on, via some Usenet newsgroup, or via
email from someone. I'm not necessarily endorsing these products (some of
which may be commercial), I'm just letting you know I'd heard about them in
the past month.
<UL>
<LI>Megahedron
<BR>According to the announcement sent to me from Syndesis Corporation
(the maker of this product), Megahedron is a programmable 3D graphics
engine. It runs on a number of platforms, including Linux. You
can check out the web site at
<A HREF="http://www.threedee.com/">
http://www.threedee.com/</A>.
<LI>QT
<BR>Troll Tech AS has released a free version of QT for the X Window
System. QT is a complete and well-developed object-oriented program
for developing graphical user interface applications using C++.
For additional information check out Troll Tech's web site at
<A HREF="http://www.troll.no/">http://www.troll.no/</A>.
</UL>
Thats all I've seen for this month. Software releases have been kinda
sparse the past month for some reason.
<P>
<A NAME="musings">
<H2>Musings</H2>
</A>
First, let me start with some shameless self-promotion:
<A HREF="http://www.csn.net/~mjhammel/linux-graphics-howto.html">
The Linux Graphics mini-Howto</A>
and the
<A HREF="http://www.csn.net/~mjhammel/povray/povray.html">
Unix Graphics Utilities</A>
pages. The latter of these I
started late last year while beginning to learn about computer graphics
through the use of POV-Ray, a 3D rendering tool. I had found that most of
the tools available for use with POV-Ray were not Unix based (not
specifically, anyway) so I tried to find info on Unix based tools since I
was running Linux. After I learned a bit more about computer graphics I
started the Linux Graphics mini-Howto in retaliation for a coworkers claims
that doing graphics was best left to MS based systems. NOT! The tools
need a little organizing, a few need better documentation, but in general
you can do some very impressive graphics on Linux systems.
<P>
These two pages are available at:
<br>
<A HREF="http://www.csn.net/~mjhammel/linux-graphics-howto.html">
http://www.csn.net/~mjhammel/linux-graphics-howto.html</A>
and
<br>
<A HREF="http://www.csn.net/~mjhammel/povray/povray.html">
http://www.csn.net/~mjhammel/povray/povray.html</A>.
<br>
I was offered some free web space by a couple of people so I'll be moving
my pages sometime in the future, but probably not till after January.
<P>
<B>Note</B>: if you are the official maintainer of any of the packages
listed in these pages feel free to keep me informed of new releases. The
information there is only as good as the info I've gathered from newsgroups
and word of mouth so far.
<P>
Ok, enough about me.
<P>
My first bit of musings revolves around the use of images in web pages.
I get a number of e-mails from people who've seen my web pages (or possibly
my ramblings on various newsgroups or mailing lists) asking how to do blah
or where can I get blah to do blah for their web pages. The "where" parts
are covered by the links mentioned above. The "how" part is a broad
question. I'll summarize.
<P>
When creating graphics for your pages, keep the following things in mind:
<OL>
<LI>Consider your target audience:
<UL>
<LH>Home Users</LH>
<LI>Most home users have slow links. Even 28.8 modems don't load
big graphics all that fast. Keep your images small.
<LI>Animations that are done with like cell-animations are done
for cartoons (sequences of individual images with slight
variations to simulate movement) require each cell to be
loaded across the net. This is tantamount to one big image
taking forever to load.
<LI>Most home users are still limited to 256 colors on their displays.
Lots of users have upgraded to better graphics cards, but how
many people do you want to alienate with an image with 10000
colors?
</UL>
<LI>
If you want the average person to visit your page, you have to give
them two things: content and flash. The flash has to be done using
as little download time as possible, with as much color as you can
squeeze in without overloading the browser (causing it to dither
images). The content must be the reason for your pages, not the
flash.
<LI>Background images should be just that - in the background. Don't
make the background so gaudy it distracts from your real content.
<LI>Use common colormaps - this reduces the number of colors the
browser has to allocate, leaving some space for other applications.
X-based systems can allocate colors into private colormaps, but
this causes that annoying "flashing" you see (try running Netscape
with the -install option - you'll see what I mean).
<LI>Flash can be added easily with a simple background over which you
add some in-line transparent GIFs.
<LI>Never use an "Under Construction" image. It's the Web. Of course
it's under construction!
<LI>Don't put those silly graphic dots in place of HTML list bullets.
First, they waste the user's time downloading (each requires another
connection to the server), and second, they break the formatting
rules provided with HTML. It's just not good practice and they don't
have any real value add to your pages.
</UL>
Now that you know some basic guidelines for your images, how do you go about
creating the images? It depends on what kind of images you want to make.
If you want a simple, cartoon-like image you can get a drawing program like
xpaint. This tool is good for drawing circles and boxes and filling them
in, using a window like a canvas to paint on the screen. However, this
tool is limited in what you can do to the image once you've drawn it. One
highly popular tool for a number of platforms that does this
post-processing is Adobe Photoshop. Using a tool like this takes a bit of
practice, but once you've mastered it you can do some rather amazing
things. A Linux alternative to Photoshop is the
<A HREF="http://www.XCF.Berkeley.EDU/~gimp/">
Gimp</A>.
The logos on this page were created with the Gimp. So was the background.
<P>
3D images are a whole other matter. There are actually more well-known
tools for doing 3D work than there are for doing image manipulation (i.e.,
tools like the Gimp). Probably the best-known of these is POV-Ray. This
tool reads in a text file that uses a "scene description language" to describe
how objects in the scene should be positioned and textured. The drawback
to these tools is that they lack a point-and-click interface.
There are separate tools available,
known as modelers, that allow the creation of the scene files without
actually rendering the image. In order to create a 3D image, you need to
either learn the scene description language or learn who to use a modeler
that will create it for you.
<P>
I know this is fairly basic and undetailed, but this is just my first
column. Over time I'll try to cover both beginner and more advanced issues.
<P>
<A NAME="future">
<H2>Future Directions</H2>
</A>
Next month: How do you create the textures that get applied to 3D images?
Beyond that, I'm considering talking about how to use Type 1 fonts in your
images: how to install them, how you can manipulate them with the Gimp to
make interesting logos, etc. I'd also like to provide some tips for using
POV-Ray and BMRT (although I have a lot to learn about the latter). And I
might try to cover a little on how to do animations. Things are pretty
open right now.
<A HREF="mailto:mjhammel@csn.net">
Let me know what you'd like to hear about!</A>
<P>
<HR>
<FONT size=2>
"Linux Gazette" Penguin courtesy of
<A HREF="mailto:lewing@isc.tamu.edu">
Larry Ewing</A>.
</FONT>
<HR>
<center><H5>Copyright &copy; 1996, M. J. Hammel</H5></center>
<center> <H5>Published in Issue 11 of the Linux Gazette</H5></center>
<!--===================================================================-->
<P> <hr> <P>
<A HREF="./index.html"><IMG ALIGN=BOTTOM SRC="../gx/indexnew.gif"
ALT="[ TABLE OF CONTENTS ]"></A>
<A HREF="../index.html"><IMG ALIGN=BOTTOM SRC="../gx/homenew.gif"
ALT="[ FRONT PAGE ]"></A>
<A HREF="./lg_bytes11.html"><IMG SRC="../gx/back2.gif"
ALT=" Back "></A>
<A HREF="./xemacs-tip.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
<P> <hr> <P>
</BODY>
</HTML>