· KLDP.org · KLDP.net · KLDP Wiki · KLDP BBS ·
Docbook Sgml/3D-Modelling

3D Graphics Modelling and Rendering mini-HOWTO

3D Graphics Modelling and Rendering mini-HOWTO

이유진

   
  

v1.1, 27 March 2001

레드햇 리눅스에서 그래픽 렌더링과 모델링 개발 환경을 위한 다운로드 및 설치에 대한 자세한 사항들


1. 소개

1.1. 서문

이 문서는 여러분에게 리눅스에서 모델링과 3차원 그래픽을 위한 환경을 어떻게 설치하고 설정하는가에 대하여 설명할 것입니다. 또한 이번 섹션에서, 여러분은 필요한 요소들과 어떻게 그것들이 서로 연결되는가에 관한 기초적인 정보를 찾을 수 있을 것입니다. 설치 섹션은 일부러 최소로 작게 하였습니다; 시작과 작동을 하기 위한 단지 빠르고 간단한 순서만이 필요합니다(만약 제대로 작동하지 않을 경우 더 많은 정보가 구하실 수 있습니다). 소프트웨어 요소들(components)과 일반적으로 그것들이 어떤 작업을 하는가에 대한 정보를 위하여 이 문서를 계속 읽으시기 바랍니다.

시작과 작동을 위하여 최소한 3개의 소프트웨어 패키지가 필요합니다. 아래에 그것들이 있습니다( 아래의 순서는 설치되는 순서가 아니라 설명을 위한 순서입니다).

  • 그래픽 라이브러리;

  • 그래픽 모델러;

  • 그래픽 렌더러;


1.2. Modelling vs. Modeling

modelling은 캐나다식 표현이며, modeling은 미국식 표현입니다. 이 문서의 저자는 캐나다 사람입니다.


1.3. 저작권 정보

Copyright 2000-2001 Dave Jarvis

역자주 - copyright information은 번역하지 않습니다.

This document may be reproduced in whole or in part, without fee, subject to the following restrictions:

  • the copyright notice above and this permission notice must be preserved complete on all complete or partial copies;

  • any translation or derived work must be approved by the author in writing before distribution;

  • if you distribute this work in part, instructions for obtaining the complete version of this manual must be included, and a means for obtaining a complete version provided;

  • small portions may be reproduced as illustrations for reviews or quotes in other works without this permission notice if proper citation is given.


2. 배경 지식

이번 섹션의 내용은 리눅스 시스템을 기반으로하는 3차원 모델링과 렌더링을 위한 3가지 중요한 요소(component)에 대해서만 대략적으로 설명합니다.


2.1. 그래픽 라이브러리

그래픽 라이브러리는 그래픽 이미지를 다루는 데 사용하는 가장 기본적인 도구들로 구성되어 있습니다. 집을 짓는데 필요한 모든 것들을 생각해봅시다: 철재, 축대, 나무, 벽돌 등등. 그래픽 라이브러리는 이런 항목들이 아니라 이런 항목들을 제작하는데 사용되는 도구들처럼 생각할 수 있습니다. 결국, 철재, 금속관, 두꺼운 판자 그리고 벽돌 등은 마술처럼 나타나는 것이 아닙니다; 그들은 그들 스스로의 존재물로써 만들어 지고 형성되어 지는 것입니다. 비슷한 말로, 그래픽은 마술처럼 스크린에 나타나는 것이 아닙니다 -- 전형적으로 그들은 저수준(low-level) 그래픽 요소들로 구성되어 있습니다 (예를 들어, 라인, 사각형, 개개의 픽셀 등).

따라서 그래픽 라이브러리는 좀더 복잡한 객체(구, 상자, 복잡한 다각형 등)를 만드는데 사용되는 저수준 그래픽 요소들로 구성되어 있는 것처럼 생각될 수 있습니다. 이런 복잡한 객체들은 더 복잡한 모양이나 형태를 만드는데 사용됩니다.

설치된 그래픽 라이브러리는 Mesa라고 불리는 OpenGL의 공개 소프트웨어 도구입니다.


2.2. 그래픽 모델러

