C#,Unity Programming
-
// 게임개발 종합반 - 4주차(스파르타코딩클럽) 카드에 랜덤으로 이미지 넣기 배열에 숫자를 두쌍씩 집어넣는다. 배열를 랜덤으로 섞는다. 카드가 생성될 때 배열에서 이미지를 꺼내서 붙여준다 배열에 이미지 두장씩 집어넣기 먼저 두쌍씩 존재하는 배열 만들기 호출은 rtans[i] int[] rtans = { 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7 }; 배열 섞기 (System.Linq 에서 OrderBy 를 가져다 쓰자) OrderBy(item => Random.Range(-1.0f, 1.0f)) 이 내용이 잘 이해가 되지 않는다. 질문후 답변도 올려놓아야 겠다 void Start() { int[] rtans = { 0, 0, 1, 1, 2, 2, 3, 3, 4,..
게임개발 학습. 카드 뒤집기 게임(카드 랜덤으로 섞기 using System.Linq, OrderBy, Resources.Load(sprite))// 게임개발 종합반 - 4주차(스파르타코딩클럽) 카드에 랜덤으로 이미지 넣기 배열에 숫자를 두쌍씩 집어넣는다. 배열를 랜덤으로 섞는다. 카드가 생성될 때 배열에서 이미지를 꺼내서 붙여준다 배열에 이미지 두장씩 집어넣기 먼저 두쌍씩 존재하는 배열 만들기 호출은 rtans[i] int[] rtans = { 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7 }; 배열 섞기 (System.Linq 에서 OrderBy 를 가져다 쓰자) OrderBy(item => Random.Range(-1.0f, 1.0f)) 이 내용이 잘 이해가 되지 않는다. 질문후 답변도 올려놓아야 겠다 void Start() { int[] rtans = { 0, 0, 1, 1, 2, 2, 3, 3, 4,..
2022.09.08 -
//게임개발 종합반 - 4주차(스파르타코딩클럽) 보드 게임 특징 로직이 중요함,심판 역할 만들 순서 순서만 명확히 해도 머릿속에, 그리고 코드 상에 구체화가 쉬워진다. 기본 씬 구성하기 : 배경, 타이머, 리소스 받아두기 시간 보내기 카드 깔기 카드 뒤집기 애니메이션 만들기 같은 카드을 뒤집었을 때 없애기 카드 만들기 cards(Create Empty) 에 card(Create Empty) 들이 들어가는 형태로 구현 card 의 앞 뒤는 sprite로 구현(sprite Renderer 컴포넌트를 기본 탑재) - sprite에 이미지 할당 이미지 크기 조절 Pixels Per Unit 을 조절 숫자를 크게 하면 사이즈가 작아진다 뒷면에 Text 넣기 Canvas 를 World Space로 변경 위치에 맞게..
게임개발 학습. 카드 뒤집기 게임(for 문으로 카드 자동생성)//게임개발 종합반 - 4주차(스파르타코딩클럽) 보드 게임 특징 로직이 중요함,심판 역할 만들 순서 순서만 명확히 해도 머릿속에, 그리고 코드 상에 구체화가 쉬워진다. 기본 씬 구성하기 : 배경, 타이머, 리소스 받아두기 시간 보내기 카드 깔기 카드 뒤집기 애니메이션 만들기 같은 카드을 뒤집었을 때 없애기 카드 만들기 cards(Create Empty) 에 card(Create Empty) 들이 들어가는 형태로 구현 card 의 앞 뒤는 sprite로 구현(sprite Renderer 컴포넌트를 기본 탑재) - sprite에 이미지 할당 이미지 크기 조절 Pixels Per Unit 을 조절 숫자를 크게 하면 사이즈가 작아진다 뒷면에 Text 넣기 Canvas 를 World Space로 변경 위치에 맞게..
2022.09.08 -
// 게임개발 종합반 - 3주차(스파르타코딩클럽) 레벨 UI 표시 새 캔버스 생성 후 - level 캔버스를 자식으로 생성 그 아래에 레벨 UI 배정 레벨에 따라 난이도를 올리기 5마리당 레벨 1씩 올리기 UI 변수 level, cat 게임매니저에 addCat 함수 생성 후, cat.cs 배부를때 함수 호출 public void addCat() { cat += 1; level = cat / 5; } 계속 addCat 함수가 실행되면 안되므로 isFull boolean 만들어서 함수 추가 if (isFull == false) { gameObject.transform.Find("hungry").gameObject.SetActive(false); gameObject.transform.Find("full").g..
게임개발 학습. 고양이 밥주기 게임(레벨 구성하기if, Type)// 게임개발 종합반 - 3주차(스파르타코딩클럽) 레벨 UI 표시 새 캔버스 생성 후 - level 캔버스를 자식으로 생성 그 아래에 레벨 UI 배정 레벨에 따라 난이도를 올리기 5마리당 레벨 1씩 올리기 UI 변수 level, cat 게임매니저에 addCat 함수 생성 후, cat.cs 배부를때 함수 호출 public void addCat() { cat += 1; level = cat / 5; } 계속 addCat 함수가 실행되면 안되므로 isFull boolean 만들어서 함수 추가 if (isFull == false) { gameObject.transform.Find("hungry").gameObject.SetActive(false); gameObject.transform.Find("full").g..
2022.09.05 -
// 게임개발 종합반 - 3주차(스파르타코딩클럽) 오류 상황 강의에서 배운 고양이가 체력이 꽉 차면 full 로 변경하는 코드는 아래와 같다. 문제는 아래 코드는 고양이 체력이 5일때 6대를 맞아야 full 이미지로 변경이 된다는 것 이 함수는 충돌시 함수이기 때문에, 그 다음 충돌이 일어나기 전까지는 else가 실행되지 않음 void OnTriggerEnter2D(Collider2D coll) { if (coll.gameObject.tag == "food") { if (energy < full) { energy += 1.0f; Destroy(coll.gameObject); gameObject.transform.Find("hungry/Canvas/front").transform.localScale = n..
게임개발 학습. 고양이 밥주기 게임(밥주기 코드 수정)// 게임개발 종합반 - 3주차(스파르타코딩클럽) 오류 상황 강의에서 배운 고양이가 체력이 꽉 차면 full 로 변경하는 코드는 아래와 같다. 문제는 아래 코드는 고양이 체력이 5일때 6대를 맞아야 full 이미지로 변경이 된다는 것 이 함수는 충돌시 함수이기 때문에, 그 다음 충돌이 일어나기 전까지는 else가 실행되지 않음 void OnTriggerEnter2D(Collider2D coll) { if (coll.gameObject.tag == "food") { if (energy < full) { energy += 1.0f; Destroy(coll.gameObject); gameObject.transform.Find("hungry/Canvas/front").transform.localScale = n..
2022.09.05 -
교재와 속도 수치가 같은데 , Game View에서 고양이가 너무 빠르게 내려온다., 이상하게 안드로이드로 빌드하면 원하던 속도에 맞길래, 업데이트되는 프레임이 문제일거 같아서 싱크 맞추는 옵션을 찾아봤다. VSync 수직동기 옵션 역시 이게 문제였다. Game View에서 VSync 설정을 해주지 않으면, 그래픽카드의 재생률 프레임으로 고양이가 움직이는것.. Game 탭의 VSync 옵션을 켜주면 60 프레임으로 고정된다. 어차피 배포까지 생각해서 개발할 땐 Application.targetFrame을 정해줘야겠지만, 개발하며 잘 돌아가는지 확인하기 위해서는 VSync 옵션은 켜고 진행해야 겠다. 드디어 고양이가 천천히 내려온다...
Unity VSync교재와 속도 수치가 같은데 , Game View에서 고양이가 너무 빠르게 내려온다., 이상하게 안드로이드로 빌드하면 원하던 속도에 맞길래, 업데이트되는 프레임이 문제일거 같아서 싱크 맞추는 옵션을 찾아봤다. VSync 수직동기 옵션 역시 이게 문제였다. Game View에서 VSync 설정을 해주지 않으면, 그래픽카드의 재생률 프레임으로 고양이가 움직이는것.. Game 탭의 VSync 옵션을 켜주면 60 프레임으로 고정된다. 어차피 배포까지 생각해서 개발할 땐 Application.targetFrame을 정해줘야겠지만, 개발하며 잘 돌아가는지 확인하기 위해서는 VSync 옵션은 켜고 진행해야 겠다. 드디어 고양이가 천천히 내려온다...
2022.09.03 -
// 게임개발 종합반 - 3주차(스파르타코딩클럽) 다른 책에서 배울때 체력바는 슬라이더로 구현했었는데, 이번에는 이미지 2개를 겹쳐서 만든다. Pivot을 0으로 맞춰두고 Scale을 변경하는 방식. 다양한 방법을 배워두면 좋을 것 같다. Prefab을 씬에서 수정할 경우 꼭 Override를 해주자 저장을 생활화하자... 코드는 꼭 저장하는데 아직 Unity는 습관이 덜들었다. 오류나서 꺼졌는데 어디부터 다시해야 하는지 못찾겠음.... Trigger 충돌을 사용할 때는 OnTriggerEnter2D 다. OnCollision2D로 했다가 문제를 한참 찾았다. FrameRate 를 잘 체크하자. Game View의 VSync를 켜고 하거나, FrameRate를 고정하여 개발 2022.09.03 - [Pr..
게임개발 학습. 고양이 밥주기 게임(hp bar, OnTriggerEnter, transform.localScale)// 게임개발 종합반 - 3주차(스파르타코딩클럽) 다른 책에서 배울때 체력바는 슬라이더로 구현했었는데, 이번에는 이미지 2개를 겹쳐서 만든다. Pivot을 0으로 맞춰두고 Scale을 변경하는 방식. 다양한 방법을 배워두면 좋을 것 같다. Prefab을 씬에서 수정할 경우 꼭 Override를 해주자 저장을 생활화하자... 코드는 꼭 저장하는데 아직 Unity는 습관이 덜들었다. 오류나서 꺼졌는데 어디부터 다시해야 하는지 못찾겠음.... Trigger 충돌을 사용할 때는 OnTriggerEnter2D 다. OnCollision2D로 했다가 문제를 한참 찾았다. FrameRate 를 잘 체크하자. Game View의 VSync를 켜고 하거나, FrameRate를 고정하여 개발 2022.09.03 - [Pr..
2022.09.03