💻 Programming (프로그래밍)/Unity | C#
-
Continue를 누르면 일부패키지가 업데이트가 될 수 있어 , 진행중인 프로젝트 였다면 충돌이 날 수 있다. 문제상황 : 에디터 23.3.12.f1버전으로 3D URP 프로젝트를 새롭게 만들었다가 뜸 해결방안 : Continue를 눌렀더니 잘 해결됐다
[Unity] 버그 오류 opening project in non-matching editor installationContinue를 누르면 일부패키지가 업데이트가 될 수 있어 , 진행중인 프로젝트 였다면 충돌이 날 수 있다. 문제상황 : 에디터 23.3.12.f1버전으로 3D URP 프로젝트를 새롭게 만들었다가 뜸 해결방안 : Continue를 눌렀더니 잘 해결됐다
2024.03.21 -
ECS - Entity Component System 베이직 튜토리얼 [Best Tips & Tricks by Unity Japan] 이라는 영상을 보고 배운 내용 정리입니다. 프로젝트 설명 3개의 인형이 있습니다. 첫번째 인형은 원형으로 "걷는 인형" 두번째 인형은 좌우로 "춤추는 인형" 세번째 인형은 "걷는 + 춤추는 + 커졌다가 줄어드는 인형" 입니다. 인형별로 차례대로 어떻게 동작하는지에 대해 간략하게 설명하겠습니다. ECS의 특징으로 각 오브젝트들이 SUB 씬 안에 들어있습니다. Strawman 이 여기서는 인형이라 칭하겠습니다. 첫번째 인형부터 보시겠습니다. 특징으론 Walker Authoring이라는 스크립트를 제외하고 우리가 아는 다른 오브젝트의 규격처럼 나와있습니다. 또 아래 Entity..
[UNITY] ECS (Entity Component System) 기본 튜토리얼ECS - Entity Component System 베이직 튜토리얼 [Best Tips & Tricks by Unity Japan] 이라는 영상을 보고 배운 내용 정리입니다. 프로젝트 설명 3개의 인형이 있습니다. 첫번째 인형은 원형으로 "걷는 인형" 두번째 인형은 좌우로 "춤추는 인형" 세번째 인형은 "걷는 + 춤추는 + 커졌다가 줄어드는 인형" 입니다. 인형별로 차례대로 어떻게 동작하는지에 대해 간략하게 설명하겠습니다. ECS의 특징으로 각 오브젝트들이 SUB 씬 안에 들어있습니다. Strawman 이 여기서는 인형이라 칭하겠습니다. 첫번째 인형부터 보시겠습니다. 특징으론 Walker Authoring이라는 스크립트를 제외하고 우리가 아는 다른 오브젝트의 규격처럼 나와있습니다. 또 아래 Entity..
2023.12.07 -
간단히 상속 할 수 있는 기본적인 인터페이스 혹은 추상화 클래스를 만든다음 그 기능을 메인에서 사용하는 것 ex) 아래 코드 예시 공격방법(interface 클래스, 인터페이스는 주로 앞에 I를 붙혀줍니다) 근접공격, 원거리공격 - 이라는 인터페이스를 상속받은 공격 클래스를 생성 그다음 PlayerCharacter이란 클래스를 객체로 만들어 어택을 사용하는 느낌 using System; // 전략 인터페이스 public interface IAttackStrategy { void Attack(); } // 공격 전략 1 public class MeleeAttack : IAttackStrategy { public void Attack() { Console.WriteLine("근접 공격!"); } } // 공..
[Unity][C#][Design Pattern] Strategy pattern - 전략 패턴간단히 상속 할 수 있는 기본적인 인터페이스 혹은 추상화 클래스를 만든다음 그 기능을 메인에서 사용하는 것 ex) 아래 코드 예시 공격방법(interface 클래스, 인터페이스는 주로 앞에 I를 붙혀줍니다) 근접공격, 원거리공격 - 이라는 인터페이스를 상속받은 공격 클래스를 생성 그다음 PlayerCharacter이란 클래스를 객체로 만들어 어택을 사용하는 느낌 using System; // 전략 인터페이스 public interface IAttackStrategy { void Attack(); } // 공격 전략 1 public class MeleeAttack : IAttackStrategy { public void Attack() { Console.WriteLine("근접 공격!"); } } // 공..
2023.10.13 -
using UnityEngine; /// /// 이 싱글톤 클래스는 싱글톤으로 되길 원하는 스크립트에 상속만 하면 되는 스크립트입니다 /// /// MonoBehaviour을 상속받는 스크립트 이름 [DisallowMultipleComponent] // Unity 어트리뷰트로, 해당 스크립트가 동일한 게임 오브젝트에 여러 번 추가되는 것을 방지합니다 public abstract class SingleTon : MonoBehaviour where T : MonoBehaviour { private static T m_instance; private static bool m_isApplicationQuit = false; public static T Instance { get { if ( true == m_i..
[Unity][C#][Design pattern] Singleton 기법을 더욱 편리하게using UnityEngine; /// /// 이 싱글톤 클래스는 싱글톤으로 되길 원하는 스크립트에 상속만 하면 되는 스크립트입니다 /// /// MonoBehaviour을 상속받는 스크립트 이름 [DisallowMultipleComponent] // Unity 어트리뷰트로, 해당 스크립트가 동일한 게임 오브젝트에 여러 번 추가되는 것을 방지합니다 public abstract class SingleTon : MonoBehaviour where T : MonoBehaviour { private static T m_instance; private static bool m_isApplicationQuit = false; public static T Instance { get { if ( true == m_i..
2023.10.11 -
자세한 사항은 이 링크에 나와있습니다. 2024년부터 새로운 요금정책을 사용하겠다던 유니티가 요새 난리죠.. 국내 해외 내놓으라 할 것 없이, 유니티를 주력 플랫폼으로 사용하고 있는 기업, 개발자들은 정말 청천벽력같은 소식이 아닐래야 아닐 수가 없는데요. 간단하게 찾아보면서 알아보도록 하겠습니다 우선 유니티가 새롭게 가격정책을 바뀌는 점은 세가지로 쉽게 알아 볼 수 있겠는데요. 1. 게임 설치 횟수 기준으로 RunTime 요금이 도입된다. 2. 이 Runtime 요금은 다음 두 가지 조건에 해당하는 게임에 적용된다.Unity Personal, Unity Plus : 최근 12개월동안 $200,000 이상의 매출 And 총 누적 설치 횟수가 200,000회 이상인 게임 Unity Pro , Unity En..
[Unity] 새롭게 개정되는 유니티의 가격 정책, 런타임 요금제(0923수정)자세한 사항은 이 링크에 나와있습니다. 2024년부터 새로운 요금정책을 사용하겠다던 유니티가 요새 난리죠.. 국내 해외 내놓으라 할 것 없이, 유니티를 주력 플랫폼으로 사용하고 있는 기업, 개발자들은 정말 청천벽력같은 소식이 아닐래야 아닐 수가 없는데요. 간단하게 찾아보면서 알아보도록 하겠습니다 우선 유니티가 새롭게 가격정책을 바뀌는 점은 세가지로 쉽게 알아 볼 수 있겠는데요. 1. 게임 설치 횟수 기준으로 RunTime 요금이 도입된다. 2. 이 Runtime 요금은 다음 두 가지 조건에 해당하는 게임에 적용된다.Unity Personal, Unity Plus : 최근 12개월동안 $200,000 이상의 매출 And 총 누적 설치 횟수가 200,000회 이상인 게임 Unity Pro , Unity En..
2023.09.19 -
이번 신규 게임 프로젝트를 진행하던 중, 맵 레벨 디자인을 하게되었는데요! 이때 데이터를 저장하는 방법을 고민하다가 데이터를 손쉽게 처리하기위한 스크립터블 오브젝트를 사용하게 되었습니다. 우선 모르는 분들을 위해 간단하게 설명하자면 스크립터블 오브젝트란? 말그대로 오브젝트 입니다. 하지만 스크립트를 통해 손쉽게 우리가 사용할 수 있는 에셋 즉 오브젝트로 만들어 주는 것이죠! 만드는 방법 2가지를 소개해드리겠습니다. 첫번째 방법 using UnityEngine; [CreateAssetMenu(fileName = "NewScriptableObject", menuName = "ScriptableObjects/New ScriptableObject")] public class MyScriptableObject :..
[Unity] 스크립터블 오브젝트(Scriptable Object)로 데이터 저장, 읽기를 손쉽게!이번 신규 게임 프로젝트를 진행하던 중, 맵 레벨 디자인을 하게되었는데요! 이때 데이터를 저장하는 방법을 고민하다가 데이터를 손쉽게 처리하기위한 스크립터블 오브젝트를 사용하게 되었습니다. 우선 모르는 분들을 위해 간단하게 설명하자면 스크립터블 오브젝트란? 말그대로 오브젝트 입니다. 하지만 스크립트를 통해 손쉽게 우리가 사용할 수 있는 에셋 즉 오브젝트로 만들어 주는 것이죠! 만드는 방법 2가지를 소개해드리겠습니다. 첫번째 방법 using UnityEngine; [CreateAssetMenu(fileName = "NewScriptableObject", menuName = "ScriptableObjects/New ScriptableObject")] public class MyScriptableObject :..
2023.09.15 -
https://assetstore.unity.com/packages/tools/generative-ai/layer-ai-257854 Layer AI | 생성형 AI | Unity Asset Store Get the Layer AI package from Layer AI and speed up your game development process. Find this & other 생성형 AI options on the Unity Asset Store. assetstore.unity.com 유니티 에셋에 새롭게 추가된 AI 카테고리를 구경하다가 발견한 에셋입니다. Layer AI 라는 이 에셋은 요새 핫한 생성형 이미지를 가지고 게임스타일로 바꾸어 우리의 게임 리소스로 활용시키는게 목표인데요 즉 "리소스 걱..
[Unity] Asset - Layer AI 생성한 이미지를 내 게임에 사용하자~https://assetstore.unity.com/packages/tools/generative-ai/layer-ai-257854 Layer AI | 생성형 AI | Unity Asset Store Get the Layer AI package from Layer AI and speed up your game development process. Find this & other 생성형 AI options on the Unity Asset Store. assetstore.unity.com 유니티 에셋에 새롭게 추가된 AI 카테고리를 구경하다가 발견한 에셋입니다. Layer AI 라는 이 에셋은 요새 핫한 생성형 이미지를 가지고 게임스타일로 바꾸어 우리의 게임 리소스로 활용시키는게 목표인데요 즉 "리소스 걱..
2023.09.13 -
가끔씩 Android Resolve가 제대로 안되면서 오류가 생기더라구요. 이때 한참 고생했는데 제가 해결한 방법을 알려드리겠습니다. 1. Preference - Exteranl Tools의 밑 JDK, Android SDK, NDK 경로가 제대로 되어있는지 확인합니다. 2. Project Setting - Player - Publishing Settings칸 여기에서 * Custom Main Gradle Template * Custom Gradle Properties Template 둘다 모두 체크를 해주시면 됩니다. 3. 1,2를 하신 이후 Assets- External Dependency Manager - Android Resolver - Force Resolve 인 Force Resolve를 하였..
[Unity] Gradle failed to fetch dependencies, Android Resolve 오류가끔씩 Android Resolve가 제대로 안되면서 오류가 생기더라구요. 이때 한참 고생했는데 제가 해결한 방법을 알려드리겠습니다. 1. Preference - Exteranl Tools의 밑 JDK, Android SDK, NDK 경로가 제대로 되어있는지 확인합니다. 2. Project Setting - Player - Publishing Settings칸 여기에서 * Custom Main Gradle Template * Custom Gradle Properties Template 둘다 모두 체크를 해주시면 됩니다. 3. 1,2를 하신 이후 Assets- External Dependency Manager - Android Resolver - Force Resolve 인 Force Resolve를 하였..
2023.07.11