전체 글 (48) 썸네일형 리스트형 [Unity] 네비게이션 몬스터가 플레이어를 따라오게하는 기능을 구현하는경우 네비게이션 기능을 이용하면 쉽게 구현이 가능하다 우선 [Window] -> [AI] -> [Navigation]창이 필요하다 게임을 플레이할 맵을 클릭한 다음에 object에서 Navigation Static을 체크한다 Terrain이나 Mesh Renderer 컴포넌트를 가진 게임 오브젝트만 Bake 하여 해당 구역만 내비게이션 영역으로 설정하겠다는 옵션이다 그다음에 Bake를 누르면 되는데 Bake는 CD를 굽는다는 말처럼 미리 계산을 해두어 사용하겠다는의미이다 실시간으로 연산을 하기에는 너무 많은 자원이 소모되기에 정적으로 존재하는 맵과 같은 경우는 미리 Bake하여 불필요한 연산을 줄이려는 방식이다 using System.Collections; .. [Unreal] Unreal C++ 로그찍기 언리얼을 처음깔고 라이브러리를 보면 화면과같은 상태일것이다 실행버튼을 누르고 프로젝트를 만들면 사진과같이 카테고리를 선택하는 창이 나온다 게임을 만들것이기에 게임을 선택하고 다음을 누르겠다 템플릿을 선택하라고 하는데 기본을 누르고 다음을 누르면된다 블루프린트 클래스가 기본설정일탠데 C++로 만들것이기떄문에 C++로 변경해주면된다 나는 프로젝트 경로에 한글이 들어가 오류가있었는데 프로젝트 이름과 경로를 영어로만 해주자 프로젝트 경로와 이름은 영어로해줘야지 빌드 오류가 없다 위와같이 해준다음에 프로젝트 생성을 누르자 위에보이는 화면이 언리얼 인터페이스이고 아래에 보이는 화면이 유니티의 인터페이스이다 하나의 창을 제외하고 나머지창은 비슷한기능을 담당한다 비슷비슷한 기능을하는 창끼리 짝지어보자면 Unity Un.. [c#] enum 그리고 switch case enum 은 사용자 정의 자료형중 하나로 열거되어있는 값이 상수로 정의된 열거형이라 불리며, 상수값을 대표하는 이름들의 집합을 의미한다 enum은 c# java c++ 전부 비슷한 형태로쓰이니 사용방식을 잘배우도록해야한다 간단하게 예를 들어 우리가 상태를 정의할때 기본상태, 공격하는상태, 방어하는상태 죽은 상태이렇게 4가지가 있다고가정해보자 그렇다면 이4가지 상태를 정수형으로 하나하나 변수로 만들거나 배열로처리하는방법도있겠지만 상수로 정의하여 좀더 가독성이 좋은 코드를 만들 수 있다 private bool isIdle; private bool isAtk; private bool isDef; private bool isdie 이런식으로 하나하나 정의하는것보다 enum을 활용한 방식을 봐보자 각각의 상태를 .. [Unity] 화면 전환 유니티의 화면을 전환하는 방법은 간단하다 우선 변경될 화면들을 몇가지 만들어준다 [File]->[Bulid Settings] 로들어간후 해당 화면처럼 씬을 드래그 드롭하면 된다 using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.SceneManagement; // 반드시 추가해줘야함 public class Btnysystem : MonoBehaviour { public void OnClickStartBtn() { SceneManager.LoadScene("Main"); } } 나는 버튼 이벤트를 통해 버튼이 클릭될때 화면이 전환되도록 만들었지만 다른방식으로 만들어도된다 핵심은 Scen.. [Unity] 싱글톤 패턴 싱글톤이란 디자인 패턴의 일환으로 말그대로 객체를 하나만 생성하고, 생성된객체를 어디에서든 참조하여 사용하는 패턴을 의미한다. 아래는 Monobehaviour를 상속받은 싱글톤 패턴의 모습이다 public class GameManager : MonoBehaviour { private static GameManager instance = null; // 어디서든 접근 가능한 프로퍼티 public static GameManager Instance { get { if (null == instance) { return null; } return instance; } } void Awake() { if (instance == null) { instance = this; // 인스턴스가 없다면 해당 인스턴스를 넣어.. [Unity] CSV파일 읽고 사용하기 예전에 게임잼에참가했었을때 다른 프로그래머분이 txt파일이나 json,csv 파일들을 따로만들어 기획자분이 관리하기 편하게 작업을해줬던 기억이있다 나도 언젠가는 저런걸 할 수 있겠지하며 지나갔었는데 이번포스팅에는 CSV 파일을 이용하여 파싱하여 유니티에 적용하는 방법에 대해 알아보려고한다 CSV란 comma-separated values의 약자로 몇 가지 필드를 쉼표(,)로 구분한 텍스트 데이터 및 텍스트 파일 이라고한다. 간단하게 정보와 쉼표로 이루어진 텍스트 파일이라고 이해하면 편하다 CSV을 만드는 방법부터 알아보자 우선 Excel 파일부터 만들자 첫번째열은 Header라고하며 하위항목들을 설명 해주는 항목이다 나중에 인덱스 접근에 사용하게된다 이렇게 Excel 파일은 만든다음 다른이름으로 저장을 .. [Unity] Sprite Atlas 활용하기 유니티 애니메이션 작업을하는와중에 이전에 에셋들 사용해왔때는 뭉쳐져있던 것들을 분리해서 사용했었는데 이번에는 그 애니메이션 스프라이트들이 따로따로 나뉘어져있었다 이렇게 이미지들이 뭉쳐져있는 기능을몰라 구글링을 통해 이전에 내가 써왔던 기능이 Sprite Atlas라는 기능인것을 알아 기록을 남긴다 유니티는 예전부터 Sprite Packer라는 이름으로 Atlas를 지원하고 있었지만 지금은 너무 구리기에 스프라이트 패커를 검색하면 레거시라는 구린 문구가 써져있는것을 볼 수 있다 https://www.youtube.com/watch?v=PEMsZDb3yPs 구글링을 통해 찾은 영상인데 설명을 잘해주셔서 링크남겨둡니다 영상을 한번보면 이해가쉽습니다 그렇다면 왜? 이런 아틀라스를 활용해야하는가 드로우 콜(Dra.. [Unreal] C++ Visual Studio 세팅하기 언리얼 공부를 시작하려는데 역시 쉽게되는건 하나도 없는거같다 2017버전을 사용해야하는줄알아서 2017 버전을 다시깔기도하고 프로젝트 이름이 한글이라서 문제되어서 그것도 고쳤지만 결국 안되서 나중에 조언을 구했더니 아래와같은 링크를 보여주셨다... https://docs.unrealengine.com/4.26/en-US/ProductionPipelines/DevelopmentSetup/VisualStudioSetup Setting Up Visual Studio for Unreal Engine Tips, tricks, and techniques for setting up Visual Studio to work with Unreal Engine docs.unrealengine.com 예전문서를 보고 오해했던.. 이전 1 ··· 3 4 5 6 다음