์นดํ…Œ๊ณ ๋ฆฌ ์—†์Œ

[2026 ์ฑ…๊ฐˆํ”ผ ๋ฆด๋ ˆ์ด 3] After Effects ์ต์Šคํ”„๋ ˆ์…˜์„ ํ™œ์šฉํ•ด๋ณด์ž.

51GM4 2026. 3. 16. 18:07

 

๐Ÿ“† 1์ฃผ์ฐจ
3์›” 2์ผ · ์œ ์„ฑ 
https://yuseong-spa.tistory.com/

3์›” 3์ผ · ์ด์›21
https://blog.naver.com/leejw888

3์›” 4์ผ · ํ””MAD
https://otomad.tistory.com/

3์›” 5์ผ · ใ…‡ใ…ˆใ…‡
https://heunyagye.tistory.com/

3์›” 6์ผ · ๋ณด๋ฆฌ์ฐจ
https://bolicha04.tistory.com/



๐Ÿ“† 2์ฃผ์ฐจ
3์›” 9์ผ · KETURU
https://keturu0705.tistory.com/

3์›” 10์ผ · ํ‚ท์บฃ
https://kitkat0627.tistory.com/

3์›” 11์ผ · C1G0
https://c1g0.tistory.com/

3์›” 12์ผ · ๋ฃจ์ฆˆ์œˆ
https://losewin.tistory.com/

3์›” 13์ผ · TangenT
https://crownshredder.blogspot.com/



๐Ÿ“† 3์ฃผ์ฐจ
3์›” 16์ผ · SIGMA
https://sigmay2p.tistory.com/

3์›” 17์ผ · ๋ฏผํ˜œ์„œ
https://mineralsoju.tistory.com/

3์›” 18์ผ · ๋นˆ๋ชจ๋“œ
https://slashpage.com/binmode

3์›” 19์ผ · ์นด์ด์‚ฌ๋ฅด
https://kyser.tistory.com/

3์›” 20์ผ · ๊ฟ€๋ฐ”๋žŒ
https://honeywind1020.tistory.com/

 


 

๋ฐ˜๊ฐ‘๋ฐ˜๊ฐ‘ SIGMA์ž…๋‹ˆ๋‹ค.

์Šฌ์Šฌ ๋‚ ์ด ํ’€๋ฆฌ๊ธฐ ์‹œ์ž‘ํ•จ์—๋„ ๋ฐฉ์‹ฌํ•  ์ˆ˜ ์—†๋Š” ์ผ๊ต์ฐจ๋กœ ์ธํ•ด ์™ธ์ถœ ์‹œ ๋ณต์žฅ์— ๊นŠ์€ ๊ณ ๋ฏผ์„ ํ•˜๊ฒŒ ๋˜๋Š” ๋‚ ์ž…๋‹ˆ๋‹ค.

๋‹ค๋“ค ์ด๋ฅผ ์˜์‹ํ•˜์—ฌ ๊ฐ๊ธฐ ๋“ฑ ์งˆ๋ณ‘์— ๊ฑธ๋ฆฌ์ง€ ์•Š๋„๋ก ์œ ์˜ํ•˜์‹œ๊ธธ ๋ฐ”๋ž๋‹ˆ๋‹ค.

 

๋‹ค๋ฆ„์ด ์•„๋‹ˆ๋ผ ์ง€๋‚œ 2025 ์ฑ…๊ฐˆํ”ผ ๋ฆด๋ ˆ์ด ๊ธฐ์‚ฌ 2์— ์ด์–ด์„œ, ์ด๋ฒˆ 2026 ์ฑ…๊ฐˆํ”ผ ๋ฆด๋ ˆ์ด ๊ธฐ์‚ฌ 3์—๋„ ์ฐธ๊ฐ€ํ•˜๊ฒŒ ๋˜์–ด ์ด๋ ‡๊ฒŒ ์ƒˆ๋กœ์šด ๊ธฐ์‚ฌ๋กœ ๋งŒ๋‚˜ ๋ต™๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. 

๊ทธ๋•Œ๋Š” ์ฑ… ์ถ”์ฒœํ•˜๋Š” ๊ทธ๋‹ค์ง€ ํ•ฉ์„ฑ๊ณผ ๊ด€๋ จ ์—†๋Š” ์กฐ๊ธˆ ์ง€๋ฃจํ•œ ๊ธ€์„ ๋ณด์˜€์—ˆ๋Š”๋ฐ, ์ด๋ฒˆ์—๋Š”, ๋˜ ์ฑ… ์ถ”์ฒœ ๊ฐ™์€ ๊ฑธ ์˜ฌ๋ ธ๋‹ค๊ฐ„ ์žฌ๋ฏธ์—†๋Š” ์ฑ…๋ฒŒ๋ž˜ ์ด๋ฏธ์ง€๊ฐ€ ์ƒ๊ธธ ๊ฒƒ ๊ฐ™์œผ๋‹ˆ, ์ž ๊น ๋ถ„์œ„๊ธฐ ์ „ํ™˜์„ ํ•ด๋ณด๊ณ ์ž ์ด์ „๊ณผ ๋‹ฌ๋ฆฌ ํ•ฉ์„ฑ์—์„œ๋„ ํ™œ์šฉํ•  ๋งŒํ•œ ํŒ์„ ์กฐ๊ธˆ ๋“œ๋ฆฌ๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

์• ํ”„ํ„ฐ ์ดํŽ™ํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์‹œ๋Š” ๋ถ„๋“ค๊ป˜๋Š” ๊ฝค๋‚˜ ์ ์ ํ•œ ๋„์›€์ด ๋ , ์ต์Šคํ”„๋ ˆ์…˜์— ๋Œ€ํ•œ ์ •๋ณด์— ๋Œ€ํ•ด ๋งํ•ด๋ณด๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค.

 

๋Œ€๋ถ€๋ถ„ ๋‡Œํ”ผ์…œ์ด๋ผ ํ‹€๋ฆฐ ๋ถ€๋ถ„์ด ์žˆ์„ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹ค ์ฝ์„ ๊ฑฐ๋ผ ๊ธฐ๋Œ€๋Š” ์•ˆ ํ•˜๋Š”๋ฐ ํ‹€๋ฆฐ ๋ถ€๋ถ„ ํ˜น์€ ๊ถ๊ธˆํ•œ ๋ถ€๋ถ„์ด ์žˆ๋‹ค๋ฉด ๋””์Šค์ฝ”๋“œ ํ˜น์€ X DM์œผ๋กœ ์—ฐ๋ฝ ๋ฐ”๋ž๋‹ˆ๋‹ค. 

