얼마전 Expression Blend를 설명하면서 마야 Exporter가 있으면 좋겠다는 언급을 했었는데, MS에서 주체한 WPF Convesion Contest에서 종목에도 없는 마야 Exporter를 만든 친구들이 있었다.

XAML Export UI

XAML로 전달되는 요소들은,

  • Polygon meshes
  • Cameras
  • Animations
  • Lights
  • Normals
  • Texture Coordinates

정도이며, 아직은 Maya의 Animation Curve를 완벽하게 재현하지 못한다고 한다. (WPF, MAYA 모두 cubic bezier curves를 쓰는데 표준상의 근본적 차이가 크다고 한다.) Expression Blender에서 Curve Animation구현이 잘 안되길래 XAML 스펙에 기능이 없나 의심했는데, KeySpline이라는 형태로 존재한다.

01

사이트 바로가기

Source Code 다운 받기
AND

Youtube에 올라온 이 영상은 IBM에서 발표한 iRT를 이용하여 3대의 PS3를 이용하여 실시간 Ray-tracing랜더링을 보여주고 있다. 이 영상을 보기 전에 알아야할 부분은 영상의 퀄리티나 해상도가 그리 좋지 않은데 왜 이것이 대단하냐고 반문하실 수 있는데, Ray-tracing은 자연에서 발생하는 빛의 움직임을 재현하는 랜더링 기법으로 마야나 MAX같은 3D 이미지 랜더링에서나 쓰이며(물론 요즘은 GI를 쓰겠지만), 실시간으로 구현되는 것은 거의 불가능하다. 그란투리스모나 기타 자동차 게임의 차체에 비치는 매끈한 광원효과는 환경맵핑이라는 기법을 이용한 것이며, 자세히 살펴보면 반사되는 이미지는 미리 만들어진 것이거나 디테일이 떨어지고, 자신이 반사되는 경우도 없다.

동영상 내용

  • Ray-tracing은 720p이며 4x super sampling이 적용되어 있음.
  • 3대의 PS3를 리눅스 환경에서 기가빗이더넷으로 연결하였다.
  • 각 PS3는 7개의 SPE중 6개를 iRT에 할당하고 있다. (나머지 1개는 OS용이거나 I/O 용도인듯)
  • 3대중 한대는 최종 이미지를 만드는 역할을 수행하며 1개의 SPE를 최종 이미지 압축용으로 사용한다.
  • 각각은 1개의 SPE를 이미지 전송 압축용으로 사용한다.
  • 따라서, 이미지 전송용 1대는 4개의 SPE를 나머지 2대는 5개의 SPE를 랜더링에 활용한다.
  • 랜더링 영상은 100% Ray-casting이며 유리와 차 표면에 Reflection과 Refraction이 구현되어 있다.
  • 실시간이기에 다양한 Light source를 부여할 수 있다.
  • 뒷부분에 보이는 네모들은 각각 어떤 하드에서 랜더링되고 있는지를 보여주며, 맨 아래쪽은 4개의 블럭이 있는데 이유는 클라이언트라서 4개의 SPE만을 사용하기 때문이다. 나머지는 5개의 블럭이 보인다.

영상을 보면서 느끼는건, 대단하긴한데 이거 PS3용 게임을 만들 수도 없고, 그렇다고 Real-time Global Illumination처럼 Wow Factor가 있는것도 아닌 게 일반 유저들이 봐서는 그닥 관심이 대상이 되긴 어렵겠다는 생각이었다. 하지만, 대단한건 인정!!

AND

신규 사업을 펼치거나 기존 사업의 변화를 꽤하려 할때, 혹은 고객의 e-business구축을 아웃소싱해줄때 우리는 시장조사의 자료를 필요로 하게된다. 이같은 작업은 기획자에게 있어 상당히 짜증나는 작업인데 일반적으로 기존에 발간된 통계자료나 업계관계자와의 커넥션을 통하여 어렵게 구하곤 하지만, 이마저도 세분화된 Market Segmentation에 적용하기엔 무리가 있기 때문이다.

시장조사의 가장 확실한 방법은 그 시장의 실질적인 판매량과 가격을 아는게 가장 정답일 것이다. 하지만, 아무도 그런 자료를 모을 수 없고, 판매자 역시 자신의 자료가 경쟁상대일지도 모르는 누군가에게 보여진다는 것이 꺼려질 수 밖에 없는게 당연한 현실이다.
DataUnison는 e-bay Market-Data Reseller로서 e-bay에서 판매되는 모든 제품의 판매 Raw Data를 받아 이를 정제해서 판매하는 회사이다. 물론 Raw Data중에서 개인신상정보부분은 당연히 빠지겠고, e-bay 자체는 마켓플레이스이기 때문에 해당 자료를 판매한다는게 크게 문제가 되지 않는다. (판매자가 claim할수 있을지 모르나 이는 판매자에 대한 정보 누설이라기보다 마켓플레이스의 매출정보에 가깝기 때문에 문제는 없을듯)

서비스 전개도

Flickr가 디카메이커의 중요한 자료 수집처라면, e-bay는 모든 메이커의 시장자료로서 가치가 있다.
DataUnison가 가지고 있는 Data는 그야말로 무궁무진해서 어떻게 필터링하냐에 따라 수만가지 의미있는 결과를 얻을 수 있다. 분야별 판매현황, 브랜드파워, 키워드파워, 고객연령, 시간별 판매현황, 재구매율 등등 업계 종사자가 아니면 손댈 수 없는 정보들을 구매할 수 있게 되는 것이다. 게다가 API를 제공하여 매쉬업형태로 자신만의 분석시스템을 구축할 수 있다.

비단 e-bay뿐만 아니라 Major 마켓플레이스와 모두 계약을 맺는다면 현존하는 어떤 시장조사 자료보다 정확하고 실시간적인 정보를 얻을 수 있는 창구가 될 것이다. 국내에서도 Gmarket하고만 계약을 맺어도 장사가 될만한 비즈니스이다. (만약 하실려면 저에게 저녁을 사야하는 제약조건이 있습니다 ㅎㅎ)

사이트 바로가기

P.S. 이 사이트 알게된 계기는 아이러니하게도 바로 밑에 붙어있는 구글 광고를 통해서였다;; (내사이트걸 클릭했으니 계약위반인듯...;;)
AND

Autodesk MAYA를 사용하다보면 가끔 MEL Script의 강력함에 매료될 때가 있다. (불안정함으로 작업을 날려먹는 일은 부지기수지만..) 예전에는 Webbrowser Object를 이용해서 Web-Dav처럼 3D Resource를 웹 리포지토리에서 관리하는 MEL Script를 짤때 문득 들었던 생각이 이걸로 게임 만드는 바보도 있지 않을까하는 생각을 했었는데 진짜로 존재한다는 사실을 알게되었다.

