728x90
반응형

Game Development, 게임개발 182

벡터(Vector) - 1 [게임수학]

이전에 선형대수에서 벡터공간을 알아보았고 선형변환에 대해 알아보았다. 우리는 이미 벡터란 개념을 배웠지만 여기서 살짝 찍먹 한 번 더... 하고 넘어간 후 다시 깊게 들어가보자 요즘 과정에서 기하와 벡터가 빠졌다고 들었지만... 어차피 배운 사람도 벡터 가물가물하다. 우리가 배운 벡터들은 유클리디안 벡터, Euclidean Vector이다. 여기에 대해 살짝 찍먹 해보자 유클리드는 정말 있어보이는 이름이고 많이 들어봤을 것이다. 솔직히 검색해서 이걸 찾을 정도의 사람이면 유클리드 기하학이라는 말을 살다가 한 번쯤은 들어봤을 것이다. 우리는 유클리드 공간이란 말을 배우게 되는데 유클리드 공간이란 말은 직접적으로 배우진 않았겠지만 유클리드 공간의 이해는 우리는 좌표계로서 이해하였다. 공간이라면 x,y,z 축..

선형 대수, Linear Algebra [게임수학]

선형 대수는 일반적으로 대학교에서 배우는데 솔직히 중,고등학교 교육과정을 이해했다면 혼자서도 이해할 수 있는 과목이다. 사실... 어렵긴 하다. 그냥 말해봤다. 한 번 알아보자 대수와 선형 대수는 뭐가 다르길래 다르게 부르는 것일까? 대수란 대신하는 수라는 의미로 미지수를 사용하는 수학을 말한다. x,y 와 같은 미지수를 풀어내는 수학이라고 할 수 있다. 여기서 선형이 붙었다는 것인데 영어로는 Linear 라고 한다. 수학에서의 선형성 대한 정의다. 선형은 선형 함수에 대한 정의이다. 결국 입력 값을 출력 값을 나오는 형태를 변환의 한 종류라고 볼 수 있다. 선형 함수나 선형 변환이나 같다고 보면 된다. 위키에는 이렇게 나와있다. "선형"이라는 성질은 행렬과 동전의 양면과 같은 관계를 가지고 있다. 어떤..

게임 개발자의 길,Game-Devloper Roadmap

어느 훌륭하신 분의 깃헙을 참고하였음 나는 Client Developer의 길을 가고자 한다. 게임은 모든 컴퓨터 과학의 결정체라고 하였던가 어마어마하게 많다. 큰 줄기로 보자면 게임 수학, Game Mathmatics 게임 물리, Game Physics 게임 엔진, Game Engines 프로그래밍언어, Programming Language 컴퓨터이론(CS지식), Computer Theory 그래픽 API, Graphics API 게임 인공지능, Game AI 그래픽 이론, Graphic Theory 갈 길이 멀다.. 잘해보자 참고링크 github.com/utilForever/game-developer-roadmap

게임 제작 과정에서 한 번쯤 생각해야 할 체크리스트

Give objects basic movement, 기본적인 움직임 구현 Basic movement from user input, 사용자 입력을 받아서 움직임 구현 Constrain the Player’s movement, 움직임 범위 제한 Destroy objects off-screen, 없어져야 할 오브젝트 제거 Handle object collisions, 충돌 제어 Make objects into prefabs, 프리팹으로 만들 수 있는 것 Make SpawnManager spawn Prefabs, 프리팹 이용 Position camera based on project type, 목적에 따른 카메라 위치 Enemies, obstacles, projectiles & materials, 오브젝트의 디..

Physics Material에 대한 것 [Unity]

Physics Material이 왜 쓰이느냐..? The Physic Material is used to adjust friction and bouncing effects of colliding objects. 마찰, 탄성, 충돌에 관한 효과를 어떻게 적용할 것인가에 대해 쓰인다. Collider에서 Material을 정할 수 있다. 세부적으로 살펴보자 먼저 Friction! Friction is the quantity which prevents surfaces from sliding off each other. 마찰계수 덕분에 미끄러지지 않을 수 있는 것이다. Dynamic Friction, 동적 마찰계수 이미 움직이고 있을 경우에 적용되는 마찰 계수를 말한다. 0이면 얼음이라 생각하면되고, 1은 많은..

시점에 따라 좌표축 바꾸기, Local Coordinates [Unity]

항상 우리는 거의 Global에서 무엇인가를 조작한다. 하지만 때로는 Local로 조작하는 것이 더 쉬울 때가 있다. 이를 오늘 알아보자. 아무 3D 프로젝트를 켜놓고 Floor를 만들고 Sphere를 만들어보자 나는 이렇게 만들었다. 공에는 우리 입력을 받아 움직일 수 있게 스크립트를 짜주자. public class PlayerController : MonoBehaviour { private Rigidbody playerRb; public float speed = 5.0f; //private GameObject focalPoint; // Start is called before the first frame update void Start() { playerRb = GetComponent(); // 힘을..

정해진 시간마다 Method 실행시키기 [Unity]

사실 저번에 랜덤위치에서 생성되게 했지만 솔직히 어떠한 조건을 만들어서 그 조건에 맞을 때 생성되게 하는 것은 정말 귀찮은 일이다. ++ 귀찮아서 메서드 만드는 것에 축하하며 그래서 이번에는 주기적으로 반복시키려고 한다. 마침 Unity에 유용한 메서드가 있다. InvokeRepeating이란 메서드다. { public GameObject[] animalPrefab; private float spawnRangeX = 20f; private float spawnposZ = 20; private float startDelay = 2; private float spawnInterval = 1.5f; // Start is called before the first frame update void Start() ..

Prefab,프리팹을 이용해서 Random Spawn, 랜덤 생성해보기 [Unity]

Prefab을 어떻게 만드는지는 이전 글들을 통해 알았을 것이고 이제는 그 Prefab을 이용해 맘대로 소환하는 방법을 알아보자 나는 어떤 방식으로 구현할 거냐면.. Empty Object가 임의로 움직이면서 딱 그 위치에서 Instantiate를 하면 랜덤 소환이 될 것이라 생각하고 구현할 예정이다. 또는 내가 플레이 하는 범위를 정해줘서.. 그 범위에서 난수발생(Random Number를 generate)하겠다. 그래서 미리 만들었다. 그래서 코드를 만들어봤다. public class SpawnManger : MonoBehaviour { public GameObject[] animalPrefab; private float spawnRangeX = 20f; private float spawnposZ =..

Prefab(ricate), 프리팹이란? [Unity]

prefab이란 단어는 사실 건축용어인데 빌려왔다. Unity에서는 프리팹은 재사용, reuse을 효율적으로 하기 위해 만든다고 보면 된다. 건축에서와 마찬가지의 뜻이다. 하지만 Duplicate로 재사용하면 되지 않느냐...? 라고 할 수 있다. Duplicate를 동적으로 수행할 수 있을까?? 음.. 안해봤는데 어려울듯 이를 해결할 수 있는게 바로 Prefab이다. 그렇다면 Prefab은 어떻게 만드느냐? 얘네들의 차이점이 무엇일까? 맨 앞에 육면체 색깔이 다르다. 그렇다면 왜 다를까? 결론부터 말하자면 파란 애들이 바로 Prefab된 애들이다. 얘네들은 Asset으로 저장되어 언제든지 불러올 수 있으며 만약 수정을 하면 불러올 때는 수정된 이후의 정보들로 불러와진다. -> 재사용 용이(reusabl..

728x90
반응형