MoGraph
2015.09.03 18:25

C4D Python에서 Seed 정의

주소복사 | 조회 수 607 추천 수 0 댓글 6
Atachment
첨부 '2'
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 게시글 수정 내역 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 게시글 수정 내역 댓글로 가기 인쇄
Extra Form

pq.jpg


분류에 파이썬이나 스크립트 항목이 없네요.

위와 같이 +-소숫점 두자리까지 표시된 숫자가 랜덤하게 바뀌는 표현을 하려고

파이썬 기초 서적과 세미나 들었던 것을 더듬어가며 어떻게 만들어내긴 했습니다만...

seed 값을 time과 함께 적용하려니 계속 뭔가 막히더군요.

억지로 임의의 작은 수를 더해서 대입하는 식으로 만들었는데, 확실히 알고 넘어가고 싶네요.

임의 숫자를 더하거나 곱하지 않고 계속 변하는 random에 대한 seed 값을 정의 하는 방법이 있을까요?

파일 첨부해뒀습니다. 감사합니다.


  • ?
    엘라스틱마인드 2015.09.03 20:43 채택

    랜덤의 범위를 정하지 하고 그걸 소수점 2자리 까지 자르니까

    0.112xxxx

    0.113xxxx 이러면 똑같이 되겠죠.


    자르지 말고 2자리가 필요하다면

    0~99 까지랜덤한 수를 구해서 그냥 문자로 더해서


    0.1~ 0.99 까지 만들던가


    아래와 같이 두개를 따로 해서 더해도 되구요.

        obj = op.GetObject()
        frame = doc.GetTime().GetFrame(doc.GetFps())
        seed = obj[c4d.ID_USERDATA,1]
       
        # time - range mapping
        interval = obj[c4d.ID_USERDATA,2]
        ranged_seed = frame / interval
       
        # seed Gen
        random.seed(seed + ranged_seed)
       
        Num1 = random.randrange(0,10)
        Num2 = random.randrange(0,10)
       
        obj[c4d.PRIM_TEXT_TEXT] = "0."+ str(Num1) + str(Num2)

    0.00 ~ 0.99 까지 해도 되구요.


    SEED 에 대한건


    SEED 가 변하면 숫자가 변하는 거구요.

    TIME(FRAME) 에 따라서 SEED를 변경 하면 값이 바뀌겠죠.


    특정 타임마다 SEED 가 변하게 하고 싶으면

    몫 연산을 하면 됩니다.


    아래와 같이 10에 대한 몫을 구하면 10씩 늘어 날때 마다

    몫이 1씩 늘어 나겠죠.


    1 / 10 = 0

    2 / 10 = 0

    ...

    10 / 10 = 1

    11 / 10 = 1

    ...

    20 / 10 = 2


  • profile
    에이제이 2015.09.04 16:38

    random.randrange로 이런식으로 만들 수도 있겠네요. 저같은 입문자에게 쉽고 좋은 아이디어네요!

    궁금했던건 seed 적용 방식이었는데 이런식으로 간단하게 해결 가능했네요.

    답변 감사합니다.

  • profile
    정석 oinon.net 2015.09.04 11:39 채택 Files첨부 (1)

    import c4d
    import random

    def main():
        obj = op.GetObject()
        t4s = doc.GetTime().GetFrame(doc.GetFps())
        random.seed()
        rnd = random.random()
        if rnd <= 0:
            rnd == 0.01
        elif rnd >= 1:
            rnd == 0.99
        fNum = "-%0.2f" % rnd
        if t4s % obj[c4d.ID_USERDATA,2] == 0:
            obj[c4d.PRIM_TEXT_TEXT] = fNum
        pass
       
    if __name__=='__main__':
        main()

  • profile
    에이제이 2015.09.04 16:34

    이런식으로 할 수도 있네요. 답변 감사드립니다.

    헌데 이방식대로 하면 seed값에 time이 고려해서 지정하지 않아

    첫프레임으로 돌아가거나 파일을 다시 오픈했을때 결과 값이 계속 변하기 때문에

    렌더팜을 돌려야 될 경우 등을 고려했을 때 적합하지 않은 것 같습니다.


    여튼 감사드리고 가능하면 질문 하나 더 드리고 싶은데

    if __name__=='__main__':
        main()

    이건 다른데서도 많이 보이던데 왜 들어가야 하나요? 무슨 역할을 하는 거죠?

  • profile
    정석 oinon.net 2015.09.04 17:36

    고정값이 되야하니 엘라스틱 마인드 님껏이 더 좋네요. 엘라스틱마이드님이 전문가시죠ㅋ

    그리고 if __name__=='__main__':  는 검색해보면 금방 나오긴 하는데요.

    사실 시포디 안에서 간단히 사용할때는 필요없구요. 파이썬 파일들을 여기저기서 import 할경우 자동 실행되는것을 막는것입니다.

    자세한 내용은 https://wikidocs.net/29 여기 중간에 보면 됩니다.


  • profile
    에이제이 2015.09.07 01:35

    감사합니다!


