전체 글 159

Unity Camera

Camera3D로 게임을 만들더라도, 우리 스크린은 2D이기 때문에 변환 필요 >> 카메라로 찍은 것을 보여줌(View)카메라 오브젝트의 전방 축(Z)이 방향을, 수직 축(Y)이 스크린의 위 아래를 결정함.원근 모드 (Perspective)와 직교 모드(Orthograpic) 방식으로 카메라를 투영 가능스카이박스(Skybox)로 , 카메라를 감싸 배경 표현 가능구성요소Transform : 카메라의 위치와 방향을 설정Clear Flags : 화면의 배경 처리를 설정-Skybox : 스카이박스를 사용해 배경을 렌더링-Solid Color : 단색 배경-Depth Only : 배경을 렌더링하지 않고, 이전 카메라의 내용을 유지 // 여백을 투명하게 처리, 버퍼를 초기화해 기존 내용을 모두 제거-Dont' Cl..

개념공부 2024.12.23

[멋쟁이사자처럼 부트캠프 TIL회고] Unity 게임개발 3기 33일차

3기 33일차 333! 오늘도 시작 ! 오늘 해야할 일 애니메이션 타이밍 조정 + 애니메이션 관련 함수들 알아보기(따로 포스팅 예정)카메라 관련 기능들 알아보기(게이지 바를 위한)게이지바로 Power 조정하기 씬 상에 화살표 표시하기레벨 디자인 개념 알아보기다 못할 가능성이 높지만 일단 출발~  1. 애니메이션 타이밍 조정https://febelo0524.tistory.com/39 Unity Animation with methodAnimation 개유니티에서는 Animator로 애니메이션 클립들을 관리하고, 상태를 마꿀 수 있다. *애니메이션 클립 : 하나의 연속된 동작으로 나오는 것들                                더 정확히febelo0524.tistory.com 열심히 애니메..

TIL 2024.12.23

Gizmos 관련 메서드

Gizmos :  유니티에서 디버깅 목적으로 사용되는 시각적인 도구Scene 창에서만 보임, 게임 실행중에는 보이지 않음Scene 창 상단의 Gizmos버튼을 클릭하여 활성화 가능OnDrawGizmos / OnDrawGizmoSelected 메서드로 구현관련 메서드 1. OnDrawGizmosScene 창에 항상 Gizmos를 그림게임 오브젝트가 선택되지 않아도 표시2. OnDrawGizmosSelectedScene 창에서 선택된 오브젝트에만 기즈모를 그림디버깅 시 복잡한 장면에서 유용관련 함수들Gizmos.color : 색상 설정Gizmos.DrawLine(Vector3, Vector3) : 두 점 사이에 선을 그림Gizmos.DrawWireSphehe(Vecor3, float) : 중심과 반지름을 기..

개념공부 2024.12.23

Unity Animation with method

Animation 개요유니티에서는 Animator로 애니메이션 클립들을 관리하고, 상태를 마꿀 수 있다. *애니메이션 클립 : 하나의 연속된 동작으로 나오는 것들                                더 정확히 말하자면, 캐릭터, 오브젝트 등의 움직임을 정의한 파일                                동작과 키프레임을 설정하여 만들 수 있음 애니메이션 레이어 : 여러개의 동작을 동시에 할 수 있게 해주는 기능, 기본값은 -1 Animator 컴포넌트 관련 함수들 1. animator.Play(string stateName, int layer = -1, float, noramlizedTime = 0)특정 상태의 애니메이션을 시작함stateName : 재생할 애니메이션의..

개념공부 2024.12.22

abstract, Interface

추상화추상화는 대상을 간단한 개념으로 일반화 하는 과정이다. 예를 들어, 연필, 샤프, 볼펜이 있따면 모두 필기구라고 묶어 이름을 붙이는 것이다. 추상화는 abstract 키워드를 사용하며 ,  abstract를 사용하면 파생 클래스에서 구현해야 하는 클래스 및 클래스 멤버를 만들 수 있다.  무슨 말이냐 하면  public abstract class A {     public abstract void DoWork(int i); } 다음과 같이 추상 class를 만들면, class A를 상속받은 모든 클래스들은반드시 DoWork(int i)라는 기능을 구현해야 한다.  추상 메서드추상 메서드에는 '구현'이 없다 :  public abstract void DoWork(int i); 뒤에 구현할 기능을 써 ..