스타워즈의 특수효과로 유명한 ILM(Industrial Light and Magic)의 3D 작업자 중 MAYA Guru 였던 Habib Zargarpour는 2002년 MEL과 MAYA Dynamics Engine을 이용하여 로봇을 제작하고 자신의 로봇을 다른 플레이어의 로봇과 겨룰 수 있는 게임을 만들었다. (재미로 만들었다가 ILM개발팀 내부에서 엄청난 반향을 일으켜서 출시하게 됐다는 후문이 있다.)

TV쇼프로인 Robot Wars:Extreme Warriors와 비슷한 개념으로 정해진 스테이지를 벗어나면 패배하도록 되어있다. 파괴룰은 적용이 되었는지 확인해보지 못했다. 명확한 Objective와 Play pattern이 있는게 아니기 때문에 게임이라 부르기보다 장난감에 가깝다고 보는게 맞지 않을까? Toribash, Rag-doll Kung-fu와 더불어 Physically-based Fighting Game의 가능성을 옅보게하는 의미있는 작품이다.


사이트 바로가기
AND

YDL의 PS3버전 출시로 게이머들에게 알려진 Terra Soft에서 PS3를 이용한 클러스터링 솔루션을 판매한다. 6 node와 36 node를 판매중이며, 각각 1TFlops와 5TFlops의 성능을 제공한다고 한다. Head node로는 IBM p5 185을 사용하며, 기가빗이더넷으로 연결된다. 궁금한 점은 분명 같은 Market Segmentation에 IBM의 셀 블레이드 서버군이 존재하는데, Sony와 IBM은 PS3의 서버 시장판매에 대해 어떻게 얘기되었는지 모르겠다. 다만, 이 제품의 가격은 만만치 않은데, 6 node가 $18,325, 36 node가 $40,000에 판매된다. 회사에 놔두면 노드 1개 클러스터링에서 풀어서 몰래 게임할 개발자들 많을 꺼 같은데?

사이트 바로가기
AND

플스3 펌웨어가 1.6으로 업데이트 되면서 Folding@Home이라는 메뉴가 생겼다. SETI@Home의 아류격으로 느껴질만하지만,(SETI@Home은 1999에 Folding@Home은 2000년에 시작했으니 아류가 맞다고 볼수도 있다.) Folding@Home은 난치병 치료제 개발에 도움이 되는 단백질의 접힘(Folding) 연구를 위한 것이기 때문에 보다 공익(?)적인 작업인 셈이다. 처음 뉴스를 접하고 '소니가 PS3의 실추된 이미지를 사회공익적인 이미지로서 개선해보고자 하는군'이라는 선입견이 생겼지만, 실제로 사용을 해보니 몇가지 실익(?)적인 부분-말로만이 아니라 실제 도움이 된다는-이 있었다.

PS3에서의 구동

Folding@Home의 구조를 간단히 보자면,

- 처음 시뮬레이션할 작업량을 네트워크를 통하여 받아온다.
- 내부 컴퓨팅파워(CPU+GPU)를 이용하여 시뮬레이션을 수행한다.
- 시뮬레이션이 끝나면 자료를 전송한다.
- 이를 반복한다.

보고있자면 단백질 구조가 무섭도록(!) 덜덜 떨면서 각 상황의 접힘을 시뮬레이션하는데, 자꾸 보고 있으노라면 세뇌가 되는지 오랫동안 쳐다보게 된다. 배경에는 지구상에서 Folding@Home 프로그램이 가동중인 지역이 밝게 표시되어 나타난다. (클라이언트 수가 많을수록 밝은 곳으로 표시된다.)

PC버전과 PS3버전과의 비교

혹시나 해서 필자의 PC에서 Folding@Home PC버전을 돌려보았는데, 결과가 의외여서 놀랐다. 본인의 PC사양은,

AMD X2 3800+ / 1.5GB RAM / GeForce 6100 통합칩셋 / 500GB HDD

정도인데, 아래 실행화면을 보면,

내부에서 수행되는 작업의 내용을 정확히 알지 못하기 때문에 단정짓기 어렵지만, Folding@Home에서 작업의 최소단위는 frame으로 정의하고, 여러개의 프레임이 모여서 하나의 시뮬레이션을 이룬다. 참고로 PC버전과 PS3버전의 시뮬레이션 분량이 다른데, PC버전은 20000개의 프레임이 하나의 시뮬레이션이고, PS3버전은 40000프레임이 하나의 시뮬레이션을 이룬다.(왜인지는 나중에 나온다.) 결국 한 프레임을 계산하는 작업시간은 해당 머신의 성능과 거의 직결된다고 볼 수 있다. 위 사진에서 보면 16s/frame으로 나타나 있는데 이것은 한프레임을 계산하는데 드는 시간이 16초라는 것이다.  그럼, PS3버전의 한 프레임당 작업시간은 얼마인지 살펴보자.
16초 대 0.07초...이거이거 같은 작업분량으로 보기가 어려운 값인데, 일단 PC버전은 다중코어지원이 안되기 때문에(Linux나 Mac버전에서만 가능) 싱글코어 100%사용량으로 설정했을때의 성능이다. 그렇다고 하더라도 너무 차이가 난다. PS3 버전의 구동원리도 묘연하다. 셀만을 이용하는 것인지 RSX(GPU)도 연산에 이용하는 것인지를 알 수 없다. 하지만, Wikipedia에 따르면 PS3용 Folding@Home이 배포된 이후, 최고의 연산 피크를 기록했다고 한다. (990 teraFLOPS in 3/25/2007) PS3의 참여로 인하여 가시적인 퍼포먼스 향상이 있다는 것이다. 곧 있으면 petaFLOPS(페다플롭스)에 도달할 예정이라니, 소니의 Folding@Home 홍보가 단지 Eyecandy만은 아니라는 것은 인정해줘야 하겠다.

Folding@Home 사이트 바로가기
AND

MS에서 공식적으로 발표한 비스타/IE 호환관련 문서들입니다.

http://www.microsoft.com/korea/windows/compatibility/activex.mspx

MS 웹사이트에 올라온 비스타와 ActiveX에 대한 입장입니다. 국내 금융권에 대한 MS의 입장이 있군요.
128bit SSL을 비롯한 표준화된 인증 체제, 그리고 암호 발생기 등 다양한 보안 솔루션을 국가적 차원에서 열린 자세로 수용하여, 다양한 플랫폼에서 기 구현되고 검증된 인프라를 활용하도록 하는 것이 바람직합니다. 현재 Internet Explorer는 세계 표준적 보안 기능을 내장하고 있고, 세계 각국의 은행들은 브라우저 내장의 보안 기능을 활용하고 있습니다.
정부와 MS, 보안업체와 개발업체들의 앞으로의 행보가 궁금해지네요.

Internet Explorer 7.0 호환성 백서 (Word 문서, 1.92MB)

상당히 도움이 될만한 문서입니다. 2006년말에 나왔습니다. 다만, "Windows Vista IE7 에서 ActiveX 컨트롤 개발 방법론"라는 백서도 같이 나올 예정이었던거 같은데, 아직 안나왔는지 찾을 수가 없네요. 이 글을 쓰신 저자분의 블로그도 찾았습니다. 호환성에 대한 가장 확실한 기술적 답변을 들을 수 있는 채널이지 싶네요. ㅎㅎ

