묻고 답해요
148만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part2: 게임 수학과 DirectX12
UI 랜더링이 이해가 안되어 질문드립니다
수업내용을 놓쳤을 수도 있는데 어디를 놓친건지 몰라서 질문드립니다기본적인 default object들과 UI object들의 랜더링을원근투영과 직교투영을 이용하는 내용은 이해가 되나둘 다 동일한 z버퍼를 사용하는걸로 아는데 그러면 투영변환의 인자 값에 상관없이 랜더링 파이프라인에서 z버퍼로 인하여 서로가 가려져야 한다고 생각했는데정상적으로 출력이 되어 왜 그런지가 궁금합니다.
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part2: 게임 수학과 DirectX12
insideTess 값 관련 질문
Tessellation 강의 중 (33:01 ~ 33:10)에 관하여강의 내용이 올바르지 않다고 판단되어 질문 드립니다.insideTess를 값을 1에서 2로 변화하여 실행하여도 결과는 달라지지 않습니다.또한, 제가 알고 있는 지식으로는 "DirectX의 삼각형 테셀레이션에서는 내부 테셀레이션 팩터가 정수값 1과 2에 대해 동일한 패턴을 생성하도록 설계되어 있다." 로 알고 있습니다.위의 지식이 올바르지 않다면 답변으로 수정해주시길 바랍니다.위의 지식이 올바르다고 판단하여 제가 도출한 결론으로는 다음과 같습니다."insideTess 값이 2가 될 경우, 큰 삼각형 내부의 2개의 점으로 세부 선분들이 모이게 된다. 하지만 2개의 점으로 모일 경우 2개의 점은 필시 하나의 선분으로 이어지게 되는데, 이렇게 될 경우엔 큰 삼각형 내부에 세분화된 도형들이 전부 삼각형이 아닐 경우가 생긴다. 고로, insideTess 값이 2일 경우엔 1과 동일시 하여 큰 삼각형 내부의 세분화된 도형들을 전부 삼각형으로 만들어 표현한다." 이것이 제가 낸 결론이며, 지식과 결론에 대한 틀린 부분을 수정 부탁드립니다.
-
미해결[게임 프로그래머 도약반] DirectX11 입문
안녕하세요 roatation 행렬 질문있습니다.
여기에서 v x M을 하게 되면, X = xcos B+ ysin B Y = -xsinB + ycosB가 나오는거 같아서 질문 올립니다.
-
미해결[게임 프로그래머 도약반] DirectX11 입문
'C\ .... ......lib'은 올바른 win32에플리케이션이 아닙니다.
'C\.... ......lib'프로그램을 시작할 수 없습니다.'C\ .... ......lib'은 올바른 win32에플리케이션이 아닙니다. 뭐 때문에 그러는 건가요
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part2: 게임 수학과 DirectX12
렌더 타겟을 SRV로 사용하려고 합니다.
렌더 타겟을 SRV로 사용을 하려고 합니다.우선 결론을 말씀드리면 기존에 투명 파티클인 Bubble 파티클 뒤에 보이는 픽셀들에굴절 효과를 추가하려고 합니다.그러기 위해 렌더 타겟을 텍스쳐로 만들어서 SRV로 파티클 셰이더에 텍스쳐로 보내려고 합니다. 제가 시도해본 과정입니다.Scene의 RenderFinal 함수에서 shared_ptr로 renderTargetTexture을 가져와서제가 만든 Resources 클래스의 멤버 변수인 _renderTargetTexture에 Set 하였습니다.(원래는 리소스의 상태를 렌더 타겟에서 SRV로 수정을 했어야 하나, 결과가 똑같아서 제외하였습니다.)그리고 파티클 시스템의 FinalUpdate에서 RenderTargetTexture를 가져와서 0번 텍스쳐에 Set을 해주었습니다. 아래는 실행 결과입니다.빨간색으로 표시된 부분은 제가 기존에 만들어봤던 파티클들이고파란색으로 표시된 부분은 렌더 타겟을 텍스쳐로 만들어 셰이더에 전달한 것을 출력하는 파티클들 입니다.결과를 보면 렌더 타겟에 보이는 빨간 부분 파티클들이 제대로 파란색 표시된 쪽에 출력이 된 것을 확인할 수 있었습니다.그러나 렌더 타겟으로 파티클을 띄웠으면 배경이나 (가운데 잘 안보이지만) 구 객체도 같이 출력이 되었어야 하는데 파티클들만 출력이 된 것을 확인할 수 있었습니다.아마 예상으로는 구나 배경(디퍼드 렌더링)을 찍는 0번 카메라와 파티클(포워드 렌더링)을 찍는 1번 카메라 중 1번 카메라만 렌더 타겟 텍스쳐로 전달이 되어서 발생하는 문제라고 생각했습니다. PIX로 디버깅을 해본 결과여기는 또 이상하게 렌더 타겟에 보이는 모든 객체들이 셰이더에 SRV로 잘 전달이 되었다고 나오고 있습니다. 렌더링이 올바르게 되지 않는 결과를 알고 싶습니다.또한 투명 파티클 뒤의 픽셀들을 굴절시키는 다른 좋은 방법이 있다면 그것 또한 알고 싶습니다.
-
해결됨[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part2: 게임 수학과 DirectX12
C++ 언어 표준과 Engine.lib 오류에 관하여..
안녕하세요. DirectX12 강의를 이제 수강 시작한 학생입니다.강의에선 C++ 언어 표준을 C++ 14로 사용중입니다.전, C++ 20을 사용하여 아래와 같이 구조체 초기화를 사용하려 했습니다.DXGI_SWAP_CHAIN_DESC sd = { .BufferDesc = { .Width = static_cast<uint32>(info.width), .Height = static_cast<uint32>(info.height), .RefreshRate = { .Numerator = 60, .Denominator = 1 }, .Format = DXGI_FORMAT_R8G8B8A8_UNORM, .ScanlineOrdering = DXGI_MODE_SCANLINE_ORDER_UNSPECIFIED, .Scaling = DXGI_MODE_SCALING_UNSPECIFIED }, .SampleDesc = { .Count = 1, .Quality = 0 }, .BufferUsage = DXGI_USAGE_RENDER_TARGET_OUTPUT, .BufferCount = SWAP_CHAIN_BUFFER_COUNT, .OutputWindow = info.hwnd, .Windowed = info.windowed, .SwapEffect = DXGI_SWAP_EFFECT_FLIP_DISCARD, .Flags = DXGI_SWAP_CHAIN_FLAG_ALLOW_MODE_SWITCH }; 하지만, C++ 20을 사용하면 Engine 프로젝트 빌드 시, byte << 모호하다는 오류가 나오며, Engine.lib 파일이 Output 폴더 내에서 사라집니다. 억지로 빌드 시킨 후, Client 프로젝트 실행 시 오류가 생깁니다.C++ 20기준 혹은 미리보기 최신 C++ 초안 기능을 사용하여 구조체 초기화 사용을 유지 한 채 실행할 수 있는 방법이 있을까요 ?
-
미해결[게임 프로그래머 도약반] DirectX11 입문
버텍스버퍼 실습 도중 버그
Vertex Buffer 코드를 따라치며 똑같이 했다 생각하는데(재생시간 14분가량), 아래 그림처럼 가운데에 그림이 안나와서 .. device 포인터 주소는 제대로 갖고오는걸 확인했는데 어디가 문제인지 모르겠어요. 구글 드라이브
-
미해결[게임 프로그래머 도약반] DirectX11 입문
물방울 책 실습은 어디까지 하는건가요??
마지막주차 물방울책 실습은 물방울 책 어디까지 진도가 나가는건가요??물방울 책 처음부터 끝까지 모두 하는걸까요?아니면 어디부터 어디까지 하는지 알려주세요강의가 끝나고 책으로 안나간 부분도 공부하고 싶어서요
-
미해결[게임 프로그래머 도약반] DirectX11 입문
리소스매니저의 get함수에서 에러가 나요
'<function-style-cast>': 'initializer list'에서 'std::shared_ptr<Mesh>'(으)로 변환할 수 없습니다.'_Ptr': 초기화되기 전에 사용할 수 없습니다.'_Ptr': const 개체를 초기화해야 합니다'static_cast': 'ResourceBase '에서 'Mesh '(으)로 변환할 수 없습니다.코드 4주차 복사 붙여넣기 해도 에러가 나요
-
미해결[게임 프로그래머 도약반] DirectX11 입문
자식 GameObject SetPosition 시 움직이지 않음
올려주신 파일에서 void GameObject::Update() 함수 내 parent Position과 Rotation 동작 부분을 주석처리하고 _transform의 Position이 동작하도록 다시 주석을 풀면 GameObject가 움직이지 않는 듯 합니다. 부모 오브젝트가 있더라도 자식 오브젝트의 월드포지션을 바꾸면 움직여야 할 듯한데 혹시 제가 잘못 알고 있는걸까 싶어 문의드립니다.
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part2: 게임 수학과 DirectX12
실행과정에서의 문제
Engine을 빌드까지는 정상적으로 성공이 되었습니다. 근데 빌드하고 나서 디버깅을 해서 실행을 하면 프로그램을 시작할 수 없다고 뜹니다. C:\Users~Engline.lib은 올바른 Win32 애플리케이션이 아닙니다라고 뜹니다. 그래서 Engine의 속성에 들어가서 구성형식으로 들어가 정적 라이브러리(.lib)로도 설정을 해보고 혹시 몰라 Client에 들어가 구성형식을 정적라이브러리로도 바꿔봤는데 무슨 문제인지 잘 모르겠습니다. 코드에는 이상이 없었는데 이런 경우에는 어떻게 해야되나요?
-
미해결[게임 프로그래머 도약반] DirectX11 입문
강의 끝나고 3D 포폴
이 강의가 끝나면 만들어지는 엔진으로 포트폴리오 프로젝트를 진행 가능한가요??아니면 공부하는 정도로만 보고 제가 엔진을 새로 만들어서 포트폴리오 프로젝트를 진행해야 할까요??강의가 끝나면 어느정도까지 가능한지 궁금해요
-
미해결[게임 프로그래머 도약반] DirectX11 입문
공부 방법에 대해서 문의 드려요
강의를 듣고는 있는데 이해가 되는 부분도 있지만 안되는 부분도 있고해서 강의마다 혼자서 정리를 하는데 정리한 부분이 맞는건지도 헷깔리고 합니다. 어디 물어볼 때도 없고 해서 일단은 이해한 내용을 토대로 정리중인데 강의를 쭉 한번 완강하고 다시한번 들으면서 재 정리를 하는게 나을까요? 아니면 이해할 때 까지 여붙잡고 정리를 한 뒤 다음 수업을 진행하는게 나을까요??
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part2: 게임 수학과 DirectX12
결과물에 의문이 생겨서 한가지 질문 드립니다
결과물을 보면 2개의 삼각형이 위치가 이동한 상태로 나오고 있는데2개의 삼각형 객체가 렌더링 된다기 보단삼각형 하나를 그리고(백버퍼를 지우지 않았으니 그 삼각형이 남은 상태로)같은 삼각형을 위치를 이동시켜서 또 그렸다고 보는게 맞는건가요?
-
미해결[게임 프로그래머 도약반] DirectX11 입문
19분 5초에 함수 구현부 한꺼번에 만드는법
한번에 어떻게 하셨는지 궁금합니다.
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part2: 게임 수학과 DirectX12
uv좌표변환
lighting.fx의 픽셀쉐이더에서 uv값을 구해줄때 pos/resolution을해서 uv좌표를 구해준다고 하셨는데 VS에서 ouput으로 uv값을 넘겨주니까 그 uv값을 그냥 사용하면 되는거 아닌가요?다시 한번더 uv값을 계산해주는 이유가 무엇인지 궁금합니다
-
미해결[게임 프로그래머 도약반] DirectX11 입문
좌표계 변환 행렬이랑 srt 변환 행렬
좌표계 변환 행렬이랑 srt 변환 행렬이랑 무슨 차이인가요local space에서 world space로 변할때는 srt 변환 행렬을 사용하고 local space에서 그 부모인 또 다른 local space로 변환할때는 좌표계 변환행렬을 사용하는 건가요
-
미해결[게임 프로그래머 도약반] DirectX11 입문
SRT 행렬중에 ppt 질문 있습니다.
이 행렬 계산 중에 v벡터를 전치해서 계산해야 저런 식이 나올 거 같은데 위의 계산과 아래의 계산의 차이는 뭔가요?
-
미해결[게임 프로그래머 도약반] DirectX11 입문
hlsl파일 컴파일
루키스님 항상 좋은 강의 감사합니다. 잘 듣고 있어요.궁금증이 생겼는데 shader파일은 두 가지의 빌드 방법이 있다는것은 알겠는데 설정 중에 특별하게 해준거라곤 main을 VS로 바꿔준 거 외에는 없는 것 같은데 어떻게 두 빌드 방법이 가능하게 되는건지 이해를 못해서 질문 남겼습니다
-
미해결D3D12 프로그래밍 - 기초편
Descriptor를 복사하는 이유
안녕하세요 강의 잘 보고 있습니다. 공부를 하다가 의문점이 하나 생겼습니다. Descriptor Heap을 Shader Visible하지 않은 거에 내용을 채우고 렌더링시 Shader Visible한 Descriptor Heap으로 복사하여 사용하는 이유가 어떤 건가요?처음부터 CBV Pool의 Descriptor Heap을 Shader Visible로 사용해도 작동하던데, 혹시 시스템 메모리가 VRAM보다 상대적으로 메모리가 많아서 그런 건가요? 실제 사용할 Descriptor만 VRAM에 올려서 쓰려는 일종의 최적화 기법인가요?