반응형

개발 148

유니티 인보크(Invoke)란?

1. 인보크란? Unity에서 '인보크(=호출)'이란 특정 함수나 메서드의 실행을 일정 지연 후 또는 지정된 시간 간격으로 예약할 수 있는 메서드를 말합니다. 인보크는 주로 다른 이벤트가 발생할 때까지 지연시키거나 일정한 간격으로 반복적으로 메서드를 실행할 때 자주 사용됩니다. 또한 복잡한 타이머나 수동 추적 없이도 나중에 코드를 실행할 수 있는 편리한 방법을 제공합니다. 2. 인보크의 종류 Unity의 인보크 기능은 크게 두 가지 방식으로 사용할 수 있습니다 지연된 실행: 인보크을 사용하여 특정 지연 시간 후에 함수나 메서드를 실행할 수 있습니다. 이 기능은 특정 동작을 수행하기 전에 지연을 도입하려는 경우에 유용합니다. 예를 들어, 몇 초 후에 화면에 메시지를 표시하거나 짧은 지연 후에 게임플레이 이..

개발/유니티 2023.06.12

유니티 UGUI란?

1. UGUI란? Unity UGUI(Unity 사용자 인터페이스)는 Unity 게임 엔진에 내장된 UI 시스템으로, Unity 프로젝트에서 대화형 사용자 인터페이스를 제작할 수 있는 다용도의 사용자 친화적인 프레임워크를 제공합니다. UGUI는 시각적으로 매력적이고 반응성이 뛰어난 사용자 인터페이스를 디자인하고 개발할 수 있는 다양한 UI 컴포넌트, 컨트롤, 기능을 제공합니다. 2. UGUI의 기능 UI 컴포넌트: UGUI는 사용자 인터페이스 제작을 위한 빌딩 블록 역할을 하는 다양한 UI 컴포넌트를 제공합니다. 이러한 컴포넌트에는 버튼, 텍스트 요소, 이미지, 슬라이더, 스크롤 뷰, 입력 필드, 드롭다운 메뉴 등이 포함됩니다. 각 구성 요소는 특정 디자인 요구 사항에 맞게 사용자 정의하고 구성할 수 있..

개발/유니티 2023.06.12

유니티 NGUI란?

1. NGUI란? Unity NGUI(차세대 UI)는 Unity 게임 엔진의 사용자 인터페이스(UI) 프레임워크를 말합니다. NGUI는 Unity 프로젝트에서 인터랙티브하고 시각적으로 매력적인 사용자 인터페이스를 제작할 수 있도록 향상된 커스터마이징 가능한 UI 기능을 제공하도록 설계되었습니다. 2. NGUI의 주요 기능 향상된 UI 기능: NGUI는 Unity에서 제공하는 표준 UI 컴포넌트를 뛰어넘는 다양한 UI 요소와 컨트롤을 제공합니다. 여기에는 드래그 가능한 패널, 스크롤 뷰, 그리드, 슬라이더, 버튼, 레이블 등과 같은 고급 기능이 포함됩니다. 이러한 요소를 쉽게 커스터마이즈하고 애니메이션을 적용하여 풍부하고 인터랙티브한 사용자 인터페이스를 제작할 수 있습니다. 스프라이트 기반 그래픽: NGU..

개발/유니티 2023.06.12

유니티 순운동학(Forward Kinematics, FK)란?

1. 순운동학이란? 유니티에서 포워드 키네마틱(FK)은 컴퓨터 그래픽과 애니메이션에서 관절의 회전을 기반으로 캐릭터의 엔드 이펙터(예: 손, 발 또는 기타 관절 부분)의 위치와 방향을 계산하는 데 사용되는 기법입니다. 여기에는 스켈레톤 계층 구조의 루트에서 엔드 이펙터까지 회전을 전파하여 월드 스페이스에서 최종 변형을 결정하는 작업이 포함됩니다. 또한 유니티에서 포워드 키네마틱(FK)는 트랜스폼 클래스를 사용하여 구현됩니다. Transform 클래스는 체인의 조인트 위치와 방향이 주어졌을 때 리지드 바디 체인 끝의 위치와 방향을 계산하는 다양한 메서드를 제공합니다. 2. 순운동학 동작 방식 유니티에서 포워드 키네마틱이 작동하는 방식은 다음과 같습니다. 스켈레톤 계층구조: 캐릭터의 스켈레톤은 뼈대 또는 조..

개발/유니티 2023.06.12

유니티 역운동학(Inverse Kinematics, IK)란?

