lim jia sheng,

.Information Design

project[2]A: Animated infographic


  • Create a 1 minutes animated infographic, from the static one made in project[1].



Before anything could start I needed to section out approximately how much time one each section of instruction could take up. There were 8 sections & 60 seconds, 8 / 60^2 = 12secs. That's honestly a wishful thinking fantasy land length of time for me to animate, so instead I shrank it down to about 10 seconds per section, while hoping that they would sort themselves out via pacing.

Like all abominations, I started back in Blender. Fortunately, past me did a relatively great job at texturing & shading everything thus that step was a non-issue this time around; also fortunately, past me did a relatively supreme job at organizing things, parenting & naming when needed, enabling me to reuse basically all of the assets.

Scene structure of static infographic, 25/1/2022

Figure 1.1.1, Scene structure of static infographic, 25/1/2022

3D animating

With only happy thoughts to fuel my adventure, I went & started placing keyframes.

Graph of every keyframe in the project, 10/2/2022

Figure 1.1.2, Graph of every keyframe in the project, 10/2/2022

Along the way I learnt a few neat tricks. One of the most notable one would be "shape keys". This would be the technique that enabled me to animate meshes' vertices to move from point A to point B. It's mainly used in rigging, but it was the simplest way without needing to keyframe every single vertex on its own using the AnimAll plugin (which wouldn't be possible/practical, since i was animating sculpted meshes with hundreds of thousands of vertices).

  • image-20220212205853814
  • image-20220212205907265

Figure 1.1.5, Shape keys off vs shape keys on, 12/2/2022

After all that rendering! It took 2 days straight.


This process was slightly less straight forward than I expected.


In EXR (the format I was using to store HDR output from Blender) had an option to export "Z Buffer". I enabled that, thinking all my woes would be solved with a depth map inserted into the files themselves. However, importing it into After Effects, there would not even be a "Z" channel.

The channels in the exported EXR files, 10/2/2022

Figure 1.1.6, The channels in the exported EXR files, 10/2/2022

Apparently, unlike the new "noise reduction" checkboxes which did all the compositor node work for me, this dumb checkbox didn't. Thus, with shame, I went into the compositor, connected the nodes up, & rerendered the entire animation (at a sample count of 1, since fortunately the Z pass is sample agnostic, which still took 2 hours).

The simple nodes required which if were there in the beginning I wouldn't have to rerendering things bruh moment, 10/2/2022

Figure 1.1.7, The simple nodes required which if were there in the beginning I wouldn't have to rerendering things bruh moment, 10/2/2022

After I got the depth map, I moved it into After Effects, whipped up a simple controller for focus plane & width, then linked it to the blur.

Depth map, keyframed to focus on the correct thing (black is focused & vice versa), 11/2/2022

Figure 1.1.8, Depth map, keyframed to focus on the correct thing (black is focused & vice versa), 11/2/2022

Blurred render from the depth map, 11/2/2022

Figure 1.1.9, Blurred render from the depth map, 11/2/2022


Nothing too special, took the grade from the static infographic & dumped it here. Did make a small tweak though. Since this animation sequence was technically HDR (contains values that exceed 0.0-1.0), which the original didn't account for, the "overexposed" parts of the animation would render with incorrect piss-yellow colours. This was fixed by moving the hue of the colourizing of highlights to more orang-y, which didn't look as jarring.

Below is a comparison of the incorrect vs correct grades. Pay attention to the highlights on the eggs.

  • image-20220212214202622
  • image-20220212214202622

Figure 1.1.12, Incorrect vs correct grade, 11/2/2022


This one was a little tricky but not too much of a pain. So the original render was lit with an environment texture (commonly known as HDRI). Thus, if I would want the paper texture to move along to the camera, I'd have to do it in a separate pass. Instead of doing it the correct way (same file, different config), the easy way was so much more easy that it was hard to turn down.

There was an attempt somewhere in there of creating a box map in After Effects by positioning 3D layers solely in AE's 3D space, but that failed & nothing much can(/should) be said about it.

I ended up with the solution of taking the paper texture, mirroring it in both the X & Y directions, & using it as the environment texture in a new file with the camera of the main file. The largest challenge here was getting the seams to not look too visible, but I got it acceptable to me in not too much time.

The new environment-only file, 11/2/2022

Figure 1.1.13, The new environment-only file, 11/2/2022

You might notice I'm still lacking one of the key visuals from the static infographic — the orange thingies. Well, to reintroduce them, I simply used Trapcode Form in After Effects to distribute them out into a grid, & respond to the camera exported from Blender.

Orange background in After Effects, 11/2/2022

Figure 1.1.14, Orange background in After Effects, 11/2/2022

2D animating

Oof, was all very straight forward except the ingredient text, which needed a bunch of tweaking to get right mainly due to the Vegas effect glitching out. The effect is one that draws a line around the edges of a raster image, using its own edge detection engine to enable "pseudo-strokes". The glitch then, which I'd eventually find, is caused by a combination of the size (& thus edge length) of a frame differing from the last, as well as the "Random Phase" option using the length as one of its parameters to choose the start of the stroke, which causes the strokes to flash & move around every frame at seemingly random intervals. I solved this by moving the effect onto individual layers (which enables it to not worry about transformation animation), as well as disabling "Random Phase" all together.

Fixed ingredient heading, 12/2/2022

Figure 1.1.15, Fixed ingredient heading, 12/2/2022

Full screenshot of the (very messy) main composition, 12/2/2022

Figure 1.1.16, Full screenshot of the (very messy) main composition, 12/2/2022


I recently rediscovered a song from a music collective with music I really enjoy — FROMTHEHEART. It's exactly 1 minute long so I thought, why the hell not.

Sound effects were added on top, since idk, it seemed like a project requirement.


Figure 1.2.1, Final animated infographic, 13/2/2022


Overall, this being my longest ever 3D animation (lol), was a great experience. Besides the overwhelming amount of freezes, & the longest opening time I've seen in Blender for a project file, everything else went smoothly enough.

I definitely learnt a lot through this project, whether it be shape keys, HDR colour handling, z-map tweaking for motion blur enabled renders, coercion of the Vegas effect, & more. It was my first time ever willingly parenting to a Null Layer as well, I'd describe the experience as surprisingly pleasant. For info design specific things I learnt, it was most definitely how I could leverage time as an extra dimension to chunk info. Eg. display information in their chunks one by one to specify their sequence of reading, use animations to signify changes in content on screen, etc.

At the end of the day, these were things that I never would've picked up if I hadn't done this project, & for that I'm grateful. There were surely no lack of things to complain about, but a nett positive is a nett positive, especially if such positives are skills I can use in my future projects.

project[2]BA: Exercise 3 — Kinetic typography


  • Choose a song.
  • Create the kinetic typography video.


In class during practical, we went through a preliminary exercise, where we experimented with text composition & animation.

Figure 1.3.1, Text composition practice, 11/2/2022

Figure 1.3.2, Kinetic typography practice, 13/2/2022

After that, we were tasked to choose a song. We held a vote & came to a consensus for Derivikat - REVIVED.

Song poll results, 13/2/2022

Figure 1.3.3, Song poll results, 13/2/2022

The first step of the execution was creating a glitch effect everyone in the group could use. I utilized the wiggle expression in After Effects, pulling it out into their own controls for amplitude & frequency. That was dandy, however the real issue was replicating RGB split in vanila After Effects without some complicated precomping or CC compositing. I went with the CC Composite method, & ended up with a convincing enough effect.


Figure 1.3.4, image-20220120165338582

However, it took forever to render, due to how it works (for every channel, copy the entire frame onto the side, then shift it back with the screen blend mode). Thus, in the final render, every RGB split was replaced with S_Shake from the Sapphire suite.


Figure 1.4.1, Final kinetic typography, 20/1/2022


  • 20/1/2022
    • Looks like a final project.
    • We somehow get 7 out of 5 marks.


My first time working on an animation in a group, it's definitely a mixed bag. On one hand, the benefit of actually needing to animate less things is an absolute plus, on the other, needing to manage consistency & quality across the board becomes a whole different challenge. We did however, squeeze through, even with road bumps, blocks, & cliffs along the way.

For practical stuff, by creating the glitch effect polyfill thing, I found a new criminally underrated effect — CC Composite. What it does is just over/underlays the original frame contents before adding effects onto/under what the frame is currently rendered as. This definitely would've saved me a lot of unnecessary precomping in the past. It's not the fastest effect, but most of the time that performance hit is negligible. For soft skills, I learnt that I probably wouldn't fare very well managing an motion graphic studio, as creating a framework for all to build upon is tough work, & getting everyone on the same page, to use said framework correctly is even tougher.

At the end of the day, I learnt a lot, & everyone else seemed to have had fun doing so too. Even though I'd never want to, I have to begrudgingly admit I probably can work together better the next time (or project(!!)) I'm needed to animate in a group.

project[2]BB: Exercise 4 — Motion graphic chart


  • Create a motion graphic chart video.


During practical, we went through each chart type & created a test video out of it.

Practical test motion graphics, 20/1/2022

Figure 1.5.1, Practical test motion graphics, 20/1/2022

After that, we were thrown to make our own. There is one catch though, we were to do only for one type of chart assigned to us. I got donut chart, & to display info impact of COVID-19 on student mobility.

Instructions for task, n.d

Figure 1.5.2, Instructions for task, n.d

I went to work, & instead of doing for only 1 I wanted to add all 3 charts into the video. & also I used blender:


Figure 1.6.1, Final donut chart, 22/1/2022


Nothing much happened for this exercise, wasn't really emphasized either. I did do it to my best of abilities, & learnt about Blender's surprisingly robust curve animation system nowadays. I remember it wasn't that long ago (correction: nope I was wrong, it was a long time ago, 2014), that in order to create a 3D bevelled curve with a cap on the end, you'd had to create multiple objects & link them together, then sacrifice a goat in order to hope it worked properly. Other than that, I definitely made heavy use of chunking, as well as making sure visual hierarchy was constructed. Was a good practice (or shall I say, exercise) & I know it'll be a good prep for our upcoming project(s).


Ng Ee Chyn said…
WTH... this is so nice
yofaiella said…
Gambling in casinos: A short list of key terms used in casino
In gambling terms, a casino is a casino 대전광역 출장샵 in which you 경산 출장안마 win real money by paying a casino 동해 출장샵 fee, 포천 출장샵 which 김해 출장샵 are often referred to as payouts,