상위메뉴
하위메뉴
This document is available in: English  Castellano  Deutsch  Francais  Nederlands  Portugues  Russian  Turkce  Korean  Arabic  

[Photo of the Authors]
정보 Erdal Mutlu, Ceyhun Elmas

글쓴이 소개:

Erdal은 이스탄불 기술대학 정보연구소에서 연구조교 및 리눅스 시스템, 네트웍, 웹 관리자로 근무중이다. 1992년부터 리눅스를 써왔는데 그때 이후 리눅스의 열광적인 지지자가 되었다. 현재 그는 자바프로그래밍언어를 사용한 인터넷 기반의 교육시스템에 관한 졸업논문 을 적고 있다. 그리고 또한 리눅스포커스의 번역과 시스템 문제를 지원하고 있다.

Ceyhun은 수학자, 공학자로 터키 Ford자동차의 유닉스 시스템 관리자로 근무중이다. 그는 수소원자의 시뮬레이션과 애니메이션작업에 BMRT (blue moon rendering tools, 참고자료부분을 살펴보라)를 이용하고 있다. 또한 리눅스포커스 터키어판 편집자중 한명으로 활동중이다. 그는 클래식기타를 배우고 아름다운 터키의 자연경관과 유적지를 둘러보는데 더 많은 시간을 가지고 싶어하지만 아직 여자친구를 찾는데는 여가시간이 없단다.:)))


차례:

 

BORG를 소개합니다.

[그림]

요약:

만약 수천장의 프레임을 렌더링 해야 한는데 고성능의 그래픽 웍 스테이션이 없고 이용할 수 있는 PC는 많다면 이러한 작업을 BORG를 통해 효과적으로 수행할 수 있다.



 

BORG (BMRT Ordinary Rendering GUI)란 무엇인가 ?

BORG는 자바로 작성된 BMRT의 그래픽 유저 인터페이스이다. 하지만 그저 단순한 GUI환경만을 의미하지 않는다. BMRT가 사용되는 컴퓨터에 렌더링 작업을 분산시켜서 하나의 렌더링 작업을 수행하고, 이 작업이 종료되면 데이터들을 한곳으로 모은다.

 

왜 BORG가 필요한가?

애니메이션 작업에 컴퓨터가 사용되기 시작한 이후 다양한 소프트웨어와 하드웨어가 개발되어졌다. 오늘날 컴퓨터 애니메이션으로 현실과 매우 비슷한 애니메이션을 제작할 수 있게 되었다. 또한 모든 애니메이션을 컴퓨터 애니메이션을 이용하여 제작되기도 한다. 과학자들과 예술가 모두 컴퓨터 애니메이션을 효과적으로 이용하고 있다. 컴퓨터 애니메이션기법은 자동차 충격시험, 뇌 수술, 우주탐사, 교육등 여러분야에서 활용되고 있다.

이런 발전이 있어왔음에도 불구하고 높은 품질의 작품을 얻기 위해서는 렌더링 작업을 위한 고가의 대형 시스템과 많은 시간이 여전히 필요하다. 이렇게 되는 이유는 크게 두가지로 생각할 수 있다. 첫째, 결과물은 예전보다 더 사실적이어야 한다. 이런 이유로 레이트레이싱이나 다른 여러가지 기법들을 사용하지만 대신 더 우수한 컴퓨터 성능과 더 많은 시간을 요구한다. 두번째 이유는 사람눈에 정지된 영상이 움직이는 애니메이션으로 보여지게 하려면 적어도 초당 25프레임 이상이 필요하다.

 

BORG는 어떻게 설치하는가?

http://www.project-borg.org에 가면 BORG를 다운 받을 수 있다. 이 글을 쓰고 있는 현재 BORG의 최신버전은 0.2.90 이다. 따라서 이 글은 0.2.90버전을 기준으로 작성되었다. 파일의 크기는 약 1메가정도이다. tar xvfz borg0.2.90_install.tar.gz명령을 내려서 압축을 해제하고나면 다음과 같은 디렉토리와 파일들이 보일 것이다.:

