Pro Java 9 Games Development Leveraging the JavaFX APIs

(Michael S) #1

© Wallace Jackson 2017 29
W. Jackson, Pro Java 9 Games Development, https://doi.org/10.1007/978-1-4842-0973-8_2


CHAPTER 2


An Introduction to Content


Creation: 2D New Media Asset


Fundamentals


Now that you have a pro Java game and IoT development workstation put together, thanks to the previous
chapter, let’s jump right in and learn about the basic 2D content development concepts and principles that
most of these new media content development software packages are based on. The exception to this is
Blender, which is based on more advanced 3D content development, which we will cover in the next chapter.
The reason that we need to cover this foundational multimedia material before we get into Java, NetBeans, and
JavaFX is because there’s an incredible level of support, thanks to the JavaFX multimedia engine, for digital
illustration using Scalable Vector Graphics (SVG); digital imaging using raster (bitmap) image formats such as
PNG, JPEG, or GIF; and digital audio using audio formats such as MP3, MPEG4 AAC, WAV or AIFF (PCM), and
3D, using the JavaFX internal rendering engine. I assume that you are not going to be creating text-based games
but rather interactive new media applications, so I wanted to cover some non-coding-related topics first. Once
we start coding using the NetBeans, Java, and JavaFX APIs, we’ll never stop coding.
During this chapter, you’ll get a detailed overview of the concepts behind each of the 2D new media
content types that are supported in JavaFX, including digital illustration (vector), digital imaging (raster),
digital video (motion), and digital audio (waveform). We will do this so that you have the foundational
knowledge to be able to use the free, open source, multimedia content production tools that you
downloaded and installed in Chapter 1 for game design.
The first thing that I want to cover is the foundational new media asset type of digital imagery, as it
will be used as the foundational input asset for many of the other new media asset types. For instance, your
digital video is simply a series of digital images played rapidly over time to create an illusion of motion. Your
2D vector illustration assets can be filled with digital image data using the JavaFX ImagePattern class, and
your 3D vector assets can use digital image assets for shaders and texture maps, which we will be covering
in Chapter 3 , including advanced 3D content creation and related JavaFX packages and classes that are used
to implement these 3D content elements.
The next thing I will cover are the concepts, techniques, and “lingo” of digital video, including things
such as frames, frame rates, bit rates, and other concepts that add the fourth dimension of time, making
static digital image assets into animated digital video assets. These concepts also relate to animation as well,
including both 2D animation and 3D animation. We will be covering 2D vector and 3D vector concepts
during Chapter 3 , as they are closely related.
Finally, we’ll take a look at digital audio concepts; digital audio is closely related to digital video because
it can be contained within a digital video file format. Digital audio can also exist on its own, and therefore
we will also cover digital audio format support in JavaFX, as well as a digital audio asset data footprint

Free download pdf