본문 바로가기 메뉴 바로가기

ovcos

프로필사진
  • 글쓰기
  • 관리
  • 태그
  • 방명록
  • RSS

ovcos

검색하기 폼
  • 분류 전체보기 (109)
    • Diary (6)
    • bikelife_monkey125 (10)
    • Inspiration (6)
      • 2-Demention (3)
      • 3-Demention (3)
    • Tutorial (16)
      • Mograph (3)
    • Making&process (10)
    • Information (12)
    • Test Shot (10)
    • Study (19)
      • x-particles (0)
      • Houdini (0)
      • Redshift (19)
      • Processing-basic (1)
  • 방명록

Study (39)
부모와 상관없이 로테이션 고정하는 expression

motion tools 나 script 로 하나 만들어서 로테이션 고정하고 싶을 때 적요하면 도움이 되것습니다... var totalParentRotation = 0;var currentLayer = thisLayer;while (currentLayer.hasParent) {currentLayer = currentLayer.parent;totalParentRotation += currentLayer.rotation;}value - totalParentRotation 출처는 https://youtu.be/yzYz242kAzU?si=dlmlllBPxKS5nDnH&t=1109

Study 2026. 1. 29. 16:25
익스프레션 베이크 하고 중복된 키프레임 사잇값 전부 삭제

1. 선택된 레이어에 적용되어있는 익스프레션을 모두 convert to keyframe 함. 2. 키프레임으로 변환된 프레임 중 연속으로 중복된 키프레임은 삭제 함.3. 익스프레션이 있는 속성은 베이킹 후 최적화하고,** 익스프레션은 없지만 사용자가 수동으로 선택한 속성(키프레임)**도 동일하게 최적화스크립트 작동 방식 설명익스프레션 베이킹: app.findMenuCommandId("Convert Expression to Keyframes")를 사용하여 AE 내장 기능을 호출합니다. 이는 매 프레임마다 키프레임을 생성합니다.최적화 알고리즘 (핵심):키프레임을 **역순(numKeys에서 1방향)**으로 훑습니다. (앞에서부터 지우면 뒤쪽 키프레임의 번호가 바뀌어 오류가 발생하기 때문입니다.)k-1(이전),..

Study 2026. 1. 10. 03:54
레이어 선택한 순서대로 부모자식관계 설정하는 스크립트

말그대로 순서대로 부모자식링크시켜주는 스크립트임.. 만든지 좀 됐고 안쓴지 좀 됐는데 일단 남겨둠... --------------------------------------------- // 선택된 레이어를 선택된 순서에 따라 부모 레이어로 연결하는 스크립트(function() { // 활성화된 컴포지션 가져오기 var comp = app.project.activeItem; // 컴포지션이 유효한지 확인 if (!comp || !(comp instanceof CompItem)) { alert("활성화된 컴포지션이 없습니다."); return; } // 선택된 레이어 가져오기 var selectedLayers = comp.selectedL..

Study 2026. 1. 9. 21:33
부모레이어의 좌표로 앵커포인트 옮기는 스크립트

