일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 크루스칼
- sparkmain(clone)
- unity korea
- Simulation
- 최단거리 알고리즘
- Unity
- dropdown
- 트리구조
- C#
- 너비탐색
- dfs
- navisworks api
- 유니티 sparkmain(clone)
- 드롭다운
- list clear
- sparkmain(clone) 무한생성
- 디지털트윈
- articulation body
- 최소신장트리 mst
- 티스토리챌린지
- 오블완
- 행동트리
- unity sparkmain(clone)
- GetComponent
- readonly
- raycast
- 유니티
- BFS
- 깊이탐색
- removeAll
- Today
- Total
목록분류 전체보기 (103)
낑깡의 게임 프로그래밍 도전기
오브젝트의 모양이 복잡하더나 임의의 원점을 두거나 피벗이 오브젝트와 멀리 떨어져있는 상황에서 오브젝트의 위치를 찾아 컨트롤하기 힘든 경우가 생긴다 그럴 때 bounds를 활용하면 유용하다.Bounds는 유니티에서 게임 오브젝트나 씬의 영역을 나타내는데 사용되는 개념( 오브젝트가 어떤 영역 안에 있는지를 쉽게 확인 가능)예를 들어, 카메라가 어떤 오브젝트들을 비추고 있는지 확인하거나, 특정 영역 안에 어떤 오브젝트들이 있는지 확인할 때 유용함. Bounds는 해당 영역의 중심점과 크기를 가지고 있어서 오브젝트들이 어디에 위치해 있는지와 그 크기를 파악하는 데 도움이 됨. Bounds를 활용할 때 유용한 몇 가지 키워드Bounds.center: Bounds의 중심점을 나타내는 벡터.Bounds.size: B..
정적 라이브러리와 동적 라이브러리는 각각 고유한 장단점을 가지고 있어 특정 상황에 따라 적절하게 선택해야 합니다. 정적라이브러리 .lib : 빌드과정도중 링크단계에서(런타임 이전) 실행파일과 연결이된다.동적라이브러리 .dll : 프로그램 실행도중(런타임 이후) 참조 정적 라이브러리 (Static Library)장점성능 향상: 정적 라이브러리는 컴파일 타임에 프로그램에 포함되기 때문에, 실행 시간에 라이브러리를 로드할 필요가 없어 실행 속도가 빠릅니다.독립성: 정적 라이브러리를 사용하는 프로그램은 외부 라이브러리에 대한 의존성이 적어, 배포 시 별도의 라이브러리를 함께 배포할 필요가 없습니다. 이로 인해 배포가 간편해집니다.호환성: 특정 버전의 라이브러리에 고정되기 때문에 라이브러리 업데이트로 인한 호환성..
유니티에서 List 초기화는 Clear 메서드를 사용하여 수행합니다. Clear 메서드는 리스트의 모든 요소를 제거하여 빈 상태로 만듭니다. RemoveAll 메서드도 요소를 제거하는 데 사용될 수 있지만, 특정 조건을 만족하는 요소를 제거하는 데 사용됩니다.List.Clear()Clear 메서드는 리스트의 모든 요소를 제거하여 리스트를 빈 상태로 만듭니다. 이는 가장 일반적으로 리스트를 초기화하는 방법입니다.List myList = new List { 1, 2, 3, 4, 5 };myList.Clear(); // myList는 이제 빈 상태가 됩니다.List.RemoveAll()RemoveAll 메서드는 특정 조건(predicat)과 일치하는 모든 요소를 제거합니다. 따라서 리스트를 초기화하는 데 사용..
커맨드 패턴(Command Pattern)은 행동 패턴 중 하나로, 요청을 캡슐화하여 객체로 만들고 이를 나중에 실행, 취소 또는 재실행할 수 있도록 하는 디자인 패턴입니다. 이 패턴은 요청을 객체로 변환함으로써 다양한 요청, 큐잉, 로깅 및 연산 취소 기능을 구현할 수 있습니다.커맨드 패턴의 구성 요소Command 인터페이스: 실행될 명령을 정의하는 인터페이스입니다. 일반적으로 Execute와 Undo 메서드를 포함합니다.ConcreteCommand 클래스: Command 인터페이스를 구현하는 구체적인 클래스입니다. 이 클래스는 요청을 실제로 수행하는 리시버(Receiver) 객체를 포함하고 있으며, 이 리시버 객체를 통해 명령을 실행합니다.Receiver 클래스: 실제 작업을 수행하는 객체입니다. C..
유니티에서 코드가 실행되다가 특정 시점으로 돌아가는 기능을 구현하려면 "타임 리와인드" 혹은 "타임 트래블" 메커니즘을 사용해야 합니다. 이는 게임 내 객체의 상태를 일정 주기로 저장하고, 필요 시 그 상태로 되돌리는 방식으로 구현할 수 있습니다. 이를 위해서는 여러 가지 접근 방식이 있으며, 대표적으로 다음과 같은 방법을 사용할 수 있습니다: 1. 상태 저장 및 복구이 방법은 주기적으로 객체의 상태(위치, 회전, 애니메이션 상태 등)를 저장하고, 특정 조건이 만족될 때 저장된 상태로 복구하는 방식입니다.예시 코드:using System.Collections.Generic;using UnityEngine;public class TimeRewind : MonoBehaviour{ private List..
using System.Collections;using System.Collections.Generic;using UnityEngine;[RequireComponent(typeof(MeshRenderer), typeof(MeshFilter))]public class PolygonTriangulation : MonoBehaviour이 코드 라인은 Unity 게임 엔진에서 사용되는 특별한 속성(attribute)입니다. [RequireComponent(typeof(MeshRenderer), typeof(MeshFilter))]는 PolygonTriangulation 스크립트가 부착된 게임 오브젝트에 MeshRenderer와 MeshFilter 컴포넌트가 필요하다는 것을 나타냅니다.MeshRenderer는 3..
'OnValidate'는 Inspector 창에서 스크립트의 속성(프로퍼티 값)이 수정될 때마다 호출되는 함수입니다! 개발자가 인스펙터에서 속성을 수정하면 'OnValidate' 메서드를 자동으로 호출합니다. 이는 'OnValidate'를 사용하여 다른 속성을 업데이트하거나 속성이 수정될 때마다 유효성 검사를 수행할 수 있음을 의미합니다.
다각형 내외부 판정은 CCW 알고리즘을 사용 https://degurii.tistory.com/47 [알고리즘] CCW로 세 점의 방향성 판별하기0. 들어가기 전에 첫 알고리즘 포스트입니다. 이번에 쓸 내용은 CCW입니다. 원래는 기하 알고리즘들을 전반적으로 다루려고 했는데 생각보다 글이 길어져서 CCW만 쓰게 되었습니다. 본 글의 내용degurii.tistory.com참고 블로그https://www.youtube.com/watch?v=iIDgR5uFy9o참고 유튜브 그렇게 해서 진행 해 볼 것이https://bloodstrawberry.tistory.com/996 유니티 - 오목 다각형의 삼각분할 (Polygon Triangulation)Unity 전체 링크 참고 - 2차원 평면에서 유한한 선의 교점 ..

float은 C#에서 값 형식(primitive type)으로, null을 직접 할당할 수 없습니다. 그러나 float을 nullable로 만들 수 있습니다. 이를 위해서는 float? 형식을 사용하면 됩니다.위의 코드에서 nullableFloat 변수는 float 형식이지만 nullable로 선언되어 있으므로 null을 가질 수 있습니다.만약 일반적인 float 변수를 null로 만들고 싶다면, 그 변수를 nullable로 만들거나 다른 방법으로 해당 변수의 상태를 나타내는 특정 값(예: -1 또는 float.MinValue)을 사용할 수 있습니다. 이것은 상황에 따라 다르며, 어떤 값이 가장 적절한지는 프로그램의 요구 사항에 따라 달라집니다.