๋””์Šค์ฝ”๋“œ : 114_51gm4

ํŠธ์œ„ํ„ฐ : @sigma0914


0. ์ต์Šคํ”„๋ ˆ์…˜์ด๋ž€

์ต์Šคํ”„๋ ˆ์…˜์€ ํŠน์ • ์†์„ฑ ๊ฐ’์„ ์ฝ”๋“œ๋ฅผ ํ†ตํ•ด ์กฐ์ •ํ•˜๊ฒŒ ํ•ด์ฃผ๋Š” ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค.

๊ฐ€๋ น ์˜ˆ๋ฅผ ๋“ค์ž๋ฉด ์šฐ๋ฆฌ๊ฐ€ ๊ฐ€์žฅ ํ”ํ•˜๊ฒŒ ์“ฐ๋Š” wiggle(์œ„๊ธ€) ๊ฐ™์€ ๊ฒฝ์šฐ์—๋Š” "ํ•ด๋‹น ์†์„ฑ ๊ฐ’์„ ์ž„์˜์˜ ๊ฐ’๋งŒํผ ํ”๋“ค์–ด๋ผ"๋ผ๋Š” ๋ช…๋ น์„ ๋‚ด๋ฆฌ๋Š” ๊ฒƒ์ด์ฃ .

์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ด์•ผํ•œ๋‹ค๋Š” ์ ์—์„œ ์„ ๋œป ์ ‘๊ทผํ•˜๊ธฐ ์–ด๋ ค์›Œํ•˜์‹œ๋Š” ๋ถ„๋“ค์ด ๋งŽ์•˜์ง€๋งŒ, ์š”์ฆ˜ ๊ฐ™์ด ์ฑ—GPT, ์ œ๋ฏธ๋‚˜์ด ๊ฐ™์€ AI๋“ค์ด ๋ฐœ์ „ํ•œ ์ง€๊ธˆ, ์ œ ์ฃผ๋ณ€์—๋„ ์ต์Šคํ”„๋ ˆ์…˜์„ ํ™œ์šฉํ•˜์—ฌ ์˜์ƒ์„ ์ œ์ž‘ํ•˜๋Š” ๋ถ„๋“ค์ด ์ ์ง€ ์•Š๊ฒŒ ๋ณด์ด๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ ๋ณธ์ธ์ด ์ฝ”๋”ฉ์— ์ž์‹ ์ด ์žˆ๋‹ค๊ฑฐ๋‚˜, ํ˜„์žฌ ๊ตฌ๋… ์ค‘์ธ AI๊ฐ€ ์žˆ๋Š” ๋ถ„๋“ค์ด๋ผ๋ฉด ์ด๋ฒˆ ๊ธฐํšŒ์— ์ต์Šคํ”„๋ ˆ์…˜์„ ์ ๊ทน ํ™œ์šฉํ•ด๋ณผ๋งŒ ํ•˜์‹ค ๊ฒ๋‹ˆ๋‹ค.

๊ทธ๋Ÿผ ์ด์ œ ๋ณธ๊ฒฉ์ ์œผ๋กœ ์‹œ์ž‘ํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

 

1. wiggle

์•ž์„œ ์–ธ๊ธ‰ํ–ˆ๋“ฏ์ด ํ•ฉ์„ฑ๊ณ„์—์„œ ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉํ•  ๊ฒƒ์œผ๋กœ ์ถ”์ •๋˜๋Š” ์ต์Šคํ”„๋ ˆ์…˜์ž…๋‹ˆ๋‹ค.

๋ณดํ†ต "wiggle(a, b)"์˜ ํ˜•ํƒœ๋กœ ์ž์ฃผ ์‚ฌ์šฉํ•˜๊ณ , ์ด๋•Œ a๋Š” ํ”๋“ค๋ฆฌ๋Š” ๋นˆ๋„, b๋Š” ํ”๋“ค๋ฆฌ๋Š” ๊ฐ•๋„๋ฅผ ์˜๋ฏธํ•˜์ฃ .

ํ‰์†Œ์—๋Š” ์œ„์™€ ๊ฐ™์€ ํ˜•ํƒœ๋กœ๋งŒ ์‚ฌ์šฉํ•˜๊ณ  ๊ณ„์…จ๋‹ค๋ฉด, ์ด๋ฒˆ ๊ธฐํšŒ์— ์ƒˆ๋กœ์šด ์‘์šฉ๋ฒ•์„ ๋ฐฐ์›Œ๋ณด๋„๋ก ํ•ฉ์‹œ๋‹ค.

 

"์ž๊พธ ํ”๋“ค๋ฆฌ๋Š” ๋ฐฉํ–ฅ์ด ๋ฐ”๋€Œ์–ด์š”."

wiggle์„ ์“ฐ์‹ค ๋•Œ๋งˆ๋‹ค ๋А๊ปด์ง€๋Š” ๊ฒƒ์ด ์žˆ์„ํ…๋ฐ, ๋ฐ”๋กœ ํ”๋“ค๋ฆฌ๋Š” ๋ฐฉํ–ฅ, ์ฆ‰ ๋žœ๋ค ์‹œ๋“œ(Random seed)๊ฐ€ ๊ณ„์† ๋ฐ”๋€๋‹ค๋Š” ์ ์ž…๋‹ˆ๋‹ค.

์ƒˆ ๋ ˆ์ด์–ด๋ฅผ ๋งŒ๋“ค ๋•Œ, ์ปจํŠธ๋กค z๋ฅผ ๋ˆŒ๋ €์„ ๋•Œ ๋“ฑ๋“ฑ ์˜์ƒ ์ œ์ž‘์„ ํ•˜๊ณ  ์žˆ๋…ธ๋ผ๋ฉด ์ž๊พธ ๋žœ๋ค ์‹œ๋“œ๊ฐ€ ๋ฐ”๋€Œ์–ด ๋ง˜์— ๋“ค์—ˆ๋˜ ์œ„๊ธ€์ด ์ž๊พธ ์ด๋ฆฌ์ €๋ฆฌ ๋ฐ”๋€Œ๋Š” ๋ชจ์Šต์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋Ÿผ ์ด ๋žœ๋ค ์‹œ๋“œ๋ฅผ ํ•˜๋‚˜๋กœ ๊ณ ์ •์‹œํ‚ค๋ ค๋ฉด ์–ด๋–ป๊ฒŒ ํ•ด์•ผํ• ๊นŒ์š”?

seedRandom(1);
wiggle(100,100)

 