borg_install/
borg_install/bin/
borg_install/bin/install.jar
borg_install/sm/
borg_install/sm/borg.jar
borg_install/sm/credits.jpg
borg_install/sm/startup.jpg
borg_install/sm/topimage.jpg
borg_install/sm/english.borg.lang
borg_install/sm/german.borg.lang
borg_install/sm/borg.bat
borg_install/bserver/
borg_install/bserver/bserver.jar
borg_install/bserver/bserver.bat
borg_install/doc/
borg_install/doc/doc.zip
borg_install/icons/
borg_install/icons/BorgServer.xpm
borg_install/icons/BorgServerManager.xpm
borg_install/CHANGES
borg_install/CHANGES.GERMAN
borg_install/FEATURELIST
borg_install/README
borg_install/Win32.txt
borg_install/chmode.sh
borg_install/install_for_jre1.1.x/
borg_install/install_for_jre1.1.x/install.bat
borg_install/install_for_jre1.1.x/install.sh
borg_install/install_for_jre1.1.x/install.x11
borg_install/install_for_jre1.2.x/
borg_install/install_for_jre1.2.x/install.bat
borg_install/install_for_jre1.2.x/install.sh
borg_install/install_for_jre1.2.x/install.x11
borg_install/license.borg.txt

BORG를 사용하려면 여러분의 시스템에 자바 런타임이나 개발 환경이 이미 설치되어 있어야 한다. 자바 실행환경의 버전때문에 borg_install/install_for_jre1.1.xiborg_install/install_for_jre1.2.x디렉토리가 있다. 각 디렉토리에는 세개의 설치파일이 있다. install.bat는 윈도우즈 시스템용이며 install.shinstall.x11는 유닉스용 설치파일이다. UNIX/Linux시스템에서 BORG를 설치하려면 커멘드라인에서 install.sh을 이용하거나 X윈도우 환경에서 install.x11를 이용하면 된다.

우리는 전산실에 약 70대이상의 컴퓨터에 BORG를 설치했다.이 많은 컴퓨터에 일일히 소프트웨어를 설치했는데 아무 문제가 없었다. Erdal은 이 작업을 수행하는 작지만 유용한 BASH스크립트를 작성하였다. 이 스크립트에 대해서는 다른 기사를 통해 소개하도록 하겠다. 음, 우리는 리눅스 관리자이고 리눅스 환경의 장점과 커멘드라인 명령어들 없이는 살 수가 없다. 하지만 그래픽 환경하의 설치과정에 대해서도 소개하도록 하겠다.

BORG를 설치하기 이전에 여러분의 컴퓨터에 설치된 BMRT의 버전을 확인해 두기 바란다. 그리고 다음명령을 이용하여 자바 환경의 버전을 확인해 두어야 한다. :
java -version
우리는 1.3 환경을 사용하고 있었기 때문에 다음과 같은 메시지가 출력되었다. :
java version "1.3.0
이제 borg_install/install_for_jre1.2.x디렉토리로 옮겨가서 install.x11명령을 실행시킨다. 만약
"Unable to initialize threads: cannot find class java/lang/Thread
Could not create Java VM"
(쓰레드를 초기화할 수 없음: Java/lang/Thread클래스를 찾을 수 없음
자바 가상머신을 생성할 수 없음)

과 같은 메시지가 나타났다면 CLASSPATH환경변수를 지정하지 않았기 때문이므로 다음 명령을 이용하여 지정해 주면 된다. :
bash:
CLASSPATH=/usr/lib/java
export CLASSPATH

tcsh:
setenv CLASSPATH /usr/lib/java
설치프로그램이 시작되면 다음과 같은 라이센스 창을 볼 수 있다. :
[라이센스 창]

좋은 소식 : 4월 12일에 발표된 BORG의 다음버전 배포소식에 따르면 다음 버전부터는 GPL을 따른다고 한다. BORG의 현재 라이센스에 대해 읽고 나면 다음과 같은 창이 뜰 것이다. :

[BORG 설치메뉴]

여기서 여러분은 BORG의 컴포넌트중 하나 또는 모두를 선택해야 한다. 선택할 수 있는 항목은 BORG서버관리자와 BORG서버이다. BORG서버관리자는 관리자 GUI환경의 이름이며 BORG서버는 실제 렌더링을 BMRT를 이용하여 수행하고 이 결과 장면을 BORG서버관리자로 보내주는 프로그램이다. 간략하게 구조도로 살펴보면 다음과 같다. :

[네트웍 상의 BORG 컴포넌트]> <BR>
    <BR>
    먼저 여러분이 작업할 컴퓨터에 BORG서버 관리자를 설치해야 한다. 그리고 나서
    다른 컴퓨터에 BORG서버를 설치한다. 단순하게 하려면 둘다 설치해도 된다.
    BORG서버 관리자를 먼저 설치해야 하는 이유는 BORG서버를 설치할 때
    BORG서버 관리자의 IP를 물어보기 때문이다.. <BR>
    <BR>
    <IMG src=

