PaperModelers.com

Go Back   PaperModelers.com > Papermodelers' Bar and Grill > Other Things We Do & Make

Reply
 
Thread Tools Display Modes
  #1  
Old 05-08-2023, 01:32 AM
Laurence Finston Laurence Finston is offline
Member
 
Join Date: Sep 2021
Location: Germany
Posts: 395
Total Downloaded: 0
Animation

I've always wanted to do animation and I finally bought some basic equipment. The first four photos show an ACME pegbar. That's not a joke, that's really what it's called. I don't know whether the company is named after the one that makes all the gadgets that backfire in the Roadrunner cartoons or the other way around. It is the standard device used for aligning animation paper.

Punched animation paper is placed over the pegs. Unlike ring binders, there is no play. Pegbars and pre-punched paper is affordable, but the ACME punches cost over 1000 €. I would never amortize the costs so I will be sticking to pre-punched paper, although it would be convenient to have a punch.

The next two photos show a light table. It's very thin and light and contains fully dimmable LEDs. I used to have a light table which was about 6in high, heavy, and contained very bright flourescent bulbs, which flickered at the rate of the alternating current (60 Hz in the US).

I don't want the pegbar to scratch the surface of the light table. I don't know what people usually do to avoid this. Craft stores sell a kind of foam rubber in different colors. I ran across a piece at home the other day, but now I can't find it. I'll go buy a piece today and try that.

However, I'm also trying a different approach: The pegbar leaves a margin above its upper edge of about .5 cm. Five sheets of animation paper is about the maximum for the light to shine through. I stack 5 sheets on the pegbar. On the upper sheet, I've drawn a line .25 cm in from the edge. Along this line, I punch holes with a needle and stitch the sheets together with a needle and thread in three places and with the smooth side of the stitch on the bottom.

This way, I can take the stack off the pegboard, the sheets will remain aligned and I can place the stack on the light table. I can cut the stitches, rearrange the drawings and put them back together with each other or with other drawings in any combination and always be able to realign them by putting them back on the pegbar.

I think the holes will wear out quickly. I could reinforce the edges before punching the holes, but I don't think it will be necessary. For one thing, I don't think I'll need to cut the stitches and stitch the drawings back together very often. For another, I can always just put stitches in different positions along the line.

I fold each sheet 2 cm in from the edge to make it easier to fold the drawings around without putting stress on the stitches or holes.

Of course, I could just stitch pages together without the pegbar and I have done this with other paper. However, they will only be aligned with each other and only as long as the stitches aren't cut. For some purposes this is useful.

Usually, I put crosshairs on drawings that need to be alignment and I will be doing this for these, too. This should make it possible to align them in GIMP, so the alignment with the pegbar and the stitches doesn't really need to be perfect. However, in my experience, it's always easier in the long run to prevent inaccuracies from occurring than it is to correct them after the fact.

The photo with the sewing equipment also shows a magnifying glass on a stand with an LED lamp. This is a very useful piece of equipment, which I've been using more and more lately.

The drawings are from my "A Midsummer Night's Dream" project. The female character is Hermia. The last photo shows the original drawing, including Helena.
Attached Thumbnails
Animation-dscf0004.jpg   Animation-dscf0005.jpg   Animation-dscf0006.jpg   Animation-dscf0007.jpg   Animation-dscf0009.jpg  

Animation-dscf0010.jpg   Animation-escf0005.jpg   Animation-escf0008.jpg   Animation-escf0009.jpg   Animation-escf0014.jpg  

Animation-escf0015.jpg   Animation-helena_and_hermia_1_low_res.jpg  

Last edited by Laurence Finston; 05-08-2023 at 02:19 AM.
Reply With Quote
Google Adsense
  #2  
Old 05-11-2023, 04:53 PM
Laurence Finston Laurence Finston is offline
Member
 
Join Date: Sep 2021
Location: Germany
Posts: 395
Total Downloaded: 0
Polyrhythms

This is something else I've been working on. p02.jpg and p08.jpg are pages from polyrhythms.pdf. The latter shows 61 (5 times 12 plus 1) frames intended for an animation. The effect can be simulated by viewing the document in a PDF viewer (standalone or in a browser) set to display a single page at a time. Then you can "flip" through the drawings using the arrow-up and -down and/or page-up and -down keys.

It's possible to create an actual animation in MPEG format by using the "convert" utility from the ImageMagick package (with the -delay option), or by loading the files into Flowblade, or in various other ways. I will do this when I've worked on it some more.

This is a pretty simple version of the idea: A measure (in the musical sense) is divided into 12 beats. 12 can be evenly divided by the numbers 2, 3, 4 and 6. Another way of saying this is that the prime factors of 12 are 2 and 3 and 12 == 2 * 2 * 3. In a sequence of 12 frames, the individual frames show where the beats fall for each of the divisions. The complete file shows five sequences plus 1 frame, i.e., 60 + 1, plus a couple of empty pages at the end. They prevent the display in the PDF viewer from shifting.

