목록 전체보기 (198)
공부중
흔히 텍스처 하면 그림(이미지)를 떠올린다.알고있는 지식으로는 2차원의 이미지 자료를 저장한다 각 원소는 픽셀 하나의 색상정보를 담는다. 이정도? 하지만 텍스처는 이런 이미지 그림 정보만을 저장하는것만이 아닌 다른 정보들을 저장할수 있다.->대표적으로 3차원 Vector를 담는 normal mapping 이라던가... 그외 여러가지... 1차원 텍스쳐는 1차원 배열, 3차원은 3차원 배열 이렇게 생각하면 될듯?사실 배열인것만은 아니고 순수 그림(이미지) 정보만 담는 그런것 또한 아니다 텍스처에는 특정 형식(format)이 자료 원소들만 담기 가능하고 구체적인 형식은DXGI_FORMAT enumeration - MSDN이라는 열거형으로 지정한다. MSDN 들어가보면 정말 종류 엄청 많다꼭 그런건 아니지만 ..
COM(Component Object Model)은 DirectX의 프로그래밍 언어 독립성과 하위 호환성을 가능하게 하는 기술이다. 필요한 COM 인터페이스를 가리키는 포인터를 특별한 함수들을 이용해서 또는 다른 COM 인터페이스의 메서드를 이용해서 얻는 방법뿐new로 직접 생성할 필요가 없고 delete로 삭제하는것이 아닌 해당 인터페이스의 Release 메소드를 호출해 주어야 한다.-> 모든 COM 인터페이스는 IUnknown이라는 COM 인터페이스를 상속하는데 IUnknown이 Release라는 메소드를 제공. COM 객체의 수명 관리를 돕기 위해서 Windows Runtime Library(WRL)에서 Microsoft::WRL::ComPtr이라는 클래스를 제공한다.-> #include 가 필요 ..
// Close the command list and execute it to begin the initial GPU setup. ThrowIfFailed(m_commandList->Close()); ID3D12CommandList* ppCommandLists[] = { m_commandList.Get() }; m_commandQueue->ExecuteCommandLists(_countof(ppCommandLists), ppCommandLists); // Create synchronization objects and wait until assets have been uploaded to the GPU. { ThrowIfFailed(m_device->CreateFence(0, D3D12_FENCE_FLAG..
// Note: ComPtr은 CPU 개체이지만 이 리소스는 이를 참조하는 명령 목록이 // GPU에서 실행을 마칠 때까지 범위에 있어야합니다. // 자원이 조기에 파괴되지 않도록 // 이 방법의 끝에서 GPU를 플러시합니다. ComPtr textureUploadHeap; // Create the texture. { // Describe and create a Texture2D. D3D12_RESOURCE_DESC textureDesc = {}; textureDesc.MipLevels = 1; textureDesc.Format = DXGI_FORMAT_R8G8B8A8_UNORM; textureDesc.Width = TextureWidth; textureDesc.Height = TextureHeight; ..
// Create the command list. ThrowIfFailed(m_device->CreateCommandList(0, D3D12_COMMAND_LIST_TYPE_DIRECT, m_commandAllocator.Get(), m_pipelineState.Get(), IID_PPV_ARGS(&m_commandList))); // Create the vertex buffer. { // Define the geometry for a triangle. Vertex triangleVertices[] = { { { 0.0f, 0.25f * m_aspectRatio, 0.0f }, { 0.5f, 0.0f } }, { { 0.25f, -0.25f * m_aspectRatio, 0.0f }, { 1.0f, 1...
// Create the pipeline state, which includes compiling and loading shaders. { ComPtr vertexShader; ComPtr pixelShader; #if defined(_DEBUG) // Enable better shader debugging with the graphics debugging tools. UINT compileFlags = D3DCOMPILE_DEBUG | D3DCOMPILE_SKIP_OPTIMIZATION; #else UINT compileFlags = 0; #endif ThrowIfFailed(D3DCompileFromFile(GetAssetFullPath(L"shaders.hlsl").c_str(), nullptr, ..
gitlab 설치글을 또 적게될줄은 과거에는 몰랐다 -_-..아니 gitlab-ce는 없어지고 홈페이지에 나온대로만 했는데 안떠서 결국 이렇게 다시 글을 적고있다.(아마 설치중에 의도치 않은 한번 강제로 종료되었던게 문제였나보다... -_-...) (안그래도 내 블로그에 gitlab으로 들어오는 사람들이 넘쳐나기 때문에.....) 지금은 아니게 되어버렸다...ㅠㅠ 아는거라고는 코딱지만큼도 없지만 혹시나 누군가에게는 도움이 될까 하고 다시 또 설치를 적어본다혹시나 작성날짜를 안보는 사람들을 위해서 여기다가 또 적어놓겠습니다 이 글은 2018년06월04일에 작성되었으며 이 날을 기준으로 설치되는것을 확인했기에 먼미래나 가까운 미래에 이 방법으로 안될수 있으니 참고하시기 바랍니다 -_-....(그때 가서 본인..