설치메뉴에서 경로명을 입력할때 조심해야 한다. 경로명이 제대로 되어야만 설치가 정상적으로 완료된다.
[설치창]

[설치완료]

이런 과정을 반복해서 BORG서버를 여러 컴퓨터에 설치하면 된다.

 

BORG를 어떻게 사용하는가?

먼저 BORG서버 관리자를 실행시킨다. 그냥 borg라고 입력하면 된다.


(실제 크기로 보려면 클릭하세요)

새 프로젝트를 열기 위하여 New메뉴를 선택한다.

[새 프로젝트]

여기서 여러분은 렌더링된 결과 파일이 저장될 위치와 렌더링 할 rib파일의 위치를 지정해야 한다. 물론 다양한 rendrib 설정항목들을 변경할 수 있다. 이런 방법으로 하나 이상의 프로젝트를 생성할 수 있다.

자, 이제 프로젝트는 준비가 되었다. 하지만 실제 렌더링을 수행할 BORG서버가 준비가 안되었다. 이제 서버에 ㅁ명령을 내려보자. :
BORG서버가 설치된 곳에서 bserver명령을 입력한다.
BORG서버가 정상적으로 시작하면 여러분은 BORG서버 관리패널을 볼 수 있을 것이다.


실제 크기로 보려면 클릭하세요)

 

Borg의 국제화

여러분은 BORG 서버 메니저의 라벨과 메시지들을 여러분의 모국어로 쉽게 바꿀 수 있다!

BORG의 장점중의 하나가 바로 라벨과 메시지를 쉽게 여러 언어로 바꿀 수 있다는 점이다. 단지 borg.conf파일에 있는 LANG변수값을 여러분의 모국어로 변경하고(예를 들자면 Korean), english.borg.lang파일을 복사한 다음 파일이름을 모국어명.borg.lang(예:Korean.borg.lang)으로 변경하고 이 파일을 열어서 메시지를 번역하면 된다.

 

마치는 글.

이상에서와 같이 BORG서버를 이용하면 렌더링 시간을 획기적으로 줄일 수 있다. 또한 여러분이 이용할 수 있는 모든 컴퓨터를 사용하여 렌더링작업을 수행할 수 있다.

BORG의 새버전은 GPL라이센스로 배포된다. BORG와 유사한 프로그램들은 매우 고가이며 또한 고가의 시스템에서만 동작하기 때문에 BORG라이센스 정책 변경은 매우 중요한 의미를 가진다.

BORG는 아직도 베타버전인 프로젝트이므로 몇가지 제약사항들이 있다. 그 중 하나가 BORG서버관리자에서 BORG서버를 실행시킬 방법이 없다는 점이다. BORG서버를 실행시키려면 서버가 설치된 컴퓨터에서 일일히 명령을 다 입력해 주어야 한다. 아마 다음 버전에는 이런 점이 변경될 것이다. 필자는 BORG서버를 데몬프로그램으로 작성하여 특정 포트를 통해 원격으로 명령을 지시할 수 있게 하고 싶다. 두번째 제약조건은 우리가 BORG서버 관리자의 라벨과 메시지를 모두 터키어로 변경하였을때 나타난 중요하지 않은 문제이다. 이 떄 창의 크기를 변경하면 라벨의 일부가 사라지는 현상이 발생했다.

어쨌거나 결론은 BORG를 이용하면 렌더링 시간을 엄청 줄일 수 있다는 사실이다.!
 

참고문헌.

BORG를 이용하여 만들어진 은하계의 모습을 공개한다. 클릭하면 실제 크기로 볼 수 있다.:
[우주속의 리눅스포커스]
 

이 기사에 대한 의견이 있습니다

각 기사는 피드백 페이지가 들어 있습니다. 피드백을 통하여 여러분은 저자에게 의견을 보내거나 다른 독자의 의견을 보실 수 있습니다.:
 피드백 페이지 

본 웹사이트는 리눅스포커스 편집팀에서 관리합니다
© Erdal Mutlu, Ceyhun Elmas, FDL
LinuxFocus.org

오자를 찾으셨거나 의견이 있으시면 LinuxFocus로 알려주세요
Translation information:
tr -> -- Erdal Mutlu, Ceyhun Elmas
tr -> en Erdal Mutlu
en -> ko Juho, Lee

2001-04-23, generated by lfparser version 2.11