๊ฐ„๋‹จํ•ฉ๋‹ˆ๋‹ค. ์œ„์— "seedRandom(a);"๋งŒ ์ถ”๊ฐ€ํ•ด์ฃผ๋ฉด ๋ผ์š”. ์ด๋•Œ a ์œ„์น˜์— ์›ํ•˜๋Š” ์‹œ๋“œ ๊ฐ’์„ ์ •์ˆ˜๋กœ ์ž…๋ ฅํ•ด์ฃผ์„ธ์š”.

์œ„์™€ ๊ฐ™์ด seedRandom์„ ํ†ตํ•ด ์‹œ๋“œ ๊ฐ’์„ ๊ณ ์ •ํ•ด์ฃผ๋ฉด ๋‹ค๋ฅธ ํ–‰๋™์„ ํ•ด๋„ ์–ธ์ œ๋‚˜ ๊ทธ ์‹œ๋“œ ๊ฐ’์œผ๋กœ ๊ณ ์ •๋˜์–ด ์›€์ง์ž„์ด ๊ทธ๋Œ€๋กœ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค.

๋‹จ, ๊ฐ™์€ ์‹œ๋“œ ๊ฐ’์˜ ์ต์Šคํ”„๋ ˆ์…˜์„ ๋‹ค๋ฅธ ๊ณณ์— ๊ทธ๋Œ€๋กœ ๋ณต์‚ฌํ•˜๋ฉด, ๋ชจ๋‘ ํ•˜๋‚˜๋กœ ๋ฌถ์ธ ๋“ฏ์ด ๋˜‘๊ฐ™์ด ์›€์ง์ด๊ฒŒ ๋˜๋‹ˆ, ์„œ๋กœ ๋‹ค๋ฅธ ์›€์ง์ž„์„ ํ•˜๊ฒŒ ์›ํ•œ๋‹ค๋ฉด ์‹œ๋“œ ๊ฐ’์„ ์„œ๋กœ ๋‹ค๋ฅด๊ฒŒ ์„ค์ •ํ•ด์ฃผ์‹œ๊ธธ ๋ฐ”๋ž๋‹ˆ๋‹ค.

 

"๊ฐ€๋กœ/์„ธ๋กœ๋งŒ ์›€์ง์ด๊ฒŒ ํ•˜๊ณ  ์‹ถ์–ด์š”."

๊ธฐ๋ณธ์ ์œผ๋กœ wiggle์€ ์œ„์น˜, ๋น„์œจ๊ณผ ๊ฐ™์ด [x, y] ์ด๋ ‡๊ฒŒ 2๊ฐœ์˜ ๊ฐ’์„ ๊ฐ€์ง„ ์†์„ฑ์—๋Š” ์ž๋™์œผ๋กœ ๋ชจ๋“  ๊ฐ’์— ๊ฐ๊ฐ wiggle์„ ์ ์šฉ์‹œ์ผœ์ค๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ ์šฐ๋ฆฌ๋Š” wiggle์„ ํ•˜๋‚˜๋งŒ ์ ์šฉํ•ด๋„ ์•Œ์•„์„œ x ๊ฐ’์— ์ ์šฉํ•  wiggle์ด ํ•˜๋‚˜, ๊ทธ๋ฆฌ๊ณ  y ๊ฐ’์— ์ ์šฉํ•  wiggle์„ ๋˜ ํ•˜๋‚˜ ์ ์šฉ์‹œ์ผœ์ค€๋‹ค๋Š” ๊ฑฐ์ฃ . ๊ฒŒ๋‹ค๊ฐ€ 3D๋ฅผ ํ™œ์„ฑํ™”ํ•˜์—ฌ [x, y, z]๋กœ 3๊ฐœ์˜ ๊ฐ’์œผ๋กœ ๋Š˜์–ด๋„ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ wiggle์„ 3๋ฒˆ ์ ์šฉ์‹œ์ผœ์ค๋‹ˆ๋‹ค.

์ด๋Ÿฐ ์ ์€ ์ผ๋ฐ˜์ ์œผ๋กœ๋Š” ์ข‹์€ ๊ธฐ๋Šฅ์ด์ง€๋งŒ, ์œ„์™€ ๊ฐ™์€ ์ƒํ™ฉ์—์„œ๋Š” ์กฐ๊ธˆ ๋ถˆํŽธํ•  ์ˆ˜๋„ ์žˆ๊ฒ ๋„ค์š”.

๊ทธ๋Ÿฐ๊ณ ๋กœ wiggle์„ ๊ฐ€๋กœ/์„ธ๋กœ ์›€์ง์ž„์—๋งŒ ์ ์šฉ์‹œํ‚ค๊ณ  ์‹ถ๋‹ค๋ฉด ์–ด๋–ป๊ฒŒ ํ•ด์•ผํ• ๊นŒ์š”?

[wiggle(100,100)[0], value[1]]	//๊ฐ€๋กœ wiggle
[value[0], wiggle(100,100)[1]]	//์„ธ๋กœ wiggle

 

์œ„์— ์ ํžŒ ๊ฐ ๋‘ ์ค„์˜ ์ฝ”๋“œ๋กœ ๊ฐ€๋กœ/์„ธ๋กœ๋งŒ wiggle์„ ์ ์šฉ์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‘ ์ค„ ์ค‘์— ์›ํ•˜๋Š” ๊ฒƒ์„ ํ•˜๋‚˜ ๊ณจ๋ผ์„œ ์‚ฌ์šฉํ•ด์ฃผ์‹œ๋ฉด ๋˜๊ฒ ์Šต๋‹ˆ๋‹ค.

์ž์„ธํ•œ ์„ค๋ช…์€ ์ƒ๋žตํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

 

2. ์†์„ฑ ๊ฐ’์„ ์ฝ”๋“œ๋กœ ์ถ”์ถœํ•˜๋Š” ๋ฒ•

์ต์Šคํ”„๋ ˆ์…˜์œผ๋กœ ํ•  ์ˆ˜ ์žˆ๋Š” ์ˆ˜ ๋งŽ์€ ๊ฒƒ๋“ค ์ค‘ ์ฝ”๋“œ์˜ ใ…‹(ํ‚ค์”)์ž๋„ ๋ชจ๋ฅด๋Š” ์—ฌ๋Ÿฌ๋ถ„๋“ค๋„ ์†์‰ฝ๊ฒŒ ํ•  ์ˆ˜ ์žˆ์„๋งŒํ•œ ๊ฒƒ์„ ์•Œ๋ ค๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค.

์‚ฌ์น™์—ฐ์‚ฐ๋งŒ ํ•  ์ค„ ์•Œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

 

"์†์„ฑ ๊ฐ’์„ ๊ฐ€์ ธ์˜ค๋Š” ๋ฒ•"

