묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[게임 프로그래머 도약반] DirectX11 입문
Animation 보간 관련 질문드립니다
애니메이션 보간 결과물이 너무 어색해 생각해보니각 키프레임 데이터에서 꺼내온 SRT를 보간 한 후에애니메이션 트랜스폼을 결정해줘야 의도처럼 되더라구요.근데 애니메이션의 Transform을 SRV로 만들어 셰이더로 던져줘서 보간 계산을 할 수 있는 적절한 위치를 모르겠습니다.셰이더에서 하기에는, BONE INDEX를 처음부터 돌면서 현재 프레임의 Transform을 구하는 동일한 과정을 vertex마다 계속 하게되고,CPU에서 처리하기에는 텍스처를 사용하는 의미가 퇴색되는 것 같아 질문드립니다. Transform을 Texture화 하면서 정확한 보간을 할 수 있는 방법이 있나요
-
미해결[게임 프로그래머 도약반] DirectX11 입문
비쥬얼스튜디오에서 디버그할땐 실행되는대 exe파일로는 실행이안되요
1.실행파일로 시작했을때 오류2.비쥬얼스튜디오에서 디버그 했을때 모습제가 잘못한건지 보려고 선생님 프레임워크 실행해봐도 똑같은 문제가 납니다장치 생성하는 라인인거같은대 왜다른걸까요..?
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part2: 게임 수학과 DirectX12
카메라 위치에 따른 색상 변화
카메라가 light의 volume mesh 안에 있는 경우와 밖에 있는 경우에 따라 오브젝트의 색이 변합니다.안에 있는 경우 어두워지고, 밖에 있는 경우 밝아집니다. 정확한 원인을 모르겠습니다. 혹시 알려주실 수 있나요?
-
미해결[게임 프로그래머 도약반] DirectX11 입문
선행 강의 수강 질문
안녕하세요.이번에 신규가입 얼리버드 25% 할인으로 DirectX11 강의를 구매해서 수강 중인 학생입니다.강의를 들어보니 Windows API와 STL 부터 선행이 필요하다고 생각이 들어[게임 프로그래머 입문 올인원] 강의도 수강하려고 했는데 할인 기간이 종료되었더군요...혹시 [게임 프로그래머 입문 올인원] 할인쿠폰을 받아 수강할 수는 없는 지 문의드립니다.
-
미해결[게임 프로그래머 도약반] DirectX11 입문
Part1: C++ 프로그래밍 입문 강의듣고 넘어왔습니다
질문 1. [게임 프로그래머 도약반] DirectX11 입문 들어 가기 전 혹시 미리 공부해가야 되는 것 이 있을까요?질문 2. 다이렉트x가 처음이라면 물방울책 구매해서 섹션 11부터 시작하는게 좋을까요?
-
해결됨[게임 프로그래머 도약반] DirectX11 입문
SwapChain이 만들어질때 생성되는 버퍼 생성 영역
강의를 보다 렌더링 될때 입력될 Vertex 데이터가 그래픽 카드 내부에 있는 VRAM 내부에 생성된다는 사실을 알게되었니다.그래서 궁금한게 생겼는데 혹시 Swap Chain이 만들어질때 생성되는 백 버퍼들또한 VRAM 내부에 만들어지는 건가요? 아니면 RAM에 만들어지는 건가요?
-
미해결[게임 프로그래머 도약반] DirectX11 입문
CreateInputLayout 도중 Offset 관련하여
강의를 듣고 있는 도중 질문이 하나 생겼습니다 강의 16:05 부분입니다.강사님께서 CreateInputLayout을 하기 위해 이전 작업으로 D3D11_INPUT_ELEMENT_DESC라는 구조체를 만드셨고 내부의 요소로 UINT AlignedByteOffset; 이러한 변수가 있었습니다.강의에서 강사님께서 이 부분은 변수가 시작되는 지점을 적는 변수라고 알려주시고 Color가 시작되는 지점이 12Byte라고 하셨는데 이 D3D11_INPUT_ELEMENT_DESC라는 구조체로 설명하려하는 것이 이 전에 선언해두었던 struct Vertex{ Vec3 position; Color color;};라는 구조체였다면 구조체의 메모리 패딩에 따라 제일 큰 변수의 메모리 크기씩 영역이 쪼개져서 16Byte씩 끊어지니깐 position은 0 ~ 12구간 그리고 12 ~ 16 구간은 메모리 패딩으로 인해 비어져 있고 16 ~ 32까지가 color가 있는 구간으로 알고있었습니다 그래서 제가 잘못 생각하고 있는건가해서 12대신 16을 넣어봤는데 정상적인 색이 안나오지 않더라고요.제가 개념을 잘못 알고있는건가 아니면 제대로 알고 있는데 이 부분만 특수한 케이스로 12라고 입력이 된건가를 잘 모르겠어서 개념을 확실히 잡고 가야된다고 생각해서 질문 드립니다 혹시 어디가 잘못된 건지 알려주실 수 있으신가요?
-
미해결[게임 프로그래머 도약반] DirectX11 입문
Tessilation 질문입니다
tessilation 을 통해서 displacement mapping 을 좀 복잡한 mesh 에 적용을 해봤는데 gpu 가 갈리는 소리가 나서요. 아무래도 삼각형 개수가 기하급수적으로 늘다보니 gpu load 가 클거 같은데 tessilation 이 실제로 필요사양이 높은가요? 그리고 현업에서도 tessilation 사용하는데 제약이 많은지 궁금합니다.
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part2: 게임 수학과 DirectX12
reflectionDir 구하는 과정에서 질문 있습니다
안녕하세요 선생님 skybox 강의 보고 큐브를 뒤에서 본 후 질문이 생겼습니다. float3 reflectionDir = normalize(viewLightDir + 2 * (saturate(dot(-viewLightDir, viewNormal)) * viewNormal));이렇게 구하게 되면 saturate(dot(-viewLightDir, viewNormal))이 0 인 경우에 reflectionDir = viewLightDir이 되어서 큐브의 면 중 빛의 방향과 같은 방향에 있는 면을 마주보게 되면 ambient 만 있어야 하는데 specular 때문에 밝게 됩니다. 이 문제를 어떻게 해결하면 좋을지 궁금합니다.
-
해결됨[게임 프로그래머 도약반] DirectX11 입문
billboard _ geometry shader 질문
안녕하세요 빌보드나 이펙트를 만들때 geometry shader 를 사용하라고 배웠었는데 강사님께서 billboard 수업때 하신것처럼 굳이 geoshader 없이 quad 로도 가능할것 같은데 이게 규모가 커지면 geo_shader 를 사용하는게 성능에 유의미한 의미를 가지나요? 좋은강의 정말 감사합니다!
-
해결됨[게임 프로그래머 도약반] DirectX11 입문
obbcollider update 질문
obb collider 의 업데이트를 할 때 mBoundingBox.Orientation 가 unit quaternion 이란 설명이 있던데 GetTransform()에서 XMQuaternionRotationRollPitchYawFromVector함수를 이용해서 _rotation 을 쿼터니언으로 변환하면 될까요?
-
미해결[게임 프로그래머 도약반] DirectX11 입문
마지막에 삼각형이 안 떠서 질문을 드립니다.
선생님 진도에 따라서 문제없이 잘 진행되다가 삼각형을 출력하는 부분에서 삼각형이 안 떠서 질문을 드립니다.저 혼자 디버깅을 해보았으나 Pass, Technique, stride, offset이 모두 제가 보기엔 정상이고, Render에 들어오는데 삼각형이 안떠서 비교하기 위해 수업자료를 다운받아봤습니다.이번 수업에서 엔진은 복붙이고, 클라쪽 코드와 경로 설정 정도만 직접 타이핑해서 선생님 코드를 복붙했으나 삼각형이 뜨지 않아서 선생님 코드를 돌려보니 선생님 코드도 회색화면만 뜹니다.혹시 제가 어떤 부분을 체크하면 좋을지 알려주실 수 있으실까요??제가 현재 사용하는 환경은 VS 2022최신버전, 윈도우 11입니다.
-
해결됨[게임 프로그래머 도약반] DirectX11 입문
뉴비 질문 드립니다
제가 많이 부족한 편이라 실례가 안된다면 기본적인 질문 몇가지만 여쭤보겠습니다1. pch에 넣는 헤더파일과 안넣는 헤더파일의 기준이 어떤건가요?2. 함수 앞에 ::를 표시하고 구별하는건 어떤 것들만 해당하나요?나머지는 강의 내용과 상관없는 질문입니다. 답변 안해주셔도 괜찮습니다조잡한 3d 엔진을 만들고 c++ 게임서버와 데이터베이스 구축하여 연동하는 것까지 목표로 하고 있습니다질문은 3. 게임 서버를 c++로 만들고 싶은데 Boost.Asio같은 라이브러리를 사용해서 만들면 난이도가 많이 높아질까요? 그리고 현업에서 서버를 만드는데 Boost를 사용하나요?4. c++ 게임 서버에서 mysql과 연동할때 보통 Connector/C++를 사용하나요?
-
해결됨[게임 프로그래머 도약반] DirectX11 입문
Transformation pipeline 질문
제가 원래는 wvp matrix로 곱해서 주어진 값을 w에있는 z값으로 나누어서 x,y는 -1~1z는 0~1로 클립핑 하고 래스터라이즈로 들어간다고 생각했었는데 이번 강의를 수강하면서 ms문서나 블로그들을 조사해보니까클립핑할때는 x,yz 를 w랑 직접비교하고 그이후에 viewport로 변환을 미리 해주고 마지막에 w값을 나누어 주더라구요 먼저 제가 잘 이해했는지 궁금하고 그리고 viewport좌표로 변환하는 매트릭스는 Context->rssetviewport하는 과정에서 내부적으로 만들어지는건가요?그리고 rasterizer 로 주어지는 값은 (800,600)을 예로 했을때 (0~800,0~600,0~1,1)이렇게 되나요?감사합니다!!
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part2: 게임 수학과 DirectX12
요즘 실제 게임 제작에 컴퓨트 쉐이더가 많이 활용되나요?
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.요즘 실제 게임 제작에 컴퓨트 쉐이더가 많이 활용되나요? 그리고 서버 쪽에서도 활용되는 경우가 있는지 궁금합니다.
-
미해결[게임 프로그래머 도약반] DirectX11 입문
혹시 vcpkg를 안쓰시는 이유가 있나요?
라이브러리를 빌드해서 쓰시는거 같은데 혹시 vcpkg를 안쓰시는 이유가 있나요?
-
해결됨[게임 프로그래머 도약반] DirectX11 입문
rendermanager 구조정리 질문
안녕하세요 rendermanager 구조정리 강의를 듣기전에 여러 shader 를 이용하기 위해서 rendermanager 를 바꾸려고 고민해봤습니다. 강사님처럼 shader class 내로 포함시키는 것도 고민해봤는데 그러면 강사님께서 말씀했다시피 camera 나 light 에서 데이터를 psuh해주는 부분이 애매해지더라구요 그래서 저는 rendermanager 에서 constantbuffer ,effectbuffer 를 unorderedmap<uint64, 버퍼> 이런식으로 shader 주소를 이용해서 해쉬맵을 만드는 방법을 생각해봤습니다. RENDER->init(shader) 를 하면 그 셰이더를 위한 버퍼들을 map 에 추가하고 RENDER->push 할때 인자로 shader 를 주면 unorderedmap 에서 그 셰이더에 맞는 버퍼를 이용하고 인자를 주지 않으면 모든 shader 에 데이터를 넣주는 방식으로요 (카메라 라이트용) 그런데 제가 느끼기에는 강사님이 하신것처럼 shader class 에서 처리를 해주는게 더 깔끔하고 직관적으로 보이는데 혹시 강사님께서는 rendermanager 에서 모든 셰이더들의 버퍼를 저장해놓고 shader를 인자로 받아서 처리하는 거에 대해 어떻게 생각하시는지요 좋은 강의 감사합니다!
-
해결됨[게임 프로그래머 도약반] DirectX11 입문
output.worldPosition 질문드립니다
worldPosition을 따로 저장해야하는 이유는 버텍스 쉐이더로 넘어가게 되면 결국 스크린좌표계로 까지 변환이되어서 원하는 좌표로 남지 않아서 된다는 것은 이해했습니다.강의에서보면 output.worldPosition = input.position;로 저장하게 되는데 이렇게 저장하게되면 로컬 좌표계로 저장이되기 때문에output.position = mul(input.position, W);output.worldPosition = output.position;이렇게 저장해야 해당 모델의 월드좌표계가 저장되는 것이 맞는것 같은데 혹시 제가 잘못 이해한 부분이 있을까요?
-
미해결[게임 프로그래머 도약반] DirectX11 입문
애니메이션 모델 버텍스 질문
안녕하세요탱크 모델에서 렌더링 할때는 주어진 vertex 위치가 로컬기준이라 root 기준으로 바꾸지 위해서 bonetransformation 을 곱해줬잖아요카츄진을 애니메이션 렌더링 할때 셰이더에서 (글로벌에서 로컬로 invGlobal) * (변환1 변환 2 변환3..) 이런식으로 곱해주는데 제가 이해하기로는 이러면 주어진 vertex가 글로벌 기준 버텍스인듯 한데 보통 이런 t자 모형의 skeletalmesh 는 주어지는 vertex position이 global 기준인가요? 감사합니다.
-
해결됨[게임 프로그래머 도약반] DirectX11 입문
Shader Pass 질문드립니다
DIrectX 학습하면서 이 부분이 되게 충격적으로 다가왔습니다.편리성이 엄청난데 이 pass 라이브러리는 "FX11/Effects11d.lib"에서 기능이 제공이 되어 있는건가요? 아니면 루키스님이 직접 만드신 방법인가요?그리고 실제 엔진개발에서 많이 사용되는 라이브러리 인가요?마지막으로 hlsl과 fx의 차이를 검색해서 알아보니 fx는 조명효과 같은 곳에 사용한다는데 hlsl과 차이가 무엇인가요?항상 강의 감사하게 듣고있습니다 감사합니다!