- [ 카테고리 없음 ]유니티 게임개발 입문 #62023-09-11 21:55:50운석 타입 별 점수 점수 시스템 관련된 부분들을 추가하였음. 점수는 게임 점수와 별점으로 나누어지며 그 중 별점만이 저장되는 값임. 우선 Meteor.cs에서 타입 별 점수를 지정해줌. 실제 값은 자식 클래스에서 설정. //Meteor.cs //... public int Score { get; set; } //... public Meteor(string name, int hardness, int score) { Name = name; Hardness = hardness; Score = score; } 점수 계산 GameManager.cs에서 점수 관련 로직을 작성하였음. 시간과 파괴한 운석 수를 통해 계산되는 최종점수, 게임 플레이 중 업데이트되는 운석 파괴 점수, 그리고 최종점수에 기반한 별점이 있음...
- [ 카테고리 없음 ]유니티 게임개발 입문 #52023-09-08 21:56:28[팀프로젝트 벽돌깨기] 게임 기획 & 설계 팀원들과 회의를 통해 다음과 같이 전반적인 초기 게임 시스템 구상과 클래스 설계를 진행하였음. 운석(벽돌) 충돌 Meteor 클래스는 운석의 강도, 색상, 파티클 효과의 정보와 충돌처리, 파괴 등의 메서드를 가지고 있음. 각 운석 타입을 자식 클래스로 상속하고 있으며 자식 클래스에는 운석의 이름과 강도를 지정할 수 있음. Meteor 클래스 생성자에서 이름, 강도와 함께 색상의 배열을 초기화하여 각 강도의 값일 때의 색상을 지정하려고 함. OnCollision 메서드 내에서는 충돌될 때마다 강도를 1씩 감소시키며 색상 값을 강도에 따라 업데이트 해줌. DestroyMeteor는 코루틴에 의해 파티클이 나오고 일정 시간 후에 호출되며 운석을 파괴하는 역할을 수행함..
- [ 카테고리 없음 ]유니티 게임개발 입문 #42023-09-07 21:51:47[UI] Canvas Canvas는 UI요소를 그리기 위한 영역으로 모든 UI요소들은 캔버스를 통해 렌더링됨. Screen Space Overlay는 주로 2D UI를 표시하는 데 사용됨. 카메라에 관계없이 항상 화면 위 절대적인 위치에 UI를 배치함. WorldSpace는 주로 3D 공간에서 UI를 배치할 때 사용됨. UI요소를 3D 객체와 함께 월드 공간에 렌더링 할 수 있음. 카메라 및 월드 좌표에 따라서 상대적으로 배치됨. Image Image 컴포넌트는 이미지 또는 스프라이트를 화면에 표시하는 데 사용됨.(게임 아이콘, 배경 이미지 등) UI로 이미지를 활용할 때는 이미지의 스프라이트의 Texture Type을 Sprite(2D&UI)로 설정해야함. Sprite Editor는 스프라이트의 bor..
- [ 카테고리 없음 ]유니티 게임개발 입문 #32023-09-06 21:11:45[게더 클론 개인 프로젝트] 캐릭터 색상 변경 플레이어의 SpriteRenderer 컴포넌트에 접근하여 색상 변경. 랜덤 색상 변경 및 기본 색상으로 초기화하는 메서드 생성. //Player.cs private SpriteRenderer _spriteRenderer; private Color originalColor; private void Awake() { playerName.text = playerNameStr; playerName2.text = playerNameStr; _rigidbody = GetComponent(); _spriteRenderer = GetComponent(); originalColor = _spriteRenderer.color; } public void ChangeColorRa..
- [ 카테고리 없음 ]유니티 게임개발 입문 #22023-09-05 21:13:55[게더 클론 개인 프로젝트] 캐릭터 이동 New Input System을 사용하여 WASD를 통해 플레이어의 이동 제어. 키보드 입력값에 따라 x축 반전을 통해 캐릭터의 방향 바꾸기. //PLayer.cs using UnityEngine.InputSystem; public class Player : MonoBehaviour { [SerializeField] private float _speed; private Rigidbody2D _rigidbody; private Vector2 _movementInput; private bool isFlipped = false; private void Awake() { _rigidbody = GetComponent(); } private void FixedUpdate(..
- [ 카테고리 없음 ]유니티 게임개발 입문 #12023-09-04 21:02:44PPU PPU(Pixel Per Unit)은 스프라이트의 크기와 월드 공간에서의 픽셀 단위 크기 간의 관계를 나타냄. 스프라이트 크기 조정과 일관된 스케일링을 위한 중요한 요소임. 2D에서 PPU가 높을수록 스프라이트가 작아지며 낮을수록 스프라이트가 커짐. 로컬 좌표계 & 월드 좌표계 로컬 좌표계는 개별 객체 또는 게임 오브젝트 자체 좌표 시스템. (상대적인 위치와 변화) 월드 좌표계는 게임 월드 전체를 나타내는 전역 좌표 시스템. (절대적인 위치와 변화) Time.deltaTime 이전 프레임부터 현재 프레임까지의 경과 시간을 나타냄. 프레임 간 간격은 하드웨어의 성능과 상관없이 일정한 속도로 게임이 진행되도록 보장함. public float moveSpeed = 5.0f; void Update() {..
- [ 카테고리 없음 ]C# #27 알고리즘 코드카타 22023-09-02 23:16:17자연수 뒤집어 배열로 만들기 자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다. using System; public class Solution { public int[] solution(long n) { string s = n.ToString(); int[] answer = new int[s.Length]; int count=0; while(n>0) { answer[count]=(int)(n%10); n/=10; count++; } return answer; } } 문자열을 정수로 바꾸기 문자열 s를 숫자로 변환한 결과를 반환하는 함수, solution을 완성하세요. public class Solution { pu..
- [ 카테고리 없음 ]C# #26 JSON2023-09-01 19:32:13What JSON(JavaScript Object Notation)은 데이터 교환과 저장을 위한 경량의 데이터 형식임. 주로 텍스트 형식으로 표현되며 데이터를 구조화하고 표현하는데 사용됨. When 데이터 교환: C# 어플리케이션과 다른 시스템 혹은 서비스 간 데이터 교환에 사용됨. 웹 API와의 인터렉션, 외부 서비스와 통신, 데이터베이스와의 데이터 교환 등의 경우에 JSON이 사용됨. 구성 정보 저장: 웹 어플리케이션의 설정 정보, 데이터베이스 연결 문자열, 어플리케이션 동작 설정 등을 JSON 파일로 저장하여 관리할 수 있음. 서버-클라이언트 통신: C# 웹 앱에서 클라이언트와 서버 간에 데이터를 주고받을 때, 클라이언트 측에서 JSON을 사용하여 데이터를 요청하고 서버에서 JSON 형식으로 응답함..