2025/01 40

Unity 개인 공부(2025-01-23)

InputActionAsset asset = new InputActionAsset();InputActionAsset anotherReference = asset;// asset과 anotherReference는 같은 객체를 참조하....답답합니다...예? 왜냐구요? 이게.....input 시스템은 초보자가 하기에는 어려운 개념이긴 하지만, 사실상 기초 단계에서는 무조건 잡고 가야하는 개념이니....예...뭐....해야죠...그전에 참조라는 것을 배워보겠습니다.public InputActionAsset inputActions; private InputAction jumpAction;이런거 이런거...그때 설명을 했지만....이게 아직 잘 이해가 안 가서...찾아보니 참조라는 개념이더군요.먼저, C#에서 클..

Unity 개인 공부 2025.01.23

스파르타 AI-8기 TIL(1/23)-TeamProject

바쁘다 바빠.....C#공부하랴 프로젝트 하랴 어휴오늘은 수정만 했습니다.1. 프롬프트 개선먼저, 이 스크립트에서 값은 fetch를 통해 제대로 전달이 된 것을 개발자 도구를 통해 확인하였지만, 어디에선가 문제가 있습니다.계속해서 찾아보니 칼로리 함수에 문제가 있다는 것을 발견하였습니다.def calories_calculator(time, response, food_time, age, is_on_diet, chosen_language = 'Korean', breakfast_time = None, lunch_time = None): global nutrition_file global output if time == 'breakfast':​예를 들어 여기에서, if time == 'break..

카테고리 없음 2025.01.23

Unity 개인 공부(2025-01-22)

자자자, 사실 input 개념이 초보자 단계는 아닙니다.Input System의 새로운 설계 이전 Unity의 Input Manager는 간단히 Input.GetAxis() 또는 Input.GetKey()로 입력을 처리했기 때문에 초보자가 쉽게 접근할 수 있었습니다. 반면, 새로운 Input System은 더 많은 기능과 확장성을 제공하기 위해, 객체 지향과 데이터 중심 설계를 도입했습니다. 이로 인해 초보자에게는 복잡해 보입니다. 추상화된 개념 InputActionAsset처럼 에디터와 코드가 연동되는 시스템은 초보자에게 생소한 개념입니다. "왜 코드는 객체를 직접 만들지 않고 에디터에서 불러오는가?"라는 흐름 자체가 초보자에게는 직관적이지 않습니다. 기본적인 프로그래밍 이해 필요 InputAction..

Unity 개인 공부 2025.01.22

Unity 개인 공부(2025-01-21)

자, 저희 C#의 인스턴스의 개념이 뭔지 알아봅시다. 참고로 이 부분을 자세히 들여다봐야 어제 했던 내용이 이해가 갑니다.먼저, 클래스와 인스턴스를 알아야합니다.C#에서의 클래스는 Python과 다르게 다가옵니다. 근데 이전에 저희가 클래스를 만드는 법에 대해 배웠기 때문에.....하지만 거기에 숨겨진 의미가 있습니다.기본 구조public class Dog{ public string name; public Dog(string name) { this.name = name; }}// 인스턴스 만들기Dog dog1 = new Dog("Buddy"); // "Buddy"라는 이름을 가진 Dog 클래스의 인스턴스를 만들었어요.​C#에서의 인스턴스는 클래스를 바탕으로 실제 객체를..

Unity 개인 공부 2025.01.21

스파르타 AI-8기 TIL(1/21)-TeamProject

오늘 배운점..클래스는 타입이다? 사실 클래스는 객체 자체이며, 클래스의 인스턴스들은 그 클래스 타입을 가지게 됩니다.1. 클래스가 타입인 이유 파이썬에서 모든 것은 객체입니다. 클래스도 객체로 취급되며, type이라는 메타클래스의 인스턴스입니다. 인스턴스를 생성하면, 그 인스턴스는 해당 클래스의 타입을 가지게 됩니다.class MyClass: pass# 클래스는 type의 인스턴스print(type(MyClass)) # # 클래스의 인스턴스는 MyClass의 인스턴스instance = MyClass()print(type(instance)) # 클래스 자체를 타입처럼 사용하기 클래스를 함수처럼 호출하여 동적으로 객체를 생성할 수 있습니다. 이는 타입 시스템처럼 작동할 수 있음을 보여줍니다.cla..

카테고리 없음 2025.01.21

Unity 개인 공부(2025-01-20)

오늘은 계속 Disable에 대해 공부해 보겠습니다.활성화/비활성화는 왜 필요할까요? 게임 성능 최적화 비활성화된 오브젝트는 업데이트나 렌더링에 영향을 주지 않으므로, 성능을 높이는 데 유용합니다. 예: 멀리 떨어진 적 캐릭터를 비활성화하여 연산을 줄임. 게임 연출 특정 상황에서 오브젝트를 숨기거나 나타나게 하여 게임의 연출을 만듭니다. 예: 몹이 등장할 때 활성화, 쓰러지면 비활성화.논리적 흐름 제어 필요할 때만 오브젝트나 컴포넌트를 작동하도록 제어할 수 있습니다. 예: 보스의 특정 페이즈가 시작되면 오브젝트 활성화.using UnityEngine;public class Lifecycle : MonoBehaviour{ private void Awake() { Debug.Log(..

Unity 개인 공부 2025.01.20

Unity 개인 공부(2025-01-19)

player player = new player();player.id = 0;player.name = "응애";player.strength = 52.2f;player.weapon = "검";player.talk();player.HasWeapon();클래스자, 여기서 클래스는 Python의 클래스와 다릅니다. Python에서는 비슷한 기능을 가진 함수들의 모음이라면, 여기서는 하나의 사물(오브젝트)와 대응하는 로직입니다.일단 클래스가 어떻게 생겼는지는 위에 한번 나와 있습니다.public class NewMonoBehaviourScript : MonoBehaviour​일단, 파이썬과 비슷하게 class를 사용해 클래스를 선언합니다.자 참고로 시작하기전 알아야 할 사항이 있습니다.Python과 다르게 Uni..

Unity 개인 공부 2025.01.19

스파르타 AI-8기 TIL(1/19)-TeamProject

다른건 아니고 그냥 하면서 조금 배운 부분이 있어서 풀어볼까 합니다.상속에서 super().입니다.1. super()는 무엇인가? super()는 부모 클래스의 메서드나 속성에 접근하기 위한 Python의 내장 함수입니다. 자식 클래스에서 부모 클래스의 메서드나 속성에 접근하고자 할 때 사용됩니다. super()는 자식 클래스에서 부모 클래스의 메서드나 속성을 호출할 때 사용하는 특별한 방법입니다. super()를 사용하면 자식 클래스가 어떤 부모 클래스에서 상속받았는지 파악하고, 해당 부모 클래스의 메서드를 호출할 수 있습니다.2. 왜 super()를 사용하나요? 자식 클래스에서 부모 클래스의 메서드나 초기화 기능을 재사용하고자 할 때 사용합니다. 이 방법은 중복된 코드 작성을 피하고, 부모 클래스의 ..

카테고리 없음 2025.01.19