์• ํ”„ํ„ฐ ์ดํŽ™ํŠธ์—๋Š” ์ˆ˜๋งŽ์€ ์†์„ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋ณ€ํ˜• ํƒญ์— ์žˆ๋Š” ์œ„์น˜, ํšŒ์ „, ๋น„์œจ ๋“ฑ์„ ํฌํ•จํ•ด ์šฐ๋ฆฌ๊ฐ€ ํšจ๊ณผ๋ฅผ ์ถ”๊ฐ€ํ–ˆ์„ ๋•Œ ๊ทธ ์•ˆ์—์„œ ์ˆ˜์น˜๋ฅผ ์กฐ์ •ํ•  ์ˆ˜ ์žˆ๋Š”, ํ‚คํ”„๋ ˆ์ž„์„ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋Š” ๋Œ€๋ถ€๋ถ„์˜ ์†์„ฑ ๊ฐ’์„ ์šฐ๋ฆฌ๋Š” ์ต์Šคํ”„๋ ˆ์…˜์— ๋ถˆ๋Ÿฌ์˜ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

์˜ˆ๋ฅผ ๋“ค์–ด ํ•œ ๊ฐ€์ง€ ์ต์Šคํ”„๋ ˆ์…˜์„ ๋งŒ๋“ค์–ด๋ด…์‹œ๋‹ค.

์–ด๋–ค ๋ ˆ์ด์–ด์˜ ํšŒ์ „ ๊ฐ’์„ ๋‹ค๋ฅธ ๋ ˆ์ด์–ด์—๋„ ์ ์šฉํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด

์ด๋ ‡๊ฒŒ ๋‚˜์„  ๋ชจ์–‘์˜ ์•„์ด์ฝ˜์„ ๊ฐ€์ ธ์˜ค๊ณ  ์‹ถ์€ ์†์„ฑ ์ชฝ์œผ๋กœ ๋“œ๋ž˜๊ทธ ํ•ด์ฃผ์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋ฉด ์ด๋ ‡๊ฒŒ ๊ฐ€์ ธ์˜ฌ ์†์„ฑ์„ ์ฝ”๋“œ(์ •ํ™•ํžˆ๋Š” ํ•ด๋‹น ์†์„ฑ์„ ์ง€์นญํ•˜๋Š” ๊ฐ์ฒด๋ช…)๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ ์ต์Šคํ”„๋ ˆ์…˜์— ์ž‘์„ฑํ•ด์ค๋‹ˆ๋‹ค.

์ด ์ƒํƒœ๋กœ "์ค‘๊ฐ„ ํšŒ์ƒ‰-์ž์ฃผ ๋‹จ์ƒ‰ 1" ๋ ˆ์ด์–ด์˜ ํšŒ์ „ ๊ฐ’์„ ์›€์ง์ด๋ฉด ์ต์Šคํ”„๋ ˆ์…˜์„ ์ž‘์„ฑํ•œ ๋ ˆ์ด์–ด์˜ ํšŒ์ „ ๊ฐ’ ๋˜ํ•œ ๊ฐ™์ด ์›€์ง์—ฌ์ง€๋Š” ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์–ธ์  ๊ฐ€ ํ•œ ๋ฒˆ ์ƒ๊ฐํ•ด๋ณด์‹œ์ง€ ์•Š์•˜๋‚˜์š”. NULL ๋ ˆ์ด์–ด, ๋ถ€๋ชจ ๋งํฌ๋ฅผ ํ™œ์šฉํ•˜๋ฉด์„œ, ์•„์˜ˆ ๊ฐ™์ด ๋ฌถ๋Š” ๊ฒŒ ์•„๋‹Œ ํšŒ์ „, ๋น„์œจ ๊ฐ’๋งŒ ๊ฐ€์ ธ์˜ค๊ณ  ์‹ถ๋‹ค๊ณ . ๋ฐฉ๋ฒ•์„ ๋ชฐ๋ผ์„œ ํ‚คํ”„๋ ˆ์ž„ ๋ฌดํ•œ ๋ณต์‚ฌ ์ง€์˜ฅ์— ๊ฐ‡ํ˜”๋˜ ์ ์ด ์žˆ์—ˆ๋‹ค๋ฉด ์ด์   ์•ˆ์‹ฌํ•˜์‹ญ์‡ผ. ์ด์ œ ์—ฌ๋Ÿฌ๋ถ„์€ ์ต์Šคํ”„๋ ˆ์…˜์„ ๋ฐฐ์› ์œผ๋‹ˆ๊นŒ์š”. ์—ฌ๋Ÿฌ๋ถ„์€ ์ด์ œ ๋ฌธ๋ช…์ธ์ž…๋‹ˆ๋‹ค.

 

๊ทธ๋Ÿฐ๋ฐ ์ด ๋ฐฉ๋ฒ•์€ ํ•˜๋‚˜์˜ ๊ฐ’์„ ๊ทธ๋Œ€๋กœ, "๋ณ€ํ•จ ์—†๋Š”" ์ฑ„๋กœ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค. ๊ทธ๋Ÿผ ๋งŒ์•ฝ

 

"์–ด๋–ค ์†์„ฑ ๊ฐ’์— ์กฐ๊ธˆ ๋ณ€ํ™”๋ฅผ ์ฃผ๊ณ  ์‹ถ์–ด์š”."

์œ„์—์„œ ์‚ฌ์น™์—ฐ์‚ฐ๋งŒ ํ•  ์ค„ ์•ˆ๋‹ค๋ฉด ๊ดœ์ฐฎ๋‹ค๊ณ  ๋ง์”€๋“œ๋ ธ์Šต๋‹ˆ๋‹ค.

๋ง ๊ทธ๋Œ€๋กœ์—์š”.

 

์œ„์˜ ์ต์Šคํ”„๋ ˆ์…˜๊ณผ ๋‹ฌ๋ฆฌ ์–ด๋–ค ๋ ˆ์ด์–ด์˜ ํšŒ์ „ ๊ฐ’์˜ 2๋ฐฐ๋กœ ๋น ๋ฅด๊ฒŒ ์›€์ง์ด๊ฒŒ ํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ต์Šคํ”„๋ ˆ์…˜์„ ๋ฐ”๊ฟ”์ค์‹œ๋‹ค.

thisComp.layer("์ค‘๊ฐ„ ํšŒ์ƒ‰-์ž์ฃผ ๋‹จ์ƒ‰ 1").transform.rotation * 2

 

์™€ ์ง„์งœ ๊ฐ„๋‹จํ•˜๋‹ค.

