Article

게임의 4분류

 나이를 먹으면 먹을수록 새로운 것에 대한 열정, 배우고자 하는 의지가 꺽이는 것 같다. 비단 일, 공부에 대한 것 뿐이 아니라 게임과 같은 취미생활에서도 일어난다니 슬플 따름이다.  목숨을 걸고 내 인생을 갈아넣었던 게임에 흥미를 잃고 시들해진다는 것은 그다지 즐거운 경험은 아니었다. 그러한 이유를 단지, 내가 늙어서라는 정답을 회피하기 위해 여러가지로 생각해보았다.  10년이 조금 넘는 별다를 것 없는 게임인생이지만 게임이 즐거운 이유는 결국 도파민 때문이고, 게임의 어떠한 요소가 그것을 촉진시킨다는 것은 부정할 수 없는 사실이다. 해당 요소에는 도박과 랜덤성이나, 이쁜캐릭터라거나, 흥미로운 스토리, 아름다운 그래픽 등 다양한 요소들이 있겠지만, 결국 특정 4가지로 귀결된다고 생각한다. 먼저, 가장 중요한 제 1번은 바로 “선택”이다. 비단 게임뿐 아니라, 한정된 자원을 가지고 살아가는 인간의 근본적인 욕구이자 최우선순위는 선택에 따른 보상체계이다. 내가 어떤 선택을 했을 때 어떠한 결과가 나온다는 인과관계는 인간이 가장 먼저 깨닫는 것일 뿐 아니라, 생존에 있어 필수불가결한 요소기에, 해당 요소를 직접적으로 자극하는 것은 도파민을 촉진시키는 가장 중요한 요소이다.  이에 따라 대부분의 게임은 플레이어에게 선택지를 준다. 스토리 분기점, 오픈월드, 컨트롤 요소 등 대부분의 게임의 구성은 결국 플레이어에게 선택과 보상체계를 구축하기 위함에 있다. 그 다음은 경쟁/컨트롤 요소이다. 1번의 하위 체계로 여겨질 수도 있지만, 선택지와는 분명히 다른 경쟁이란 개념 역시 필수불가결한 요소이다. 선택에 따른 보상 체계가 생존에 필요했다면, 경쟁 역시 한정된 자원을 선점하기 위한 필수불가결한 요소이다. 때문에 많은 게임은 멀티플레이어 요소를 도입하여 상대를 경쟁에서 이기는 방식으로 도파민을 제공한다. 오래전부터 가장 인기 많았던 게임은 FPS 라는 사실이 이를 반증한다. FPS뿐만 아니라 RTS, AOS등 수많은 게임 장르가 있고, 이들...

Computer Game Architecture 2 - Illumination & Shaders, Textures

 Rendering pipeline : geometry & image as input (which is composed with triangle meshes) -> each vertex operations calculate position (transformations) & color (lighting) (by vertex shades in GPU) -> convert triangles into pixels by rasterization -> do fragment operation for each of pixels (by fragment shader, determine the color of pixel, done by vertex color's interpolation + image texture color) Illuminations - local illumination model(direct light) : only consider the point light source and the object reflecting the light. 그러나 현실에는 다른 곳에서 반사되어 눈에 들어오는 indirect light도 존재하므로 이는 현실을 나타내는 global illumination과는 차이가 있다. 그러나 빠른 계산을 위해 일반적으로 local만 고려한다. 또한 현실에서는 point light source는 존재하지 않으므로 area를 나타내기 위해 여러 point를 합쳐서 사용한다. - shading : determine the intensity of illumination of surface point (위에서 색을 정하는 방법) Approximate simple local illumination model = diffuse + specular + ambient - diffuse component : smooth change of illumination calculated based on Lambert's L...