저자 블로그 바로가기

Windows Vista IE7의 새로운 보안하에서 ActiveX 컨트롤 개발 (PPT 문서, 8.29MB)

백서는 아니고 비스타/IE와 ActiveX 개발에 대한 세미나 자료입니다. 참고가 될 만 하네요.
AND

아실 지도 모르지만 모르시는 분들을 위하여 정리해봅니다.
비스타 호환문제가 해결되지 않은 많은 사이트에서 도움이 됐으면 합니다.
퍼가시는 건 자유지만 출처는 밝혀주세요.
-------------------------------------------------------------------------------------------
비스타 ActiveX 문제 해결방법 ver. 0.10

본 문서는 비스타에서 발생하는 하위 호환 문제 중 기존 ActiveX 컨트롤이 일으키는 문제를 해결하기 위한 문서이다. 여기서 제시하는 해결책은 문제의 원인을 제거하는 근본적인 해결책은 아니며, 앞으로 ActiveX 개발사들이 문제를 해결하기 전까지 임시로 사용하기 위한 대안이다. 하지만, 본 대안이 보안에 결정적인 취약요소를 가지고 있는 것은 아니다. 본 해결책의 원리는 비스타의 ActiveX를 최대한 XP 환경에 가깝게 만드는 것으로 일반적인 XP(관리권한을 가진 계정에서 실행되는 일반적인 XP환경)에서 구동되는 그것과 최소한 동등한 보안구조를 가진다.

해결 가능한 대상 : 아래와 같은 문제가 발생하는 모든 국내 웹사이트

1. 인터넷 뱅킹(제1금융)사이트
2. 증권/기타 금융(제2금융) 사이트
3. 웹하드 사이트
4. 웹에서 런칭되는 캐주얼게임/MMORPG 사이트
5. 기타 ActiveX를 사용하는 사이트

해결 방법

바탕화면에 기존 Internet Explorer 바로가기를 복사한다.(위치는 맘대로)
바로가기의 "속성"으로 들어가 "바로가기" 텝에 "고급" 버튼을 누른다.
"관리자 권한으로 실행"을 체크한다.
바로가기 명을 기존 IE와 구분 지을 수 있는 이름으로 바꾼다.
비 호환 사이트에 접속할 때는 새로 생성한 바로가기를 실행하면 된다. 실행시 경고창이 뜨는 것은 관리자 권한을 필요로 하기 때문이므로 허락을 해주면 된다.


-------------------------------------------------------------------------------------------

AND

On_DA님의 일러스트가 업데이트 되었습니다. (2D/3D 모두) 여전히 모에의 경지로는 최고 수준의 퀄리티.

3D 랜더링이라고 믿기지 않을 정도의 퀄리티.

사이트 바로가기
AND

유수 벤치마크 사이트들에서 SuperPI는 PC의 성능을 가늠하기 위한 벤치마크 도구로서 사용되고 있다. 특히 1M 자리수의 PI계산 속도는 CPU의 FPU 성능의 가늠자처럼 인식되고 있는데, 필자는 SuperPI는 이같은 역할을 수행하기엔 시대에 뒤떨어진것이 아닌가 생각한다.

그 이유로는,

- SuperPI(mod버전포함)는 Single-threaded Application으로서 대세인 다중코어 CPU의 성능을 100% 사용하지 못한다.
- 오픈소스가 아니라서 변화하는 환경에 따른 적용이 불가능하다.

일례로 필자가 새로 장만한 AMD64 4000+와 AMD64 X2 3800+로 SuperPI 1M 처리 속도를 비교해보면,4000+가 10초가까이 빠른 속도를 나타냈다. 이 같은 문제는 멀티코어나 비대칭벡터프로세서의 정확한 성능을 가늠할 수 없을뿐만아니라, 유저들이 잘못된 성능 비교를 보고 혼동하게 만들 수 있다.

MacResearch에 올라온 플스3와 맥과 인텔을 비교해놓은 PI 벤치마크. 저자는 Cell의 SPE를 사용하지 않았다는 것을 명시하고 있지만, 이러한 벤치마크는 낚시제목과 함께 여러 사이트들를 돌면서 유저들을 혼동시킨다. (제발 퍼가지 마세요.)

필자가 생각하는 새로운 SuperPI는,

- 오픈소스
- 병렬/직렬처리를 병행할 수 있는 알고리즘
- 메모리 용량에 최대한 독립적
- 확장명령어셋지원(SSE,SSE2,SSE3,3D NOW!, ...) 및 옵션으로 on/off가능
- GPGPU(General Purpose GPU) 혹은 CUDA 지원으로 CPU와 GPU의 비대칭 병렬처리 옵션
- 플랫폼 독립적으로 Windows, Linux등에서 구동가능
- Cell Broadband Engine(PS3)의 PPE/SPE 비대칭 프로세싱 지원

정도로 SuperPI처럼 PI 값의 정확성보다는 시스템의 활용 측면을 더 바라봐야한다는 생각이다.
병렬처리로 PI를 구하는 대표적인 알고리즘은 Monte Carlo Method지만 기타 다른 알고리즘도 고려해볼 만하다. 특히 다중코어의 Multi-threading이나 비대칭코어의 Multi-passing이나GPU의 고속 행렬연산 pipe를 잘 응용한다면 서로 다른 아키텍쳐의 성능을 비교해 볼 수 있는 벤치마크 프로그램이자 참고용소스로서 가치가 있지 않을까 싶다.

Project PI (오픈소스 PI 프로젝트) 사이트 바로가기

Monte Carlo Methods in Parallel Computing 사이트 바로가기

PI 생성 알고리즘의 Single-threaded Multi-threaded 비교 예제

FFT와 AGM(Monte Carlo) 이용한 PI 계산 사이트 바로가기
AND


임베디드 기기를 제작하려면 하드디스크처럼 물리적인 구동모듈이 없는 OS구동이 필요하다.
특히나 윈도우즈같은 덩치큰 OS는 성격상 일반 ROM에서 구동하기에 적합하지 않기 때문에 플래시롬에서 돌려야 하겠지만, 플래시롬의 Read/Write 횟수제한은 잦은 액세스를 필요로 하는 윈도우즈를 돌릴 경우 긴 수명을 보장받기 힘드므로, 램(RAM)디스크 구동이 가능하다면 빠른 속도와 오랜 수명을 보장 받을 수 있게 된다.

필요한 준비물

- Microsoft® Windows® XP Embedded with Service Pack 1
- 충분한 메모리 공간(2기가 이상)

구동 원리는 Windows XP Embedded의 SDI Image를 이용하여 램디스크에 복사될 인스톨 드라이브의 내용을 만들고, 이를 초기 부팅시 램디스크를 마운트하고 해당 이미지를 로드하는 것이다.

SDI Image는 XP Embedded의 주 기능중 하나로 다음의 3가지 정보를 품게된다.

