인터페이스 분리 원칙이란, 객체는 자신이 호출하지 않는 메소드에 의존하지 않아야한다는 원칙이다.객체지향 설계에서 지켜줘야 할 5개의 소프트웨어 개발 원칙단일 책임 (SRP)개방 폐쇄 (OCP)리스코프 치환 (LSP)인터페이스 분리 (ISP)종속성 역전 (DIP)이 5가
길이가 N으로 같은 문자열 X와 Y가 있을 때, 두 문자열 X와 Y의 차이는 Xi ≠ Yi인 i의 개수이다. 예를 들어, X=”jimin”, Y=”minji”이면, 둘의 차이는 4이다.두 문자열 A와 B가 주어진다. 이때, A의 길이는 B의 길이보다 작거나 같다. 이제
달리다가 바로 멈췄으면 좋겠다 → Has Exit Time 없애기Nav Mesh Agent 컴포넌트의 Angular Speed : 초당 돌아볼 수 있는 각도interface : 여러 클래스가 공통된 기능을 제공하면서도 서로 다른 방식으로 그 기능을 구현할 수 있도록 하
사용 이유비동기 작업을 처리하면서도 게임 루프의 제어를 유지할 수 있기 때문에 사용한다.사용 방법IEnumerator 메소드이름(){ yield return new WaitForSeconds(초);}StartCoroutine(메소드이름());파티클이 끝난 후 어떤걸
Slope Limit : 올라갈수 있는 경사로의 한계Step Offset : 올라갈 수 있는 계단의 단차 등을 설정할 수 있다땅에 붙어있는지 0.5초 뒤에 인지하도록뉴인풋시스템에 있는 Jump를 사용하기 위해 OnJump()함수 사용총 에셋 가져오기애니메이션 생성재장전
사용 에셋Survival city lowpoly packPSX Misc. Gun Pack3D 오브젝트가 마젠타 색으로 변했을때 전부다 체크하고 컨벌트Window - Rendering - Render Pipeline Convert로 들어가서 싹다 선택후 and Conve
Enemy와 Player를 프리팹으로 만든다.Level Data라는 빈 오브젝트 하위에 다른 난이도의 맵을 만들때 사용할 프리팹으로 생성프리팹으로 만들었기 때문에 프리팹을 지웠다 다시 올리면 Missing이 뜸해결 방법!LevelLoader 스크립트에서 Missing이
SerializeField : private으로 선언했지만 인스펙터에서 접근할 수 있도록 함OnEnable 함수는 오브젝트가 켜질때 호출됨timeScale : 모든 것을 다 멈추게한다(애니메이션, 플레이어 등) deltatIme에도 영향을 받는다GameClear 함수로
Collider - isTriggerAnimation 추가스크립트 추가Collider - isTriggerAnimation 추가 (+Eaten)스크립트 추가먹으면 먹는 애니메이션(Eaten)과 함께 과일이 사라지도록함남은시간 표시캔버스 추가남은 시간 텍스트 추가아이템
사용 에셋Pixel Adventure 1Free - Adventure Pack - Grasslandrectangular : 사각형(기본)hexagonal : 육각형isometic : 2.5D? 메이플2 같은 뷰▲ hexagonal▲ isometic가져온 타일맵의 pix
Shape라는 추상 클래스를 정의하고, 이를 상속받는 Circle, Rectangle 등의 클래스를 만들어 넓이를 계산하는 메서드를 구현하세요. Shape는 추상 메소드 Area()를 가져야합니다.추상 클래스인 abstract로 Shape 클래스를 만들어주고, Area
❓Override부모 클래스에서 정의된 함수를 자식 클래스에서 재정의하고 싶다면, 부모 클래스에서 가상 함수로 정의하고, 자식 클래스에서 오버라이딩 해주면 된다.부모 클래스protected로 선언된 변수들은 해당 클래스 또는 상속받은 자식 클래스에서만 접근 가능virt
❓Getter SetterGetter은 읽을때, Setter은 값을 저장할때 사용한다.hp이라는 변수를 선언했을때, hp의 값을 set(저장)한다.hp에 저장된 값을 불러오는 것이 get이다.❓Get Set을 사용하는 이유정보 은닉을 위해서 사용\*\*\*\*밖에서 함
하나의 클래스를 만들어 다음 기능을 구현한다. 데이터를 하나씩 저장할 수 있다. 데이터를 하나씩 꺼낼 수 있다. 꺼내는 데이터를 지정할 수는 없으며, 무조건 가장 나중에 저장한 데이터를 꺼내준다. 데이터를 꺼내면 저장된 데이터에서 빠진다.❓스택의 특성출처 : https
몬스터이름 : 경험치숫자로 이루어진 Dictionary를 만들어 원하는 수의 데이터를 넣는다.모든 몬스터들의 경험치의 평균을 구한다.❓KeyValuePairDictionary내의 모든 키와 값들을 출력Dictionary를 생성해준다. 이때, 몬스터이름 : 경험치숫자이므
몬스터이름 : 경험치숫자로 이루어진 Dictionary를 만들어 원하는 수의 데이터를 넣는다.모든 몬스터들의 경험치의 평균을 구한다.❓KeyValuePairDictionary내의 모든 키와 값들을 출력Dictionary를 생성해준다. 이때, 몬스터이름 : 경험치숫자이므
1부터 1000까지의 수 중에서 0과 5로만 이루어진 수를 찾아 리스트에 넣고 출력한다.코드1코드2풀이1int형 리스트 result를 생성해주고, 1000까지 for문을 돌려준다.첫번째 자리(1의 자리), 두번째 자리(10의 자리), 세번째 자리(100의 자리) 숫자들
2차원 가변배열을 만들어 정수를 저장한다. 그 가변배열에 저장된 수 중, 10이 넘는 수만을 골라 리스트에 채운다.가변배열❓요소의 크기가 서로 다른 배열(임의의 크기로 유동적으로 사용이 가능)장점/왜 쓰는지❓낭비되는 부분을 없애고 메모리를 최적화할 수 있음가변배열 a를
멤버변수와 메소드로 구성되어있으며,캐릭터가 할 수 있는 행동들을 의미한다(맞는다, 힐한다, 살아있는가, 먹는다 등)출처:https://wikidocs.net/1249790❓Class 멤버클래스에서 데이터와 동작을 나타낸다.생성자, 소멸자, 상수, 필드, 메서드
💡함수 선언 방법void 함수명 () { 함수가 호출될때마다 실행될 내용 }Ex )출력Test함수에서 매개변수 x를 받고있고, Start함수에서 Test(5)를 주고있다. x+1 즉, 5+1한 값을 y로 리턴한 후 출력하게 되면 6이 나오게된다.❓enum 열거형은 정