The programming language you will be learning is C++. This is actually
not a pure C++ but its modification adopted by Web Cartoon Maker for
development of animated cartoons. C++ is a high-level programming
language. Other high-level programming languages you might have heard
of are Java,
C, C#, Basic and Fortran.
Note: Most of these
languages also have several versions or dialects. Fortran was the first
high level scientific computer language and was developed in the late
1950’s, over half a century ago. It still exists – there is a Fortran
2008 – but has generally been replaced by “object oriented” languages,
such as C++, C# and Java. Object Oriented Programming (OOP) will be
discussed later in this document.
Fun Note: The most common first computer program shown for any computer
language is a “Hello World” program. A WCM version of this classic
program will be presented a few pages later. A collection of “Hello
World” programs written in 441 different computer languages and 64
human languages is available at
Programs written in a high-level language have to be compiled
(translated) before they can run. Your programs (s
cripts) will be translated into a computer friendly (low level) language
and run on your computer. The result you will receive is an animated
cartoon in WCM format which can be played by WCM Player software and
converted to other video formats to run on other video viewers.
Note that the WCM compiler differs from a general purpose compiler in
that the output is a video file instead of an executable computer file!
In summary, the
C++ compiler is going to translate and run your programs. It will
compile your program to an intermediate format first, and then execute
(interpret) it to produce animated cartoons. In the process, it will
also use various library elements such as characters, sounds,
backgrounds, etc. A fairly extensive library is available on the web
site and will be accessed automatically by the software. You may also
include other images and sounds from the many sources available on the
web. For advanced users, you may also create your own characters,
images and sound tracks and store them on your own computer. The WCM
will use the file paths provided and incorporate these into the final
What is a Program – General C++ vs. WCM C++?
A program is a sequence of instructions that specifies what should a
computer do. Unlike a general program flow, however, your WCM program
will specify how to build your animated cartoons rather than
a general executable file. There are a few basic functions that appear
in about every language, as well as syntax rules that are language
specific. WCM follows the C++ rules and in general supports the same
programming functions that a regular C++ program does.
A summary of the basic functions expected in C++, and the corresponding
implementation (or lack of implementation) in WCM are summarized below.
If you aren’t interested in C++ as a regular programming language, you
can either just skim this section or skip it altogether
Input: Get data from the keyboard, or a file, or some other device.
Since your programs will be converted into animated movies there are no
interactive input commands supported. Since the main purpose of Web
Cartoon Maker is to produce non-interactive animated cartoons this
limitations is not very important. However, if you are interested in
C++ as a general programming language, you should study the available
input commands carefully.
Output: Display data on
screen or send data to file or other device. In our case we will
display our data in generated animated cartoons.
Math: Perform basic mathematical operations like addition and
multiplication. While in many cases we do not need them for programming
animated cartoons these operations still may be useful if we want a
realistic animation of physics (like ball trajectory or a jumping
pattern). Random numbers are also sometimes useful.
Combine, separate and otherwise manipulate groups of words and
characters. Again, this is often not needed, but can be quite useful.
Testing: Check for certain
conditions and execute the appropriate sequence of statements. Like
math and string manipulation, this also is often not needed, but can be
Object Manipulation: Many WCM C++ commands display, move and otherwise
change the object characteristics that will be ultimately included in
the final video output. In WCM C++, there is a built in library of
objects and using these objects is the most commonly used capability,
however in basic C++, there is no similar built in library unless some
graphics package such as GPL (Graphics Programming Language) supported
by the compiler.
Repetition: Perform some action repeatedly, usually with some
variations. This is a very useful capability in WCM.
Believe it or not, that’s
pretty much all there is to it. Every program you’ve ever used, no
matter how complicated, is made up of functions that look more or less
like these. Thus, one way to describe programming is the process of
breaking a large, complex task up into smaller and smaller subtasks
until eventually the subtasks are simple enough to be performed with
one of these simple functions. In our case of making non-interactive
animated cartoons it is even simpler because we do not need input
functions. In later sections efficient and effective ways to accomplish
these basic tasks will be described in more detail.