전체 글

관심 분야는 AR, VR, 게임이고 유니티 공부 중 입니다. (정보처리기사,컴퓨터그래픽스운용기능사 취득)
·Unity/Diary
싱글톤이란? Unity 싱글톤 패턴은 특정 클래스가 게임 수명 기간 동안 하나의 인스턴스만 갖도록 하기 위해 Unity 게임 개발에서 일반적으로 사용되는 디자인 패턴이다. 이 패턴은 게임 내에서 전역적으로 액세스할 수 있어야 하는 단일 리소스나 시스템(예: 게임 매니저, 오디오 매니저 또는 게임 설정 매니저)을 관리해야 할 때 유용하다.그치만.. 너무 남발하면 안된다.코드싱글톤을 제네릭으로 만들어주고using UnityEngine;public class Singleton : MonoBehaviour where T : MonoBehaviour{ private static T _instance; public static T Instance { get { ..
·Unity/Diary
디자인 패턴이란?디자인 패턴은 소프트웨어 디자인에서 자주 발생하는 문제들을 해결하기 위한 재사용 가능한 방법이다. 이러한 패턴들은 공통된 설계 문제들을 효과적으로 해결할 수 있도록 검증된 방법론을 제공하며, 코드의 유지보수성, 확장성, 이해성을 향상시다. 디자인 패턴 종류 1) 생성 패턴(Creational Pattern)생성패턴은 객체를 생성하는데 필요한 패턴들이다.객체의 생성을 캡슐화하여 전체적인 프로그램 구조에 영향을 주지 않으면서 확장성을 갖게 만든 패턴이다. 팩토리 메서드 패턴(Factory Methods Pattern)추상 팩토리 패턴(Abstract Factory Pattern)싱글톤 패턴(Singleton Pattern)빌더 패턴(Builder Pattern)프로토타입 패턴(Prototyp..
·Unity/Diary
스크립터블 오브젝트(ScriptableObject)스크립트 기반의 데이터 컨테이너이다. 데이터를 저장하고 관리하기 위한 컨테이너 느낌이다. 장점:메모리 관리와 성능 향상: 스크립터블 오브젝트는 인스턴스화된 MonoBehaviour보다 경량화되어 있어 메모리 사용량이 적고, 여러 인스턴스 간 데이터 공유가 좋다.데이터 중심 설계: 주로 데이터를 저장하고 관리하는 용도로 설계되어 있어, 게임의 다양한 설정, 상태, 아이템 등을 쉽게 표현하고 변경할 수 있다. (기획자도 쉽게 변경가능)재사용성: 데이터를 포함하는 스크립터블 오브젝트는 프로젝트 전반에서 재사용할 수 있다.직렬화와 저장: 유니티의 직렬화 기능을 이용해 파일로 저장하거나 네트워크를 통해 전송할 수 있다.  단점:디자인 및 구현 복잡성: 스크립터블 ..
·Language/C#
[ 문제 ]”꼬불꼬불 꼬불꼬불 맛좋은 라면 라면이 있기에 세상 살맛나 하루에 열개라도 먹을 수 있어 후루룩 짭짭 후루룩 짭짭 맛좋은 라면”예찬이는 라면을 매우 좋아한다. 선린 최고의 라면 애호가답게, 예찬이는 한 끼에도 라면 여러 개를 흡입하고는 한다.평소 라면을 가장 맛있게 끓일 수 있는 물의 양이 궁금했던 예찬이는 오랜 실험 끝에 마침내 아래와 같은 라면 공식을 만드는 데 성공했다. 단, W_i는 필요한 물의 양, A_i는 라면 계수, B_i는 기본 물의 양, X_i는 끓일 라면 수를 나타낸다.예찬이가 라면을 끓이는 횟수 N과 i번째로 라면을 끓일 때의 라면 계수 A_i, 기본 물의 양 B_i, 끓일 라면 수 X_i가 주어질 때, 예찬이를 위해 라면 공식에 따라 필요한 물의 양 W_i을 계산해 보자...
·Unity/Diary
개요레퍼런스 게임: 길건너 친구들 플레이어가 다양한 장애물을 피하면서 길을 건너는 것이 목표입니다.플레이어는 끊임없이 움직이는 장애물을 피해 최대한 먼 거리를 이동해야 합니다.  주요 기능 키보드 입력 처리방향키를 이용하여 플레이어가 좌우 위치를 바꾸거나 앞으로 이동할 수 있도록 하는 기능입니다. 한번의 입력에 한칸씩 이동합니다.카메라가 플레이어에게 고정됩니다.오브젝트 생성 기능자동차, 나무, 도로 등의 오브젝트가 플레이 시 자동으로 생성/삭제가 됩니다.충돌 기능충돌 시 게임오버가 됩니다.게임의 화폐인 사과 아이템과 충돌 시 가지고 있는 사과의 숫자가 올라갑니다.애니메이션 기능플레이어 캐릭터가 가만히 있을 때 크기가 작아졌다 커졌다 하며 동적인 느낌을 받습니다.이동할 때 점프를 했다가 중력을 받아 내려와..
·Unity
무엇을 기준으로?플레이어 오브젝트의 Input에 따라 맵이 갱신됨. //PlayerComtroller.cs의 Update 메서드 // 플레이어의 현재 위치를 기반으로 맵을 갱신 mapManager.MoveMap(transform.position.z);  맵은 어떻게 겹치지않게?맵은 Z방향으로 1씩 누적해서 그 좌표에 생성되면 됨.똑같이 Z의 Scale이 1이라면 그냥 따로 정해줄 필요가 없겠지만 나는 그라운드별 크기가 다 다르기 때문에 변수를 만들어줘서 넣어줬다.예를들면 이런식으로 말이다. // CarRoad.cs public int scaleNum = 2; 그러면 이제 MapManager.cs가 참조를 해서 ScaleNum의 값을 저장한다.using System.Coll..
석영
유석영의 개발공부