Monthly Archives: 6월 2011

엑터만들기 팁

Null 2개를 이용해서, 무기를 들어야할 포지션을 설정했고, 그때마다 어떤 메쉬를 켤지를 애니메이션 해놨다.

이랬더니 캐릭터를 많이 만들어도 되지 않아 좋다.

 

문제점이 있긴하다.

타임라인 애니메이션을계속 반복하다보면 무기가 빙글빙글 돌게된다.

문제점이 없는 건 아니지만 이러한 방향으로 디벨롭해보면 좋겠다.

Arnold용 스프라이트(Sprite) 렌더링

Arrow

아놀드에서 스프라이트를 사용하고 싶었다. 또한 ICE 에서 칼라 값과 알파값을 가지고 와서 적용하고 싶었다.

아직은 아놀드로는 파티클에다 직접적으로 스프라이트를 입히지 못하므로, 그리드를 이용해서 인스턴스 한 후,

그 그리드에다 아래와 같이 노드를 구성했다.

 

파티클 제어에서 Velocity에 Resize Vector 를 추가한게 더 빠르다?

노드 구성 후 쓸데 없는 것을 빼버렸는데, 뷰포트와 군중의 진행 속도가 더 빠른 느낌이었다.

확실히 테스트 하기위해서 스톱워치도 해보고, 메모리 사용량도 체크 해보았다.

그 덕분에 몇가지 사실도 새롭게 알아냈다.

Resize Vector 를 추가하여 Speed 로 Resize 해주는 것이 오히려 연산이 추가가 되는 것인데.

Add 에서 바로 Set Particle Velocity 로 연결된 구성보다 빠르다.

아주 미세하게 빠른것도 아니고 엄청 빠르다. 즉, B연결 보다 A연결이 더 빠르단 얘기다.

 

300프레임까지의 재생 속도

A =?17.6 second

B = 42.4 second

 

300프레임까지의 Cpu 사용률

A , B 모두 14~16 %

 

300프레임까지의 사용된 Memory

A = 316 Kb

B =?1024 Kb

 

엄청 차이가 난다…. 아, 왜그럴까… ?원인을 알아야 제대로 빠른 작업을 할텐데…

줄여서 빨라진게 아니고, 별걸 아닌 것을 추가해서 빨라졌다니 더 헷갈린다.

 

그리고 마지막으로, A나 B의 연결 구성으로 타임라인을 Loop 로 애니메이션을 몇번 돌리면 사용하는 메모리는 계속 늘어간다.

애니메이션 재생을 끝내고 다시 첫 프레임으로 돌아와도 메모리 사용은 돌아오지 않는다..

즉 무거운 시뮬레이션 작업을 오랬동안 하면, 주기적인 프로그램의 재시작 또는 재부팅이 필요한 것 같다.