The measure can be divided into other numbers of beats, such as fifteen. Then I could divide it evenly by 3 and 5 (and nothing else). If I wanted to divide it into halves, thirds, fourths and sixths (12) and fifths, I would need to divide the measure into 60 beats because 60 is the lowest common multiple of 12 and 5. And so on.

It's also possible to divide the measure unevenly or have the divisions change dynamically, i.e., speed up or slow down. If I knew how to control a sound card, either directly or via some program that does this, I could add sound. That ought to be possible.

One use for this in animation would be to control "cycles". Cycles are sequences of drawings where the end is identical to the beginning, so you can loop through it endlessly. Cycles were used very frequently in early Hollywood animation and are often quite obvious. In later Hollywood animation, they were still used frequently but more subtly. They are very obvious in the (much later) movie "Yellow Submarine". I'm not really sure about their use in limited animation. In the cartoons made when I was growing up, which has been described as "radio with pictures", there was so little movement that there was often nothing to cycle.

In older animation, different figures would often have their own cycles, but they'd all be synchronized. A case where they were not was the "Heigh-ho, heigh-ho" sequence from "Snow White and the Seven Dwarves" and the person who figured out how to do it described how difficult it was. I believe it was Shamus Culhane (formerly known as James Culhane), but I may be mistaken. With a computer, it's much easier to do the necessary calculations, as in this relatively simple example.

The operation that does the "magic" is the "modulus" operation applied to integers, which calculates the integer remainder after division of two integers. This makes it possible to have, for example, a cycle 1, 2, 3 ... 58, 59, 60 and use it to generate cycles like 1, 2, 3, 0, 1, 2, 3, 0, 1, 2 ... or 0, 1, 2, 3, 4, 5, 0, 1, 2, 3, 4, 5, 0 ....

To make this example I used my own program, GNU 3DLDF, MetaPost, TeX and dvipdfmx (in that order). To make the JPEGs, I used GIMP. All of the software used was Free Software.
Attached Thumbnails
Animation-p02.jpg   Animation-p08.jpg  
Attached Files
File Type: pdf polyrhythms.pdf (407.1 KB, 4 views)

Last edited by Laurence Finston; 05-11-2023 at 05:11 PM.
Reply With Quote
  #3  
Old 05-12-2023, 12:11 AM
Laurence Finston Laurence Finston is offline
Member
 
Join Date: Sep 2021
Location: Germany
Posts: 395
Total Downloaded: 0
I've made a simple animated version and posted it to my YouTube account: Polyrhythms 1 - YouTube

I've also posted it to my personal website: Laurence Finston's Website

I will also post the source code on my website and some explanations at both places when I get around to it.

The sequence of commands is as follows:

3dldf polyrhythms.ldf
mpost -numbersystem="double" polyrhythms.mp
mogrify -resize 1280x960 polyrhythms_0*.eps
convert -delay 50 polyrhythms_0*.eps polyrhythms.mpg

3dldf is my program for drawing in 3D. mpost is MetaPost, a 2D graphics program. mogrify and convert are utilities from the ImageMagick package. 1280 and 960 refer to the number of pixels in the horizontal and vertical dimensions, respectively. I originally used 640x480 but the text was even blurrier than it is now. I'm going to have to think about this. -delay 50 means each image is displayed for half a second (50/100).

This is an easy way of creating an animation if all the images are to be displayed for the same length of time. I have also made individual sequences where this was the case, but where the sequences might have different delay values, and then imported them into Flowblade as blocks. It's easier to manage the blocks in Flowblade than each individual image.

Last edited by Laurence Finston; 05-12-2023 at 12:42 AM. Reason: Changed URL
Reply With Quote
  #4  
Old 05-12-2023, 11:32 PM
Laurence Finston Laurence Finston is offline
Member
 
Join Date: Sep 2021
Location: Germany
Posts: 395
Total Downloaded: 0
I was hoping to post something more today, but I did something to my computer and now I have to take it back in to the shop today, having only had it back since Thursday.

It is possible to divide the measure by non-integral amounts. For example, it would be possible to take 9 beats as the fundamental rhythm, i.e., consider the measure as consisting of 9 beats (b0), and combine it with a second rhythm (b1) with a beat every 2 1/2 beats of b0. b1 doesn't divide b0 evenly and since 18 is the lowest common multiple of 9 and 2 1/2, it will take 18 measures for the cycle to complete. That is, at measure 19, b1 will fall on the "one" beat of b0 for the first time since measure 1.