1. 역운동학이란? 역운동학(IK)은 컴퓨터 그래픽과 애니메이션에서 캐릭터의 팔다리나 오브젝트를 원하는 위치와 방향으로 배치하는 데 필요한 조인트 각도를 계산하는 데 사용되는 기법입니다. Unity에서 역운동학은 원하는 엔드 이펙터 위치에 따라 조인트 회전을 자동으로 계산하여 보다 사실적이고 자연스러운 애니메이션을 제작할 수 있는 기본 제공 기능입니다. 일반적인 스켈레톤 애니메이션 시스템에서는 캐릭터 스켈레톤의 각 뼈에 고유한 회전이 있습니다. 캐릭터 애니메이션에는 이러한 뼈의 회전을 직접 지정하는 작업이 포함됩니다. 하지만 손이나 발과 같은 엔드 이펙터의 원하는 위치와 방향을 정의하고 시스템이 적절한 조인트 회전을 자동으로 계산하도록 하는 것이 더 직관적인 경우도 있습니다. 2. 역운동학의 작동방식 리..

개발/유니티 2023.06.12

유니티 스프라이트 아틀라스란?

1. 스프라이트 아틀라스란? Unity에서 스프라이트 아틀라스는 여러 스프라이트 이미지를 하나의 텍스처 아틀라스로 결합할 수 있는 기능입니다. 하나의 텍스처로 묶은 행위로 인해 GPU 리소스를 보다 효율적으로 사용할 수 있도록 합니다. 또한 아틀라스는 드로 콜 횟수를 줄이고 스프라이트 기반 그래픽의 메모리 사용량을 개선하여 렌더링 성능을 최적화하는 데 도움이 됩니다. 스프라이트 아틀라스에 스프라이트를 추가하면 낭비되는 공간을 최소화하는 방식으로 스프라이트가 아틀라스에 자동으로 패킹됩니다. 스프라이트 아틀라스 인스펙터에서 설정을 조정하여 스프라이트가 패킹되는 방식을 수동으로 제어할 수도 있습니다. 2. 스프라이트 아틀라스의 특징 스프라이트 패킹: Unity에서 스프라이트 아틀라스를 생성할 때 여러 개의 개..

개발/유니티 2023.06.12

월드 좌표계란?

1. 월드 좌표계란? Unity에서 월드 좌표계는 씬 내에서 게임 오브젝트의 위치 및 방향을 지정하는 기준이 되는 전역 좌표계를 말합니다. 모든 오브젝트에 일관되고 고정된 기준 프레임을 제공하며 위치, 회전, 스케일 등을 저장하는데 사용됩니다. 또한 전체 씬에서 공간 관계와 측정을 가능하게 합니다. 2. 월드 좌표계의 특징 데카르트 좌표계: Unity의 월드 좌표계는 세 개의 축을 사용하여 위치를 지정하는 데카르트 좌표계를 따릅니다: X축은 가로 방향, Y축은 세로 방향, Z축은 깊이 또는 앞/뒤 방향을 나타냅니다. 원점: 세계 좌표계의 원점은 X, Y, Z 축이 교차하는 지점(0, 0, 0)입니다. 모든 위치가 측정되는 기준점 역할을 합니다. 절대 위치: Unity의 게임 오브젝트에는 월드 좌표계에서 ..

개발/유니티 2023.06.10

로컬 좌표계란?