1. BOOT BLOB (부트 프로그램)
부트 프로그램 부분에는 STARTROM.COM이란 32비트 프로그램이 들어가게 된다. STARTROM.COM은 초기 부팅시 OEM-Authored Boot Program라는 프로그램을 로드 할 수 있는데, 이 프로그램은 이미지의 공급자가 부팅전 원하는 작업을 수행할 수 있는 기회를 준다.

2. LOAD BLOB (NTLDR)
램디스크가 마운트되면 작동할 NTLDR이 들어갈 공간이다. 부트 프로그램이 SDI 로딩을 끝내면 이 부분의 NTLDR을 작동시켜 램디스크 XP부팅이 시작된다.

3. PART BLOB
실질적인 OS가 들어갈 부분. 잊지말아야 할 부분은 인스톨본이 아니라 인스톨된 드라이브의 이미지라는 것이다. 여기에 반드시 들어가야할 3가지 내용이 있는데,
- 윈도우즈 램디스크 드라이버가 들어가 있을것
- ntdetect.com과 boot.ini가 들어 있을것
- boot.ini안에서 해당 볼륨의 실행부분을 다음과 같이 바꿀 것
[boot loader]
default=ramdisk(0)\WINDOWS
[operating systems]
ramdisk(0)\WINDOWS="Windows XPE From RAM" /fastdetect

SDI 이미지를 만든 대략적 과정은 다음과 같다. (SDI Manager 디렉터리 상에서 작업)

1. 공 SDI 이미지를 만든다.
C:\SDI>sdimgr /new ram_boot_img.sdi

2. 인스톨된 볼륨의 내용을 Import한다. (볼륨이 D드라이브일 경우)
C:\SDI>sdimgr ram_boot_img.sdi /readpart:d:

3. 부트 프로그램을 Import한다.
C:\SDI>sdimgr ram_boot_img.sdi /import:BOOT,0,startrom.com

4. NTLDR을 Import한다.
C:\SDI>sdimgr ram_boot_img.sdi /import:LOAD,0,ntldr

5. 마지막으로 패킹한다.
C:\SDI>sdimgr ram_boot_img.sdi /pack

6. 이미지에 이상이 없는지 확인해본다.
C:\SDI>sdimgr ram_boot_img.sdi

현재 계획은 초기 부팅 모듈과 SDI이미지는 플래시롬에 기록되고, 플래시롬을 통하여 SDI 이미지가 램디스크에 마운트 된 이후부터는 플래시롬은 사용되지 않는 방식을 고려중이다.
보다 자세한 내용은 MSDN의 해당 글과 SDI Manager 매뉴얼을 참고해본다.

MSDN 해당 글 바로가기
SDI Manager 바로가기
AND

Prolog

비스타가 출시되기 이전부터 비스타에서 구동되지 않은 프로그램이나 게임의 목록이 블로그들을 타고 돌기 시작했다. 정부기관의 ActiveX 문제 역시 기존 ActiveX가 비스타에서 호환되지 않은 이유로 정부가 MS에 도움을 요청했다는 굴욕사실때문에 뜨거운 이슈로 급부상했다. 아직까지 비스타를 써본 적이 없었는 필자는 무슨 문제 때문에 호환되지 않는지가 매우 궁금했으나, 구체적인 이유가 기술된 글들을 찾지 못해 두리뭉실한 느낌으로 ACL문제와 웹브라우저의 보안문제 등이 문제일 꺼라고 생각하고 있던 차에 오늘 우연히 Windows ME 시스템을 Windows Vista Home Edition에 migration해달라는 부탁을 받고 처음으로 비스타의 문제에 직면했다. (본 문제는 하위호환이 안되는 많은 문제중에 하나이기 때문에 넘버링을 했다. 문제를 찾을 때마다 포스팅할 예정이다.)

비스타의 하위호환문제 #1

이번에 발견한 문제는 ACL에 관련된 문제인데, 비스타(최소한 홈에디션)에서는 프로그램이 OS 루트 홀더의 파일 생성 및 저장의 권한을 가지지 못한다. XP의 최신 OEM버전에서도 이런 세팅이 있었지만, 안전모드에 administrator로 들어가서 루트+하위홀더의 권한을 유저나 원하는 계정에 부여해주면 해결되었다. 하지만, 비스타에서는 루트의 모든 권한을 해당 유저나 USERS 그룹등에 부여한다해도 파일을 생성할 수 없었다.(짧은 시간 리뷰였기 때문에 방법이 존재할 수도 있습니다. 아시는 분이 계신다면 리플 부탁드립니다.) 필자가 마이그레이션하던 프로그램은 BDE(Borland Database Engine)을 사용한 어플리케이션이었는데, BDE의 기본 DB인 Paradox에서는 DB파일의 네트워크 엑세스를 위하여 C:\에 PDOXUSRS.NET이라는 파일을 생성하는데 이 파일이 생성되지 않기 때문에 프로그램이 작동하지 않았다.

두개의 해결방안

이 문제는 해결하는 방법은 2가지가 있는데, 첫째는 BDE Administrator를 통하여 NET Directory를 변경하는 방법이 첫번째인데, 간단한 방법이기는 하나 어플리케이션에 따라 BDE Confiuration을 자체적으로 가지고 있는 넘들에게는 해결이 안되는 단점이 있다. 두번째는 단축아이콘 옵션에서 프로그램에 Administrator의 권한을 부여해주는 것이다. 확실한 방법이지만 역시 단점이 있는데, 시작할때 매번 이 프로그램의 권한은 Administrator로 실행하겠냐는 질문에 답을 해줘야한다. (끌 수 있는 옵션이 없다)


비스타의 새로운 정책을 꼬집은 Apple의 ad. 비스타를 써 봤다면 300% 공감이 가능하다.

애플광고에서 썬글라스 아저씨의 Cancel or Allow. 겨우 2시간 봤는데 짜증이 무럭무럭 났다;;


누구를 탓할 것인가

그럭저럭 문제를 해결하고나서 XP가 설치된 내 작업 노트북의 C루트를 보니 보안 ActiveX, 게임 런쳐 ActiveX,  웹하드 ActiveX 등등이 남긴 로그파일들이 쌓여있었다;; 비스타에서 이 모든 프로그램들은 구동중 OS 루트 홀더의 권한을 얻지 못하여 죽을 것이 뻔하다.. 자 그럼 누구를 탓할 것인가? 개발자가 무책임하게 가장 만만한 루트에 로그를 남긴 것을? 아님 ActiveX를 남용한 국내 사이트 제작자들? 아님 정부의 정책?

문제의 핵심은 무엇일까