질문과 답변

question and answer

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 일반 Cinema 4D Education 학생용 라이센스 사용방법 2 그래바 2020.09.03 18206
공지 Octane 옥테인 크래시 관련 자주 올라오는 질문들과 해결하는 법을 정리해보았습니다. 13 file 이효원 2020.04.19 48758
공지 [필독] 단톡방 질문 방식 관련 공지사항 4 file 권오훈 2019.06.27 12860
공지 일반 [필독] 질문 게시판 유의사항 ! 권오훈 2019.06.27 4792
656 MoGraph 파티클 입자들을 날개짓하는 나비로 바꾸고 싶은데 어케해야할까요? 5 박현주 2010.05.19 606
655 MoGraph 민들레를 날리려고하는데 파티클에 붙지를 않아용... 6 file 일하니 2009.03.16 603
654 MoGraph 텍스트를 정육면체의 파티클로 깰수 있을까요? 14 file 아트모션 2010.07.11 595
653 MoGraph 혹시 각 레이어별로 나눠지게끔 저장이 되나요? 1 코코아닭 2015.07.12 593
652 MoGraph MoGraph Selection 의 기능에 대해 알고싶습니다. 4 file 웬룬희 2008.08.28 592
651 MoGraph tracer로 뽑은 스플라인을 분리시킬 수 있나요? 4 file 밑둥 2010.05.13 590
650 MoGraph plain 이펙트가적용이 안됩니다. 2 file 하나제 2011.10.24 589
649 MoGraph Voronoi Fracture 사용 시, 사선으로만 쪼개는 법 5 file 이타마 2018.03.07 589
648 MoGraph 공이 날라와 유리창이 깨지는데 공이 통과한 곳만 깨지고 싶습니다.(저는 유리가 전체가 깨져버리네요...) 2 file 햇님반어린이 2013.08.12 587
647 MoGraph 모그라프 멀티쉐이더에 관해서 문의드립니다. 4 file 쓰방댄서 2009.10.19 585
646 MoGraph 텍스트 애니메이션에서 중심점 옮기는 방법이 궁금합니다.. 10 file 콩콩이 2010.01.09 582
645 MoGraph Cloner 적용된 Cube들에 각자 다른 색을 넣어주고 싶습니다. 2 루시드폴 2010.09.20 573
644 MoGraph Tracer + Softbody 의 Bake하는 법 질문입니다. 3 제이디소울 2011.07.18 572
643 MoGraph 계단형식으로 만들고 싶어요 ! 1 file 곽정이 2015.09.24 571
642 MoGraph 모그라프 특정영역에만 맵핑하는 방법이 궁금합니다 7 file 로빈. 2010.06.18 567
641 MoGraph Motionworks사? 의 MovieType사용에 관한질문 2 아르떼 2015.04.16 564
640 MoGraph 책장 넘기기 효과에서 축이 바뀔대 겹쳐지면서 앞뒤장이 바뀌는 현상입니다 2 file 에펙스 2010.06.18 563
639 MoGraph 클로스 태그와 클론오브젝트 사용을 해서 커튼처럼 만들려고 합니다! 5 file 엔에이엠 2012.02.09 563
638 MoGraph Fracture 에 plain effector와 delay effector를 동시에 주고 싶습니다. 3 file 킴주 2014.01.02 561
637 MoGraph Spline Wrap 물체를 따라다니는 큐브 7 file iloveabba 2008.07.18 559
목록
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 37 Next
/ 37
닫기

마이페이지

로그인을 해주세요