===0-1강 부터 1-5강의 내용===유니티에 대해서 공부\-유니티란: 충돌/중력/탄성/카메라 등을 쉽게 코딩 할 수 있는 툴\-유니티 개발화면: Scene/Game/Hierachy/Project/Inspector로 구성\-유니티의 장점: 드래그 앤 드롭으로 해결되는
===1-6강 부터 3-4강 까지의 내용===UI에 대해서 배움: UI란 User Interface를 의미함.Singletone화에 대해서 배움. singletone이란 어디에서든 부를 수 있는 유일한 하나로 만들어주는 것이다. 오늘 배운 강의에서는 GameManage
오늘의 공부 내용 4주차 강의의 내용=== 카드 뒤집기 게임을 만듦 지금껏 배워왔던 3강까지의 강의 내용의 복습이면서 카드를 배치 및 랜덤으로 섞는 것에 대해 공부함 for문에 대해 카드 매칭하기 복습한 내용 자동 카드 생성 -prefab을 사용하여 card라는 틀을
\* (8월9일 팀프로젝트로 인해 밀린 TIL입니다) 오늘의 공부 내용 팀 프로젝트 협업=== 사전캠프 강의 완강 완료하기 (5강) 깃&깃허브의 사용법을 배움 5강의 내용 -퍼즐게임에 사운드 넣기 =사운드에는 배경음악과 효과음 등이 있음 배경음악 넣
===1주차 팀 프로젝트===와이어프레임에 짠 프로젝트 구상을 베이스로 작업시작startscene / teamscene / infoscene / mainscene /endscene 중 endscene을 제외한 나머지 씬들을 작업teamscene, infoscene,ma
===1주차 팀 프로젝트 회고===발표회를 위한 프로젝트 관련 대본 준비총 5개의 씬 start,team,info,main,endscene의 기능에 대해서 나눠서 설명설명 했던 기능들의 예시로는 애니메이션,사운드,카드를 움직이는 코드들의 로직 등이 있음발표후 팀 회고록
오늘의 공부내용 C#문법 종합반 강의 1-1 부터 2-5의내용=== 변수와 자료형 변수란? -데이터를 저장하고 사용하기 위한 할당받은 공간 -이미 C#에서 예약된 단어들은 사용할 수 없다 (base,break,case,char...) 자료형 -대표적으로 in
===강의 2-6부터 3강 클래스와 객체 까지의 내용===1) Method와 구조체Method의 역할과 중요성\-코드의 재사용성\-모듈화\-가독성과 유지보수성\-코드의 중복 제거\-코드의 추상화 2) Method의 선언법접근 제한자 = public, private, p
오늘의 공부 내용 강의 3주차 마무리 및 과제내용=== 1) 상속 기존의 클래스 (부모 클래스 또는 상위 클래스)를 확장 하거나 재사용하여 새로운 클래스 (자식 클래스 또는 하위 클래스)를 생성하는 것 자식 클래스는 부모 클래스의 멤버들을 상속받아 사용할 수 있고, 부
1.C- 다이아몬드 문제 \- 한 자식 클래스가 두개 이상의 부모 클래스로부터 동일한 멤버를 상속 받을 수 있음 \- 어떤 부모 클래스의 멤버를 사용해야하는지가 모호해지고 그로인해 복잡성이 높아짐 이름 충돌이 나게되고 해결이 어려움C2.인터페이스코드의 재
=== Text RPG 개인과제 ===1) 개인과제 필수요구 사항 구현 완료게임 시작 화면 \-간단한 소개말과 마을에서 할 수 있는 행동을 출력상태보기\-캐릭터 정보표시\-7개의 속성 (레벨/이름/직업/공력/방어력/체력/Gold)\-장비템에 따라 수치 변경 가능\-코드
=== 개인과제 TextRPG만들기(cont.) ===1) 상점 구현 마무리상점 method에서 자잘한 오류들을 수정함수동으로 열을 맞추던 아이템 목록을 DisplayIteminfo()라는 함수로 아이템의 정보들을 출력하고 PadRight 함수를 이용해 열을 맞춤. (
===개인과제 TRPG만들기 ===1\. 던전 구현쉬운 던전 \-고블린 (체력:15, 공력: 3, 방어력:5, 드랍골드:1000G) 몬스터를 출현하게끔 구현 일반 던전 \- 킹슬라임 (체력:45, 공력:11, 방어력:20, 드랍골드:3000G) 몬스터 출현어려움
오늘의 공부 내용 4주차 강의 복습=== 1.람다 (Lamda) method이름없이 사용이 가능한 함수 (익명메서드) \필요할 때만 호출하여 사용하는 방식, 메모리상의 불필요한 연산을 줄인다는 것이 장점이다\ 2.델리게이트 (Delegate) 누군가를 대신해서 일을
===알고리즘 및 람다===1.람다에 대해서 (자세히...)람다는 메서드로 전달할 수 있는 익명 함수를 단순화한것람다의 특징은 일회성! 함수의 선언부가 없으므로 한번 사용하면 끝!메서드의 이름없이 메서드를 만들수 있다.람다식의 장점은 코드가 간결해 진다는 점!람다식으로
오늘의 공부내용 탐색 알고리즘=== 탐색 알고리즘 탐색 알고리즘이란? -주어진 데이터 집합에서 특정 항목을 찾는 방법 선형 탐색 (Linear Search) -가장 단순한 탐색 알고리즘 -배열의 각 요소를 하나하나 차례대로 검사하여 탐색 -시간복잡
===팀 과제, 알고리즘=== 이번 주차는 새로운 팀원들과 함께 저번 주에 구현해보았던 TRPG를 다시한번 팀 단위로 구현하는 일이 주어졌다. 필수 구현 목록과 선택 목록으로 나뉘어 팀별 수준에 맞춰 원하는 기능 구현을 하면 되는데 우리팀은 아래와 같은 기능들을 선택했
현재까지의 본인 저라는 사람을 표현하자면 하고싶은게 많은 사람이라고 생각합니다. 의사라는 꿈을 품고 5년간 공부를 하였지만 항상 문득 문득 들었던 생각은, '과연 이 길이 내 길이 맞는가?' 였습니다. 물론 이런 생각을 갖기에는 짧은 시간이었을 수도 있지만 제게는 이
팀 과제 진행중, 맥을 사용하는 팀원분과 윈도우를 사용하는 팀원분들 사이에 세팅이 달라, 윈도우 사용 팀원분들의 화면에서 ASCII ART가 '?'로 출력되는 오류가 있었습니다. 구글에서 영문자료를 열심히 검색해본 결과, 유니코드를 지원하지 않는 프로그램에서 텍스트를
팀 과제의 마무리 9월1일 12시까지 과제를 제출해야해서 오전 중 까지 만들던 프로젝트를 마무리하고 3시에 시연및 과제 발표를 했습니다. 저희 팀을 제외한 다른 여섯팀의 과제들도 같이 보면서 설명 및 시연을 듣는 유익한 시간이었습니다. 과제 소개 팀 과제 게임 이름:
최근 팀프로젝트 등을 하면서 좋은 동료분들과 함께 협업을 하고 새롭게 알게된 개발지식이 있습니다. 그건 바로 디자인 패턴! 디자인 패턴은 주로 웹개발을 하시는 분들에게 익숙 한것 같은데, 게임 개발을 공부하는 지금 당장은 얼마나 필요한지를 가늠할 수 없지만! 무엇이든지
유니티 강의를 복습까지 마치고, 유니티 개인과제에 들어갔다. 지금까지 해왔던 다른 과제들과 마찬가지로 필수 구현사항과 선택 구현 사항들이 있다. 우선 오늘 강의에서 공부하고 좀더 디테일하게 알게된 개념부터 살펴보자.\-PPU (Pixels Per Unit) 1이라는 단
필수 구현사항1.캐릭터 만들기2.캐릭터 이동3.방 만들기4.카메라따라가기선택 구현사항1.애니메이션 추가2.이름 입력시스템3.캐릭터 선택 시스템4.참석 인원 UI5.인게임 캐릭터 선택6.인게임 이름 바꾸기7.시간 표시8.NPC 대화1.캐릭터 애니메이션 추가 해당 항목은
개인과제를 마무리하고 github에 push를 하려하는데 오류가 떴다! 그 오류는 바로 Files too large!github.com에 올리려고 하는 커밋의 파일중 100MB가 넘어가는 파일들이 있으면 나는 에러였다. Github Desktop을 잘 이해하지 못해서
Substring메서드 알고리즘을 공부하다가 알게된 Substring 메서드에 대해서 좀더 자세히 알아보기. String.Substring C#에서 문자열을 자를때 Substring 메서드를 사용한다. String.Substring(a,b); 여기서
유니티 프로젝트를 만들다 보니 씬에서 다른 씬으로 넘어갈 때 한번에 휙(?) 하고 넘어가는 것이 뭔가 초라해 보였습니다. 그리하여 이번에는 유니티의 Fade In & Out으로 씬 전환 효과를 줘 보았습니다. 우선 Canvas를 생성하고 안에 화면을 꽉 채우는 검은 이
유니티로 팀과제를 한지도 벌써 4일째가 되간다. c\*\*\*가장 먼저 생각나는것은 깃과 깃허브이다. 깃과 깃허브를 이용해 서로의 작업물을 올리고 merge하는 방식으로 협업을 진행한다. 하지만 유니티에는 Scene들이있고 처음부터 팀원들과 씬별로 나눠서 작업을 하지않
길지는 않았지만 충분히 배운것들을 활용하여 프로젝트를 만들 수 있던 5일이라는 시간동안 항상 그렇듯 팀원분들과의 협업을 통해서 많은 것을 배울 수 있었습니다. 5일간 고생해준 팀원분들께 정말로 감사합니다.코드를 간결하고 모두가 사용하기 편하게 만드는것자주 쓰이는 부분들
유니티 숙련주차에 들어서면서 지금껏 알고는 있지만 자세하게 누군가에게 설명을 하려하면 문제가 있었던 개념들에 대해 다시한번 공부해보는 시간을 가져본다. 우리가 사용하는 유니티에서의 인스턴시에이트 함수(Instantiate)는 만들어둔 게임 오브젝트를 필요할때마다 실시간
2D 게임에서는 오일러 각(Euler Angles)을 이용하여 각도를 구현하면 되지만 3D게임에서는 모든 각도를 통제해줘야하기때문에 오일러 각 만으로는 구현이 어렵다.오일러 각의 문제점 \-짐벌락 (Gimbal-Lock) 현상 \-3d 오브젝트의 x,y,z축 중 한
원하는 폰트를 구글링 하거나 폰트를 가져올 수 있는 사이트에서 다운로드 받는다. 구글 폰트나 다른 게임회사에서 무료로 제공하는 폰트를 사용하면 좋다. 구글폰트https://fonts.google.com/눈누폰트https://noonnu.cc/font_
유니티 숙련주차 과제를 하다보니 필수구현을 넘어 선택구현으로 게임 전체에 BGM을 넣고싶어졌다. BGM을 넣는 방법은 다양하지만 이번에는 Audio Mixer를 이용해 넣어보았다.Window >>> Audio >>> Audio MixerGroups를 눌러 BGM이라는
벌써 내배캠을 시작한지도 한달 하고도 3주차가 되어간다. 그 동안 많은 경험을 하고 그만큼 또 많은 것들을 배웠는데 이번주차 개인과제를 통해 본인이 얼마나 성장했는지를 다시한번 알아보자. 유니티라는 게임 개발 툴을 다루면서 이해하게 된 것들씬 개념 \-원래 씬이라는
특정 작업을 독립적으로 정의하고 캡슐화 하여, 해당 작업을 \*동적으로 교체할 수 있도록 하는 패턴(\* 동적 - 코드가 실행되는 중에 안의 내용이 실시간으로 바뀌어 처리할수 있는)캡슐화 \- 캡슐화란, 클래스들이 서로 다른 부분들을 찾아내서 그 클래스들의 공통점에서
Window >> Package Manager >> Unity Registry >> AI Navigation위 순서로 'AI Navigation' 에셋을 다운받는다.다시 Window >> AI >> Navigation(Obsolete)를 눌러준다.아래 창이 뜨면 된다.
Split은 C- Split 함수는 문자열을 분리시켜주는 기능.Split메서드의 반환형은 string\[]위 코드를 실행하면, \-이\-함수는\-스플릿\-입니다.로 분리가 됩니다. 공백(' ')을 기준으로 나누었기 때문위 코드를 실행하면, \-이렇게 \-띄고라는
우리가 게임을 하다보면 씬과 씬을 넘어가는데에는 항상 로딩창이 우리의 기다림을 함께합니다. 시간이 지남에 따라 채워지는 로딩바가 하고싶은 게임을 하기전 설렘을 더욱 증폭시키기도 합니다. 오늘은 이런 로딩바를 현재하고 있는 팀 프로젝트에 추가해보겠습니다. UI >> Im
게임을 시작하면 가장 먼저 보이는 타이틀 화면과 게임내부에 간단하게 BGM을 넣는 법을 알아보겠습니다.게임 시작화면에서는 Press to start /Press any key to start / Press the button to Start 등등 의 문구를 볼 수 있습
Finite State Machine유한 상태 기계를 나타내는 디자인 패턴상태와 상태 간의 전환을 기반으로 동작하는 동작 기반 시스템상태 (State) = 시스템이 취할 수 있는 다양한 상태를 나타냄전환 조건 (Transition Condition) = 상태 간 전환을
강의를 보면서 항상 나올때마다 뭐였는지 기억을 못하고 개념을 제대로 알고 있지 못했던 추상 클래스에대 이번 기회에 제대로 공부해보고자, 포스팅을 작성한다.추상 클래스는 일반 클래스와 달리 미완성된 클래스이다.이 말인 즉슨 메소드 또한 미완성이고 이를 추상 메소드라고 한
주로 유니티 2D에서 뒤의 배경을 무한하게 반복되는 배경으로 만드는 기술이다.1\. 사용할 배경을 만들어둡니다. 이 배경을 여러개 복사하여 옆으로 나열해줍니다. 스크립트를 준비합니다.Scroller 스크립트를 원하는 배경 그룹에 넣어줍니다.끝!정말 끝도 없이 모르는거
유니티에서 객체가 생성되고 활성화되며, 업데이트 되고, 종료되는 과정을 뜻합니다. 유니티에서 사용자가 호출하지 않아도 호출되는 함수들이 있고 그 호출 주기를 생명주기, LifeCylce이라고 합니다. 여러 이벤트 메서드가 존재합니다. 스크립트가 실행될때 한번만 호출됨.
프로젝트를 하다보면, 꼭 마음에 드는 에셋을 찾는 일이 가장 어렵다. 본인이 만든 에셋이 아니다보니 80퍼센트만 만족해도 그냥 가져다가 쓰는 편이다. 하지만 간단한 UI정도는 만들어서 써보는것이 어떨까 싶어서 포스팅을 해본다.https://www.pixilar
Unity Graphic User Interface유니티 에디터에서 UI를 만들수 있게 제공되는 툴유니티에서 무료로 제공한다Text,Image,RawImage,Button, Toggle... 등등 다양하게 구성되어있다.Canvas를 통해 다양한 UI의 좌표계를 일원화
디자인패턴이란? 기존 환경 내에서 반복적으로 일어나는 문제들을 어떻게 해결할것인가에 대한 솔루션 같은것 자주 발생했던 문제들을 정리하고 모아서 그런 상황마다 특정규약을 통해 간편적용 하여 쓸수 있게 정리한 형태로 만든것 사용 이유? 더 쉽고 편리하게 사용하기 위한 방
마리오 카트 같은 게임을 하다보면 출발전에 카운트 다운이 있고 그 시간동안 게임을 제대로 하기위해 준비를 한다. 본인의 프로젝트에도 그런 카운트 다운에서 오는 긴장감을 추가하고 싶어서 추가해보았다.이런 식으로 게임이 시작되기 전 카운트 다운을 추가 해주었습니다. 관리를
https://velog.io/@cjb0325/%EC%9C%A0%EB%8B%88%ED%8B%B0-TextMeshPro-%ED%8F%B0%ED%8A%B8-%EB%A7%8C%EB%93%A4%EA%B8%B0-2023.09.20위 링크를 먼저보고 오세요!Samplei
연속된 메모리 공간에 순차적으로 저장된 데이터 모음메모리 공간에 필요한 영역을 미리 정해두고 사용하기에 크기를 반드시 지정해야한다.변하지 않는 정적인 크기의 데이터를 다룰때 적합하다.선언된 값은 다시 선언하지 않는 이상은 변경이 안된다.배열을 구성하는 각각의 값을 'e
String은 변경할 수 없는 형식문자열을 수정하는것은 사실 새 문자열을 만드는 것이기때문에 반복문 등에서 사용할 시에 성능의 저하를 일으킨다.변경할 수 없는 String과 다르게 변경이 가능한 문자열을 나타내는데 사용하는 클래스참조값이 변경되지 않고 힙 메모리에서 값
이런식으로 미리 필요한 Enum,Class,interface,ScriptableObject들을 미리 준비하여 서로 어떤 항목들이 추가될것인지 서로 공유하였습니다.Figjam을 이용해서 한눈에 알아보기 쉽게 표현하고, 서로 클래스의 관계도를 간략하게 설명해두어, 팀프로젝