TIL 2024.12.21

[멋쟁이사자처럼 부트캠프 TIL회고] Unity 게임 개발 3기 31일차

오늘부터는 개인적으로 '앵그리버드'류 게임을 만드는 것에 중점을 두셨다. 전 기본 과제인 ,  벽돌깨기 게임(1시간만에 제작) 을 간단하게 소개해 보겠다. 3D 환경에서 벽을 4개 만들고, 블록과 움직일 페달, 튀길 공을 만들어준다.  우리는 공의 스크립트로 공이 부딫히고 튕길 위치를 계산할 것이다. 네 벽에 모두 Rigidbody와 collider를 넣어준다. Freeze Rotation을 하고 넘어간다.  Ball에 들어갈 script다. using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.Experimental.Rendering;public class ball : MonoBehavio..

TIL 2024.12.20

[멋쟁이사자처럼 부트캠프 TIL회고] Unity 게임 개발 3기 30일차

게임수학(맛보기)벡터벡터 :  '크기'와 '방향'을 가지는 값좁은 의미(유클리드 기하학)에서 말하는 의미라고 하지만, 게임 수학에서만 사용할 것이므로 패스 ! 벡터의 덧셈각 요소들을 더해줌 Ex) + =  순서가 바뀌어도 상관 없다.  벡터의 뺄셈각 요소들을 빼줌Ex)  - = 만약 반대로 빼 준다면, magnitude는 같지만, 방향은 다른 벡터가 생성된다. - =  * magnitude (length , 2D는 root of (x+x+y+y), 3D는 root of (x+x+y+y+z+z) 로 구한다. )  벡터의 곱셈각 요소들에 곱해지는 숫자를 따로따로 곱해줌Ex) x 3 = 나눗셈은 반대이다. 곱셈과 나눗셈을 해도 힘의 방향은 바뀌지 않음, 이 성징르 이용해 노멀라이즈를 함벡터를 자신의..

TIL 2024.12.20

Static

static은 class와는 조금 다른 사용자 정의 데이터형이다.  class는 필드나 메서드 데이터를  힙에 저장하고, stack에서 참조하는 방식으로 생성자를 통해 하나씩 생성하고,사용할때는 그 heap을 참조하는 방식이다.반면, static을 붙인 채로 필드나 메서드 데이터를 생성하면  static을 위해 할당되는 고정된 메모리 영역이 있고어디서 접근을 하든 그 메모리 공간을 참조하는 방식이다.  일반적인 객체처럼 생성되고 삭제되는 것이 아니라, 애플리케이션 전반에 걸쳐서 한 번만 메모리에 올라가고 계속 유지된다는 뜻이다. 즉, 몬스터 인스턴스를 해도 static으로 생성된 클래스나 메서드는 새로 생성되지 않는다. 원래 있던 static으로 할당되어 있는 메모리를 참조할 뿐이다.  어떤 사용처가 있..

개념공부 2024.12.19

[멋쟁이사자처럼 부트캠프 TIL회고] Unity 게임 개발 3기 29일차

Skill 만들기스킬 버튼 만들기 & 스킬 실행하기 우선 스킬 버튼을 UI상에서 추가하고, 앵커를 맞춰 배치해준다. *앵커의 위치를 맞춰주면, 해상도가 바뀌어도 최대한 잡아둔 위치 주변에 머무른다. (앵커로부터의 거리이기 때문에) 버튼에 스크립트를 달아준다.using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.Events;using UnityEngine.UI;public class CButton : MonoBehaviour{ [SerializeField]private Button button; void Awake() { button = GetCompone..

TIL 2024.12.18

[멋쟁이사자처럼 부트캠프 TIL회고] Unity 게임개발 3기 28일차

랜덤 아이템 스폰 & 인벤토리 습득랜덤 아이템 스폰(1) : 임의의 시간이 지난 후 아이템 생성  간단한 방식으로, 코루틴의 WaitForSeconds를써서 일정 시간이 지나고 아이템이 생성되게 할 수 있다.using System.Collections;using System.Collections.Generic;using UnityEngine;public class ItemSpawner : MonoBehaviour{ public GameObject itemPrefab; public float minSpawnTime; public float maxSpawnTime; // Start is called before the first frame update void Start() ..

TIL 2024.12.17