묻고 답해요
167만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결게임 엔진을 지탱하는 게임 수학
카메라의 로컬 벡터 구하기
안녕하세요 득우님외적 강의 부분에서 카메라의 로컬 축을 구하려면 z로컬 축은 바라보고 있는 물체에서 카메라를 빼버리면 된다고 하신 것은 이해가 잘 됐습니다만x로컬 축은 z로컬 축과 y 월드 축을 외적해서 구한다는 부분이 잘 이해가 안되네요. 다른 분이 남겨주신 질문 글의 답변에서는 카메라의 로컬y축이 월드 y축과 동일한 평면 상에 있다는 것을 전제로 말씀하셨다고 했는데 동일한 평면 상에 있다는 게 정확히 무슨 말씀이신건지 잘 모르겠습니다. 카메라의 로컬y축이 월드 y축과 평행해야지만 그의 외적값이 카메라의 로컬x축으로써 유효한 것 아닌가요?그리고 16:32 부분에서 벡터의 길이가 각각 다를 수 있으므로 벡터를 정규화 해야한다는 내용은 대충 이해가 가는데 외적을 통해 구해진 로컬 x축의 길이가 1인 것은 보장할 수 없다. 왜냐하면 y축과 x축이 서로 직교한다는 것을 보장할 수 없기 때문이다. 라고 하셨는데 여기서 말씀하시는 y축은 아마도 월드 y축이신 것 같은데 x축이 무슨 x축인지 모르겠네요. z축을 잘못 말씀하신 건가요??? 보충 설명 부탁드립니다...
-
미해결[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
수강 계획 관련해서 질문드립니다!
[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버학습 완료 후루키스님 게임 서버 프로그래머 로드맵 따라가면 될까요?일단 저의 상태는 서버쪽 먼저 공부하고 싶은 마음이 크고 언리얼과 유니티 경험이 없습니다.[c++과 언리얼로 만드는 MMORPG]의 경우 part1에서 바로 part4로 넘어가고[c#과 유니티로 만드는 MMORPG] 강의에 경우에도 1, 4, 7로 구성되어 중간중간 비는 부분 때문에 어떻게 수강 계획을 잡을지 고민되어 질문드립니다!
-
해결됨게임 엔진을 지탱하는 게임 수학
삼각함수 관련 질문입니다.
안녕하세요. 선생님삼각함수로 고통받고 있는 1인입니다..몇가지 궁금증이 있어 질문드립니다. 1. sinθ,cosθ,tanθ의 의미빗변이 1인 직삼각형에서sinθ- 높이/빗변으로 계산 -> 높이와 빗변의 비를 나타냄- (sinθ * 빗변)을 계산하여 "높이"를 알기 위함cosθ- 밑변/빗변으로 계산 -> 밑변과 빗변의 비를 나타냄- (cosθ * 빗변)을 계산하여 "밑변"를 알기 위함tanθ- 높이/밑변로 계산 -> 높이와 밑변의 비를 나타냄- (tanθ * 밑변)을 계산하여 "높이"를 알기 위함- (밑변^2 + 높이^2)를 계산하여 "빗변^2"을 알기 위함 위 내용이 기본적인 내용이고 이것을 응용하는 것이라 이해했습니다.이렇게 이해해도 되나요? 2. 용어의 정의삼각비- 나무위키: 삼각형의 세 변의 길이 중 두 변의 길이간의 비례 관계를 나타내는 값이다.- 네이버 국어사전: 직각 삼각형의 세 변 가운데에서 어느 두 변을 취하여 만든 비의 값삼각함수- 나무위키: 삼각비에서 쓰이는 정의역을 예각에서 일반각으로 확장시킨 것.- 네이버 국어사전: 각의 크기를 삼각비로 나타내는 함수 용어에 대한 정의가 네이버 국어사전이랑 나무위키랑 다르더라구요. (블로그마다도 좀 다르구요..)kms 대한수학회 라는 곳도 있는데, 여긴 한글/영어 표기만 있구요.이런 용어는 관리하는 기관이 있거나 할거같은데, 어디서 확인하는게 좋을까요? 3. sinθ의 실제값"빗변(10)과 θ(11도) 라는 값이 주어지고, 높이를 구해야하는 경우, sin11은 어떻게 알지?" 라는 궁금증이 생겼습니다.검색해보면 대부분이 문제풀이 하는거만 나와서 실망스러웠습니다.그러던중 어떤 글을 찾았는데, 내용이 잘 이해되는건 아니지만, 역시 계산하는 방법이 있었고, 찾았다는 사실이 기뻣습니다.https://gpgstudy.com/forum/viewtopic.php?t=568강의에서 이런 내용이 다뤄지지 않는 이유가 있을까요? (다른 곳에서도 다뤄진것을 본적은 없지만..) 감사합니다.
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part2: 게임 수학과 DirectX12
결과물에 의문이 생겨서 한가지 질문 드립니다
결과물을 보면 2개의 삼각형이 위치가 이동한 상태로 나오고 있는데2개의 삼각형 객체가 렌더링 된다기 보단삼각형 하나를 그리고(백버퍼를 지우지 않았으니 그 삼각형이 남은 상태로)같은 삼각형을 위치를 이동시켜서 또 그렸다고 보는게 맞는건가요?
-
미해결[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
[파일 입출력] 28:50
28:20 영상을 보면 'Tilemap' 빈 파일을 만들지 않고 저장이 되는 모습입니다. 그런데 제가 진행을 하면 위 이미지와 같이 assert(file != nullptr);에 걸립니다. 혹시 28:50 같이 'Tilemap' 빈 파일을 만들고 타일맵 저장을 진행해야 하는 게 맞는 방법인지 알고 싶어 글 올립니다.
-
미해결게임 수학의 이해
책과 관련하여 궁금한 내용이 있습니다.
현재 강의에 대한 질문이 아니라서 죄송합니다.저는 언리얼엔진과 C++에 관심이 있는 사람입니다.우연히 원티드의 게임개발자 양성과정에서 이득우 지식공유자님께서 참여하시는 것을 봤는데, 이득우님에 대한 소개에서 '이득우의 언리얼 C++ 프로그래밍' 이라는 책을 작성하신 것으로 소개되어 있어서 찾아봤는데, 해당 제목의 책은 없고, '이득우의 언리얼 C++ 게임 개발의 정석'의 책을 작성하신 것을 알게되었습니다.혹시 원티드에 적혀있던 그 책이 '이득우의 언리얼 C++ 게임 개발의 정석' 책을 말하는걸까요? 그리고 한 가지 더 궁금한 것이 있는데, 이득우님의 '이득우의 언리얼 프로그래밍 Part1 - 언리얼 C++의 이해' 강의의 내용과 '이득우의 언리얼 C++ 게임 개발의 정석' 책의 내용이 거의 비슷할까요?저는 자바에 대해서는 알고 있어서 객체지향에 대해서는 알지만, C++에 대해서는 잘 모르는 상태입니다.그래서 만약 책과 강의의 내용이 다르다면 책 보다는 '이득우의 언리얼 프로그래밍 Part1 - 언리얼 C++의 이해' 강의로 공부를 시작하는게 나을까요?
-
미해결[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
[이벤트와 조건 변수] 강의에서 unique_lock 사용 이유?
17분 쯤 unique_lock을 사용하였는데별도의 인자로std::defer_lock, std::try_to_lock, std::adopt_lock등 을 넘겨주지도 않는데 굳이 unique_lock을 사용하는 이유가 있을까요? 그냥 lock_guard를 써도 되지 않나요?
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part2: 게임 수학과 DirectX12
uv좌표변환
lighting.fx의 픽셀쉐이더에서 uv값을 구해줄때 pos/resolution을해서 uv좌표를 구해준다고 하셨는데 VS에서 ouput으로 uv값을 넘겨주니까 그 uv값을 그냥 사용하면 되는거 아닌가요?다시 한번더 uv값을 계산해주는 이유가 무엇인지 궁금합니다
-
미해결[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
bmp 파일 알파 처리 방법 질문
애니메이션 강의 부분에서 알파 채널 있는 bmp파일의 경우는 어떤 함수를 사용하나요?검색해봐도 잘 나오지 않고 강의에서 다룬다고 언급은 되어 있는데 해당 부분은 영상에 나와있지 않아서 질문드립니다.
-
미해결[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
12주차 스프라이트 강의 영상이 재생이 안 됩니다
다른 영상은 정상적으로 재생이 되는데 12주차 스프라이트 만 재생이 안 되고 무한로딩이 됩니다. 재부팅이나 새로고침해도 해결이 안 되는데 확인 해주실 수 있을까요
-
해결됨C++로 만들면서 배우는 게임 개발과 알고리즘 with Windows API
PPT도 수업자료로 올려주실 수 있나요?
강의에 관련된 질문만 받습니다 !또한, 강의에 누락된 부분이나 부족한 부분이 있다면 알려주시면 감사드리겠습니다 ^_^
-
해결됨게임 엔진을 지탱하는 게임 수학
"섹션 1 - 선형성 13:14 " 함수와 사상의 차이에 대해 헷갈리는 부분이 있습니다!
안녕하세요 교수님!"섹션 1 - 선형성 13:14 " 위치에함수와 사상의 차이를 듣다가 생긴 의문이 있습니다.사상인지 아닌지는 "함수가 전사함수 단사함수냐 따라 다르다" 는 거짓 이라 생각했습니다.예를들어 실수 벡터 공간이 있고,선형변환 후 영공간으로 낮아지는 행렬이 있으므로치역은 0(영벡터) 하나로만 대응 되고정의역 공역 집합의 대수 구조는 동일하므로때문에 단사 함수든 아니든 상관없이 사상이다.영공간으로 낮아지는 행렬은 사상이 맞다 생각했습니다. 따라서 위처럼 결론을 내려도 문제가 없을까요?f : x ↦ x^{1/2}는 비록 집합이 다르더라도사상 관계가 맞다. 는 참이라 생각했습니다.정의역은 실수 집합이고 공역은 복소수 집합(양수면 실수, 음수면 복소수)인것 처럼 비록 둘다 다른 집합이더라도실수 집합도 복소수 집합도 체의 공리가 만족하는 대수 구조이므로정의역과 실수 집합이 다르더라도 "체" 라는 대수 구조가 동일한 집합인 점에서 위 함수는 "사상" 이다.이렇게 결론을 내려도 문제가 없을까요?이 두가지가 궁금했던 이유는함수 종류와 집합에 따라 함수를 사상이라 부를 수 있는가 없는가 헷갈렸습니다..감사합니다!
-
해결됨C++로 만들면서 배우는 게임 개발과 알고리즘 with Windows API
강의 마무리가 언제 되나요?
11월 말까지는 강의 마무리가 가능할까요?
-
미해결[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
프로그래머스에서 어떤거 부터 해야할지 모르겠습니다.
프로그래머스에서 어떤거 부터 해야할지 모르겠습니다.
-
미해결[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
_wfopen_s(&file, path.c_str(), L"wb"); 실패하는 경우
void Tilemap::SaveFile(const wstring& path){ { FILE* file = nullptr; ::_wfopen_s(&file, path.c_str(), L"wb");//writebinary ::fwrite(&_mapSize.x, sizeof(_mapSize.x), 1, file); <- 여기에서 크러쉬 나면서 뻗어버립니다.} 이럴 경우 관리자 권한 문제일까요?
-
미해결[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
오브젝트 설계 #1 질문
34분 50초ObjectManager::Remove(Object* object)에서 auto it = std::remove(...);_objects.erase(it, _objects.end());대신에 _objects.erase(findIt); 를 해도 findIt 에는 object에 대한 iterator 값이 저장되어 있으니 erase함수만 사용해도 제거할 object를 vector에서 삭제할 수 있지 않을까 해서 질문드립니다
-
미해결[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
동적배열 강의 듣는중 에러
c++ crt detected that the application wrote to memory after end of heap buffer이라는 오류가 뜹니다.이걸 무시하면 그대로 원하는 값은 나오기는 합니다. 근데 이걸 그냥 지나칠 수는 없어서 질문해봅니다.f11눌러가면서 에러나는 부분을 찾았는데reserve에 delete[] _buffer; 를 실행하니 오류가 났습니다. [Vector.h]#pragma once#include<assert.h>class Vector{using T = int;public:explicit Vector(){}~Vector(){if(_buffer)delete[] _buffer;}int size() { return _size; }int capacity() { return _capacity; }void push_back(const T& data){if (is_full()){int newCapacity = static_cast<int>(_capacity * 1.2f);if (_capacity == newCapacity)newCapacity++; reserve(newCapacity);}buffer[size] = data;_size++;}void reserve(int capacity){if (capacity <= _capacity)return;_capacity = capacity;T* newBuffer = new T(_capacity);for (int i = 0; i < _size; i++){newBuffer[i] = _buffer[i];}if (_buffer)delete[] _buffer;_buffer = newBuffer;} T& operator[](int index){assert(index >= 0 && index < _size);return _buffer[index];} int is_full() { return _size == _capacity; }int is_empty() { return _size == 0; }private:T* _buffer = nullptr;int _size = 0;int _capacity = 0;}; 해결방법이 있을까요?
-
해결됨[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
SceneManager.cpp에서 구문오류가 발생했습니다.
안녕하세요 Rookiss님, 섹션11-3 Scene과SceneManager의 중간~32분 정도에서 작성중인 코드입니다. 이렇게 newScene에 DevScene()과 GameScene()을 넣는 부분에 형식지정자 없음과 구문 오류가 발생합니다... Scene클래스와 DevScene, GameScene 클래스 코드도 동영상을 몇번씩 돌려보면서 확인했는데 어디가 문제인지 잘 모르겠습니다... 혹시 어느 부분이 문제가 될지 확인 한 번 부탁드려도 될까요? 감사합니다!
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part2: 게임 수학과 DirectX12
Shader 관련 문제
Shader::Init을 할 때 마지막 줄DEVICE->Create...State(&m_PipelineDesc, IID_PPV_ARGS(&m_PipelineState));여기에서 desc세팅까지는 성공적으로 다 되는데 이 줄에서 state가 세팅되지 않고 NULL값으로 그대로 남아있습니다.혹시 몰라서 오타 검사나 프로젝트 속성이 다른지 체크했는데 이상 없었습니다.[코드][로컬 데이터] (추가)엔진.h의 멤버들은 정상적으로 초기화 되고 올려주신 파일을 실행했을 때는 정상적으로 작동하였습니다.Shader에서 문제가 있는거 같은데 코드상 차이는 안보입니다. 올려주신 코드내용을 복붙해도 같은 문제가 발생합니다.가끔씩 shader->Update()에 들어가기 전에 엑세스 위반 오류가 생깁니다
-
미해결[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
콘솔창 특수문자 겹침
안녕하세요. [배열 실습] 강의위와 같이 문자가 겹쳐서 나오는데 해결 방법 알 수 있을까요?다른 분께서 올려주신 모든 글꼴 표시도 해보려고 했으나,저장만 하면 체크가 해제되어서 적용이 되지 않습니다.