Unity 머티리얼 옵션
·
Unity
Rendering Mode : 재질감을 표현할 수 있는 옵션 Albedo : 빛을 반사하는 정도, 반사율 Metallic : 객체 표면에 금속 재질을 표현하기 위한 텍스처 Normal Map : 표면의 굴곡을 표현하기 위한 텍스처 Height Map : 높낮이를 표현하는 텍스처 Occlusion : 사물의 입체감과 깊이감을 살리는 흑백 텍스처, 간접 조명에 의해 생기는 명암을 뚜렷히 표시 Detail Mask : SecondaryMaps에 적용할 마스크를 설정, 특정 부분을 좀 더 세부적으로 표현할때 사용 Emission : 스스로 빛을 방출하는 속성
Unity Rigidbody 프로퍼티
·
Unity
Mass : 게임 오브젝트의 질량 Drag : 리지드바디 리니어 속도의 감쇠 속도를 정의 (공기 저항) Angular Drag : 리지드바디 회전 속도의 감쇠 속도를 정의 (공기 저항) Automatic Center Of Mass : 리지드 바디의 모양과 스케일을 기반으로 물리 시스템의 예측 질량 중심을 사용할 수 있음. Automatic Tensor : 연결된 모든 콜라이더를 기반으로 물리 시스템의 예측 텐서 및 텐서 회전을 사용할 수 있음 Use Gravity : 리지드 바디에 중력 효과를 토글 Is Kinematic : 활성화시 물리 시스템으로 오브젝트를 움직이거나 회전할 수 없고 Transform을 통해 움직이고 회전해야함 Interpolate : 리지드바디의 모션이 흔들리는 것 같은 때 부드럽게..
Unity Prefab Variant
·
Unity
1. 사용하는 이유 https://docs.unity3d.com/kr/2018.4/Manual/PrefabVariants.html 프리팹 배리언트 - Unity 매뉴얼 프리팹 배리언트는 프리팹의 사전 정의된 배리에이션 집합이 필요할 때 유용합니다. docs.unity3d.com 유니티 공식 문서에 따르면 프리팹 배리언트는 사전의 정의된 배리에이션의 집합이 필요할 때 유용하다고 합니다. 풀어서 설명드리자면, 메이플의 몬스터인 주황버섯,좀비버섯,파란버섯이 있다고 생각합시다. 여기서 좀비버섯, 파란버섯은 주황버섯 프리팹을 기반으로 만들어진 친구들입니다. 이때 주황버섯 프리팹원본에게 모자를 씌워주면, 좀비 버섯, 파란버섯은 전부 모자를 쓰게됩니다. 이경우를 막기 위한게 프리팹 배리언트입니다. 좀비버섯, 파란버섯..
24_02_07 TIL
·
TIL
1. 오늘 배운내용 많은 오브젝트 생성과 파괴시 오브젝트 풀링을 사용하는것이 좋다. UIManager사용시 사용할 UI 스크립트에 UIbase를 만들어서 상속시키는 구조가 좋다. 싱글톤 베이스를 만들어 상속 받으면 싱글톤 역할을 할 수 있게 구조를 짜는것이 좋다. 모든 자료형은 object형으로 되어있지만 object는 이후 박싱 언박싱을 할때 많은 비용이 듦으로 제네릭으로 자료형을 정의해서 사용하는게 좋다.
24_02_06 TIL
·
TIL
1. 오늘 배운내용 스프라이트 이미지들은 생각보다 용량이 많이 나가므로 이미지 아틀라스를 만들어서 사용하는게 메모리 효율에 좋다. 배경이나 로고 처럼 크기가 큰 이미지 파일의 경우 크기를 2의 배수로 설정하는 것이 데이터 효율상 좋다. 인벤토리를 구현할때는 어떤 기능을 넣을것이냐에따라 어떠한 자료구조가 효율적일지 고민해보는 것이 중요하다. 2. 느낀점 앞으로 어떠한 기능을 구현해야할때, 어떤 자료구조가 더 효율적일지 고민하고, 비록 선택한 방법이 효율적이지 않더라도 내가 구현한 코드에 주관이 담겨있게 하는것이 중요한것 같다고 생각이 듭니다.
Unity Scriptable Object
·
Unity
1. Scriptable Object를 사용하는 이유 Scriptable Object는 스크립팅 가능한 오브젝트라는 의미로 대용량 데이터를 저장에 최적화된 데이터 컨테이너 입니다. Scirptable Object의 장점은 손쉽게 Data를 오브젝트화 시켜서 관리할 수 있고, 객체를 생성할때 스크립터블에 미리 정의된 데이터를 참조해서 가져오는 형식이기 때문에 Calss에 비해 메모리를 절약할 수 있다는 점이 장접입니다. 2. Sciptable Object 스크립트 작성 1. 스크립트를 생성한뒤 모노비헤이비어 대신 Scriptable Object를 상속받습니다. 2. 스크립터블 오브젝트에 정의할 데이터들을 상속받은 클래스 안에 작성합니다. ScriptableObject를 상속 받은 클래스는 에셋메뉴에서 생성..
Unity UnityEvent
·
Unity
1. UnityEvent를 사용하는 이유 UnityEvent의 역할은 우리가 자주 사용하는 event Action과 역할이 비슷합니다. event Action의 경우 만들어둔 이벤트에 함수를 코드상으로 구독을 걸어야하는데, UnityEvent의 경우 Inspector창에서 직접 드래그앤 드롭으로 이벤트들을 연결할 수 있다는 장점이 있습니다. 이는 장점이자 단점이 될 수도 있는데, 만약 유니티에디터에서 Inspector창에서 연결된 값들을 잃어 버린다면, 다시 하나하나 연결 시켜야한다는 문제가 생길 수도 있으니 가급적이면 로직이 간단하거나, 많은 함수들이 구독되지 않는 이벤트에 사용하는 것이 좋다고 생각합니다. 2. UnityEvent 사용법 1. Using UnityEngine.Events를 추가합니다...
Unity Interface
·
C#
1. Interface를 사용하는 이유 Interface를 사용하는 가장 큰 이유는 다중 상속을 위해서입니다. Class의 경우 일반적으로 한개의 클래스만 상속을 받을 수 있는데, 이를 보완할 수 있는 방법이 Interface입니다. 상태를 나타내는 Condition이라는 클래스가 있습니다. 이 클래스는 체력, 배고픔, 스태미너와 같은 어떠한 상태를 나타내기 위한 Class로, 어떠한 Value값을 줄이거나 더하거나 할 수 있는 기능이 포함되어 있습니다. Condition의 구조를 가진 체력, 배고픔, 스태미너를 나타내는 health, hunger, stamina을 생성해주었습니다. 여기서 만약 데미지를 입어야하는 함수가 필요하다면, 해당 함수가 필요한 변수는 health 하나 일 것입니다. 따라서, C..