์•„๊นŒ ์ „์˜ ์ต์Šคํ”„๋ ˆ์…˜ ๋’ค์— " * 2 ", ์ด ๋‘ ๊ธ€์ž๋งŒ ์ถ”๊ฐ€ํ•ด์ฃผ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

๋งŒ์•ฝ ํšŒ์ „ ๊ฐ’๋ณด๋‹ค 180๋„ ๋” ํฌ๊ฒŒ ์›€์ง์ด๊ณ  ์‹ถ๋‹ค๋ฉด " + 180 ", ์ ˆ๋ฐ˜๋งŒํผ๋งŒ ์›€์ง์ด๊ณ  ์‹ถ๋‹ค๋ฉด " / 2 "๋ฅผ ๋ถ™์—ฌ์ฃผ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

 

๋‹จ, ์ด๋ ‡๊ฒŒ ๋ถ™์ด๋ฉด ์†์„ฑ ๊ฐ’์„ ์ง์ ‘ ์กฐ์ •ํ•˜๋Š” ๊ฒƒ์ด ๋ถˆ๊ฐ€๋Šฅํ•ด์ง€๊ณ , ํ‚คํ”„๋ ˆ์ž„์„ ๋งŒ๋“ค์–ด๋„ ์ ์šฉ๋˜์ง€ ์•Š๋Š” ๊ฑธ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ง์ ‘ ์†์„ฑ ๊ฐ’์„ ๋“œ๋ž˜๊ทธ ํ•ด์„œ ์›€์ง์—ฌ๋„ ๊ทธ๋Œ€๋กœ์ผ ๊ฒ๋‹ˆ๋‹ค.

thisComp.layer("์ค‘๊ฐ„ ํšŒ์ƒ‰-์ž์ฃผ ๋‹จ์ƒ‰ 1").transform.rotation * 2 + value

 

๊ทธ๋Ÿด ๋•Œ๋Š” ์ด๋ ‡๊ฒŒ "value"๋ฅผ ๋”ํ•ด์ฃผ๋ฉด ํ•ด๋‹น ๋ ˆ์ด์–ด์˜ ์†์„ฑ ๊ฐ’์— ๊ฐ€์ ธ์˜จ ๋‹ค๋ฅธ ๋ ˆ์ด์–ด์˜ ์†์„ฑ ๊ฐ’์„ ๋”ํ•ด์„œ ์ ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์•„๊นŒ wiggle์—์„œ๋„ ์‚ฌ์šฉํ–ˆ๋Š”๋ฐ, value๋Š” ํ•ด๋‹น ์†์„ฑ ์ž์ฒด์˜ ๊ฐ’์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

๊ทธ๋Ÿผ ์œ„์˜ ์ฝ”๋“œ๋Š” ํ•ด๋‹น ๋ ˆ์ด์–ด์˜ ์†์„ฑ ๊ฐ’์— "์ค‘๊ฐ„ ํšŒ์ƒ‰-์ž์ฃผ ๋‹จ์ƒ‰ 1 ๋ ˆ์ด์–ด์˜ ํšŒ์ „ ๊ฐ’์˜ ๋‘ ๋ฐฐ"๋งŒํผ ๋”ํ•ด์ฃผ๋Š” ๋™์ž‘์„ ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

 

3. time

time, ๋ง๊ทธ๋Œ€๋กœ ํ˜„์žฌ ์œ„์น˜ํ•œ ๊ณณ์˜ ์‹œ๊ฐ„์„ ๋‚˜ํƒ€๋‚ด๋Š” ๊ฐ์ฒด์ž…๋‹ˆ๋‹ค.

๋ณดํ†ต ์‹œ๊ฐ„์˜ ํ๋ฆ„์— ๋”ฐ๋ผ ๋ฐ”๋€Œ๋Š” ๋ชจ์…˜ ๋“ฑ์„ ์งœ๊ณ  ์‹ถ์„ ๋•Œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์ฃ .

๊ทธ๋Ÿผ time์„ ํ™œ์šฉํ•ด์„œ ์–ด๋–ค ๋ชจ์…˜์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์„๊นŒ์š”?

 

"์œ„์•„๋ž˜๋กœ ํ”๋“ค๊ฑฐ๋ฆฌ๋Š” ๋ชจ์…˜์„ ๋งŒ๋“ค๊ณ  ์‹ถ์–ด์š”."

์—ฌ๊ธฐ์„œ๋Š” ์ˆ˜ํ•™ ๊ด€๋ จ ํ•จ์ˆ˜๋“ค์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋งŒ๋“ค์–ด์ฃผ๋Š” Math๋„ ๊ฐ™์ด ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์šฐ์„  ์ด ๋ชจ์…˜์„ ๋งŒ๋“ค๊ธฐ ์œ„ํ•œ ์ต์Šคํ”„๋ ˆ์…˜๋ถ€ํ„ฐ ๋ณด๋„๋ก ํ•˜์ฃ .

[value[0], value[1] + 50 * Math.sin(10 * time)]

 

์ฒ˜์Œ ๋ณด๋Š” ๊ฒŒ ๋“ฑ์žฅํ•˜๋„ค์š”.

"Math.sin(10 * time)" ๋ถ€๋ถ„์„ ๊ฐ„๋‹จํ•˜๊ฒŒ ์„ค๋ช…ํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

"Math.sin()" ํ•จ์ˆ˜๋Š” ์‚ผ๊ฐํ•จ์ˆ˜ ์ค‘ "sin ํ•จ์ˆ˜"๋ฅผ ๋ถˆ๋Ÿฌ์˜ค๋Š” ํ•จ์ˆ˜์ž…๋‹ˆ๋‹ค.

๋Œ€์ถฉ ์ด๋ ‡๊ฒŒ ์ƒ๊ธด ๊ณก์„ ์ด ๋ฐ”๋กœ sin ํ•จ์ˆ˜์ž…๋‹ˆ๋‹ค.

์ด๋•Œ Math.sin() ํ•จ์ˆ˜์˜ ๊ด„ํ˜ธ ์•ˆ์— time์„ ์ง‘์–ด ๋„ฃ์–ด์ฃผ๋ฉด, ์‹œ๊ฐ„์ด ์ง€๋‚จ์— ๋”ฐ๋ผ ์œ„์˜ ๊ทธ๋ž˜ํ”„ ๊ณก์„ ์ฒ˜๋Ÿผ ์˜ค๋ฅด๋ฝ ๋‚ด๋ฆฌ๋ฝํ•˜๋Š” ๊ฐ’์„ ๋‚ด๋ณด๋ƒ…๋‹ˆ๋‹ค.

