Wanho Choi

CG/VFX Software Engineer

ssh 프로토콜을 이용한 사내망 내에서의 git 환경설정

상황 가정 – 공동 개발 프로젝트: proj1, proj2 – 참여 개발자: AAA, BBB, CCC (모두 Linux 사용) – project1에는 AAA, BBB, CCC 모두, project2에는 AAA, BBB만 개발에 참여 – git 서버는 팀장인 AAA의 컴퓨터에 설정하려고 함 (IP: 11.22.33.44) – 다른 직원들은 소스코드에 접근하지 못하도록 ssh 프로토콜을 이용하여 보안 유지하려고 함 – AAA는 자신의 컴퓨터의 root […]

,

Don’t delete OpenGL display list in MPxLocatorNode::compute() function!

MPxLocatorNode::compute()에서 data가 update되었다고 해서 이곳에서 display list를 reset해주면, MPxLocatorNode::compute() 함수가 계산하는 동안 MPxLocatorNode::draw() 함수에서 그려야 할 data가 없어지게 되어 Maya가 crash될 수 있음.

, ,

How to exchange rotation matrix between different order

[pre-multiplied system with row-major ordering] (ex) Zelos X: rotation matrix about x-axis Y: rotation matrix about y-axis Z: rotation matrix about z-axis R: rotation matrix in x->y->z axis order. q=(ZYX)p Therefore, R = ZYX [post-multiplied system with column-major ordering] (ex) Maya qt = pt ( (Xt) (Yt) (Zt) )=pt (ZYX)t (t: transpose) Therefore, R = […]

, , ,

Maya 실행이 오래 걸릴 때 해결 방법

CentOS에서 Maya 실행 시 시간이 오래(수 분 이상) 걸리는 문제가 발생할 때가 있다. 이러한 증상은 대부분 라이센스 서버를 찾는 데 시간이 오래 걸리기 때문이다. /etc/sysconfig/network-scripts/ifcfg-(자신의 네트워크 설정 프로파일 이름) 에서 필요없는 네트워크 설정을 지우거나 행 앞에 # 표시를 해서 주석 처리를 하면 된다.

,

How to install thunderbird with RPMs on CentOS 7.x

1. Download a rpm file for thunderbird on internet accessible PC. yum install http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-2.noarch.rpm yumdownloader thunderbird 2. Install thunderbird. sudo rpm -ivh thunderbird-24.7.0-1.el7.x86_64.rpm 3. You may meet an error message like this: error: Failed dependencies: nspr >= 4.10.6 is needed by thunderbird-24.7.0-1.el7.x86_64 4. Download a rpm file for nspr on internet accessible PC. yumdownloader nspr […]

,

How to install chrome with RPMs on CentOS 7.x.

sudo rpm -ivh /netapp/backstage/pub/apps/centos7_packages/rpm/perl-5.16.3-283.el7.x86_64.rpm; sudo rpm -ivh /netapp/backstage/pub/apps/centos7_packages/rpm/perl-Module-Build-0.40.05-2.el7.noarch.rpm; sudo rpm -ivh /netapp/backstage/pub/apps/centos7_packages/rpm/perl-Module-CoreList-2.76.02-283.el7.noarch.rpm; sudo rpm -ivh /netapp/backstage/pub/apps/centos7_packages/rpm/perl-Module-Load-0.24-3.el7.noarch.rpm; sudo rpm -ivh /netapp/backstage/pub/apps/centos7_packages/rpm/perl-Module-Load-Conditional-0.54-2.0.1.el7.centos.noarch.rpm; sudo rpm -ivh /netapp/backstage/pub/apps/centos7_packages/rpm/perl-Module-Metadata-1.000018-2.el7.noarch.rpm; sudo rpm -ivh /netapp/backstage/pub/apps/centos7_packages/rpm/perl-Module-Pluggable-4.8-3.el7.noarch.rpm; sudo rpm -ivh /netapp/backstage/pub/apps/centos7_packages/rpm/perl-Module-Signature-0.73-2.el7.noarch.rpm; sudo rpm -ivh /netapp/backstage/pub/apps/centos7_packages/rpm/perl-B-Lint-1.17-3.el7.noarch.rpm; sudo rpm -ivh /netapp/backstage/pub/apps/centos7_packages/rpm/perl-FCGI-0.74-8.el7.x86_64.rpm; sudo rpm -ivh /netapp/backstage/pub/apps/centos7_packages/rpm/perl-CGI-3.63-4.el7.noarch.rpm; sudo rpm -ivh /netapp/backstage/pub/apps/centos7_packages/rpm/perl-Class-ISA-0.36-1010.el7.noarch.rpm; sudo rpm -ivh /netapp/backstage/pub/apps/centos7_packages/rpm/perl-Env-1.04-2.el7.noarch.rpm; sudo rpm -ivh […]

,

Installing Nvidia Driver on CentOS 7.x

CentOS 7.x에서 nVidia driver 설치시 Nouveau를 disable 시켜야 한다면서 설치가 안될 때, su yum update yum install kernel-devel kernel-headers gcc make uname -r을 이용하여 출력한 커널 버전과 rpm -q kernel-devel을 이용하여 출력한 커널 버전이 다르다면, yum -y upgrade kernel kernel-devel reboot 이 과정을 두 개의 커널 버전이 동일하게 나올 때까지 수행한다. /etc/default/grub 파일을 보면 GRUB_CMDLINE_LINUX으로 […]

