Advice to Beginners|
3D technology is a very broad field. Creating 3D images requires tools,
artistic creativity, and skills that can only be learned over time. Writing
3D tools requires a completely different set of skills.
Return to top of document
There are a wide variety of tools out there which can help a user create 3D images - too many
for any one person to be skilled at using them all.
If you are a new-comer to 3D technology, do not rush out and buy one of the expensive top five
programs (see my list elsewhere in this site). It takes a considerable amount of time to become
proficient in any one of the tools and there are such significant differences in them that learning
one does not mean you can use any of the others.
If you're going to be a paid professional 3D graphics designer/artist, you will undoubtedly
use one of the major tools.
Take the time to figure out what you want for your end product - what your objects will contain,
what features the images must incorporate, how much time your can spend creating the images, etc.
Once you've done that review the specs for the applications and look on the web to find examples of
images made with that tool. Once your comformtable that the tool can result in an image of the type
that you want, go ahead and make the investment to purchase the tool.
Because no one tool has all possible features, many artists wind up using more than one of the tools.
For those of you who are uncertain about which tool to use, or what type of images you expect to create,
then consider using some of the free tools on the market. They will be more limited in capabilities but
will help you focus in on what you're looking for in tools and the type of image that you're interested
There are also a number of tools available for less than $100 which can approach the capabilities of the
Return to top of document
As a programmer, you're probably not that interested in actually creating masterpiece images, but
rather you want to allow your users to create images. This means you have some decisions to make.
Selection of a language to use in writing an application is usually pretty easy - use the one that
your know the best. A person skilled in one language can usually write better code (faster with
better performance) in a language they know well than they can write on a language they are just
learning. That's in part because just about all of today's languages are very capable and in part
because most languages allow access to the operating system API for the time-performance crucial
functions of the application.
There are, however, some cases where limits exist on which language may be used. In particular,
the development and display of 3D animations on web sites must be accomplished with technologies
which are supported by the available browsers. This means either plug-ins or Java applets.
For example, you simply cannot write 3D applications embedded in web pages while using C++ or Visual Basic.
Unless it's just for the personal pleasure of undestanding the code, most programmers are better
of using one of the established 3D engines - that are available for free or which may be purchased
through third-party vendors.
As a paid programmer you'll have cost, schedule and performance criteria to meet. The use of existing
code is the time-honored technique for meeting such constraints. It's far better to use code that has
been debugged my someone else than it is to create code anew each time your need it.
It's always possible that existing third-part 3D engines don't meet your need and that it will be necessary
to write custom 3D imaging code, but you should strongly resist that temptation. It's typical of
programmers to rule out the use of existing tools in favor of writing their own code, whereas hindsight
often shows that the third-part tools would have done just fine - at a lower cost and much more quickly
that custom code would have provided.