์œ„์—์„œ ๋ณด์—ฌ์ค€ ์ต์Šคํ”„๋ ˆ์…˜์„ ๋ณด๋ฉด y ๊ฐ’์— ์›๋ž˜ ์†์„ฑ ๊ฐ’์ธ "value[1]"์— Math.sin() ํ•จ์ˆ˜๋ฅผ ๋”ํ•ด์ฃผ์—ˆ๋Š”๋ฐ, ์ด๋Š” y์ถ• ๋ฐฉํ–ฅ, ์ฆ‰ ์œ„์•„๋ž˜๋กœ ์‚ฌ์ธ ๊ณก์„ ์ฒ˜๋Ÿผ ์ผ์ •ํ•˜๊ฒŒ ํ”๋“ค๋ฆฌ๊ฒŒ ๋งŒ๋“ค์–ด์ฃผ๋Š” ํ•จ์ˆ˜์ธ ๊ฒƒ์ด์ฃ .

๊ทธ๋Ÿฐ๋ฐ ๋‹จ์ˆœํžˆ Math.sin(time)์ด ์•„๋‹Œ ๋‹ค๋ฅธ ์ˆซ์ž๋ฅผ ๊ณฑํ•ด์ฃผ๋Š” ๋ถ€๋ถ„๋“ค์ด ์žˆ๋Š”๋ฐ, ์ด๋Š” sin ๊ทธ๋ž˜ํ”„ ๊ณก์„ ์˜ ๋ชจ์–‘์„ ์กฐ์ ˆํ•ด์ฃผ๋Š” ํŒŒ๋ผ๋ฏธํ„ฐ ๊ฐ™์€ ์—ญํ• ์„ ํ•ด์ค๋‹ˆ๋‹ค.

"a * Math.sin(b * time)"๊ณผ ๊ฐ™์ด ์ ์—ˆ๋‹ค๋ฉด, a๋Š” ๊ณก์„ ์˜ ์œ„์•„๋ž˜ ๋†’์ด, b๋Š” ์œ„์•„๋ž˜๋กœ ํ”๋“ค๋ฆฌ๋Š” ๋นˆ๋„๋ฅผ ๋‚˜ํƒ€๋‚ด์ฃ . a๊ฐ€ ํด์ˆ˜๋ก ๋” ๋†’์ด ์›€์ง์ด๊ณ , b๊ฐ€ ํด์ˆ˜๋ก ๋” ์ž์ฃผ ํ”๋“ค๋ฆฌ๊ฒŒ ๋˜๋Š” ๊ฒ๋‹ˆ๋‹ค.

 

[value[0] + 10 * Math.sin(50 * time), value[1]]	//์ขŒ์šฐ๋กœ ํ”๋“ค๋ฆฌ๊ฒŒ
value + 10 * Math.sin(5 * time)		//ํšŒ์ „ ์†์„ฑ์— ์ ์šฉ ์‹œ ์ขŒ์šฐ๋กœ ๊นŒ๋”ฑ๊ฑฐ๋ฆฌ๋Š” ๋ชจ์…˜์ด ์™„์„ฑ

 

๋˜ํ•œ ์œ„์™€ ๊ฐ™์ด ์‘์šฉํ•˜์—ฌ ์œ„ ์•„๋ž˜๊ฐ€ ์•„๋‹Œ ์ขŒ์šฐ๋กœ ํ”๋“ค๋ฆฌ๊ฒŒ, ํšŒ์ „ ์†์„ฑ์— ์ ์šฉํ•˜์—ฌ ์ขŒ์šฐ๋กœ ๊นŒ๋”ฑ๊ฑฐ๋ฆฌ๋Š” ๋ชจ์…˜์„ ๋งŒ๋“ค ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

 

์ฐธ๊ณ ๋กœ ์œ„์—์„œ๋Š” ๋ฐ˜๋ณต ์šด๋™์„ ํ•˜๋Š” sin ํ•จ์ˆ˜๋ฅผ ํ™œ์šฉํ•˜์˜€๋Š”๋ฐ, ๋Œ€๊ฐ์„  ๋ชจ์–‘์˜ ์ผ์ฐจํ•จ์ˆ˜, ํฌ๋ฌผ์„  ๋ชจ์–‘์˜ ์ด์ฐจํ•จ์ˆ˜ ๋“ฑ, ๋‹ค๋ฅธ ๋ชจ์–‘์˜ ํ•จ์ˆ˜๋“ค๋„ ๋”ฐ๋ผ์„œ๋„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ต๋‹ˆ๋‹ค.

 

"time๋งŒ ์ ์œผ๋‹ˆ๊นŒ 0์ดˆ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์ฆ๊ฐ€ํ•ด์„œ ์˜์ƒ ํ›„๋ฐ˜๋ถ€์—๋Š” ๊ฐ’์ด ๋„ˆ๋ฌด ์ปค์ ธ์š”."

time์€ ์˜์ƒ์—์„œ ํ˜„์žฌ ์‹œ๊ฐ„์„ ๋‚˜ํƒ€๋‚ด๋ฏ€๋กœ, ๋ช‡ ๋ถ„ ์”ฉ์ด๋‚˜ ๋’ค๋กœ ๊ฐ€์„œ ์‚ฌ์šฉํ•˜๋ฉด ๊ทธ ๊ฐ’์ด ๋„ˆ๋ฌด ์ปค์ ธ์„œ ์›ํ•˜๋Š” ๋ชจ์…˜์ด ๋‚˜์˜ค์ง€ ์•Š์„ ๋•Œ๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋ ‡๋‹ค๋ฉด ํŠน์ • ์‹œ์ ์„ ๊ธฐ์ค€์œผ๋กœ ์‹œ๊ฐ„์„ ์ธก์ •ํ•˜๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์–ด๋–ป๊ฒŒ ํ•˜๋ฉด ์ข‹์„๊นŒ์š”?

 

[value[0], value[1] + (time - inPoint) * 500]			//๋ ˆ์ด์–ด์˜ ์‹œ์ž‘ ๋ถ€๋ถ„์„ ๊ธฐ์ค€์œผ๋กœ
[value[0], value[1] + (time - key(1).time) * 500]		//์ฒซ๋ฒˆ์งธ ํ‚คํ”„๋ ˆ์ž„์„ ๊ธฐ์ค€์œผ๋กœ
[value[0], value[1] + (time - marker.key(1).time) * 500]	//์ฒซ๋ฒˆ์งธ ๋งˆ์ปค๋ฅผ ๊ธฐ์ค€์œผ๋กœ

 