몇번 테스트 해보니 정확히 안되는 경우도 있는데 자식레이어에 로테이션이나 스케일이 들어가있으면 잘 안되는것 같음...리깅할때 편하려고 제작해 봄 -------------------------- (function() { app.beginUndoGroup("Move Anchor Point to Parent World Position"); var comp = app.project.activeItem; if (!(comp instanceof CompItem)) { alert("컴포지션을 선택해 주세요."); return; } var selectedLayers = comp.selectedLayers; if (selectedLayers.length ===..

Study 2026. 1. 9. 21:32
NUM_Count_script 2종

제가 쓰려고 그냥 만든 스크립트입니다. 잘 안될 수도 있어요. 먼저 가장 기본적인 Slider 컨트롤이 생기고 Math.round 가 적용되도록 만들어진 스크립트야. ------------------------------------------------ { function addSliderToTextLayer() { var proj = app.project; if (!proj) return; var activeItem = proj.activeItem; if (!(activeItem instanceof CompItem)) { alert("컴포지션을 선택해 주세요."); return; } ..

Study 2026. 1. 9. 21:30
[Ae]expression - look at

look at 으로 사용해도 됨.. A = rotation null B = target A 의 로테이션에 적용 x=transform.position[0]-thisComp.layer("B").transform.position[0]; y=transform.position[1]-thisComp.layer("B").transform.position[1]; R=Math.atan2(-x,y); radiansToDegrees(R) 내가 이걸 2014년에 왜 정리해뒀지? ...

Study 2021. 8. 20. 09:44
[Ae]expression - 코마가 포함된 숫자 카운트

numDecimals = 0; // 소수점 몇자리 까지 처리할 것인가? commas = true; // 콤마 넣을 것인가? numComma = 3 ; // 몇 번째 자리마다 코마를 넣을 것인가? dollarSign = true; // 단위 표시 할것인가? endCount = Number(effect("Slider Control")("Slider")); // 종료 값 - 문자열을 숫자열로 형변환 시켜줌 t = time - inPoint; s = endCount.toFixed(numDecimals); prefix = ""; if (s[0] == "-"){ prefix = "-"; s = s.substr(1); } if(dollarSign) prefix += "$"; if (commas){ decimals =..

Study 2021. 6. 2. 09:50
[Ae]expression - time count

rate = 1; // slider 에 곱해 줌 clockStart = 0; // 시작시간 ts = effect("Slider Control")("Slider"); //

Study 2021. 6. 2. 09:38
[Ae]expression 으로 mask path 그리기

일단 중요한건 mask("Mask Name").maskPath.creatPath[] 인데, maskPath 에 path를 만드는 createPath 를 붙여주고 이후 [] 배열값을 넣어주는 것이다. 배열은 첫 포인트부터 마지막 포인트까지의 위치값을 , 로 구분해 지정해 주면 된다. 이걸토대로 2개의 포인트값을 이용해 사각박스를 만든다던지 하는 방법을 구현할 수 있다. myMask = mask("Mask 1").maskPath; tl = effect("Rectangle Contorls")("Top_Left"); br = effect("Rectangle Contorls")("Bottom_Right"); myMask.creatPath( [ tl , [br[0],tl[1]] , br , [tl[0],br[1]]..

Study 2020. 12. 2. 10:51
[Ae]Fractal noise - block 의 mosaic 패턴과 매칭 Expression

프랙탈 노이즈와 모자이크 패턴의 스케일이 맞지 않는 문제를 야매로 해결하는 방식임. scale width w = thisComp.width; wm_num = thisComp.layer("layer_name").effect("Mosaic")("Horizontal Blocks"); (w/wm_num) * 1.5 scale height h = thisComp.height; hm_num = thisComp.layer("layer_name").effect("Mosaic")("Vertical Blocks"); (h/hm_num) * 1.5 Offset Turbulence wm_num = thisComp.layer("layer_name").effect("Mosaic")("Horizontal Blocks"); hm_n..

Study 2020. 11. 20. 11:47
0,1 이 랜덤하게 움직이는 텍스트 박스 만들기

0,1 이 가로와 세로에 맞게 랜덤하게 발생되는 식.. 이펙트 패널엔 Slider control 3개가 필요하고 columnsrowsframerate 의 이름을 가져야 한다.  text 의 source text 에 적용. // use sliders as variables for column, row, and frameRate c = effect("columns")("Slider");r = effect("rows")("Slider"); posterizeTime(effect("framerate")("Slider")); // initialize the string we'll be using s = ''; // outer loop for rows, inner loop for columns.// add rando..

Study 2020. 10. 7. 17:02
[C4D] Priority 에 대한 질답 발췌(유저그룹)

www.cinema4d.co.kr/qna/1739939 질문과 답변 - Constraint 태그의 Priority 항목에 대해 알고 싶습니다. 안녕하세요 유저그룹 여러분. 날씨가 많이 따뜻해졌네요.Constraint 태그의 Priority 항목에 대해 궁금한 점이 있어 질문 올립니다.먼저 캐릭터의 머리에 심은 본에 눈알과 이빨을 Constraint 태그로 구� www.cinema4d.co.kr Q. 안녕하세요 유저그룹 여러분. 날씨가 많이 따뜻해졌네요. Constraint 태그의 Priority 항목에 대해 궁금한 점이 있어 질문 올립니다. 먼저 캐릭터의 머리에 심은 본에 눈알과 이빨을 Constraint 태그로 구속하여 같이 움직이게 했는데요. 머리를 애니메이션했을 때, 뷰포트에서 플레이를 해 보면 눈..

Study 2020. 10. 5. 15:21
[마블러스디자이너] seam taping / offset pattern outline

# seam taping : 가먼트의 아웃라인을 선택 후 seam taping을 체크하면 seam 라인이 박음질에 의해 좀 더 빳빳한 느낌이 나도록 변경됨. # offset pattern outline : 가먼트의 아웃라인을 선택 후 오른쪽 클릭 - Offset pattern outline을 선책 하면 설정창이 뜨는데 Distance 설정 후 하단의 모양을 지정해주면, Extrude 하듯 가먼트가 확장됨 # elastic : 가먼트의 아웃라인을 선택 후 Elastic 을 체크하면 마치 라인에 고무줄을 넣은 것 처럼, 안쪽으로 수축되는 성질을 갖음.

Study 2020. 9. 28. 19:37
[마블러스디자이너] Wind 시뮬레이션과 Alembic 을 이용한 천 걷어내기

# Tack tack : cinema 4d 의 fix point 와 비슷한 기능으로 오브젝트와 가먼트를 이어 주는 기능임. # Wind Planar : 컨트롤러의 위치와 관계 없이 지정하는 방향으로만 바람이 붐. Spherical : 컨트롤러를 기점으로 구형태에서 바람이 뿜어져 나옴. 중요 ㅣ alembic 임포트 할 때 꼭 Alembic 먼저 불러온뒤 Obj 를 Add 시켜줘야 한다. 시뮬레이션 중 가먼트가 아바타(오브젝트)를 뚫고 들어가거나 오브젝트가 튀어 나온다면, 아바타(오브젝트)를 선택한 뒤, Surface 에서 Skin Offset 을 늘려주면 된다. pin을 이용해 붙여줄때는 Attatch pin to avatar 기능을 이용한다.

Study 2020. 9. 24. 17:42
[마블러스디자이너] 천의 속성 / Physical Property - Detail

천의 속성 # Weft , Warp , Shear/Bias Weft : 가로 (위사) Warp : 세로 (경사) Shear / Bias : 대각선 (전단) # Stretch Stretch : 신축성을 조절해 줌 (탱탱) 값이 낮을 경우 신축성이 없어져 축 쳐지게 된다. 탱탱함을 잃는다고 보면 될 듯. Shear : 신축성 조절. 패턴의 대각선 방향에 대한 강도를 조절함. 값을 높일 경우 좀 더 짱짱한 느낌을 만들 수 있음. Shear 의 값이 Weft 와 Warp 보다 같거나 높을수록 주름이 가는 재질을 만들어 줄 수 있음. 반대로 값이 낮을경우 주름이 없어지고 실크나 저지와 같은 신축성이 좋은 소재로 변함. ★★★★★ 1. Weft & Warp 으로 전체적인 재질의 신축성을 잡아준다. 2. Shear ..

Study 2020. 9. 24. 13:52
[Ae]gradient ramp 와 sourceRectAtTime 을 이용한...

Text 에 Gradient ramp 를 적용한 뒤, Start 와 End 에 각각 다음의 표현식을 넣어준다 *Start a = thisLayer.toComp([0,0]) *End a = thisLayer.toComp([0,0]); b = thisLayer.sourceRectAtTime().width; a+[b,0] start 에는 현재 레이어의 앵커포인트가 위치해 있는 지점의 컴포지션 좌표를 가져온다. ramp 에 있는 포지션은 컴포지션 좌표에 영향을 받는다. End 에는 start 위치에 현재 텍스트의 너비를 더한 위치의 컴포지션 좌표를 가져온다. 이제 텍스트의 너비(길이)에 맞춰 ramp 가 적용되게 되며 스케치에서 불러들일 수 없는 부분에 대해 요렇게 수정을 하면 된다.

Study 2020. 7. 13. 16:53
레드쉬프트가 가진 강점.. '샘플링 최적화'

youtu.be/bSl59024koE?t=1315 해당 영상을 보면 Unified sampling 과 sampling override 의 역할에 대해서 이야기 하고있다. 그외에도 GI sampling 에 대한 부분도 언급하고있다. 나는 이 영상을 보기전에 다양한 강좌 영상을 보았지만, 가장 명확하게 샘플링의 역할에대해 설명해 준 케이스가 아닌가 생각을 한다. 이전에는 Unified sampling 의 max 수치가 sampling overried 의 수치보다 낮으면 광역으로 clamp 되는게 아닌가 생각을 했었다. 기본적으로 재질이나 라이트에는 샘플을 조절할 수있게 되어있고, 해당 샘플이 우선 계산 되어지는데, sampling overried 에서 따로 광역설정을 해주면 적용된 모든 오브젝트의 샘플값을 ..

Study/Redshift 2020. 6. 2. 12:12
C4D 에서 valueAtTime 처럼 특정시간의 속성값 가져와 사용하기

AE 에서는 valueAtTime 이라는 아주 쓸모있는 표현식이 있다. 현재 시간 혹은 특정시간에있는 오브젝트의 속성값을 가져와 현재의 시간에 적용할 수있다. Time 과 연계해서 쓰면 지정된 프레임간격으로 Delay 되는 움직임을 만들 수있다. 이처럼 아주 쓸모있는 표현식을 C4D 의 Xpresso 로 구현하기위해 알아봤지만, 지식이 미천해 알기가 너무 어려웠다. 결국 xpresso 단톡방에 물어보게 되었고 아주 간단한 노드를 설명받아 문제없이 구현할 수 있게 되었다. Track node 아래는 '정석'님이 올려주신 스샷. 정석님 감사합니다- + 함께 알아두면 좋은 노드 Memory node

Study 2020. 5. 28. 23:56
[redshift] rsState node :: UVWpass 를 뽑아줄때 사용하는 pass

Study/Redshift 2020. 5. 19. 19:18
필드의 레이어 순위는 무거운씬에서 중요하다.

지금 작업하면서 이상한 부분이 있어서 남겨본다. 볼륨메쉬를 굉장히 무겁게 썼는데 Shader field 를 이용해 씬을 만들었다. Shader field 는 Group Field 를 이용해 재사용 되어졌는데, 구성은 다음과 같다. 어쨌든 이런식으로 구성이 되어있었는데, 애니메이션이 되도록 되어있었고, 0frame 과 300frame 을 한번에 스킵해봤는데 일부분만 바뀌고 나머지 부분들이 바뀌지 않았다. 그래서 위와 같이 바꾸었더니 문제가 없어졌다. 생각 해보니, og 가 여러 필드에 구성이 되어있다보니 상단부터 계산되어져 내려왔을 때, og 가 계산이 덜된 상태에서는 계산이 안된 og를 가져다 쓴 Group field 는 적용이 안됐고 실제 og 가 계산되어졌을때만 일부분 바뀌었던 것이다. +다른 오브젝..

Study 2020. 4. 3. 22:52
이전 1 2 다음
이전 다음
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
  • FX study blog.
  • 학원에서도 말하지 않는 영어 이야기
  • 학원에서도 말하지 않는 영어 이야기
TAG
  • 아이파이
  • 5.0
  • Redshift
  • 모션캡쳐
  • 러버호스
  • minion
  • kinect
  • 랜덤
  • Breakdown
  • AfterEffects
  • nateon
  • 모션그래픽
  • mograph
  • 네이트온
  • 튜토를이해하자
  • Red
  • #animated
  • tutorial
  • #trampoline
  • 네이트
  • motion capture
  • 다운그레이드
  • AE
  • Motion graphic
  • ipi
  • Cinema4d
  • expression
  • making of
  • C4D
  • MOCAP
more
«   2026/02   »
일 월 화 수 목 금 토
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
글 보관함

Blog is powered by Tistory / Designed by Tistory

티스토리툴바