전체 글 (114)

03
12

 

게임에서 시선을 카메라 방향으로 따라간다거나

 

World Space 모드의 Canvas에 있는 UI를 항상 카메라를 바라보게 해야할 때가 있다.

 

아래의 코드를 대상 오브젝트에 부착시킨 뒤 모드를 선택하면 적용 된다. 

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class LookAtCamera : MonoBehaviour
{
    private enum Mode{
        LookAt,
        LookAtInverted, //* 반전 시켜 보기
        CameraForward,
        CameraForwardInverted, //* 반전 시켜 보기
    }

    [SerializeField] private Mode mode;
    private void LateUpdate() {
        switch (mode) {
            case Mode.LookAt:
                transform.LookAt(Camera.main.transform);
                break;
            case Mode.LookAtInverted:
                //* 카메라 방향을 알아내서 그 방향 만큼 돌려줘서 반전시키기
                Vector3 dirFromCamera = transform.position - Camera.main.transform.position;
                transform.LookAt(transform.position + dirFromCamera);
                break;
            case Mode.CameraForward:
                //* 카메라 방향으로 Z축 (앞뒤)을 바꿔주기
                transform.forward = Camera.main.transform.forward;
                break;
            case Mode.CameraForwardInverted:
                //* 카메라 방향으로 Z축 (앞뒤)을 바꿔주고 반전시키기
                transform.forward = -Camera.main.transform.forward;
                break;
            default :
                
                break;
        }
    }
}
COMMENT
 
03
05

MissingReferenceException: The object of type 'Material' has been destroyed but you are still trying to access it.

 

텍스트 메쉬 프로 쓸 때마다 항상 보이는 에러인데 몇달 지나면 또 까먹기 때문에 정리해봤습니다.

 

꼭 에러 아니더라도 간혹 글자가 안보일 때도 있습니다.

 


1.  TMP Essential Resources / TMP Examples & Extras 체크

 

Window -> TextMeshPro -> Import Essential Resources & Examples and Extras

 

당연히 에셋 설치 후 기본적으로 세팅 해줘야 하는 부분입니다.

 

Essential Resources & Examples and Extras 둘다 Import 해야합니다.

 


2. 최신 버전 체크 & 폰트 버전 맞추기

 

출처 : 유니티 포럼

TextMeshPro 에셋을 업데이트 하면 폰트도 업데이트 해야합니다

 

업데이트 후 이전 버전에 있던 폰트를 변환해줘야합니다. 

 

Window -> TextMeshPro -> Project Files GUID Remapping Tool

위쪽 메뉴바에서 Project Files GUID Remapping Tool 메뉴를 찾아서 눌러줍니다.

 

더 자세한 안내는 아래 포럼 링크 클릭하기

텍스트 메쉬 마이그레이션

 


3. 빼먹은 글자 있는지 확인하기

 

개인적으로 가장 많이 당한 케이스입니다.

폰트 에셋 생성할 때 커스텀 글자들을 적용하는데  간혹 글자를 빼먹는 경우가 있습니다.

 

완성형 한영 특수문자

 

이분이 깃헙에 올린 덕에 모든 글자는 포함하지만

띄어쓰기 할 때 쓰는 공백 글자를 절대절대 빼먹어선 안됩니다.

 

에셋 생성에서 스페이스바 한번 해줘야 합니다.

그래야 위의 사진처럼 공백 글자도 존재해서 띄어쓰기 할 때 오류가 안뜹니다.

띄어쓰기 공백 이외에 다른 빼먹은 글자 있는지도 확인해야합니다.

이외에 다른 해결법은 그냥 에셋을 다시 설치하는 거 정도?

 

만일 파일 문제나 버전 문제로 해결 안되시는거면 아래 제가 만든 에셋 팩에 에러 해결 툴이 들어있으니 구매하시는 것도 추천드립니다.

https://assetstore.unity.com/packages/vfx/shaders/glitch-tmp-vfx-pack-textmeshpro-303031

 

Glitch TMP VFX Pack - TextMeshPro | 시각 효과 셰이더 | Unity Asset Store

Add depth to your next project with Glitch TMP VFX Pack - TextMeshPro from StellaRabbit Studio. Find this & more 시각 효과 셰이더 on the Unity Asset Store.

assetstore.unity.com

 

 

COMMENT
 
03
01

https://youtu.be/rZcm3T1BEDg

고등학교 때 동아리에서 만들어본 게임입니다.

GIGDC에 냈지만 광탈했습니다.

그림은 같은 반에 잘 그리는 친구가 도트 찍어 줬습니다.

부족한 부분은 에셋을 사기도 하고 제가 직접 찍기도 했습니다.

노래는 또 다른 친구한테 부탁해서 만들었습니다.

제가 아닌 제 친구들한테 고마움을 느낍니다.

 

COMMENT
 
03
01

https://youtu.be/s3TUBz1hrOM

 

 

고등학교 때 만든 게임인데 GIGDC에 냈다가 광탈했습니다.

처음 만들어본 액션 장르인데 아트, 코드 등등 만족스럽지가 않아서 다음에는 제대로 정비해서 만들어보고 싶다는 생각이 들었습니다.

 

COMMENT