To achieve realism in 3D animation, the process of modeling and rendering is used to refine the shape, size, texture, and lighting of objects. This gives audiences a lifelike visual experience that makes them feel like they’re in the real world, and it requires high-performance equipment like GPUs and efficient computing technology to produce high-quality visuals.
Today’s 3D animation creates detailed, stereoscopic images that feel like they were shot in real life. This reality is more than just a technological advancement; it plays a big role in creating a more immersive visual experience for audiences. For example, even the facial expressions of characters can be brought to life in animation, giving audiences the illusion that they’re not just watching a video, but seeing a real person in front of them.
Unlike natural images obtained by photographing the real world and displaying them on the screen as they are, creating and outputting 3D composite images requires two main processes: modeling and rendering. Modeling is the process of setting or modifying the unique values associated with an object’s shape and size, spatial position, surface characteristics, etc. in a three-dimensional virtual space. The process is similar to how a digital sculptor works with clay, using digital tools to reshape an object and give it detailed characteristics.
To set the shape and size, we often utilize triangles, which are formed by three vertices. It’s a way of representing the surface of an object in a net-like form made up of a combination of smaller triangles. This way, surfaces with complex curves can be represented precisely. The vertices of the triangles are the vertices that determine the shape and size of the object; the number of vertices does not change as the object deforms, and the relative positions of the vertices do not change as long as the shape of the object itself does not change. As an object grows or shrinks, the space between vertices becomes wider or narrower. If the object rotates or moves, the vertices will either rotate around the axis of rotation or move an equal distance in the same direction while maintaining their spacing. This elaborate modeling work not only defines the underlying structure of the object, but is also essential for the subsequent texturing and application of lighting effects.
Each of the triangular faces that make up the surface of an object is assigned a surface attribute that represents its unique color and texture. These surface properties play an important role in bringing the material feel of an object to life. For example, the definition of these detailed surface properties is essential for realistically representing the shine of a metal surface or the texture of wood.
Utilizing this data, which is information about an object in space, to create a two-dimensional view based on the viewer’s point of view, which represents where they are looking at the object, is rendering. The rendering process goes beyond simply generating an image and aims to create a more realistic scene by taking into account the interaction of light, the position of shadows, and the effects of different light sources. The entire screen is divided into pixels, a set number of dots that represent the screen and each pixel is assigned a pixel value that represents brightness, color, etc. In the rendering stage, the same object in the screen appears smaller when it is farther away and larger when it is closer, and the perspective of the object is realized by assigning a pixel value. Based on the values representing the surface characteristics, the three-dimensional sense of the object is realized by setting the pixel values in consideration of the contrast and shadows created on the object’s surface by other objects or lighting. This sophisticated rendering process ensures that everything on the screen blends together naturally, and the viewer feels as if they are actually in the space.
Once the pixel values of all the pixels that make up the screen have been determined, a frame is created. This is then displayed on a monitor via an output device to create a still image. Repeating the modeling and rendering process and displaying the generated frames in sequence creates a movie. A movie is a series of frames that switch between each other so quickly that it’s almost invisible, creating the illusion of motion. During this process, the position and size of objects, lighting changes, and more are calculated for each frame, resulting in more natural and fluid movement.
When generating frames, the modeling calculations are completed and the results are used to calculate the rendering calculations. The higher the number of vertices, the higher the resolution, and the larger the number of output pixels, the more computations are required and the longer the computation time. This means that higher-quality images require more computations, and high-performance computer equipment and efficient computational algorithms are essential for producing high-quality animations.
A computer’s central processing unit (CPU) performs data operations in sequence, one by one. Therefore, when an excessive amount of data is concentrated, it creates a bottleneck where uncomputed data waits for its turn, causing frames to take a long time to complete. For this reason, various techniques are used in animation production to minimize bottlenecks. For example, complex computations can be preprocessed, or the computational process can be divided into multiple steps and distributed.
Developed to complement the graphics processing power of CPUs, graphics processing units (GPUs) are devices that can perform computation and data processing independently. GPUs have thousands of cores to enable massively parallel processing. Each core in a GPU is specialized for graphics computations and operates at a lower speed than the cores in a CPU. However, GPUs can produce output images at high speeds when the same computation needs to be performed multiple times. This is because the GPU sends the data used for a single operation to each core sequentially, and then issues a single compute instruction to all cores, which allows each core to compute all the data simultaneously, reducing compute time. Thanks to this high-speed computation, complex visual effects in 3D animation can be realized in real time, giving audiences a smoother, more lifelike experience.