내 전공은 시물레이션인데 나도 2d, 3d 코드들을 꽤나 짜 봤어. 지금도 짜고 있고.

내가 지금껏 본 코드중에 가장 놀랬던게 뭐냐면....

n d에 대한 코드야.

말그대로 파라미터에 2로주면 2d로 계산되고 3으로 주면 3d로 계산되는 코드였는데

천라인 이하라면 짜 볼 수도 있겠지만 거의 만라인 되는걸 저렇게 짜 놨더라구

거기다 코멘트도 잘 정리되어 적혀있고 코드도 깔끔히 되어 있어서 깜짝 놀랬었는데

1d부터 5d 까지 값을 줘 봤는데 재대로 돌아가서 깜짝 놀랬었어.

2d는 보통 솔루션이 있어서 계산 값을 적지만 3d 이상은 수치해석적으로 계산해야하는데

당시 코드를 읽어볼 시간이 없어서 그냥 대충으로만 봤는데 아직도 잘 모르겠다.

가령 그림자를 구하는 경우에

2d에선 그림자가 선으로 나오기에 입자가 여러게 겹쳐져 있어도

겹쳐진 덩어리의 양 끝값만 알면 선 길이를 구할 수 있는데

3d에서는 그림자가 면으로 나와서 세 입자 이상 겹쳐진 그림자 넓이는 정확한 값을 구할수가 없잖아.

니들같은 응용프로그래머들 입장에서본다면 2d 게임과 3d 게임을

실행중에 파라미터만 변경하면 바로 바뀌는 것과 같은거지.