이상적으로 그래픽 렌더러는 마지막 사용자(end-user)로 하여금 완전히 숨겨져 있기 때문에 이것에 대해서는 나중에 다룰 것입니다(또한, 모델링은 저의 집짓는 개념에서 다음 논리 단계입니다). 그러나, 실제로 설치할 때, 그래픽 모델러는 이미 설치되어 있는 렌더러에 의존합니다.

만일 그래픽 라이브러리가 집을 짓는 데 사용되는 도구들과 비슷한 도구라면, 그래픽 모델러는 집을 짓는 데 필요한 청사진을 제작하는 도구처럼 생각할 수 있습니다 -- 복잡한 청사진으로 모델러는 여러분에게 철재, 축대, 나무 패널, 벽돌 등을 어디에 놓을 것인가를 정확하게 알려줍니다. 게다가, 이것들은 여러분이 원하는 벽돌의 색깔이나 패널의 형태 등을 고를 수 있게 합니다.

설치된 그래픽 모델러는 The Mops라고 불리는 공개된 패키지로 RenderMan과 호환되는 파일을 생성합니다.


2.3. 그래픽 렌더러

집짓는 개념에 계속비유해서 설명하면 , 그래픽 렌더러는 집을 짓는 일꾼입니다. 여러분이 청사진과 물건들이 준비되고 나면, 여러분은 실제로 집을 짓는 무엇인가가 필요할 것이기 때문에 이것은 어떻게 디자인되어 있는가를 나타내줄 것입니다. 그래픽 렌더러는 마지막 결과를 생산하기 위하여 모델러로 부터 정보(예를 들어, RenderMan과 호환이 가능한 파일형태의 청사진, 또는 이와 동등한 것)를 받습니다.

그래픽 모델러가 이것이 설치되기 전에 그래픽 렌더가가 필요한 것처럼, 렌더러는 먼저 설치된 그래픽 라이브러리에 의존합니다.

설치된 그래픽 렌더러는 Blue Moon Rendering Toolkit으로 RenderMan 파일을 사용합니다.


3. 설치방법

간략한 방법만이 있다는 것을 기억하세요. 자세한 정보는 여러분이 설치하고자 하는 소프트웨어 패키지에 있는 README 파일에서 찾을 수 있습니다. 이 문서는 이런 README 파일 들을 읽는 것에 대한 대안입니다(이 문서에서는 그들의 저작권 정보와 다른 사용법에 대해서는 설명하지 않습니다).


3.1. 경고

첫번째로, 이 문서는 레드햇 리눅스 v7.0을 가지고 어떻게 시작하고 작동하는가에 대해서만 제공한다는 것을 알고 계시기 바랍니다. 여러분이 다운로드 받은 소프트웨어 패키지를 선택할 때마다, 여러분의 작동하고자 하는 리눅스와 호환이 가능한지 확인하시기 바랍니다.

두번째로, 이 문서를 읽는 다른 사람들에게 유용한 정보를 가지고 계실때에만 이메일을 보내주시기 바랍니다(다른 도구들을 어떻게 설치하는가, 다른 문서의 위치 또는 문법적으로 틀렸거나 스펠링이 틀린 경우 등등 ). 만약 소프트웨어가 컴파일되지 않거나 제대로 작동하지 않으면, 그 패키지의 문서를 읽으시기 바랍니다. 여러분의 시스템이 완전히 다를 수 있고 인터넷 이메일을 통한 디버깅 문제는 다른 사람들이 좋아하는 문제가 아니라는 것을 이해하시기 바랍니다. ^^;;

세번째로, 엄격한 검사를 거치지 않은 많은 패키지가 설치되어 있을 수 있습니다. 관련 사이트 섹션에서, 선택할 수 있는 소프트웨어 패키지들이 있습니다. 자세한 설명이 되어 있지 않은 소프트웨어 패키지라고 해서 더 나쁘거나 혹은 더 좋은 소프트웨어 패키지는 아니라는 것을 인지하시기 바랍니다.

행운이 함께 하시길!


3.2. 소프트웨어 다운로드

시작하기 전에, 웹브라우저와 유닉스 쉘이 필요합니다. 만약 여러분이 쉘(bash, ksh 등등)을 어떻게사 사용하는지 모른다면, 설명서에 영어로 된 설명과 쉘 명령어가 있기는 하지만 따로 구해서 공부하세요. ^^;;

