에셋 주소 : Utage3

  • Utage3에서 기본적으로 사용하는 텍스트 아웃라인(외곽선) 스크립트
    • 기본 유니티의 아웃라인은 변경해서 사용하는 형식
  • Utage3가 아닌 기본적인 텍스트에서도 해당 사용할 수 있음
블로그 이미지

RIsN

,
  1. Image 오브젝트 생성
  2. 거기에 Animator와 Animation을 추가
  3. Animation에 Sprite 파츠를 전부 추가
블로그 이미지

RIsN

,
  1. Spine2D의 MecaAnim(Animator)에서 <MeshRenderer> 컴퍼넌트를 빼옴
  2. <MeshRenderer> 컴퍼넌트의 마테리얼들을 sharedMaterials로 가져옴
    • materials가 아니라 sharedMaterials를 사용하는 이유
      : 왜인지 모르겠지만 적용이 안되는 경우가 있음
      : 이쪽이 확실함
  3. 해당 Shader를 상황에 맞게 변경
    • 기본 Shader : Spine/Skeleton
    • 기본 Outline Shader : Spine/Outline/Skeleton
    // :: 중복 방지
    private bool iOutline = false;
    public void ShowOutline(bool check)
    {
        // :: 중복 실행 방지
        if (iOutline == check)
            return;

        this.iOutline = check;

        // :: 메쉬 렌더러 확인
        var meshRenderer = this.Animator.GetComponent<MeshRenderer>();

        // :: 상황에 따라 쉐이더 변경
        foreach (var mat in meshRenderer.sharedMaterials)
        {
            if(check)
            {
                mat.shader = Shader.Find("Spine/Outline/Skeleton");
            } else
            {
                mat.shader = Shader.Find("Spine/Skeleton");
            }
        }
    }

 

블로그 이미지

RIsN

,

[발생 이유]

  • 캐릭터의 Spine 2D 애니메이터와 이펙트의 Spine 2D 애니메이터가 다른 상황
  • 추가로 캐릭터는 동일 동작, 이펙트는 다른 이펙트를 보여주는 상황
  • 유니티로 하는 경우 이격 발생 및, 여러모로 프로그램이 귀찮아지는 상황
    • 프로그램은 짧고 단순하고, 이해하기 쉬울 수록 좋다

[전제 조건]

  • 두 파일 다 원폰 스파인 프로젝트가 있고, 동일한 버전을 사용하는 상황
  • 파츠 이름이 겹치지도 않음

[합치는 법]

  1. [이펙트 프로젝트]에서 [이펙트 JSON] 데이터로 뺌
  2. [캐릭터 프로젝트]에서 [이펙트 JSON][데이터 가져오기]로 스켈레톤 합치기
    • 여기서 문제 발생하면 안됨
  3. [캐릭터 프로젝트]에서 [프로젝트 가져오기][이펙트 애니메이션(예 A-1)]을 추가
  4. [캐릭터 프로젝트의 이미지 폴더][이펙트 프로젝트의 이미지]를 추가
  5. [캐릭터 애니메이션(예 : Attack)][이펙트 애니메이션(A-1)의 키]를 추가
  6. 합친 두 애니메이션의 위치 맞추기
  7. [이펙트 애니메이션(A-1)] 제거
  8. 다시 해당 프로젝트를 Export
블로그 이미지

RIsN

,
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

/// <summary>
/// Alpha값(0.1f) 이상만 버튼 클릭되도록 하는 부착 스크립트
/// </summary>
public class ATTACHAlphaButton : MonoBehaviour
{
    public float iAlphaThreshhold = 0.1f;

    private void Start()
    {
        this.GetComponent<Image>()
            .alphaHitTestMinimumThreshold = this.iAlphaThreshhold;
    }
}
블로그 이미지

RIsN

,

내부 동 확인

  • 양평동
  • 당산동
  • 영등포동
  • 문래동
  • 도림동
  • 대림동
  • 신길동
  • 여의도동

출처 : 영등포구 사유지 도로 (ydp.go.kr)

블로그 이미지

RIsN

,

[영등포 타임스퀘어] 온기정 : 모듬 카츠 정식

  • 튀김 계열(안심, 치킨, 새우)
    • 전체적으로 바삭한 식감과 부드러운 맛
    • 독특하기보다 기본적으로 잘 지킨 맛
  • 우동 : 비교적 진한, 살짝 기름진 맛
  • 생각보다 양이 적은 줄 알고 먹었는데, 2/3만 먹어도 어느 새 배가 부른 상태가 되어버림

정갈한 일본식 모듬카츠 한상을 배부르게 먹고 싶으신 분에게 추천:>

블로그 이미지

RIsN

,

개발자 일지 2021-07-25

_Diary 2021. 7. 25. 21:18

<현 상황>

현 개발 경력 : 3개월 차
※ 업무에 대한 정당한 보수를 받고 있는 상태 한정

<현 상황 자문>

  • 지금 무엇을 하고 있는가?
    • 스팀(Steam) 출시 예정인 인디 게임의 개발(Unity)을 회사에서 진행 중
    • 프레임워크 구조를 위한 연습 프로젝트 제작 중
  • 이제 무엇을 준비해야 하는가?
    • 유니티(Unity)에 한정하지 않은 개발 능력
    • 좀 더 효율적인 코드가 습관이 되기 위한 노력
    • 수학적인 코드를 이해하는 능력
    • 계속해서 새로운 개발 트렌드 정보를 얻는 수단
  • 이제 무엇을 하고 싶은가?
    • 인터넷 강의 등을 찾아 1번쯤 들어보고 싶음
    • 수학을 공부하고 싶음
    • 건강적으로 문제가 없는 몸을 가지고 싶음

<개발일지 반성>

  • 뭘 써야 할 지 모르겠다
  • 어떻게 써야 할 지 모르겠다

'_Diary' 카테고리의 다른 글

2023년도 목표: 전환점  (0) 2023.02.10
[SH PROJECT 개발일지] 2022-05-25  (0) 2022.05.26
2022년 키워드  (0) 2022.01.01
블로그 이미지

RIsN

,
GameObject goRaw = new GameObject(typeof(T).Name);

: typeof(T).Name으로 게임오브젝트의 이름을 사용

블로그 이미지

RIsN

,

Input.multiTouchEnabled

Unity 2021. 5. 4. 22:21

Input.multiTouchEnabled

: 멀티 터치 허용 / 비허용

private void InitApplication_Setting()
{
	Application.targetFrameRate = 60;
	Input.multiTouchEnabled = false;
}

 

블로그 이미지

RIsN

,