프로그래밍 공부

프로그래밍 700

카테고리 설명
  • 3D 그래픽 에플리케이션에서 지형을 표현하기 위한 기술이다. 지형의 높이정보를 2D그리드 형태로 나타내는 방법을 의미하며, 이 그리드는. 각 점의 높이값을 나타내는 픽셀로 구성된다. HeightMap은 게임 개발 및 시뮬레이션 애플리케이션에서 주로 사용된다. GPU에서 HeightMap을 사용하여 지형 메쉬를 생성하고, 높이 정보를 이용하여 효율적으로 그리드를 생성한다. 장점 효율성 HeightMap은 메모리 사용과 렌더링 성능 측면에서 효율적이다. 정확성 높이정보를 픽셀단위로 저장함으로 지형의 세부사항을 정확하게 표현할 수 있다. 단점 제한된 지형 형태 이러한 HeightMap은 평면지형 또는 약간의 산맥을 표현하는데 적합하지. 건물이나 복잡한 지형은 다른 방식으로 표현해야한다. 높이 제한 Height..

  • 이전에 사용하던 ID3D11ShaderResourceView* srv 를 따로 만들어서 한개의 객체당 한개의 srv를 생성하는것 이 아닌. srv를 공통으로 사용할 경우. 같은 srv를 사용하도록 만들어보자. Texture #pragma once class Texture { private: // 복사생성자가 아니라 그대로 참조형 생성자로 이동시켜 사용한다 Texture(ID3D11ShaderResourceView* srv, ScratchImage& image, wstring file); ~Texture(); public: void PSSet(UINT slot = 0); public: static Texture* Add(wstring file); static void Delete(); private: ws..

  • DirectX, Windows 에서 사용할 ImGui의 설치개요에 대해 설명한다. https://github.com/ocornut/imgui GitHub - ocornut/imgui: Dear ImGui: Bloat-free Graphical User interface for C++ with minimal dependencies Dear ImGui: Bloat-free Graphical User interface for C++ with minimal dependencies - GitHub - ocornut/imgui: Dear ImGui: Bloat-free Graphical User interface for C++ with minimal dependencies github.com https://gith..

  • 이전에 만들었던 Viewport작업을 먼저 전역변수로 빼준다. 카메라 위치좌표 작업을 새롭게 잡아준다는 의미이다. ViewPort Environment.h를 다음과 같이 선언한다. #pragma once class Environment : public Singleton { private: friend class Singleton; Environment(); ~Environment(); public: void Set(); void SetViewport(UINT width = WIN_WIDTH, UINT height = WIN_HEIGHT); void SetPerspective(); void CreateProjection(); private: MatrixBuffer* viewBuffer; MatrixBuff..

  • Vector는, STL( Standard Template Library ) 에 포함된 동적 배열 데이터 구조이다. vector는 배열과 유사하지만, 크기를 동적으로 조절할 수 있는 컨테이너이다. 일반적으로 동적 배열을 구현할때 사용하며, 임의접근이 필요할때 유용하다. 예를들어. 리스트나 큐와같이 순차적인 데이터에 비해 특정원소에 빠른 접근이 필요할 경우에 사용된다. #include #include int main() { std::vector myVector; // 정수형 원소를 담는 vector 생성 // 원소 추가 myVector.push_back(10); myVector.push_back(20); myVector.push_back(30); // 원소 출력 for (int i = 0; i < myVec..

    C++

    (STL)Vector NEW

    2023.10.17
    댓글
  • 지금까지 만들었던 프레임워크중에 Buffer와 Shader을 나누었던것을 하나의 Mesh와 Material로 나누어보자. 원래 Cube에서 사용되었던 (Shader) PiaxelShader VertexShader (Vertex Data) VertexBuffer vector(Vertex type들) IndexBuffer vector(indices들) 을 각각 Material 와 Mesh로 분리하여 작업한다. Mesh #pragma once template class Mesh { public: Mesh() = default; ~Mesh(); void Draw(D3D11_PRIMITIVE_TOPOLOGY type = D3D11_PRIMITIVE_TOPOLOGY_TRIANGLELIST); void CreateM..