1. 로컬 좌표계란? Unity에서 로컬 좌표계는 씬 내의 특정 게임 오브젝트를 기준으로 하는 좌표계를 의미합니다. Unity의 각 게임 오브젝트에는 부모 게임 오브젝트 또는 월드 원점을 기준으로 위치, 회전, 배율을 정의하는 고유한 로컬 좌표계가 있습니다. 로컬 좌표계는 오브젝트의 이동과 회전을 계산하는 데도 사용됩니다. 2. 로컬 좌표계의 특징 위치: 로컬 좌표계에서 게임 오브젝트의 위치는 부모 게임 오브젝트 또는 월드 원점을 기준으로 한 게임 오브젝트의 위치를 나타냅니다. 위치는 세 가지 값을 사용하여 정의됩니다: X, Y, Z 좌표입니다. 회전: 로컬 좌표계에서 게임 오브젝트의 회전은 부모 게임 오브젝트 또는 월드에 대한 게임 오브젝트의 방향을 결정합니다. 회전은 오일러 각도(X, Y, Z 축을 ..

개발/유니티 2023.06.10

개발 짤 88, 틀딱 개발자를 채용하면 안되는 이유.jpg

[부연설명] 켄 톰슨. 1943년생. 미국의 컴퓨터 프로그래머, Unix 운영체계를 설계했으며, C언어의 모체가 된 B언어를 개발하기도 했다. 그밖에 QED, grep, 정규표현식, UTF-8 인코딩 정의, 체스게임, Plan 9도 그의 작품이다. 벨 연구소에 근무했도 모교인 UC 버클리에서도 활동했다. 2006년부터 구글에서 근무하면서 "Go" 언어의 개발에도 참여했다. 컴퓨터과학의 노벨상으로도 불리는 튜링상을 수상하기도 했으며, 컴퓨터 파이오니어상, 미국 국가 기술혁신 메달을 수상하기도 했다. 참고로 켄 톰슨은 벨 연구소에 있을 때 BCPL을 개조해서 B언어를 개발했는데 벨 연구소의 머리글자를 따서 B언어라 이름붙였고, 1972년 같은 벨 연구소의 데니스 리치가 이를 토대로 C언어를 만들었다. C언어..

개발/짤 2023.03.28

유니티 최적화 10가지 기법

유니티 최적화 10가지 기법입니다. 오브젝트 풀링: 오브젝트 풀링은 새로운 오브젝트를 생성하는 대신 기존 오브젝트를 재사용하는 기법입니다. 이를 통해 오브젝트 생성 및 소멸에 따른 오버헤드를 줄이고 성능을 개선할 수 있습니다. 세부 수준(LOD): 세부 수준은 카메라에서 멀리 떨어져 있는 오브젝트의 단순화된 버전을 사용하는 기법입니다. 이를 통해 렌더링해야 하는 폴리곤 수를 줄이고 성능을 개선할 수 있습니다. 오클루전 컬링: 오클루전 컬링은 카메라에서 숨겨진 오브젝트를 렌더링하지 않는 기법입니다. 숨겨진 오브젝트를 렌더링하지 않음으로써 렌더링해야 하는 폴리곤의 수를 줄이고 성능을 개선할 수 있습니다. 배치 렌더링: 일괄 렌더링은 여러 개체를 단일 드로우 호출로 결합하는 기법입니다. 이를 통해 렌더링 오버..

개발/유니티 2023.03.19

라이트 맵(Light Map)이란?

1. 라이트 맵(Light Map)이란? 유니티(Unity)에서 라이트 맵(Light Map)은 씬의 조명 정보를 저장하는 텍스처입니다. Unity에서 조명을 베이크하면 씬에서 정적 조명을 받을 수 있는 각 오브젝트에 대한 라이트맵이 생성됩니다. 라이트맵의 개념은 정적 오브젝트에 대한 조명 정보를 미리 계산하여 텍스처에 저장함으로써 씬에서 고품질 조명을 효율적으로 렌더링하는 데 사용됩니다. 씬이 렌더링되면 라이트맵이 오브젝트에 적용되어 조명을 시뮬레이션합니다. 2. 라이트 맵(Light Map)의 사용 다음은 Unity에서 라이트맵을 사용하는 기본 단계입니다: 3D 모델 또는 씬을 Unity로 생성하거나 임포트합니다. Unity의 조명 툴을 사용하여 씬에 조명을 추가합니다. Unity에서 조명을 베이크하..

개발/유니티 2023.03.17

드로우콜(DrawCall)이란?

1. 드로우콜(DrawCall)이란? 드로우콜은 Unity에서 오브젝트 또는 메시 세트를 화면에 렌더링하는 데 사용하는 렌더링 작업입니다. Unity가 씬을 렌더링할 때 오브젝트의 지오메트리, 오브젝트에 적용된 머티리얼, 기타 렌더링 파라미터 등 많은 데이터를 그래픽 카드에 전송해야 합니다. Unity가 이 데이터를 그래픽 카드에 전송할 때마다 이를 드로우콜이라고 합니다. Unity에서 씬의 각 오브젝트는 일반적으로 오브젝트의 모양을 정의하는 버텍스, 에지, 면의 모음인 메시로 표현됩니다. Unity는 메시를 렌더링해야 할 때 메시 데이터를 메시 렌더링에 사용된 머티리얼, 조명 설정 등과 같은 기타 정보와 함께 그래픽 카드에 전송해야 합니다. Unity는 그래픽 카드에 메시를 화면에 그리도록 지시하는 D..

개발/유니티 2023.03.13

유니티의 기본 메소드(Default Method)에 개념과 호출순서

Unity의 기본 메서드는 게임이나 애플리케이션을 실행하는 동안 특정 순서로 호출됩니다. 실행 순서는 Unity 버전에 따라 다를 수 있지만, 다음은 Unity의 기본 메서드가 호출되는 일반적인 순서입니다: Awake(): 이 메서드는 스크립트가 메모리에 처음 로드될 때 호출됩니다. 게임이 시작되기 전에 변수나 오브젝트를 초기화하는 데 사용됩니다. OnEnable(): 이 메서드는 오브젝트가 활성화되어 씬에서 활성화될 때 호출됩니다. 오브젝트가 활성화될 때 설정해야 하는 변수나 오브젝트를 초기화하는 데 사용됩니다. Start(): 이 메서드는 Awake() 및 OnEnable()이 호출된 후에 호출됩니다. 첫 프레임이 렌더링되기 전에 설정해야 하는 변수나 객체를 초기화하는 데 사용됩니다. FixedUpd..

개발/유니티 2023.03.08
반응형