` Take it to the next level!! iOS7 :: Black Sheep Wall!

Depth, Responsivity, Flexible, Ambient, Environment-sensitive, Dimensional, Realistic, Dynamics

결국 Man machine interface의 발전 과정에 따르는 Take it to the next level 이라는 생각이 드네요.


1. 실제 세계, 물리버튼을 가진 기기의 시대에서 Flat touch screen시대(평면화면의 가상세계?)로 넘어오면서, 


2. 물리적인 디바이스로 직접 조작하던 실제 경험을 사용자에게 주고자 함

(사용자들은 물리법칙이 적용되는 실제 세계의 기기들을 사용했던 경험들이 있으므로, 이런 느낌을 제공하는 것은 Flat screen 기계에서도 직관적인 사용을 가능토록 도와줌으로)


3. 그러나 낮은 화면 해상도, 프로세서(HW)와 플랫폼 제약(SW)으로 인한 표현의 한계


4. 과도기적으로 선택했던 방법은

    - 평면 화면에서의 가짜입체감 표현 (정적인 그림자 효과와 그라데이션으로 표현되는)

    - 현실의 모양을 그대로 따라한 가짜형태 표현 (Skeuomorphic)

    - 물리법칙 움직임을 유사하게 '따라한'1 항상 똑같은 속도, 동작으로 움직이는 '고정된' 애니메이션 효과 


5. 그러나 이제 3. 표현의 한계가 HW/SW 발전에 의해 해결

    - 300dpi를 훨씬 넘는 해상도의 디스플레이 (실세계의 모습을 거의 그대로 표현 가능한)

    - 가속센서, 지자기 센서, 광센서, 카메라를 이용한 외부환경 센싱

    - Mobile computing process power의 발전

    - 조작에 대해 실시간 responsive하게 반응, 실제와 '동일한' 물리법칙으로 '동적으로' 표현 할 수 있는 SW


6. 5에 더해 인간이 물리 기기에서 평면 스크린 디지털 기기에 익숙해지며, 과도기의 시대가 끝났다고 판단(?)


7. 5와 6으로 인해 애플이 택한 방법은


a. 불필요한 요소를 최대한 걷어내는 모양과 정보 그 자체만으로 구성된 레이아웃을 구성2

작은 공간에서 많은 조작을 해야하는 디지털 기기에서 현실 모양을 그대로 따라한 Skeuomorphic은 정보 인지와 그 조작에 불필요한 정보가 많으며, 너무 복잡한 표현 형태라고 판단(?)

b. 간단해진 Shape을 가지고 유저의 조작에 따라 물리엔진3으로 현실 세계의 움직임처럼 동적으로 '반응'하도록 인터렉션 구성 (기존 정해진 속도와 동작으로 움직이던 인터렉션에 대해 실재감을 줌)

c. 다중 레이어(Badge, Icon, Shadow, BG)로 UI를 구성하고, 광센서와 가속센서를 사용하여 보는 각도와 디바이스 움직임, 주변 밝기에 따라 각각의 레이어들을 각각 실시간으로 반응하게 하여 평면 화면에 깊이감을 주어 실재감을 줌

즉, HW/SW제약으로 인해 평면 디스플레이 디지털 기기에서 정적인 2D 그래픽과 고정된 애니메이션으로 현실세계를 따라했던 과도기적인 UI 방식에서 좀 더 디지털 기기에 적합하게 단순해진 정보를 실세계와 같은 동적으로 반응하는 인터렉션 효과로 움직임 자체로 현실감을 부여하는 다음 단계의 디지털 인터페이스로의 발전을 꾀한 것 같다.


이렇게 적어놓고 보니 알록달록 화려한 컬러와 납작하게 보이는 스타일링은 그저 선택의 문제일 뿐이라는 생각이 든다. 다음 버전의 디바이스 자체의 컬러 정책과도 연관된 게 아닐까 하는 추측.

그런데 어차피 유저의 조작에 대한 반응성과 동적인 인터렉션으로 평면화면에서의 현실감을 주려는 것이라면 형태가 꼭 Flat 할 필요는 없지 않을까 라는 생각, 단적으로 인터렉션 되는 요소들을 직관적으로 알아볼 수 있게 현실감 있는 (Skeuomorphic) 버튼 등으로 구성을 하고 이 요소들을 동적으로 반응하게 하면, 더 현실감 있고 효과적이지 않을까 하는 의문인데, 단순히 스타일링의 문제인가 궁금a 


UIKit Dynamics (http://www.shako.net/blog/)
UIAttachmentBehavior: 두 아이템이 같이 움직이게 할 때
UICollisionBehavior: 다른 아이템과 충돌이 일어나게 할 때
UIGravityBehavior: 특정 지점에 중력을 이용해서 다가갈 수 있도록 할 때
UIPushBehavior: 다이나믹 아이템을 위해 힘 벡터를 지정
UISnapBehavior: 특정 아이템에 붙어있도록 할 때


Tech at 2013. 6. 15. 03:54