분류 전체보기
Unity에서 게임오브젝트를 찾는 방법 1
Unity에서 게임오브젝트를 찾는 방법은 여러 가지가 있습니다. 이 글에서는 GameObject.Find, GameObject.FindWithTag, GameObject.FindGameObjectWithTag 세 가지 메서드를 중심으로 설명하겠습니다. 이들 메서드는 오브젝트의 이름이나 태그를 기반으로 원하는 게임오브젝트를 검색하는 데 사용됩니다. GameObject.Find 이름을 통해 게임오브젝트를 찾아 반환합니다. GameObject player = GameObject.Find("Player"); GameObject.FindWithTag 지정된 태그를 가진 게임오브젝트를 찾아 반환합니다. GameObject enemy = GameObject.FindWithTag("Enemy"); GameObject...
UnityEditor에서의 Reset과 OnValidate
Unity를 사용하면서 커스텀 스크립트를 작성할 때, 종종 Reset 및 OnValidate와 같은 몇몇 특별한 메서드들을 발견하게 됩니다. 이러한 메서드들은 에디터에서 작업을 할 때 유용한 도구로 작용할 수 있습니다. 이 포스트에서는 Reset과 OnValidate 메서드에 대해 자세히 알아보겠습니다. Reset 메서드 Reset 메서드는 컴포넌트의 컨텍스트 메뉴에서 "Reset" 옵션을 선택하거나, 컴포넌트를 처음 게임 오브젝트에 추가했을 때 호출됩니다. 활용 방법: 초기 설정 값을 설정할 때 사용자가 스크립트의 값들을 초기 상태로 돌리고 싶을 때 using UnityEngine; public class SampleComponent : MonoBehaviour { public int sampleVal..
스크립트를 통해 게임 오브젝트에 컴포넌트 추가하기
Unity 엔진에서는 사용자가 Editor 환경에서 드래그 앤 드롭으로 컴포넌트를 추가할 수 있지만, 때로는 스크립트를 통해 동적으로 컴포넌트를 추가해야 할 경우가 있습니다. 이번 포스팅에서는 스크립트를 사용하여 게임 오브젝트에 컴포넌트를 추가하는 방법에 대해 알아보겠습니다. 기본 컴포넌트 추가 방법 Unity에서 스크립트를 통해 컴포넌트를 추가하는 것은 매우 간단합니다. AddComponent 메소드를 사용하면 됩니다. Rigidbody rb = gameObject.AddComponent(); 위 예제는 게임 오브젝트에 Rigidbody 컴포넌트를 추가하고, 그 참조를 rb 변수에 저장하는 방법을 보여줍니다. 제네릭을 활용한 동적 컴포넌트 추가 스크립트의 유연성을 활용하여 다양한 타입의 컴포넌트를 동적..
Setting : Resolution and Presentation
Unity 개발자로서 게임의 퀄리티를 높이는 것은 중요한데, 그 중에서도 Resolution and Presentation 설정은 게임이 어떻게 보이고 느껴지는지에 큰 영향을 미칩니다. Unity의 Project Settings 내의 Player 섹션에서는 이러한 설정들을 할 수 있습니다. 그럼 Resolution and Presentation 내의 주요 프로퍼티들에 대해 자세히 알아보겠습니다. 1. Default Screen Width & Default Screen Height 이 두 옵션은 게임이 처음 실행될 때의 기본 화면 너비와 높이를 설정합니다. 플레이어가 따로 해상도 설정을 변경하기 전까지 이 설정값이 기본으로 사용됩니다. 2. Default Is Full Screen 이 옵션을 체크하면 게임..
IEnumerable 사용 팁
1. 요소의 유무 확인: Count() != 0 보다는 Any()를 사용하자 자주 IEnumerable에 요소가 있는지 확인할 때 Count() != 0을 사용하는 경우가 있습니다. 그러나 Count()는 각 요소의 수를 O(n)의 시간에 계산합니다. 즉, 요소가 n개 있을 경우 n번의 연산이 필요하게 됩니다. public static int Count(this IEnumerable enumerable) { var count = 0; using(var enumerator = enumerable.GetEnumerator()) { while (enumerator.MoveNext()) count++; } return count; } 이와 대조적으로, Any()는 O(1)의 시간에 요소의 유무만을 확인합니다. ..
백준 알고리즘 1264번 : 모음의 개수
1차 시도 ( 실패 ) 더보기 namespace BaekJoon; public class VowelCount { static char[] vowel = new char[] { 'a', 'e', 'i', 'o', 'u' }; static char[] delimiter = { '!', '\n', '?', '.' }; static List inputText = new List(); public static void Main() { while (true) { Input(); if (inputText.Last().Contains("#")) break; } foreach (string text in inputText) { if (string.IsNullOrEmpty(text)) continue; Console.Wr..
Main 함수란??
안녕하세요, 여러분! 오늘은 C# 프로그래밍 언어에서 가장 기본적인 부분 중 하나인 Main 함수에 대해 자세히 알아보겠습니다. 프로그래밍을 처음 시작하는 분들도 이해하기 쉽게 설명하려고 노력했으니, 함께 따라와 주세요! Main함수란? C#에서의 Main 함수는 프로그램의 시작점(entry point)입니다. 즉, 운영 체제가 프로그램을 실행할 때 가장 먼저 호출하는 함수입니다. 여러분이 작성한 코드 중 어디서부터 실행을 시작해야 할지를 알려주는 역할을 합니다. Main 함수의 구조 기본적인 Main 함수의 구조는 다음과 같습니다 using System; class Program { static void Main(string[] args) { // 프로그램 실행 시 수행될 코드 } } using Sys..
Flutter : 다양한 스타일의 버튼
Flutter는 앱의 사용성을 향상시키기 위한 다양한 버튼 스타일을 제공합니다. 이번 포스트에서는 Flutter에서 사용할 수 있는 다양한 버튼 유형들에 대해 자세히 살펴보겠습니다. ElevatedButton 이전에는 RaisedButton으로 알려져 있던 이 버튼은 눌렀을 때의 입체감을 주는 디자인을 가지고 있습니다. ElevatedButton( onPressed: () { // 버튼 클릭 시 실행될 코드 }, child: Text('ElevatedButton'), ) TextButton FlatButton의 새로운 이름인 TextButton은 배경 없이 텍스트만으로 구성된 간단한 버튼입니다. TextButton( onPressed: () { // 버튼 클릭 시 실행될 코드 }, child: Text(..