아직까지 모든 비스타의 호환문제를 겪어본 것이 아니라 속단하기는 이르지만, 이 문제는 언젠가는 짚고 넘어가야할 Windows라는 OS의 문제였지 ActiveX의 문제라던가 정부정책의 문제를 수면으로 끌고 올라올 문제는 아니라는 생각이 든다. (주. ActiveX에서 호환문제가 더 커지는 것은 Stand-alone Application이 아니기 때문에 권한 설정이 불가능하고 Exception발생시 프로그램이 죽을 확률이 더 높기 때문이다.)한 회사의 솔루션을 정부 사이트에 적용해버린 부분의 문제는 이 문제와는 별개란거다. 시간을 거슬러 처음 NT기술이 일반 사용자에게 접목된 2000, 혹은 XP가 나올때 MS는 일반 사용자에게는 걸맞지 않은 NT 기술의 ACL을 도대체 어떻게 사용하기 쉽게 펼쳐놓을지를 고민했을 것이 분명하다. 하나의 홀더안에서도 파일의 성격에 따라 다른 권한을 주는 복잡다단한 OS가 될 것인가, 아니면 모든 파일이 관리자소유이고 모든 사용자가 관리자인 단순한 OS가 될 것인가의 갈림길에서 MS는 과감히 후자를 택했고, 그 이후로 대부분의 우리는 파일의 권한관리와는 담을 쌓고 살아왔다.

비스타의 하위 호환문제의 핵심은 새로운 "기능(function)"이 아니라 새로운 "정책(policy)"이다.

이미 가지고 있는 기능이지만 사용자의 편의를 위해서 죽여놨던 기능들을 허술한 보안체계의 OS라는 불명예를 씻어버리기 위해 부활시킨 것 뿐이다. 다만 그 과정에서 예고없이 강화한 많은 "정책"들이 기존 프로그램들의 호환성을 떨어뜨린 것뿐이다. 물론 개발자가 루트 홀더에 마구잡이로 파일을 생성한 것은 잘못된 것이지만, 그것이 이후 하위호환성을 떨어뜨릴 수 있다고 경고하지 않은 것은 M$다.
AND

2005년부터 시작되어 3회째는 맞은 Living Game Worlds 심포지움이 3/29부터 아틀란타 조지아텍에서 열린다. 2006년 키노트 발표자였던 Will Wright같은 슈퍼 스타는 없지만, Rules of Play 의 저자인 Katie Salen 이하 학계와 업계 담당자들이 대거 참여한다. (하지만 Katie Salen을 포함 대부분이 2006년 발표자였다는 사실) 그런데 심포지움의 무게에 비해 주제에 대한 서술이 너무 부족하다. "Playing With Reality"라면 요즘 들어 Game Theorist 들이 유행시키려는 현실접목형 게임(혹은 대체현실게임(alternate-reality games)? 아직 용어정립이 안되놔서..)을 주제로 한다는 거 같은데, 울 어머니가 좋아라하시는 Jane McGonigal 정도는 초대할 만 한테 발표자에는 포함되어 있지 않다. 어찌됐건 게임 기획자라면 참석할 가치가 있는 세미나 중 하나임이 분명하다. 3/10일까지 등록하면 100불에 사전등록이 가능하다. (현장 등록은 200불)

사이트 바로가기

Jane McGonigal의 CNET 인터뷰 바로가기

한국형(?) 현실접목형 게임 Fun Out 카페 바로가기
AND

Wharton에서 수강중인 Product Design Course에선 실제로 Product Prototype을 만들어야 한다. 기획이나 디자인은 한다쳐도 절삭이나 몰딩 같은 단어는 IT 샌님들에게는 너무나 멀게 느껴진다.

eMachineShop은 이러한 문제를 한번에 날려보낼 수 있는 파워풀한 e-business 사이트이다. 내가 원하는 부품을 디자인하면 단가가 바로 출력되고 주문하면 몇일 후에 UPS를 통하여 배송된다!! 이건 온라인 인화사이트 정도와는 차원이 다르다! 내가 평소에 못하는 것을 할 수 있게 해준다.
먼저 제공하는 툴의 사용법을 익혀야 한다.

제공되는 제작 디자인 툴. 깔끔하고 직관적으로 초보자도 사용하기 쉽게 되어있다.

여타 벡터툴이나 3D 디자인툴과 다를바가 없지만 크게 다른 점 몇가지가 있는데, 첫번째는 재료를 선택한다는 점이다. 재밋는 점은 재료의 강도나 재질에 따라 가공가능한 공정이나 정밀도가 달라진다는 점이다. 예를 들면 철은 싸지만 세밀한 공정이 불가능한 데 비해 알루미늄은 보다 세밀한 공정으로 제조가 가능하지만 가격이 비싸다. 금속성 재질은 물론 플라스틱도 가능하다.

재료선택화면

재료 선택이 끝나면 각 디자인 별로 어떤 제조 공정을 거칠 것인지를 결정한다. eMachineShop에서는 다양한 기기들을 보유하고 있고, 유저는 어떤 머신을 거칠 것인지를 직접 결정하게 된다. 예를 들면 가장 무난한것이 Mill 3-axis인데 3축으로 내가 원하는 어떤 모양이든 제조가 가능하지만, 단가가 비싸지는 단점이 있다.
공정 선택이 끝났다면 3D로 어떤 모양이 되는지를 시뮬레이션 해본다.

랜더링 화면. 등긁게가 아니라 병따개다.

마지막으로 견적서를 받아본다. 참고로 테스트해본 이 병따개의 경우 초기 단가는 11,000불이 넘었었다. 너무 많은 공정을 거쳤기 때문이다. 그래서 보다 싼 재질을 선택하고 공정수를 줄여본 결과 1,000개 생산할 경우 단가가 3,782불 들었다. 개당 3.7불하는 병따개를 만든 셈이다.
기계과 친구 말은 이정도는 나가서 가계 돌아다니면 할 수 있는 것들이라고 하지만, 그쪽 배경지식이 전혀 없는 사람이 이토록 쉽게 접근하여 결과물을 받을 수 있다는건 확실한 e-business의 장점이지 싶다. 또한 일반인이 접근할 수 있게된 결과, 1회성 기념품이나 아내에게 주는 이벤트 선물, 집 수리용 소량부품 등 기존에는 없었던 Market Segmentation이 생길 수 있다. 가능성은 무궁무진하다. 나는 Embedded System의 케이스를 Injection Molding 플라스틱으로 제조해볼까 고려중이다.

eMachineShop 사이트 바로가기
AND

JoonJoon군과 노닥거리다 우연히 얘기하게된 소형 Embeded System. 예전부터 Embeded System DIY제작에 관심이 많아온터라 의견을 주고받았다.

mini-ITX

mini-ITX는 2001년 VIA에서 합병한 Cyrix의 저전력 프로세서 C3를 위하여 만든 규격이다. 그 당시의 분위기를 되살리자면, 춘추전국시대와 같았던 x86 호환 CPU시장이 인텔, AMD를 빼고 퍼포먼스 측면에서 사장되고 있던 시기였다. Cyrix 역시 그 당시 천하를 호령하던 Athelon XP이나 Pentium4의 상대가 되지 못했기 때문에 저전력, 소형화를 통해 Embedded 시장을 노크하기 시작했다. mini-ITX는 micro ATX 등과 비슷한 개념이지만 보다 소형(170 mm x 170 mm)에 방열판 구조의 저소음/저전력 아키텍쳐를 지향이였다.