특별한 설명이 없다면, 모든 설명은 root가 기준입니다.

  1. 패키지를 위한 새로운 디렉토리 /usr/local/archives를 생성하세요.

    mkdir /usr/local/archives

  2. 다음의 패키지들(.tar.gz로 된 것들)을 새로 생성한 디렉토리에 다운로드 받으세요(홈페이지와 다운로드 페이지 그리고 최소의 소프트웨어 버젼을 적었습니다):


3.3. 그래픽 라이브러리의 설치

오래된 버젼의 tarz 인자를 지원하지 않습니다. 그런 시스템에서는 z 인자를 사용하지 말고 먼저 gunzip으로 압축을 푼후에 z인자를 제외하고 tar 명령을 사용하세요.

  1. /usr/local/archives로 디렉토리를 변경하세요:

    cd /usr/local/archives

  2. 압축된 Mesa를 풉니다.

    tar zxf MesaLib-3.4.1.tar.gz
    tar zxf MesaDemos-3.4.1.tar.gz

  3. MesaLib의 서브 디렉토리로 갑니다:

    cd Mesa-3.4.1

  4. 아래와 같이 Mesa에서 Configure, make, install 명령을 순서대로 사용합니다.

    ./configure; make; make install

  5. /etc/ld.so.conf을 편집하고 아래의 라인이 있는지 확인합니다.

    /usr/local/lib

  6. 동적 라이브러리 설정 프로그램을 실행합니다:

    ldconfig