๋‹ค์Œ๊ณผ ๊ฐ™์ด 3๊ฐ€์ง€ ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๋‹ค.

 

์ฒซ๋ฒˆ์งธ ๋ฐฉ๋ฒ•์€ ๋ ˆ์ด์–ด์˜ ์‹œ์ž‘ ๋ถ€๋ถ„์„ ๊ธฐ์ค€์œผ๋กœ ์‹œ๊ฐ„์„ ์ธก์ •ํ•˜๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ, ์›๋ž˜ time์ด ๋“ค์–ด๊ฐˆ ์œ„์น˜์— "(time - inPoint)"๋ฅผ ๋„ฃ์–ด์ค๋‹ˆ๋‹ค.

inPoint๋Š” ๋ ˆ์ด์–ด๊ฐ€ ํ™”๋ฉด์— ๋ณด์ด๊ธฐ ์‹œ์ž‘ํ•˜๋Š”, ์ฆ‰ ๋ ˆ์ด์–ด์˜ ์‹œ์ž‘ ๋ถ€๋ถ„์˜ ์‹œ๊ฐ„์„ ๋‚˜ํƒ€๋‚ด๋Š” ๊ฒƒ์œผ๋กœ ์ด๋ฅผ ํ†ตํ•ด ์‹œ์ž‘ ๋ถ€๋ถ„์„ ๊ธฐ์ค€์œผ๋กœ ์‹œ๊ฐ„์„ ๋‹ค์‹œ ์ธก์ •ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋งŒ๋“ค์–ด์ค๋‹ˆ๋‹ค. ๋ฐ˜๋ฉด, ๋ ˆ์ด์–ด๊ฐ€ ๋๋‚˜๋Š” ์‹œ์ ์€ outPoint๋กœ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

๋‘๋ฒˆ์งธ ๋ฐฉ๋ฒ•์€ ํ•ด๋‹น ์†์„ฑ์˜ ์ฒซ๋ฒˆ์งธ ํ‚คํ”„๋ ˆ์ž„์„ ๊ธฐ์ค€์œผ๋กœ ์‹œ๊ฐ„์„ ์ธก์ •ํ•˜๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ, time ๋Œ€์‹  "(time - key(1).time)"์„ ๋„ฃ์–ด์ค๋‹ˆ๋‹ค.

key(1).time์ด ํ˜„์žฌ ์†์„ฑ ์ฒซ๋ฒˆ์งธ ํ‚คํ”„๋ ˆ์ž„์˜ ์‹œ๊ฐ„์„ ๋‚˜ํƒ€๋‚ด๋ฉฐ, 1 ๋Œ€์‹ ์— ๋‹ค๋ฅธ ์ˆซ์ž๋ฅผ ๋„ฃ์–ด์„œ ์ฒซ๋ฒˆ์งธ๊ฐ€ ์•„๋‹Œ ํ‚คํ”„๋ ˆ์ž„์„ ๊ธฐ์ค€์œผ๋กœ๋„ ์‚ผ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

๋งˆ์ง€๋ง‰์œผ๋กœ ์„ธ๋ฒˆ์งธ ๋ฐฉ๋ฒ•์€ ๋ ˆ์ด์–ด์—์„œ ์ฒซ๋ฒˆ์งธ ๋งˆ์ปค๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์‹œ๊ฐ„์„ ์ธก์ •ํ•˜๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ, time ๋Œ€์‹  "(time - marker.key(1).time)"์„ ๋„ฃ์–ด์ค๋‹ˆ๋‹ค.

marker.key(1).time์ด ๋ ˆ์ด์–ด์˜ ์ฒซ๋ฒˆ์งธ ๋งˆ์ปค์˜ ์‹œ๊ฐ„์„ ๋‚˜ํƒ€๋‚ด๋ฉฐ, ํ‚คํ”„๋ ˆ์ž„์˜ ๊ฒฝ์šฐ์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ 1 ๋Œ€์‹  ๋‹ค๋ฅธ ์ˆซ์ž๋ฅผ ๋„ฃ์–ด์„œ ๋‹ค๋ฅธ ๋งˆ์ปค๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์‚ผ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

๊ฐ‘์ž๊ธฐ ์ข€ ๋ณต์žกํ•œ ์ด์•ผ๊ธฐ๊ฐ€ ๋˜์—ˆ๋„ค์š”.

๋‹ค์Œ์€ wiggle๋ณด๋‹ค๋Š” ์•„๋‹ˆ์ง€๋งŒ, ๋งˆ์ง€๋ง‰์œผ๋กœ ์—ฌ๋Ÿฌ๋ถ„๋„ ์กฐ๊ธˆ์€ ์จ๋ดค์„ ์ต์Šคํ”„๋ ˆ์…˜์„ ๋‹ค๋ค„๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

 

4. loopOut

ํ”ํžˆ ํ‚คํ”„๋ ˆ์ž„ ๋ฐ˜๋ณต์„ ์œ„ํ•ด ์‚ฌ์šฉํ•˜๋Š”, ์• ํ”„ํ„ฐ ์ดํŽ™ํŠธ์—์„œ ์ž์ฒด์ ์œผ๋กœ ์ œ๊ณตํ•˜๋Š” ์ต์Šคํ”„๋ ˆ์…˜ ํ”„๋ฆฌ์…‹์—๋„ ์กด์žฌํ•˜๋Š” ํ•จ์ˆ˜์ž…๋‹ˆ๋‹ค.

 

์ด๋ฒˆ์—๋Š” ์ด loopOut์— ๋Œ€ํ•ด ์กฐ๊ธˆ ์ž์„ธํžˆ ์•Œ์•„๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

 

"loopOut์˜ ํŒŒ๋ผ๋ฏธํ„ฐ"

loopOut์—๋Š” ๋‘ ๊ฐ€์ง€ ํŒŒ๋ผ๋ฏธํ„ฐ๊ฐ€ ์กด์žฌํ•ฉ๋‹ˆ๋‹ค.

loopOut(type, numKeyframes)

 

์ฒซ๋ฒˆ์งธ ํŒŒ๋ผ๋ฏธํ„ฐ๋Š” type์œผ๋กœ, cycle, offset, pingpong, continue, ์ด๋ ‡๊ฒŒ 4๊ฐ€์ง€๊ฐ€ ์žˆ์œผ๋ฉฐ, ์–ด๋–ค ์‹์œผ๋กœ ๋ฐ˜๋ณตํ•  ์ง€๋ฅผ ๊ฒฐ์ •ํ•ฉ๋‹ˆ๋‹ค.

