| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 | 31 |
- 트리구조
- 습관형성 #직장인자기계발 #오공완
- readonly
- sparkmain(clone) 무한생성
- 너비탐색
- 드롭다운
- dfs
- list clear
- 깊이탐색
- dropdown
- 최단거리 알고리즘
- raycast
- 디지털트윈
- 최소신장트리 mst
- unity korea
- 유니티
- GetComponent
- 크루스칼
- C#
- 티스토리챌린지
- removeAll
- 행동트리
- Unity
- Simulation
- navisworks api
- 오블완
- sparkmain(clone)
- articulation body
- unity sparkmain(clone)
- 유니티 sparkmain(clone)
- Today
- Total
목록2024/05 (13)
낑깡의 게임 프로그래밍 도전기
두개의 박스가있는데 둘 다 첫번째 박스에 들어가는데 첫번째 박스가 차있으면 두번째 박스로 가게끔해야하는 상황.만약 호출시기가 똑같으면 보통 알아서 각자 들어가는게 아니라 에러가 발생한다. 이럴 때 Lock 매커니즘을 적절히 사용하면 두 개뿐만 아니라 10개, 그 이상이 동시에 실행되는 상황에서도 안전하게 처리할 수 있다. 중요한 것은 동기화 블록을 통해 동일한 코드 영역에 대한 접근을 일관되게 제어하는 것. 동기화 메커니즘 사용요약lock(object T){ 원하는 코드;}Lock (잠금) 메커니즘: C#의 lock 문을 사용하여 첫 번째 박스를 확인하고 아이템을 넣는 부분을 잠그면, 다른 스크립트가 이 부분을 동시에 실행하지 않도록 할 수 있음.(특정 객체를 기준으로 다른 스레드가 동일한 코드 블록에 ..
3ds max에서 제일 중요한 기초 축 나의 오브젝트는 종속 기능이 있어서 종속 확인 후 상위 오브젝트를 선택했다오브젝트를 선택 후 Command Panel에서 Hierarchy 탭(축 아이콘)을 클릭Pivot 패널에서 Affect Pivot Only를 활성화. 해당 옵션을 활성화하면 피벗 포인트만 조정된다.Rotate 툴(회전 도구)을 선택, Angle Snap Toggle(각도 스냅 토글)을 활성화(5도 단위로 회전시킬 수 있게 해줌) 뷰포트에서 회전 조작 핸들을 이용하여 피벗을 회전.정확하게 회전을 원할시, Transform Type-In을 이용하여 회전값을 직접 입력 피벗 포인트 설정을 완료 후 Affect Pivot Only를 눌러 비활성화 3d Max 피벗 단축키 피벗 수정 모드 활성화/비활..
오브젝트의 모양이 복잡하더나 임의의 원점을 두거나 피벗이 오브젝트와 멀리 떨어져있는 상황에서 오브젝트의 위치를 찾아 컨트롤하기 힘든 경우가 생긴다 그럴 때 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차원 평면에서 유한한 선의 교점 ..