목록C++ (208)
응애맘마조
어제의 과제를 풀이하면서 콘솔 창의 사용 용도를 다시 쓰게 되는 일이 생겼습니다. 디버그를 하게 되는 경우 콘솔 창 출력으로 할 수 있다는 것을 알려주셨습니다. 오늘은 실제 중력이 작용하는 것 같은 등속가속도에 대해 했었습니다. 예를 들어 공을 위로 던졌을 때 공이 멈추게 되는 것 같은 모습을 볼 수 있습니다. 이유는 공이 올라가면서 공기의 저항을 받으면서 속도가 느려지고 작용하는 중력과 위로 올라가면서 작용하는 힘이 같을 때 멈추는 것 같은 느낌이 들 수 있습니다. 힘(스칼라) 값에 마이너스 값을 사용해서 반대로 나갔다가 원래 방향대로 나가는 방법을 사용할 수 있습니다. 이 방법은 점프를 구현할 때 사용할 수 있는 방법입니다. 랜덤함수를 사용할 때 srand() 또는 rand() 함수를 사용합니다. 이..
미사일을 발사하면서 조금씩 현실과 가까운 것들을 배우기 시작했습니다. 중력값이 추가된 것들을 배우기 시작했습니다. 등속도운동과 등가속도운동에 대해서 했었습니다. 등속도운동은 같은 속도로 움직이는 운동입니다. 무중력상태에서는 가능하다는 예시를 들었습니다. 등가속도운동은 같은 가속도로 움직이는 운동입니다. 시간에 따라 가속도가 추가됩니다. 예시를 들면 공을 위에서 떨어뜨렸을 때 처음에는 느리게 떨어지지만 점점 떨어지는 속도가 늘어나게 됩니다. 그러면서 떨어지는 시간이 같을 때 떨어지는 거리는 더 커진다는 뜻입니다. 피벗(Pivot)에 대해서 했었습니다. 중점을 바꾸는 역할을 합니다. 우리가 쓰는 x, y값은 position 값을 사용하는데 이 값을 바꾼다고 보시면 됩니다. 위 사진은 사각형의 팔방향입니다. ..
현재 R키를 눌러서 재장전하는 것까지는 쉽게 하기에 이제 화면 밖으로 나갔을 경우에 자동으로 장전이 되도록 하는 법을 했습니다. 그렇게 하기 위해서는 벡터의 마이너스 합연산을 사용합니다. 두 벡터간의 차이 벡터를 만들 때 사용합니다. 하지만 벡터간의 사이에서 마이너스 벡터 값은 없습니다. 만약 벡터 간의 빼기를 하고 싶을 때는 (벡터) + -(벡터) 공식으로 계산합니다. 벡터간의 빼기는 차합이라고 합니다. 방법은 기준 객체를 원점으로 맞추고 기준 객체의 좌표 벡터를 빼면 됩니다. 그 사이에 나온 값을 거리라고 하는데 distance라고 쓰고 코드상에는 dis라고 표기하였습니다. 읽어주셔서 감사합니다.
어제 말했던대로 오늘 DirectX를 나가기 전 Framework를 받았습니다. sln 파일을 열면 2DFrameWork가 있고 Game1, 2가 있습니다. 하지만 이대로 실행하면 오류가 납니다. 왜냐하면 시작 프로젝트가 2DFrameWork로 되어있기 때문입니다. Game1, 2로 시작 프로젝트를 해야 정상적으로 실행이 됩니다. 여기서 2DFrameWork는 정적 라이브러리(lib)파일이고 Game1, 2는 응용 프로그램(exe)파일입니다. 정적 라이브러리를 작성하고 빌드된 것을 가져가서 사용합니다. 여기서 컴파일을 할 때 한 번 했던 컴파일 된 파일은 또 다시 하지 않습니다. 수정된 코드가 있는 파일만 다시 합니다. 하지만 만약에 프레임워크를 수정하면 다시 처음부터 컴파일을 시작합니다. (프레임워크를..
행렬의 마지막으로 동차를 했습니다. 동차는 W로 표기하며 한자로는 同次라고 합니다. 차원의 차이를 나타내며 값은 0, 1로 표현합니다. SetWorldPos는 W가 1입니다. 원점에서 나오기 때문에 같은 차원이라서 1이라고 표현합니다. MoveWorldPos는 W가 0입니다. 특정 위치에서 움직이기 때문에 같은 차원이 아닙니다. 중점을 이동시켜서 구현합니다. 그렇기 때문에 정점이 이동하는 것이 아닙니다. 내일부터 DirectX 2D를 들어가기 전에 Framework 파일을 주고 들어 가기 전 게임 기능에 대해 배우고 정식으로 들어간다고 합니다. 그 전에 이제 미사일 발사 하는 기능에 대해서 한다고 했습니다. 그 이후에 정식으로 DirectX2D를 나간다고 합니다. 읽어주셔서 감사합니다.