๋‘๋ฒˆ์งธ ํŒŒ๋ผ๋ฏธํ„ฐ๋Š” numKeyframes, ๋ฐ˜๋ณตํ•  ํ‚คํ”„๋ ˆ์ž„์˜ ๊ฐœ์ˆ˜๋ฅผ ๊ฒฐ์ •ํ•ฉ๋‹ˆ๋‹ค. ๋‹จ, 0์ด๋ผ๋ฉด ๋ชจ๋“  ํ‚คํ”„๋ ˆ์ž„์„ ๋ฐ˜๋ณตํ•˜๋„๋ก ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

 

์ฐธ๊ณ ๋กœ type์˜ ์ข…๋ฅ˜ ๋ณ„ ๋ฐ˜๋ณต ๋ฐฉ์‹์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : https://motiondesign.school/blog/top-3-after-effects-expressions/

 

numKeyframes๋Š” ์•ž์„œ ๋งํ–ˆ๋“ฏ ๋ฐ˜๋ณตํ•  ํ‚คํ”„๋ ˆ์ž„์˜ ๊ฐœ์ˆ˜์ธ๋ฐ, ์ด๋•Œ ๋ฐ˜๋ณตํ•˜๋Š” ํ‚คํ”„๋ ˆ์ž„์€ ๊ฐ€์žฅ ๋งˆ์ง€๋ง‰ ํ‚คํ”„๋ ˆ์ž„์—์„œ๋ถ€ํ„ฐ ์—ญ๋ฐฉํ–ฅ์œผ๋กœ ์…‰๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ํ‚คํ”„๋ ˆ์ž„ 1, 2, 3, 4, 5๊ฐ€ ์žˆ์„ ๋•Œ, numKeyframes๋ฅผ 3์œผ๋กœ ์„ค์ •ํ•˜๋ฉด 1๋ถ€ํ„ฐ 5๊นŒ์ง€ ์ด๋™ ํ›„, 3, 4, 5๋ฅผ type์— ๋งž์ถฐ์„œ ๋ฐ˜๋ณตํ•˜๊ฒŒ ๋˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

 

๋˜ํ•œ, ๊ฐ ํŒŒ๋ผ๋ฏธํ„ฐ๋Š” ์ž…๋ ฅํ•˜์ง€ ์•Š์•„๋„ ์ž๋™์œผ๋กœ ์„ค์ •๋˜๋Š” ๋””ํดํŠธ ๊ฐ’์ด ์กด์žฌํ•ฉ๋‹ˆ๋‹ค.

loopOut()์ฒ˜๋Ÿผ ๊ด„ํ˜ธ ์•ˆ์„ ๋น„์›Œ๋ฒ„๋ฆฌ๋ฉด, type์€ cycle, numKeyframes๋Š” 0์œผ๋กœ ์„ค์ •๋ฉ๋‹ˆ๋‹ค.

 


 

์ด์ƒ์œผ๋กœ ๊ฐ„๋‹จํ•œ ์ต์Šคํ”„๋ ˆ์…˜ ๊ฐ•์ขŒ๋ฅผ ๋งˆ์น˜๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

์‹œ์ฒญ๊ฐ ์ž๋ฃŒ๊ฐ€ ๊ฐ์ž์นฉ ๋ด‰์ง€ ์† ๊ฐ์ž์นฉ ์–‘๋งŒํผ์ด๋‚˜ ์ ์€ ์ฝ๊ธฐ ํž˜๋“  ๊ธ€์„ ์ฝ์–ด์ฃผ์…”์„œ ์ •๋ง ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

์ƒ๊ฐ๋ณด๋‹ค ๋ณ„๊ฑฐ ์—†๊ธฐ๋Š” ํ•˜์ง€๋งŒ, ์ด ์ •๋„๋งŒ ์•Œ์•„๋„ ์˜์ƒ ์ œ์ž‘์—๋Š” ์ž‘์ง€ ์•Š์€ ๋„์›€์€ ๋  ๊ฑฐ๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

์‚ฌ์‹ค ์ œ๊ฐ€ ์ž‘์—…ํ•  ๋•Œ๋Š” ์กฐ๊ธˆ ๋” ๋ณต์žกํ•œ ์ต์Šคํ”„๋ ˆ์…˜์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค๋งŒ, ๊ทธ๊ฑธ ์—ฌ๊ธฐ์— ์ ์—ˆ๋‹ค๊ฐ€๋Š” ์ฝ๋‹ค๊ฐ€ ์ค‘๋„ ํƒˆ์ฃผํ•˜๋Š” ๋ถ„๋“ค์ด ๋Œ€๋Ÿ‰ ๋ฐœ์ƒํ•˜๊ฑฐ๋‚˜ ์ œ๊ฐ€ ๋งˆ๊ฐ์ผ์„ ๋งž์ถ”์ง€ ๋ชปํ•˜๋Š” ์‚ฌํƒœ๊ฐ€ ๋ฒŒ์–ด์งˆ ์ˆ˜๋„ ์žˆ์œผ๋ฏ€๋กœ ๊ณผ๊ฐํ•˜๊ฒŒ ๋ˆ„๋ฝ์‹œ์ผฐ์Šต๋‹ˆ๋‹ค.

 

๋น„๋ก ์ œ๊ฐ€ ์•„๋Š” ๋ชจ๋“  ๊ฑธ ์ ์ง€๋Š” ๋ชปํ–ˆ๋‹ค๋งŒ, ๊ทธ ๋Œ€์‹ ์ด๋ผ๊ณ  ํ• ๊นŒ, ์—ฌ๋Ÿฌ๋ถ„ ์˜์ƒ ์ œ์ž‘์— ๋„์›€์ด ๋˜์‹œ๋ผ๊ณ  ๊ธฐ์กด์— ์ œ์ž‘ํ–ˆ๋˜ ์Šคํฌ๋ฆฝํŠธ๋“ค์„ ์žฌ์ฐจ ๊ณต์œ ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

 

https://youtu.be/gW3NE7XhfcE?si=yoiqsQ5W3Stds98Q

 

https://www.youtube.com/watch?v=XMSj83YlFvk

 

๋ถ€๋”” ๋„์›€์ด ๋˜์—ˆ๊ธฐ๋ฅผ ๋ฐ”๋ผ๋ฉฐ, ์ด๋งŒ ์ค„์ด๊ฒ ์Šต๋‹ˆ๋‹ค.

์•ž์œผ๋กœ์˜ ์˜์ƒ ์ œ์ž‘์ด ์กฐ๊ธˆ ๋” ํŽธํ•˜๊ณ  ์ˆ˜๋ คํ•ด์ง€๊ธธ ๋ฐ”๋ผ๋ฉฐ.