However, this is entirely equivalent to using 18 for b0 and 5 for b1, so there really isn't any point in doing this. If I want to number positions along a timeline, as in the previous example, or around a circle, or whatever, I can "pretend" I'm using 2 1/2 and 9 or 10 and 36 or some other pair of numbers that fits.

Another possibility is to have the fundamental rhythm (b0) be steady but overlay it with a rhythm that changes its rate, i.e., accelerates and/or decelerates. This may be accomplished by using a different function to determine when a beat should fall. I say a different function because incrementing by 1 (as in the previous example) is also a function. It's possible to use the value of the function or to continue to increment by one but add a component derived from a function, e.g., i_n = i_(n-1) + f(y)/100, where i_x and y are real numbers and f(y) is a function of y.

If it's a linear function, the rate will increase or decrease at a steady rate. To get a varying rate, a non-linear function must be used. As examples, the exponential function will increase very fast, its inverse, the logarithmic function will increase relatively fast at the beginning and then continue to increase slowly, the sine and cosine functions will alternate steadily and the parametric equation for the tractrix curve will increase quickly to a peak level and then decrease symmetrically. The possibilities of this are limitless.

With a bit of luck, I'll be able to continue working on this next week and with a lot of luck, today.
Reply With Quote
  #5  
Old 05-13-2023, 08:07 AM
Laurence Finston Laurence Finston is offline
Member
 
Join Date: Sep 2021
Location: Germany
Posts: 395
Total Downloaded: 0
Speaking of the tractrix curve, the projection of this tent onto the x-y plane looks like one. The body of rotation of a tractrix, which the tent itself (minus the supports) resembles, is called a tractroid or pseudosphere.

I just happened to see this on the way into town today.
Attached Thumbnails
Animation-dscf0001.jpg  
Reply With Quote
Google Adsense
  #6  
Old 05-16-2023, 06:55 AM
Laurence Finston Laurence Finston is offline
Member
 
Join Date: Sep 2021
Location: Germany
Posts: 395
Total Downloaded: 0
This is my first (proto-) animation with sound. It shows a measure divided into 3, 4 and 5 beats. The cycle requires 60 frames and repeats several times.

Open attached PDF file in a browser or viewer. Set display size to "Page Size". Use arrow up/down and/or page up/down keys to "flip" through the file.
Attached Files
File Type: pdf polyrhythms3.pdf (196.4 KB, 2 views)

Last edited by Laurence Finston; 05-16-2023 at 07:08 AM.
Reply With Quote
  #7  
Old 05-17-2023, 06:11 AM
Laurence Finston Laurence Finston is offline
Member
 
Join Date: Sep 2021
Location: Germany
Posts: 395
Total Downloaded: 0
The attached files show the same animation in two versions, one with a white background and one with a black one.

They show a measure divided by 2, 3, 4, 5, 6, 8, 9 and 10 beats. A complete cycle requires 360 frames. The number of frames required is the lowest common multiple of the divisions (i.e., number of beats) and is obtained by multiplying the set of prime factors of the divisions. I'm finding it difficult to formulate this in a mathematically correct way, but the procedure is as follows:

2 and 3 are prime numbers, so to divide the measure by 2 and 3 beats we need 2 * 3 = 6 frames. The prime factors of 4 are 2 and 2. One two is already present in the set, so we only need to add one 2 to it. So the number of frames needed is 2 * 2 * 3 = 12. 5 is a prime number so we need to add it to the set: 2 * 2 * 3 * 5 = 12 * 5 = 60.

60 is divisible by 6, so we don't need to add any numbers to the set.

Skipping over 7 for the moment, we can make the measure divisible by 8 by adding another 2 to the set, since 8 = 2^3 (2 to the power of 3) or 2 * 2 * 2. So the frames needed to divide the measure into 2, 3, 4, 5, and 8 is 60 * 2 = 120.

9 = 3^2 = 3 * 3, so we just need to add another 3 to the set to make the measure divisible by 9: 120 * 3 = 360.

The prime factors of 10 are 2 and 5 and both are already in the set (and 360 is obviously divisible by 10), so we don't have to do anything.

360 is also obviously divisible by 12, but it's hard to fit too many lines in the frame, so I decided to stop at 11 for this animation.

Returning to 7, it's also a prime number, so in order to make the measure divisible by it as well would require 360 * 7 = 2520 frames. For these examples, I've decided to leave out 7 and 11 in order to keep the size of the PDFs down to a reasonable level. 11 is also a prime number, so to make the animation divisible by it as well would require 27,720 frames.

This number would be impractical, so I will probably only create an image after x number of steps. I'm not at that point yet, however.
Attached Files
File Type: pdf polyrhythms4.pdf (393.2 KB, 1 views)
File Type: pdf polyrhythms5.pdf (374.1 KB, 1 views)
Reply With Quote
  #8  
Old 05-17-2023, 11:55 AM
Laurence Finston Laurence Finston is offline
Member
 
