아이폰 해커로 유명한 George Hotz군이 플레이스테이션 3 exploit을 공개한지도 어언 3개월이 흘렀다. 소니는 그들의 남은 자존심 PS3의 잠재적 해킹을 막기위하여 OtherOS를 완전히 봉쇄하는 3.21 펌웨어 업데이트를 강행했고, Hotz군은 소비자의 권익을 보호한다는 주장하에 7일자로 OtherOS를 작동하는 3.21 커펌을 선보였다.

블로그에 적어놓은 글을 인용해보면,
Note to the people who removed OtherOS, you are potentially turning 100000+ legit users into "hackers." There was a huge(20x) traffic spike to this blog after the announcement of 3.21. If I had ads on this site I guess I'd be thanking you.

사실 이말이 틀린 건 아닌것이, 나 마저도 해킹된걸 알아도 그다지 관심이 없다가 우리집의 플스에 들어있는 리눅스가 날라간다는 소식에 솔깃해서 서칭하다가 알게된 것이기 때문이다.

현재는 아직 비디오 샷만을 보여주고 있는것이, 기존 PSP 커펌에서처럼 PSN에 접속시에 버전체크에 문제가 있다고 한다. 아마 프록시등으로 우회하는 루틴을 넣고서 공개할 듯.

AND

이전부터 PC게임으로 PS3로 쉽게 이식할 수 있는 라이브러리가 있다는 소문이 있었는데 비로소 내용이 공개되었다. GDC08에서 발표된 PhyreEngine가 바로 그 소문의 크로스플렛폼 3D엔진으로서, 아래와 같은 특징을 갖는다.

SCE's new free to use graphics engine
- Run time
- Art pipeline & tools
- 70+ samples and full documentation

Cross Platform (PS3 & PC), optimized for multi-core
- OpenGL & Direct3D
- Simple recompile for PS3

Works with standard tools
- Maya & Max exporters
- COLLADA compatible
- Bullet, Havok, Ageia Physics

Runs on PS3 debug systems
- PS3 development for less than $1200!

Ongoing development & support from SCE


재밋는 사실들을 요약해보면,
- XNA와 마찬가지로 무료를 원칙으로 하지만, 더 나아가 소스코드까지 완전 공개하겠다고 밝히고 있다. 다만 완전 공개 배포인지 여부는 밝혀지지 않았다. (소규모 개발사이상에게만 공개할지도)
- 따라서, PS3와 PC뿐만이 아니라 XBOX360용으로도 컴파일이 가능하다고 전해진다.

현재까지 PhyreEngine를 이용하여 개발된 게임들은 다음과 같다고 한다.

flOw

GripShift

DiRT


왜 크로스플렛폼일까를 생각해볼만한데, 소니의 전략은 "일단 PS3로 만들어라, 그리고 XBOX360이나 PC로 배포하여 채산성을 높여라"라고 한다. 현실적으로 PS3전용게임을 만들어서 이득을 보기란 어렵다. 특히나 소규모 제작사의 경우 더더욱 꺼리게 되는데, 이러한 고민을 해소하기 위해 내부에서 사용하던 크로스플렛폼 엔진을 전격 공개한 것이 아닐까 생각된다.

개인적으로 PS3의 전략들은 SCE가 PS1, PS2때 겪었던 모든 경험을 총동원한다는 생각이 든다. PS1시절에 FROM같은 소규모 개발사들을 육성하여 큰 효과를 냈던 경험을 살려, HOME Development Kit (HDK)나 PhyreEngine로 PS3 컨텐츠를 다양하게 만들고 있으며, PS2시절에 DVD 조기도입으로 가졌던 장점들을 살려, 블루레이도입과 경쟁에 큰 투자를 하고 있다. (많은 전문가들이 워너 브러더스 영입에 큰 검은 돈이 오갔을 것이라고 예상한다.)

블루레이가 이기고, Home 플렛폼과 PhyreEngine가 공개되는 순간부터 차세대 콘솔전쟁의 2회전이 시작되고 있다.

Playstaion Blog GDC 관련글 바로가기

Joystiq 기사 바로가기
AND

PS3 개발툴 유출!!

ET News 2007. 6. 8. 01:53
간만의 포스팅입니다. PS3의 개발툴(SDK)가 유출됐다는 슬픈(기쁜?)소식입니다.
PS3Hax에 익명으로 포스팅된 스레드에는 개발툴 파일로 추정되는 스샷과 함께 디테일한 파일 목록이 첨부되어 있습니다.

유출됐다는 파일 리스트입니다.

PS3_CP_Update-150_004.zip Reference Tool CP update file
PS3_SDK_SampleData-160_008.zip Sample Data
PS3_Toolchain-Win_160_008.zip gcc/gdb Windows
PS3_Toolchain-Linux_160_008.zip gcc/gdb Linux
PS3_SDKDoc-160_01-Latest-x.zip Documents
PS3_Generator-115.zip Disc Image Generator
PS3_Eclipse_Plugins-150_004.zip Eclipse Plugins
PS3_PA_150_004.zip Performance Analyzer Tools
PS3_at3tool-2000.zip at3tool
PAMF_Tools-100.zip PAMF Tools
MultiStream_Tools-135.zip MultiStream Tools
SEdit-1200.zip SEdit
VAGconverter-1.0.zip VAG Converter

세부 파일 목록 다운로드

진위 여부를 가리기는 힘들지만 만일 사실일 경우라도 아직은 PS3용 홈브루의 탄생을 속단하긴 어렵습니다. 왜냐하면 개발툴은 다양한 개발사에 이미 배포되어 있고, 그들이 원한 경우 백업이 가능하기 때문에 유출이 가지는 의미가 획기적이라고 보기 어렵고, 더불어 이러한 유출 시 악용되는 것을 방지하는 여러가지 장치를 SCE에서 마련했을 것이기 때문입니다. 하지만, 유출이 사실이고 해당 파일 내부에서 PS3의 약점을 조금이라도 알아낸다면 PS3의 보안장벽이 허물어질 가능성 역시 높습니다. (리눅스에서 RSX 엑세스 권한만이라도 얻는다면 큰 소득이겠죠.)

인원감축 소식과 더불어 악재가 겹치는 암울한 소니군요..
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

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

좀 지난 얘긴데, 막간을 이용해 올려본다. 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


그란투리스모 공식 사이트를 통하여 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

잠잠하던 PS3 판매정보에 CC가 처음으로 불을 붙혔다. 발매일 17일 하루전인 16일 9시부터 지정된 6개 매장에서 이벤트를 시작하여, 10시에 줄을 선 고객중 상위 100명에게 판매확정 Voucher를 주고, 자정(17일 0시)에 100대를 판매한다. 하필이면 6개 매장 중 한 곳이 우리집 옆에 있을 줄이야;;; 16일이면 평일인데, 줄을 서서 사볼까하는 고민이...(becasue, PS3예판 Voucher는 Ebay에서 현재 2,400불에 거래된다.)

사이트 바로가기

AND