, ,

“LLVM not found” error while installing OSL

OSL (Open Shading Language) 설치시 LLVM을 필요로 한다. LLVM을 설치할 때 ./configure 실행시 –enable-shared 옵션 없이 컴파일하여 설치하게 되면 OSL 설치시 LLVM not found라는 에러 메세지가 뜨면서 설치에 실패하게 된다.

,

잠긴 글: SpeedTree for RenderMan

잠긴 글에는 요약문이 없습니다.

, ,

갤럭시 갤러리에서 사진 안보이는 문제

.nomedia 파일이 존재하면 그 이하 폴더에 있는 파일들이 보이지 않게된다. .nomedia 파일을 검색하여 삭제하고, 재부팅을 해주면 된다.

MPxLocatorNode::draw()

Locator node를 사용하면 draw() 함수 안에서 custom data에 대한 OpenGL rendering을 구현하는 것이 가능하다. 그런데, MPxLocatorNode::draw() 함수 안에서 print를 해보면, Maya viewport에서 camera 정보가 변할 때 뿐만 아니라, viewport를 click하거나 marquee를 그리는 등의 조작을 할 경우에도 호출되는 것을 확인할 수 있다. Maya에서는 viewport를 click하거나 marquee를 그리는 등의 행동을 하게 되면 vieport 상에서 이렇게 지정한 영역과의 collision을 계산하여 […]

, , , ,

Linux Maya에서 키보드가 먹통일 때

Tray에 있는 iBus input method framework를 마우스 오른쪽 버튼으로 선택한 후 restart를 해주면 된다. 만약 Tray에 iBus가 사라졌다면 홈디렉토리에 있는 .gconf 디렉도리를 삭제하면 초기화된다.

, , ,

A weird problem when using CUDA

다음은 CUDA by Example 책의 p.67에 있는 예제를 기반으로 작성한 코드이다. 이 코드를 가지고 테스트를 하던 중 이상한 일을 겪게 되었다. Line 13을 주석(comment) 처리를 하더라도 정상적인 결과가 나오는 황당함을 겪게 되었다. 반나절 고민 끝에 찾아낸 이유는 너무나도 간단했다. 이전 실행에서의 dev_c에 대한 결과가 GPU memory상에 남아있었고, 주석 처리를 한 후에 다시 compile할 때 dev_c는 […]

Conflict problem between Cuda and Maya

Maya는 MTypes.h에 short2, short3, long2, long3, int2, int3, float2, float3, double2, double3, double4 등의 자료형을 정의하여 사용한다. 용감하게도 어떠한 prefix나 namespace도 사용하지 않는다. Cuda는 vector_types.h에 int2, int3, float2, float3 등의 자료형을 정의하여 사용한다. Cuda 또한 용감하게도 어떠한 prefix나 namespace소 사용하지 않는다. Maya plug-in에서 사용하는 헤더파일(.h)에서 이나 을 해주면 자연스럽게 충돌이 일어난다. (소스파일(.cpp)에서는 문제가 되지 않는다.) […]

, , , ,

Fast Inverse Square root

워드프레스 수동 업데이트

1. 만약을 위해서 서버에 있는 모든 디렉토리들 및 파일들을 로컬로 백업한다. 2. 설정에서 모든 플러그인들을 비활성화 한다. 3. 새로운 버전의 파일을 로컬에 다운로드 받는다. 4. 서버에 있는 wp-admin, wp-includes 디렉토리를 삭제한다. 5. 로컬에 있는 새로운 버전의 wp-admin, wp-includes 디렉토리를 서버에 업로드한다. 6. 로컬에 있는 새로운 버전의 wp-content 디렉토리를 서버에 업로드 한다. (덮어쓰기) 만약 실패한다면 서버의 […]

Angle between two vectors

길이가 1인 두 개의 벡터 A와 B가 주어졌을 때, 두 벡터 사이의 각도를 구하는 함수 float Angle1( const Vector& A, const Vector& B ) { return acosf( DotProduct(A,B) ); } : A와 B가 거의 평행하게 될 때 DotProduct(A,B)의 값이 -1 보다 작거나 +1 보다 큰 경우가 생기며, 이 때 문제가 발생할 수 있다. #define Clamp(x,min,max) […]

,

Hash

[ hash function ] – 임의의 길이를 갖는 data를 고정된 길이의 data로 mapping하는 algorithm – output: hash value – (A’s hash value) != (B’s hash value) -o-> (A’s original data) != (B’s original data) (A’s hash value) != (B’s hash value)

제34회 청룡영화제 기술상. 미스터 고.

생애 첫 번째로 R&D supervisor로 참여한 프로젝트. 청룡영화상. 어찌보면 아무것도 아닌데… 고생이 컸던만큼 아픔도 컸었는데 많은 위로가 됩니다.

, ,

Uniform, Varying, and Attribute in GLSL

GLSL shader에서 input 또는 output으로 사용하는 변수 type은 3가지가 있다. 1. uniform rendering하는 동안 변하지 않는 변수이다. 마치 C 언에에서의 global extern variable의 개념이라고 생각하면 된다. OpenGL application으로 부터 값을 전달받을 수 있다. vertex shader와 fragment shader에서 모두 공유하여 사용하는 것이 가능하지만, 값을 읽는 것만 가능하다. 예) light position, light color 2. atttibute uniform과 마찬가지로 […]

, , ,

Previous Posts