본문 바로가기

전체 글128

01.09 (TIL-Unity) 3-3 팀프로젝트 발표회 게임이름 : 냥코의 모험!! 한마리의 고양의 모험! 각종 함정과 장애물을 피하며 최종 지점까지 도달하는 게임! 와이어프레임 구현 사항 인공 캐릭터의 이동 및 기본 동작: 키보드 또는 터치 입력을 통해 주인공 캐릭터를 움직이고, 점프할 수 있어야 합니다. 이동 및 점프 애니메이션을 포함하여 부드러운 이동 효과를 구현하세요. 레벨 디자인 및 적절한 게임 오브젝트 배치: 최소한 2개 이상의 게임 레벨을 디자인하고 구현하세요. 각 레벨에는 적절한 플랫폼, 장애물, 보상 아이템 등이 포함되어야 합니다. 충돌 처리 및 피해량 계산: 주인공 캐릭터와 환경 또는 적 캐릭터 사이의 충돌을 처리하고, 피해량을 계산하여 게임 내에서 적절한 게임 오브젝트를 활용하세요. UI/UX 요소: 게임 시작 및.. 2024. 1. 9.
01.08 (TIL-Unity) 패럴랙스 스크롤링을 사용하여 오브젝트들이 지속적으로 나타나게 하는 것은 여러 방법으로 구현할 수 있으며, 게임의 디자인과 목표에 따라 다를 수 있다. 오브젝트 풀링(Object Pooling): 오브젝트 풀링은 게임의 성능을 향상시키는 데 유용한 기법. 이 방법은 게임 시작 시 미리 여러 개의 오브젝트(예: 적, 장애물, 아이템)를 생성하고, 필요할 때마다 이들을 재사용. 오브젝트가 화면 밖으로 나가거나 사용되지 않을 때, 이를 비활성화하고 필요할 때 다시 활성화하여 다른 위치에서 사용. 이를 통해 새로운 오브젝트를 계속 생성하는 것보다 효율적으로 관리할 수 있다. 무한 스크롤링(Infinite Scrolling): 플레이어가 게임을 진행함에 따라, 새로운 오브젝트들이 지속적으로 생성되고 이전의 오브젝트.. 2024. 1. 8.
01.05 (TIL-Unity) Material 유니티(Unity)에서 메테리얼(Material)은 게임 오브젝트의 표면을 어떻게 보이게 할지 결정하는 중요한 구성 요소 1. Rendering Mode: 메테리얼이 어떻게 렌더링될지를 결정 Opaque (불투명): 가장 기본적인 렌더링 모드로, 투명도 없이 완전히 불투명한 메테리얼을 생성, 표면이 빛을 전혀 통과시키지 않을 때 사용 Cutout (컷아웃): 텍스처 내의 특정 투명도 값 아래의 부분을 완전히 제거하여 불투명한 부분과 투명한 부분이 명확하게 구분되게 함, 예를 들어 나뭇잎이나 철망 같은 물체에 사용 Fade (페이드): 텍스처의 투명도를 부드럽게 조절하여 점진적인 투명 효과를 만듬, 예를 들어 유령이나 안개 같은 반투명한 효과를 낼 때 사용 Transparent (투명): .. 2024. 1. 5.
01.04 (TIL-Unity) 씬 인덱스(Scene Index) Unity에서 각각의 씬(Scene)을 구별하기 위해 사용하는 숫자 Unity의 빌드 설정(Build Settings)에서 씬들이 나열되는 순서에 따라 각 씬에 자동으로 할당 예시코드 더보기 using UnityEngine; using UnityEngine.SceneManagement; public class TutorialDoor : MonoBehaviour { private void OnTriggerEnter2D(Collider2D collision) { if (collision.gameObject.tag == "Player") { // 현재 씬의 인덱스를 가져옴 int currentSceneIndex = SceneManager.GetActiveScene().buil.. 2024. 1. 4.
01.03 (TIL-Unity) 이동하는 발판 제작 이동하는 발판 제작: 발판이 되는 오브젝트에 Rigidbody2D 컴포넌트를 추가하고, 특정 경로를 따라 이동하도록 스크립트를 작성 사용한코드 더보기 using UnityEngine; public class MovingPlatform : MonoBehaviour { public Transform[] points; // 이동할 위치들을 저장하는 배열. Unity 에디터에서 설정 가능 public float speed = 2f; // 이동 속도. Unity 에디터에서 조절 가능 private int currentPointIndex = 0; // 현재 목표 위치의 인덱스를 저장하는 변수 void Update() { // 매 프레임마다 플랫폼을 현재 위치에서 다음 목표 위치(points[cu.. 2024. 1. 3.
01.02 (TIL-Unity) Rigidbody2D 컴포넌트의 velocity 속성(점프관련) 초기코드 더보기 private void Update() { // 매 프레임마다 지면에 있는지 확인 isGrounded = CheckIfGrounded(); } private void FixedUpdate() { // 물리 업데이트에서 이동 적용 ApplyMovement(_movementDirection); } private void Jump() { // 지면에 있을 때만 점프 실행 if (isGrounded) { Debug.Log("Jumping"); _rigidbody.velocity = new Vector2(_rigidbody.velocity.x, jumpForce); } } private void ApplyMovement(Vector2.. 2024. 1. 2.
12.29 (TIL-Unity3D) AI 네비게이션(AI Navigation) AI 네비게이션(AI Navigation)은 인공지능이 게임이나 시뮬레이션 등 가상 환경에서 이동하는 방법을 결정하는 기술. 주로 3D 게임에서 캐릭터나 NPC가 지능적으로 이동하도록 만들어진다. 이를 위해 AI 네비게이션 시스템은 지형, 장애물, 목표 지점 등을 고려하여 적절한 경로를 생성하고 이동하는데 사용 Navigation Mesh (네비게이션 매쉬): 3D 공간을 그리드로 나누어 이동 가능한 지역과 장애물이 있는 지역을 구분하는 매쉬. 캐릭터가 이동할 수 있는 영역과 이동할 수 없는 영역을 정의하고, 이를 기반으로 경로를 계산. Pathfinding (경로 탐색): 캐릭터의 현재 위치에서 목표 지점까지 가장 적절한 경로를 찾는 알고리즘. 주로 A* 알고.. 2024. 1. 2.
12.28 (TIL-Unity3D) [Header]와 [field: Header] [Header]: 이 속성은 일반적으로 필드(Field) 바로 위에 사용. 이것은 Unity 인스펙터에서 해당 필드 위에 라벨을 추가하여 구성 요소를 더 읽기 쉽게 구분할 수 있게 함 예를 들어, [Header("Animations")] public int speed;와 같이 사용할 수 있다. [field: Header]: C# 9.0에서 도입된 field: 타겟팅 지시어를 사용하여 속성(Property)에 직접 헤더를 적용. 일반적인 [Header] 속성은 필드에만 적용되므로, 속성에는 직접 적용할 수 없다. 이를 해결하기 위해 field: 지시어를 사용하여 속성의 백킹 필드에 헤더를 적용할 수 있다. 예를 들어, [field: Header("Animati.. 2023. 12. 28.
12.27 (TIL-Unity3D) 프로빌더(ProBuilder) 프로빌더(ProBuilder)는 Unity의 유용한 에셋 중 하나로, 게임 개발자들이 빠르고 쉽게 3D 모델을 만들고 편집하는 도구입니다. 기본적으로 Unity에서 제공하는 기능으로, 유료 라이선스가 필요 없이 무료로 사용할 수 있다. 프로빌더의 주요 기능과 특징은 다음과 같다: 3D 모델링: 프로빌더는 내장된 도구들을 사용하여 3D 모델을 쉽게 생성할 수 있다. 기본적인 기하 도형(정육면체, 원기둥 등)을 생성하거나, 다른 모델링 도구를 사용하여 더 복잡한 모델을 만들 수 있다. 편집과 수정: 프로빌더는 객체를 선택하고 이동, 회전, 스케일 등을 수행하는 편집 도구를 포함하고 있다. 또한 정점, 엣지, 면 수준에서 세부적인 편집이 가능. UV 매핑: 3D 모델의 텍스처 U.. 2023. 12. 27.
12.26 (TIL-Unity3D) URP 란? Unity의 Universal Render Pipeline의 약자로, 스크립트 가능한 렌더 파이프라인(Scriptable Render Pipeline) Cross-Platform Compatibility: URP는 Unity가 지원하는 모든 플랫폼에서 동작하도록 설계. 이는 모바일, 데스크톱, 콘솔 게임 뿐만 아니라 AR, VR 어플리케이션에도 적합. Performance and Scalability: URP는 성능 및 확장성을 목표로 설계. 특히 저사양 장치에서도 뛰어난 성능을 제공하도록 최적화되어 있다. 또한, 그래픽 설정을 쉽게 조절할 수 있어 다양한 장치에 적합하게 스케일링 할 수 있다. Modern Rendering Features: URP는 현대적인 렌더링 기술을 제공. 이에는 주.. 2023. 12. 26.