Join Date: Sep 2021
Location: Germany
Posts: 395
Total Downloaded: 0
I've modified the last example so that it now divides the measure into 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 14, 15, 18, 20 and 21 beats. This requires 2520 frames. It's no problem to generate the EPS files, but the resulting PDF is very large and it's agonizingly slow to "flip" through it in a browser, so I've set up the TeX files so that every fifth frame is included.

To divide the measure by 16 beats would require multiplying 2520 by 2, because 16 = 2^4 and there are only 3 twos in the set of prime factors. 11, 13 and 19 are prime numbers, so the number of frames would have to be multiplied by each of them. Even multiplying by one of them would cause the number of frames needed to become nearly unmanageable.

A problem with using MetaPost directly, as I've done here, is that it doesn't solve the problem of using a the string representation of a number that's calculated in a label very well. It's possible, but very slow. Typesetting labels with literal strings is no problem. In normal use, the difference is hardly noticeable, but when you have hundreds of figures, it's too slow. This is also one reason why I haven't put numbers for the beats inside the symbols. I wanted to at least try this. However, it would be tricky when skipping frames, as in these examples.

In this case, it works better to use 3DLDF, because the calculation is done within 3DLDF and the MetaPost output contains only literal strings. However, I have to fix my computer before I have access to it again.
Attached Files
File Type: pdf polyrhythms6a.pdf (532.1 KB, 2 views)
File Type: pdf polyrhythms6a_black.pdf (495.0 KB, 5 views)
Reply With Quote
  #9  
Old 06-04-2023, 01:10 AM
Laurence Finston Laurence Finston is offline
Member
 
Join Date: Sep 2021
Location: Germany
Posts: 395
Total Downloaded: 0
I've just uploaded a short animation to YouTube:

A Midsummer Night's Dream, Ladybug Test 1: Ladybug Test 1 - YouTube

I used GIMP, TeX, MetaPost, dvipdfmx, Imagemagick's `convert' and `mogrify' utilities and Flowblade to create it. I describe the process in the description for the video, so I won't repeat it here. I've uploaded the source files to my personal website: Laurence Finston's Website (Ladybug Test 1).
Attached Thumbnails
Animation-ladybug3_combined_000_low_res.jpg   Animation-ladybug3_combined_180_low_res.jpg   Animation-ladybug3_combined_360_low_res.jpg  

Last edited by Laurence Finston; 06-04-2023 at 01:51 AM.
Reply With Quote
  #10  
Old 06-04-2023, 11:52 PM
Laurence Finston Laurence Finston is offline
Member
 
Join Date: Sep 2021
Location: Germany
Posts: 395
Total Downloaded: 0
I've been working on compositing the "ladybug" images with a watercolor background. I tried doing this in MetaPost with the `exteps' package. However, it was too difficult to scale the background and get it cut off at the frame borders. It's also possible to combine images in TeX, but the included image is always rectangular and covers any image that lies behind it. This therefore only works if the background of the rectangular image matches whatever is behind it.

However, compositing the ladybug images with the background works just fine in GIMP and isn't very difficult once you get the hang of it. It is rather tedious doing everything by pointing and clicking with the mouse, so I'm going to have to sit down and learn how to set function keys and use macros in GIMP.

I plan to make another animation with these images but it is rather time-consuming. In the last one, each image (excepting the titles) was displayed for 15 frames = 1/2 second. So, the five images I've done this morning would translate to 2.5 seconds of animation.

When I made my first attempt to rotate the ladybug image, I put a box around it but didn't pay attention to the size and relation of the box to the enclosed image. When I rotated it, the images were off-center with respect to each other. This isn't what I wanted, but when I flipped through the drawings, it created a nice effect, as though the ladybug was fluttering. Of course, ladybugs in real life don't flutter, so this would be more suitable for a moth, but it was still a nice effect.

I redid the rotations, putting the image into a square box and centered on a point on the ladybug's body. I used these images in the previous example. To reproduce the fluttering effect, I can shift the position of the images with respect to the surrounding frame, either in GIMP, as in this example, or in TeX using `\hskip' and `\vskip' when including the EPS files that contain the images (subject to the limitation described above).
Attached Thumbnails
Animation-ladybug3_1_low_res.jpg   Animation-ladybug3_2_low_res.jpg   Animation-ladybug3_3_low_res.jpg   Animation-ladybug3_4_low_res.jpg   Animation-ladybug3_5_low_res.jpg  


Last edited by Laurence Finston; 06-05-2023 at 12:14 AM.
Reply With Quote
Google Adsense
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -6. The time now is 10:11 PM.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.

Parts of this site powered by vBulletin Mods & Addons from DragonByte Technologies Ltd. (Details)
Copyright © 2007-2023, PaperModelers.com