3.4. 그래픽 렌더러의 설치

  1. /usr/local/archives 디렉토리로 되돌아 갑니다:

    cd ..

  2. Blue Moon Rendering Toolkit의 압축을 풉니다.

    tar zxf BMRT2.6beta.linux-glibc2.tar.gz

  3. BMRT의 서브 디렉토리로 갑니다:

    cd BMRT2.6

  4. 파일들을 적절한 디렉토리에 복사합니다:

    cp bin/* /usr/local/bin/
    cp lib/lib* /usr/local/lib/
    cp include/* /usr/local/include/

  5. shaders 디렉토리를 만듭니다. 이 디렉토리는 모든 사람들에게 쓰기 권한이 주어져야 합니다. 그리고는 shader 파일을 이 디렉토리에 복사합니다:

    mkdir /usr/local/shaders
    chmod 777 /usr/local/shaders
    cp shaders/*.sl* /usr/local/shaders/
    cp shaders/*.h /usr/local/shaders/
    cp examples/*.sl* /usr/local/shaders/
    cp examples/*.h /usr/local/shaders/

  6. 시스템 로그인 프로파일(/etc/profile 또는 이와 같은 일을 하는 파일)을 열어서 아래의 라인을 추가합니다.

    export SHADERS=.:/usr/local/shaders

  7. .rendribrc 파일을 각각의 사용자 홈디렉토리에 복사합니다.

만약 잘못되면, Blue Moon Rendering Toolkit에 동봉된 README 파일을 참조하거나 그들의 웹페이지를 보세요.


3.5. 그래픽 모델러의 설치

The Mops는 각각의 사용자(per-user basis)에게 설치할 수 있고 또 root에 의하여 시스템 전반적(system-wide)으로 설치가 가능합니다. 이번 예에서는, 관리자 계정이 아닌 권한으로 설치하는데 잘못된 결과를 양산합니다. 설치과정에서 컴파일이 실패 (missing a C header file) 한다는 것을 아시기 바라며, 따라서 미리 컴파일 되어 있는 바이너리 파일이 아래와 같이 설치됩니다.

  1. The Mops가 위치할 디렉토리보다 한단계 위의 디렉토리로 갑니다. 예를 들어, 만약 /usr/local/mops를 원하신다면 아래의 명령을 따라하세요.

    cd /usr/local

  2. mops의 압축을 풀고 그 디렉토리로 갑니다.

    tar zxf /usr/local/archives/mops-0.42d-BMRT26-linux.tar.gz
    cd mops

  3. 아래의 파일들을 /usr/local/mops/src에서 /usr/local/mops로 옮깁니다:

    mv src/crtmopssh.sh .
    mv src/mfio.so .
    mv src/mops .

  4. .mopsrc 파일을 Mops를 사용하기 원하는 각각의 사용자 홈디렉토리로 복사합니다. 예를 들어, "jane"이라는 사용자가 사용하기를 원하면 아래와 같이 합니다.

    cp src/mopsrc /home/jane/.mopsrc

  5. /usr/local/lib/mops를 생성하고 buttons와 shaders를 옮깁니다:

    mkdir /usr/local/lib/mops/
    mv buttons/* /usr/local/lib/mops/
    mv shader/*.sl* /usr/local/shaders/

만약 문제가 발생하면, The Mops와 동봉된 READMESetup.txt 파일을 참조하거나 홈페이지를 참조하시기 바랍니다.

root에서 로그아웃합니다. 일반적은 사용자로 로그인하고 아래와 같은 방법으로 The Mops을 실행합니다.

/usr/local/mops/mops

여러분은 $HOME/mops 디렉토리 내에 3차원 모델을 저장하기 위해서 models 서브 디렉토리를 만들고자 할겁니다.


3.6. 청소하기

설치가 완료되면, 여러분은 더이상 필요하지 않는 파일들을 지울 수 있습니다.

cd /usr/local/archives/
rm -rf BMRT2.6
rm -rf Mesa-3.4.1

rm -rf 명령을 사용할 때 조심하시기 바랍니다. 제대로된 디렉토리에 있는지, 지우고자 하는 파일 또는 디렉토리 이름이 있는지 확인하세요.


4. 그외 정보들

FAQ 섹션 대신에, 여기서는 몇몇개의 직면하는 문제들에 대한 정보를 제공합니다.


4.1. Lighting

최초로 가장 큰 문제는 왜 모든 것들이 다 검은색인가를 해결하고 어떻게 물체들을 밝게 할것인가에 있습니다. 여러분이 물체를 모델링하는 가상 세계에서, 그 세계는 맨바닥부터 생성해 주어야 합니다. 여러분이 빛의 근원을 주기 전까지 그 세계는 빛이 없는 세계입니다. 빛의 근원은 주어진 방향으로 빛나며 그들의 방향(물체 표면의 속성에 따라)으로 물건들을 밝힙니다. 여러분의 빛의 근원이 아래와 같은지 확인하기 바랍니다.

  1. 올바른 방향을 가르키는지(회전이나 이동).

  2. 빛이 물건을 구분하기에 충분히 밝은지.


4.2. Tutorials

모델링과 렌더링 패키지를 가지고 사람들이 하고 싶은 가장 기본적인 일은 구를 위치시키고 빛을 주고 결과를 보는 것입니다. 아래의 튜토리얼은 이것들을 처음에 설명하고 있습니다.

아래의 것은 The Mops의 강력한 첫번째 튜토리얼을 가지고 있습니다.


5. 관련 사이트

5.1. 그래픽 라이브러리

Mesa - An OpenGL-compliant Graphics Library.


5.2. 그래픽 렌더러

BMRT - The Blue Moon Rendering Toolkit.

POV-Ray - The Persistence of Vision Raytracer.


5.3. 그래픽 모델러

The Mops - A 3D modelling package that uses BMRT.

Blender - Freeware modelling and rendering suite of tools.


5.4. 그외의 사이트

아래의 것들은 여기 분류에 적당한 것은 아니지만 만약 여러분이 진지하게 리눅스 컴퓨터로 3차원 모델링과 렌더링을 하고자 한다면 읽어볼만한 가치가 있는 내용들 입니다.

3D Software for Linux - 이 문서의 대부분의 링크와 다른 정보들.

3D Modelling Software for Linux - 모델링과 관련된 소프트웨어 패키지 링크들.

3D Modelling and Rendering using Linux - 이 문서가 요약한 항목과 소프트웨어들에 대해서 설명하는 포괄적인 사이트.


6. 감사의 말

이 문서에서 설명하는 소프트웨어 패키지의 개발자들에 대해서 진심으로 감사합니다. 그 제품들의 질은 상업적인 수준이지만, 공개 소프트웨어의 정신을 지키고 있습니다. 정말 잘하는 일입니다!!




sponsored by andamiro
sponsored by cdnetworks
sponsored by HP

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2003-09-05 03:31:53
Processing time 0.0328 sec