nano-ITX

이후 VIA는 2005년말 보다 소형(120 mm x 120 mm)의 nano-ITX 폼펙터를 발표한다.

pico-ITX. D-SUB 단자가 이렇게 크게 느껴질 줄이야.

장사가 잘 되는지 얼마전 CES 2007에서는 pico-ITX 폼펙터를 발표했는데 크기는 불과 100 mm x 70 mm에 불과하다.

CES 2007 인터뷰 영상

앞으로 ITX 카테고리를 통하여 ITX H/W 관련 정보나 Embedded S/W 관련 정보를 포스팅할 예정이다.
AND

AND

많은 관심/무관심 속에 Windows Vista가 정식 런칭되었다. 이번만큼 OS의 향상된 변화의 폭을 가늠하기 애매한 때가 없었던 거 같다. Win16, Win32에 이은 새로운 API 체계인 WinFX를 갖추었지만, WinFX는 결국 .NET 3.0 Framework이기 때문에 획기적이라 부르기에 논란의 여지가 있다. Epic 개발자 발언으로 논란이 되고 있는 DX10 역시 비스타전용으로 분류되기엔 무리가 있다. (이미 발표된 DirectX 2006 Dec. 버전에서 DX10의 기능을 XP에서 개발/활용할 수 있다.)

몇주전에 .NET 3.0 Framework을 깔고나서 Visual Studio.NET 2005(이하 VS.NET)의 Form Designer에 비약적인 성능하락이 있었기 때문에(이벤트와 커맨드를 UI에서 연결해주는 기능이 사라졌다;;), Expression Blend를 오늘 수업사이 남는 시간에 깔아보았다. (* Expression Blend는 별도의 프로그램으로 어플리케이션 개발에서 프리센테이션 레이어인 XAML만을 디자인하는 도구이다.)

M$ Expression Blend의 첫 소감을 말하자면 VS.NET Form Designer + Adobe Flash + Maya 정도랄까, 매우 상이한 여러개의 카테고리가 엉성한 틀안에 공존하는 느낌이다. XAML를 기본으로 하여 폼을 디자인하고 리소스들을 배열하고, Flash와 같이 Timeline을 생성하여 각 구성요소의 애니메이션을 정의하고 트리거를 연결할 수 있다. 또한, 3D 객체와 Material을 불러와 버튼이나 구성요소등으로 활용할 수 있으며, 3D 객체 역시 Timeline을 이용하여 모든 속성(Material, Camera, Translation, ...) 등을 애니메이션할 수 있다.

분명 디자이너를 위한 툴인데, 이 모든걸 소화할 디자이너가 과연 몇이나 있을까...

짬을 내서 만들어본 Hello World. 비정형 윈도우에 3D 객체를 불러온다음, Canvas를 만들고 그 위에 3D 객체의 랜더링 결과를 Visual Brush로 만들어 연결하고 Flip시켜서 Reflection 비스무리한 효과를 만들었다. 그런다음 각 개체의 Animation을 Timeline을 생성하여 만들고, 트리거를 이용하여 마우스 Interaction에 적당히 연결해 놓았다.

결과는 나쁘지 않은데, 비정형 윈도우에서 3D 객체와 이미지들이 알파(투명도)가 먹은채로 잘도 돌아간다. 3D 객체라도 윈도우 기본 이벤트를 모두 내포하고 있기 때문에 버튼이나 기타 컨트롤로 100% 활용이 가능하다. (오른쪽의 병은 마우스 포커스시 Diffuse Color가 Blue로 변하며 클릭시 X Scale이 커지게 되어 있다.) 구경하던 친구말대로 "Application"에 대한 정의를 바꿔놓을 수 있는 잠재성이 있어 보인다.

툴의 단점을 나열하자면, 너무나 많은 부분을 담고 있기 때문에 세세한 부분에서 부족한 점들이 있다. 애니메이션 객체를 지우면 코드에 적용이 안되서 실행시 에러가 난다던지, Timeline 애니메이션에서 Curve Interpolation이 지원안된다던지, 3D 객체를 불러와도 3D 애니메이션은 불러오지 못한다던지, 텍스쳐 적용이 안되고, 쉐이더 역시 사용불가이고, Timeline 애니메이션이 Reverse Play Control이 안되고, Repeat 설정은 XAML에서 직접 해줘야 한다던지, 말하자면 끝이 없다. 차라리 Flash나 Maya에서 디자인된 결과를 XAML 테그로 Export하는 기능이 있는게 나을듯 하다.

Vista의 에어로UI의 룩앤필을 가지고 OS X보다 못하다던지, 그냥 구리다던지 비평하시는 분들이 많은데, 압도적인 기술을 가지고도 멋진 UI를 만들어내지 못하는 M$는 역시나 개발자의 회사임이 틀림없다. 3D 모델이나 효과, 그리고 벡터가 접목된 Vista의 UI는 아직까지 UI 디자이너들의 관심이 절실히 필요한 부분임에 틀림없다.

Hello World 다운 받기(XP이하에선 .NET 3.0 필요)

.NET 3.0 Runtime 다운 받기
AND

좀 지난 얘긴데, 막간을 이용해 올려본다. Tsukuba 대학 CS의 한 학생이 SIXAXIS(Playstation3의 컨트롤러)를 PC에서 구동가능하게 하는 프로그램을 만들었다. 원래 SIXAXIS는 USB HID기기로 등록이 되지만(블루투스에선 아직 등록이 안된다), 실제 작동은 하지 않고 있었다.(RAW Data조차 뿌려주지 않았었다.) 이 학생은 SCE에서 "it requires special USB request to enable sending HID data"(HID로 작동을 위해선 특별한 USB신호를 보내야한다)라는 발표를 보고 그 신호를 찾아서 SIXAXIS의 PS버튼을 누를 경우를 캐치해 응답신호를 보내주는 프로그램을 만들었다. 이로서 컨트롤러의 십자패드, ○X□△버튼, L1-3, R1-3, 2개의 아날로그 스틱을 읽을 수 있다. 다만, 현재까지 모션센싱데이터(6축 모두)를 읽을 수 없다.

사이트바로가기

일한사이트 번역 구글 툴바버튼
AND


처음 Wiimote를 PC에서 구동시키고나서 인터넷에는 내 블로그의 구동 사진들이 허가없이 도배되었었다. (허락 받으신 분도 계셨지만, 외국사이트에서는 전혀 동의없이 게시되었었다. 심지어는 자기 사이트의 워터마크까지 달아 놓은 곳도;;) 어쨌거나 학기말 프로젝트에 정신이 팔린 사이 Carl Kenner가 선수를 쳐서-만들 생각도 없었지만- 완성된 버전의 PC구동 유틸을 만들었다.

그런데, Wiimote의 내부를 들여다보니 내가 잘못 알고 있던 사실들이 있었는데,

