프로그래밍 공부

서울게임아카데미 교육과정 6개월 C++ ~ DirectX2D 76

카테고리 설명
  • https://docs.google.com/presentation/d/1rA_DZnpy6lzPHy7W85c4t0Te_DTz81sj/edit?usp=drive_link&ouid=100486285898038218521&rtpof=true&sd=true https://github.com/ChoinCola/DirectX11_2D_ENd GitHub - ChoinCola/DirectX11_2D_ENd: 완본내용 재수 완본내용 재수. Contribute to ChoinCola/DirectX11_2D_ENd development by creating an account on GitHub. github.com 완료 사항 오픈에셋으로 간단하게 케릭터 구동작업을 진행하였다. 진행 사항 객체를 2개 작업하여, 한 객체를 케..

  • DIrectX에서 사용할 수 있는 타일맵의 표시방식에 대해 확인한다. 0.0부터 위치된 기본 타일맵의 위치까지 사각형을 표시한 뒤, 해당 위치에 타일맵을 반복되게 표시한다. TileSet::Create(); GenerateTileMap(); vertices.assign(4, VertexTile()); vertices[0].position = Values::ZeroVec3; // 0.0.0 vertices[1].position = Vector3(0.0f, (float)spacing, 0.0f); // 0.40.0 vertices[2].position = Vector3((float)spacing, 0.0f, 0.0f); // 40.0.0 vertices[3].position = Vector3((float)s..

  • 이미지 프로세스를 처리 해주는데, 카메라를 작업해주는데 UV처리를 통해, 원하는 Rect를 표시해줄 수 있다. void RenderingTargetDemo::Init() { rtt = new RenderTexture(); Vector3 size = Vector3(100, 100, 1); Vector3 trPos = Vector3(WinMaxWidth - (WinMaxWidth / 4), WinMaxHeight - (WinMaxHeight / 4), 0); Vector3 trSiz = Vector3(WinMaxWidth / 2, WinMaxHeight / 2, 0); float rot = 0; r1 = new Rect(Vector3(200, 200, 0), size, rot); r2 = new Rect(V..

  • DirectX의 Shader을 적용하여, 화면을 지정된 규칙하에 바꾸어주는 작업이다. TextureBlur기법으로, 하나의 픽셀을 기준으로 3X3의 주변픽셀을 함께 뭉개서 이미지를 흐릿하게 해주는 기법이다. 이 작업을 n번 반복하면, 반복한 횟수만큼 더 흐릿하게 상이 나타난다. 위와 같이, 이미지 픽셀을 1- 20 번 반복하였을 때의 픽셀 블러 정도가 달라진다. float4 PS(PixelInput input) : SV_Target { float4 color = _sourceTex.Sample(_samp, (float2) input.uv); // 주변 픽셀들 float2 arr[8] = { float2(-1, +1), float2(+0, +1), float2(+1, +1), float2(-1, +0), ..

  • VertexBuffer에는 IA와 World 버퍼가 존재한다. 크게, IA는 World 행렬을 곱하게 되면, 월드상에 존재하는 위치 회전 크기값이 조정되어 나타나는, 고정좌표값이 이어붙어 나온다. World버퍼는 해당 좌표값 SRT에 곱해지게 되는 월드 좌표를 나타낸다. SRT S(Scale) 객체의 크기를 표현한다. R(Rotation) 객체의 회전값을 표현한다. T(Translation) 객체의 위치값을 표현한다. 위와 같은 방식으로 SRT를 나타내게 된다. 이때, 로케이션을 곱하고 나타내는건 4개의 축을 사용하게 된다. 우리가 사용하는 X,Y,Z을 축으로 나타내는 3차원 축 인데, 왜 4개의 축을 사용하여 계산하게 되는지 알아보자. 여기서 사용하는 임의의 W라는 축을 나타내어 사용하는 좌표계를 동차..

  • DirectX의 Renders부분에 대하여 설명한다. Renders는 그래픽 리소스와 관련된 여러 구성 요소를 포함한다. IA ( ImputAssembler ) 그래픽 파이프라인의 시작 부분에 위치한 단계이다. 그래픽 하드웨어에 그래픽 데이터를 전달하기 전에 데이터를 준비하고 정리하는 역할을 한다. IA는 그래픽 데이터의 형식을 정의하고, 버텍스 데이터를 읽어들여 삼각형으로 조립한다. 이렇게 조립된 프리미티브는 다음 그래픽 파이프라인 단계로 전달되어 처리된다. VertexBuffer VertexBuffer는 DirectX의 그래픽 어플리케이션에 사용되는 정점 데이터를 저장하는 버퍼이다. 정점 데이터는 3D모델의 점, 선, 면 등의 기하학적 정보를 포함한다. 각 정점은 위치, 법선 벡터, 텍스처 좌표 및 ..