2013-03-19 5 views
0

저는 3ds Max 플러그인을 만들고 있습니다. 이 플러그인에서 기하 정보를 RenderMan 렌더러가 렌더링 할 수있는 .rib 파일로 내 보냅니다. nubrs 곡선의 데이터를 RiBasis 및 RiCurve에서 설명한 .rib 파일로 내보낼 때. RiBasis에서 RtBsplineBasis를 사용하지만 렌더링 된 커브가 3ds Max의 렌더러 결과보다 짧다는 잘못된 결과를 얻습니다. 그런 다음 첫 번째와 마지막 컨트롤 정점을 다시 인쇄합니다. 커브는 길지만 모양이 약간 다릅니다. 내가 잘못된 결과를 얻는 방법이나 RiBasis의 의미를 알 수있는 사람은 누구입니까? 올바른 RiBasis를 얻으려면 어떻게해야합니까? 대단히 감사합니다!RenderMan에 설명 된 RiBasis는 무엇을 의미합니까?

답변

1

RiCurve는 3 차 스플라인을 그립니다. 제어점은 곡선을 고유하게 결정하지 않습니다. 기초이 필요합니다.이 행렬은 4x4 행렬로 표현됩니다. 하나의 행렬은 B 스플라인, 베 지어, Catmull-Rom 등에 필요한 계수를 제공하며 물론 매트릭스를 직접 제공 할 수도 있습니다 어떤 종류의 하이브리드 보간은 표준 3이나 4 중 하나가 아닙니다. 기초가 스플라인의 특성을 결정합니다 - 커브가 제어점을 통과하도록 보장되는지 아니면 단순히 근사치인지, 연속성의 정도, "긴장", 등등.

"RenderMan 도우미"의 부록 중 하나에 다른 기본 행렬이 보간법에 미치는 영향에 대한 숫자 예제가 포함되어 있습니다.

B- 스플라인 기준을 요청한 것처럼 보입니다. 보간법이 아닌 근사치이며 1 차 및 2 차 미분 모두 연속입니다. 어쩌면 그건 당신이 염두에 두신 것이 아니겠습니까. 당신이 원하는 스플라인의 특성을 설명하지 않았으므로 말하기 어렵습니다.

비공식적 인 입방체로 임의의 NURBS 곡선을 근사하는 것이 항상 정확한 일치를 제공하지는 않습니다. 명심해야 할 것이 있습니다.

+0

대단히 감사 드리며, 매우 늦게 답변 드리겠습니다. 이제 문제를 해결하고 나에게 많은 도움을 주셨습니다. 다시 한번 감사드립니다. – mhsj