- Wiimote는 6 axis(3-axis positional + 3-axis rotational)가 아니라, 단지 3-axis linear force sensor(XYZ)만을 가지고 있다.
- Linear force sensor는 Gravity의 영향을 직접적으로 받고있으며, 필터링되지 않은채 정보가 넘어온다.
- 따라서 3-axis positional 데이터 만으로는 컨트롤러의 local coordinate을 알 수 있는 방법이 없다.
- IR Sensor는 IR emitter의 갯수와 각각의 신호의 강도, 그리고 Wiimote 시점에서의 2D 좌표를 알 수가 있다.

결론은, Wiimote는 3D space상의 위치와 움직임을 완벽하게 알 수 없다는 사실. 재밋는 사실은 와리오웨어 영상을 보면 각각의 게임들이 어떻게 Wiimote를 잡고 게임을 해야하는지 친절하게 설명을 해주는데 그것이 바로 local coordination을 정의하기 위함이었다.


01:21 부분을 살펴보면 친절하게 어떻게 잡아야하는지를 알려준다. 사용자가 어떤 방식으로 잡고있는 지를 모르면 Wiimote는 정확한 입력 정보를 알아낼 수 없다.

PS3의 SIXAXIS보다 절대적 우위에 있다고 확신했던 필자이기에 반성이 필요할 듯하고, 앞으로 두개의 디바이스가 가지는 장단점을 지속적으로 살펴봐야겠다.
AND


Game Theorist라 칭하는 Jesper Juul가 우리 학교에 왔었다. 그는 게임 이론으로 IT University of Copenhagen에서 PhD를 받았으며 동 대학의 Center for Computer Games Research에서 Assistant Professor로 재직중이다.

아직 읽어보지는 않았지만 MIT Press에서 출간한 그의 책 "Half-Real"의 평이 나쁘지 않아 꽤나 기대가 되는 세미나였다.

0123456789101112131415161718

핵심 주제는,
- 게임의 발전은 그래픽의 향상으로만 이루어져서는 안된다.
  (1년마다 배가되는 개발비가 뛰어난 재미를 의미하는 것이 아니다)
- 다양한 유저 발굴을 위해 새로운 게임모델 개발이 필요하다. (Goal-less Game)
- Goal-less 게임에서 유저는 목표 달성보다는 다양한 가능성을 탐험해보는 즐거움을 느낀다.

그의 설명을 들으면서 예전에 문방구 앞에 있던 로보트 레슬링이 떠올랐다. 게임할 돈이 없던 나는 동무들이 하다가 끝난 게임을 붙잡고 High Score를 새기는 커서 2개로 친구와 술래잡기 놀이를 했었다. 목표가 있는 게임을 가지고도 다양한 플레이를 하는데, 가능성을 넓혀주면 목표외 재미는 배가 될 수 있겠지.
하지만, 뭔가 2% 부족하다.. 세상에 어떤 게이머가 넓은 세상과 가능성을 가진 게임이 싫겠나, 그저 그만큼의 개발리소스를 쏟아부어야 하기 때문이 아니겠나. 게다가 그의 게임에 대한 넓은 의미의 접근은 많은 관계자들로부터 '목표가 없다면 게임(Game)과 장난감(Toy)의 구별이 무엇이냐?'라는 질문 공세를 받게 하였다. 하지만, 한가지 분명한 것은 Goal-less는 미래 게임 유형의 한 부분을 차지할 것이라는 점이다.

Jesper Juul 사이트 바로가기

Half-real 사이트 바로가기

The Ludologist (His Blog) 바로가기
AND


위모트를 블루투스 노트북에서 조이패드를 쓸수 있다면 참 좋을 꺼 같다는 생각에서 출발한 아이디어

Wii 구매 이후 만 이틀만에 Wii 컨트롤러를 PC에서 이용가능하다는 결론에 도달했다.
다른 블로그들에 포스팅된 바와 같이 Wii 컨트롤러(일명 위모트)는 블루투스방식을
이용하여 데이터를 전송한다. 그럼 먼저 PC에 디바이스를 연결해보자.

각자 하드웨어에서 제공하는 블루투스 스텍을 이용하여 새로운 디바이스를 맞이할 준비를 한다.

준비가 되었으면, 위모트의 뒷면의 배터리 박스를 열고 Sync버튼을 눌러준다. 간섭문제가 발생할 수 있으므로, Wii의 전원 플러그를 뽑아둔다.

다음과같이 Nintendo RVL-CNT-01이라는 이름의 표준 HID장치로 잡힌다. 선택후 다음으로 넘어가면 디바이스 등록이 완료된다.

스텍에 Wii 컨트롤러가 연결된 모습. PC에 연결된 경우 컨트롤러의 1P,2P,3P,4P LED가 깜박이게 된다.

제어판의 게임 컨트롤러에 가면 위와 같이 블루투스 게임패드로 등록되었음을 알 수 있다. 하지만...

정작 Test에 들어가보면 장치에는 아무런 버튼도 방향키도 존재하질 않는다! 여기서부턴 어둠의 영역;;
디바이스 레벨로 넘어가기전에 RAWHID로서 접근을 시도해보았다. HID Device를 Regist한 다음 컨트롤러에서 입력시 WM_INPUT으로 넘어오는지를 체크했다. 다행히도 아직 알수는 없지만 RAW Data가 넘어온다!!

Raw Data의 유형은 매우 단순했는데 1BYTE Header + 2 BYTE 로서 각각의 BYTE는 방향키와 버튼의 조합값을 의미하였다. 다만, 모션센서의 값은 IR 바를 통해서 전송되는지 찾을 수가 없었다.

최종으로 테스트 프로그램 완성! 다음엔 트레이에 상주하면서 키보드나 게임패드에 SendInput을 보내는 버전을 제작할 예정이다.

AND

PS3 발매일에 혹시나 갔다가 95대 발매에 200명이상이 8시간전부터 줄을 서있는 것을 보고 충격에 휩였던 기억 때문에 가능하면 가고싶지 않았지만, 다시 한번 시도해보기로 하였다. 물량이 많은 대형 매장들은 사람들이 몰린다는 사실을 알았기 때문에 가능한 선전을 안하고 작은 매장에 아침 일찍 개장하는 곳을 물색했는데, 동네에 조그만 Wal-mart에서 Wii를 판다는 소문을 듣고 새벽 6시에 갔다. (7시 개장) 사람들이 줄을 서 있었지만 그다지 많은 편은 아니었고 27대가 있으며 기다리면 살 수 있기에 30분정도를 기다리니 경비원이 Voucher를 나눠주더라. 줄을 선 사람들은 대부분 아줌마, 아저씨들이었고 그들은 자식들이나 남편(!)들이 사달라고 졸라서 하는 수 없이 왔다고 한다.
012345678910
7시가 되어 들어가니 Customer Center에서 Voucher의 순번대로 판매를 하고 있었다.
일단 소프트없이 Wii Console과 컨트롤러 1개를 샀다.
Wii의 초기 기대치는 PS3에 비해 한참 못미치는 수준이었으나, 앞으로의 행보는 주목할 만하겠다.
AND


