| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | ||
| 6 | 7 | 8 | 9 | 10 | 11 | 12 |
| 13 | 14 | 15 | 16 | 17 | 18 | 19 |
| 20 | 21 | 22 | 23 | 24 | 25 | 26 |
| 27 | 28 | 29 | 30 |
- 점상
- 게임제작
- c#
- This is EVE
- 유니티
- 온라인
- 유루캠
- coroutine
- 데포르메
- 라즈베리파이
- DX라이브러리
- 언성스토리
- 킥스타터
- 천체사진
- 스카이트래커
- 리눅스
- C언어
- centos
- 미니적도의
- 이브온라인
- UI
- 이브뉴스24
- 오브젝트이동
- 포크스푼
- inputsystem
- 번역
- 미타니
- 자율비행
- 오픈스택
- 이브
- Today
- Total
목록전체 글 (58)
게임개발 예제모음
○ 기본형태 ※ 확장메소드는 스태틱 클래스 내부에서 작성public static void 함수명(this 자료형 변수명, 파라메터.....){ 변수명과 기타 파라메터를 통한 연산} ○ 예제 - 확장메소드 클래스using UnityEngine;public static class ExtentionClass{ public static void Multiply(this float firstNumber, float secondNumber) // "this"는 첫번째 파라메터에서만 사용 가능 { Debug.Log(firstNumber * secondNumber); }} - 확장메소드 호출using UnityEngine;public class ExampleContextMen..
○ 사용 목적프로젝트를 실행시키지 않고 인스펙터의 컴포넌트 메뉴에서 함수를 직접 실행하여 테스트 ○ 기본 형식[ContextMenu("메뉴명")]void 함수명(){ 각종 연산} ○ 예제using UnityEngine;public class ExampleContextMenu : MonoBehaviour{ [ContextMenu("Print Console")] void TextPrint() { Debug.Log("Hello World"); }} ○ 사용방법 ※ 스크립트 작성 이후 게임오브젝트에 어태치 된 상태를 가정한다 - 컴포넌트로 추가된 스크립트의 오른쪽"..."을 클릭하여 컨텍스트 메뉴 열기 - 메뉴에 추가된 함수 실행 - 실행결과
○ 상황 다음과 같은 코드를 실행하여 배열에 값을 대입하려 하면 null참조 에러가 발생한다.using UnityEngine;public class ExampleIClass : MonoBehaviour{ [SerializeField] public ForTestClass[] arrayClass; void Start() { arrayClass = new ForTestClass[10]; for (int i = 0; i ○ 발생 원인 - C#에서 변수는 "참조형식"과 "값형식" 두가지의 형태를 가진다 - Class의 경우 "참조형식"이 되며 초기화만 한 상태에서는 메모리는 값을 가지는게아닌 값을 가지는 주소를 참조만 하게 된다 - 때문에 값이 없는 상태에서 배열의..
○ 구현목표- 플레이어가 이동하며 필드에 떨어진 아이템에 접촉하면 아이템을 획득- 획득과 동시에 애니메이션 클립/효과 재생- 아이템 오브젝트와 애니메이션 클립은 이벤트 발생 이후 제거- 플레이어 오브젝트는 이동에 관련된 기능은 설정 완료된것으로 가정한다. ※ 오브젝트 이동 참고자료2025.06.03 - [유니티 메모장] - InputSystem (RigidBody) 이동 예제 InputSystem (RigidBody) 이동 예제2025.06.03 - [유니티 메모장] - 인풋시스템을 통한 오브젝트 이동 (ActionMap) 인풋시스템을 통한 오브젝트 이동 (ActionMap)○ 오브젝트에 Player Input 컴포넌트 추가○ Action에서 액션맵편집 (확인) 필요○capsuleer.tistory.c..
○ 구현목표- 예를 들어 특정 배열의 인덱스 번호를 찾기 위해 for와 if문을 활용하는 경우가 많이 있다. - 이럴경우 매번 인덱스 번호를 위해 반복 - 조건문을 사용하는 것은 코드도 지저분해지고 비효율적이다- 해당 구문을 함수로 만들어서 인덱스 번호만 반환하게 만들어 깔끔한 코드를 만들어보고 싶다. ○ 사전 준비- 현재 tempArray는 50개의 int 값을 가지며 0부터 49까지 각각 1~50의 값을 가진다. ※ 이 배열은 이미 초기화 하여 각 값까지 전부 대입이 이루어진 상태라고 가정한다.- 사용자는 특정 정수값을 가지는 인덱스번호를 받아오는 함수를 작성하려한다. ○ 코드 작성public int CheckIndexNumber(int value) //매개변수로 int형 value를 사용한..
○ 구현목표- 유니티의 스크롤뷰는 마우스(또는 터치)등을 통한 드래그 또는 스크롤바를 조작하여 동작한다- 이 포스팅에선 UI상 목록을 버튼(Button)으로 구현하며 현재 보이는 영역보다 목록이 더 많아 스크롤이 필요한 경우를 한정한다.- 또한 버튼의 이동은 컨트롤러 또는 키보드등 InputSystem의 Vector2값으로 이동하는 경우를 위주로 서술한다. ※ 어차피 마우스나 터치 조작은 다른 설정 없이도 잘 작동하기 때문이다. ○ 또한 이 포스팅은 아래의 포스팅에서 설명한 현재 선택중인 버튼을 확인하는 EventSystem기능을 활용한다.2025.06.05 - [유니티 메모장] - 현재 선택중인 버튼 확인 현재 선택중인 버튼 확인2025.06.04 - [유니티 메모장] - UI만들기 : 하위 메뉴버튼..