그란투리스모 공식 사이트를 통하여 1080P 해상도의 스크린샷이 공개되었다. 그동안 논란이 되어왔던 해상도가 720P라던지 업스케일이라던지의 의문은 모두 해소되었지만(1920x1080 랜더링이 맞다), E3 2006에서 그란HD의 영상을 처음 목격했던 필자는 실스샷 이미지를 보구서 놀라움을 금할길이 없었는데 그 이유인즉,

그란투리스모 HD에는 Alpha Channel(투명도)이 없다.

이것은 AA(Anti-Aliasing)의 유무와는 다른 차원의 문제다. High Color시대와 더불어 Windows 98 GDI에 AlphaBlend API가 추가되면서 Alpha Chennel은 UI와 3D에 필수요건이 되어 버렸다. 특히 3D에 있어서 Alpha Channel은 이제 2D 스프라이트의 이펙트나 텍스쳐 등에 없어서는 안될 필수 불가결한 요소다. 하지만, 그란HD의 스샷을 한번 보자.

여전히 너무나 사실적인 화면이다. 하지만, 멀리 차가 보이는 풀숲 부분을 확대해보자.
뭔가가 느껴지지 않는가? 아니라면 좀더 확대해보자.
풀숲 부분에 망사스타킹처럼 녹색 그물이 쳐져 있는 것이 보일 것이다. 이것은 알파채널의 주사용 용도인 풀의 가상자리 부분의 알파채널값(값은 텍스쳐 데이터에 저장되어있음)이 그란투리스모 렌더러에 의해서 디더링된 결과이다. 올드게이머라면 이러한 테크닉에 익숙해져 있을 것이다.

일본 게임 그래픽 노가다의 대표작 Princess Maker 2. 16 color로 다채로운 그래픽을 표현하기 위해 디더링 도트노가다 신공을 사용하였다.

이번엔 다른 영상을 살펴보자. 역시나 실제 같은 영상이 펼쳐진다. 하지만, 멀리 건물의 테라스 부분을 살펴보면,
발코니 프레임 주위에서 디더링된 부분을 발견할 수 있다. 반대로 알파채널이 적용된 부분을 찾아보았으나 어떤 스샷에서도 발견하지 못했다.

그렇다면, 왜 PS3 게임 중에서도 최고의 그래픽으로 손꼽히는 그란HD가 알파채널을 사용하지 않고 디더링이라는 원시적 기법으로 회귀한 것일까? 그 근본 원인을 꼽자면 풀 HD 해상도의 화소수에 있다. 일반적으로 픽셀당 8bit를 사용하는 알파 채널을 1920x1080화면에 뿌려진 모든 텍스쳐에 적용하면 어느정도의 비디오 메모리가 필요할까? 원거리 배경용 텍스쳐를 제외하고라도 상당히 큰 부분을 차지하게 될 것이다.

PS3의 컴퓨팅 파워, Bus Speed, 그리고 메모리의 용량은 솔직히 1080P게임을 마음껏 만들기엔 무리가 있는 스펙이다. PS3는 게임의 그래픽에 화려한 이펙트와 다채로운 오브젝트가 등장한다면 720P가 적당하고, 시네마틱한 화면에 정적인 움직임을 원한다면 1080P로 만드는 것이 적절한 정도의 스펙을 가지고 있다. 따라서 1080P 용 게임을 더구나 세밀한 그래픽을 요구하는 게임은 그에 합당한 제약요소를 감수해야 하는 것이다.

그렇다고해도, 알파채널을 포기할만한 가치가 있을까? 라고 물어본다면, '그란HD 영상을 앞에서 보면서 풀숲의 디더링을 눈치챌만한 사람이 몇이나 있을까?'라고 반문하겠다. (사실 있을지도 의문이다. 관련된 포스팅은 본적이 없다.) 풀 HD의 해상도는 이미 인간의 눈으로 보기에 충분히 조밀한 해상도이다. 특별히 스크린이 50인치를 넘지 않는한 계단현상이나 그물망현상을 찾아보기는 어렵다.

결론은 일본게임은 20년이 지난 지금도 첨단 게임기에 도트노가다를 하고 있다는 사실.
AND

McGill University의 컴퓨터공학과가 주축이 되서 시작한 CSGames는 다양한 종목을 통해 공학도의 종합적(?)능력을 평가하는 철인경기류의 게임이다. 재밋는 건 경기 종목인데, 알고리즘과 AI와 같은 종목에서부터 밤눈(Eagle's Eye)을 겨루는 종목, 스포츠, 네트웍게임 등등이 망라되어 있다. 이들 게임종목의 점수를 합산하여 최종 승자를 정한다. 2006년 처음으로 시작하여 지금 2007년 지원자를 받는 중이다.

경기 종목
  • Algorithms
  • A.I. Part 1
  • A.I. Part 2
  • Scripting
  • Problem of the Day & The Challenge
  • Eagle-Eye Problem of the Night
  • Sports
  • Web Design
  • Scavenger Hunt
  • Debugging
  • Team Software Engineering
  • Surprise Competition
  • LAN Gaming
  • Cryptography
  • Group Game
  • ParticipAction
북미에 유학중인 CS 공학도들은 도전해봄직하다.

사이트 바로가기
AND

Web 2.0 시대로 오면서 사람들은 벌써 Web 3.0에 대해 이야기하고 있다. 속단하기는 이르지만, 차세대 웹서비스에서 가장 큰 비중을 차지할 부분 중 하나는 멀티미디어 검색기능이다. MPEG-7으로 대변되는 이 기술은 동영상이나 이미지, 음악 등의 컨텐츠의 내용을 사람의 손을 거치지 않고 인덱싱하는 특징을 가지며, 검색의 쿼리형태 역시 텍스트에서 벗어나 Shape, Humming, Color 등이 될 수 있다.
오늘 소개하고자하는 Like.com은 이같은 검색의 걸음마단계의 서비스로서 가능성을 옅볼 수 있다.
Like.com은 상품검색엔진으로서 기존 서비스와는 다르게 상품의 이미지를 기반으로 검색을 할 수 있다.
사이트의 첫페이지에서 보여주는 연예인이 착용한 악세사리 검색은 "구라"다. 하지만, 미래의 검색이 보여줄 기능을 잘 서술하고 있다. 제니퍼 애니스톤이 착용한 팔찌를 분석하여 동일한 제품부터 비슷한 모양의 제품을 검색해준다니 멋지지 않은가!

내부에서 Vision과 Machine Perception을 사용하는 부분은 바로 물품의 검색 부분으로 원하는 물건의 모양과 비슷하지만 더 싼 물건이라거나, 특정 부분만 비슷한 모양인 제품들을 검색할 수 있다. 또한, 같은 모양에 다른 색상의 제품을 찾는 것도 가능하여, 쿼리부분에는 컬러선택창과 모양을 검색하기위한 선택창으로 되어 있다. 지금은 그다지 매력적이지 않지만 미래의 기술을 맛볼 수 있는 사이트로서 Like.com은 충분한 가치가 있다.

사이트 바로가기
AND