<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>Spread your wings</title>
    <link>https://tensiya.tistory.com/</link>
    <description>네이버 블로그 총합 14년 하다가 때려치우고 이사온 아쎄이 블로그</description>
    <language>ko</language>
    <pubDate>Thu, 2 Jul 2026 04:07:19 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>텐시야</managingEditor>
    <image>
      <title>Spread your wings</title>
      <url>https://tistory1.daumcdn.net/tistory/5091114/attach/e4d6292541e04bc485537e96a6357cbc</url>
      <link>https://tensiya.tistory.com</link>
    </image>
    <item>
      <title>[UE5] 롤플레잉 게임을 위한 레벨 디자인 연습</title>
      <link>https://tensiya.tistory.com/entry/UE5-%EB%A1%A4%ED%94%8C%EB%A0%88%EC%9E%89-%EA%B2%8C%EC%9E%84%EC%9D%84-%EC%9C%84%ED%95%9C-%EB%A0%88%EB%B2%A8-%EB%94%94%EC%9E%90%EC%9D%B8-%EC%97%B0%EC%8A%B5</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;대충 탑다운 롤플레잉 게임을 만들려고 레벨 디자인 연습을 하려고 함.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실사 같은 에셋도 진짜 많은데, 사실 실사보다는 약간 유니티스럽고 캐주얼스러운 느낌을 주고 싶어서 그런 느낌의 에셋을 찾아다녔고, 괜찮은 언리얼용 무료 에셋을 발견함.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://www.unrealengine.com/marketplace/en-US/item/20ec1e974ab34d2e85a649e0c92543cb&quot;&gt;Hand Painted Environment in Environments - UE Marketplace (unrealengine.com)&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1670567149975&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;Hand Painted Environment in Environments - UE Marketplace&quot; data-og-description=&quot;This pack contains a wide range of vegetation, buildings, obstacles, ancient ruins and other props.&quot; data-og-host=&quot;www.unrealengine.com&quot; data-og-source-url=&quot;https://www.unrealengine.com/marketplace/en-US/item/20ec1e974ab34d2e85a649e0c92543cb&quot; data-og-url=&quot;https://www.unrealengine.com/marketplace/en-US/item/20ec1e974ab34d2e85a649e0c92543cb&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/ztDrr/hyQQwlJbIC/Kvkd6bSES4qG2pkYYaZkZ1/img.png?width=476&amp;amp;height=246&amp;amp;face=0_0_476_246,https://scrap.kakaocdn.net/dn/mj3jL/hyQO9FG2Av/HmPXpqZCk7ZGW0cCQSIxh1/img.png?width=476&amp;amp;height=246&amp;amp;face=0_0_476_246,https://scrap.kakaocdn.net/dn/dlLjtc/hyQPibAf5x/TdqMzLhVOzZ9FA2l3mJMn0/img.jpg?width=1920&amp;amp;height=1080&amp;amp;face=0_0_1920_1080&quot;&gt;&lt;a href=&quot;https://www.unrealengine.com/marketplace/en-US/item/20ec1e974ab34d2e85a649e0c92543cb&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://www.unrealengine.com/marketplace/en-US/item/20ec1e974ab34d2e85a649e0c92543cb&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/ztDrr/hyQQwlJbIC/Kvkd6bSES4qG2pkYYaZkZ1/img.png?width=476&amp;amp;height=246&amp;amp;face=0_0_476_246,https://scrap.kakaocdn.net/dn/mj3jL/hyQO9FG2Av/HmPXpqZCk7ZGW0cCQSIxh1/img.png?width=476&amp;amp;height=246&amp;amp;face=0_0_476_246,https://scrap.kakaocdn.net/dn/dlLjtc/hyQPibAf5x/TdqMzLhVOzZ9FA2l3mJMn0/img.jpg?width=1920&amp;amp;height=1080&amp;amp;face=0_0_1920_1080');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Hand Painted Environment in Environments - UE Marketplace&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;This pack contains a wide range of vegetation, buildings, obstacles, ancient ruins and other props.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;www.unrealengine.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;캐주얼 게임에서 자주 볼 수 있을 것 같은 느낌의 환경 에셋이라, 이걸 사용해서 레벨 디자인 연습을 해보기로 결정.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/DDhlQ/btrTeM9FVpE/khykFP7AKcu7KgStooowk1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/DDhlQ/btrTeM9FVpE/khykFP7AKcu7KgStooowk1/img.png&quot; data-alt=&quot;데모 레벨 사진&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/DDhlQ/btrTeM9FVpE/khykFP7AKcu7KgStooowk1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FDDhlQ%2FbtrTeM9FVpE%2FkhykFP7AKcu7KgStooowk1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3840&quot; height=&quot;2077&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;데모 레벨 사진&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;데모 레벨을 열어보니, 내가 원하는 느낌으로 잘 나와준 것 같다. 이 레벨을 레퍼런스 삼아 나만의 레벨을 디자인해보자.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bdNDgC/btrTfEp0fVa/usl8NjKfew3zhSI3Zexpak/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bdNDgC/btrTfEp0fVa/usl8NjKfew3zhSI3Zexpak/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bdNDgC/btrTfEp0fVa/usl8NjKfew3zhSI3Zexpak/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbdNDgC%2FbtrTfEp0fVa%2Fusl8NjKfew3zhSI3Zexpak%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3840&quot; height=&quot;2077&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;우선 모든 에셋 모델들을 올려놓은 개요(Overview) 맵을 수정해서 사용해보자.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;맵을 복사하고, 적당히 분위기 맞게 하늘을 수정한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cYgIBa/btrTgqrlT9T/rDGYrTk0oGzMYfC9RbDHk0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cYgIBa/btrTgqrlT9T/rDGYrTk0oGzMYfC9RbDHk0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cYgIBa/btrTgqrlT9T/rDGYrTk0oGzMYfC9RbDHk0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcYgIBa%2FbtrTgqrlT9T%2FrDGYrTk0oGzMYfC9RbDHk0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3840&quot; height=&quot;2077&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;흐릿하고 어두운 다크 판타지 배경을 생각하고, 기존 푸른 하늘을 제거한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또한, 회색 대기로 채워서 배경의 채도가 낮아보이게 만든다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/AzeyV/btrTgpTwNNf/HsXvEOhlJkvlAp0lSiAWl1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/AzeyV/btrTgpTwNNf/HsXvEOhlJkvlAp0lSiAWl1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/AzeyV/btrTgpTwNNf/HsXvEOhlJkvlAp0lSiAWl1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FAzeyV%2FbtrTgpTwNNf%2FHsXvEOhlJkvlAp0lSiAWl1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3840&quot; height=&quot;2077&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bVqWR6/btrThyPC2Q6/7a7b6eG2iJDSlkQ5wNx5hk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bVqWR6/btrThyPC2Q6/7a7b6eG2iJDSlkQ5wNx5hk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bVqWR6/btrThyPC2Q6/7a7b6eG2iJDSlkQ5wNx5hk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbVqWR6%2FbtrThyPC2Q6%2F7a7b6eG2iJDSlkQ5wNx5hk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3840&quot; height=&quot;2077&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;PostProcessVolume 이펙트를 생성하여 채도, 밝기를 조절하였다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또한, 화면 가장자리에 비네트 효과를 주어 우울하고 음침한 분위기를 준다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/RngxY/btrTeLKiYIY/3wcfpgaZFmwS8hHVmFlPkK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/RngxY/btrTeLKiYIY/3wcfpgaZFmwS8hHVmFlPkK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/RngxY/btrTeLKiYIY/3wcfpgaZFmwS8hHVmFlPkK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FRngxY%2FbtrTeLKiYIY%2F3wcfpgaZFmwS8hHVmFlPkK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3840&quot; height=&quot;2077&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 Landscape를 만들어서... 슬슬 그었는데, 뭔가 너무 길을 크게 그린 것 같다..&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;약간 사이즈를 줄이고... 건물을 한번 배치해보는데,&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bwZQQG/btrTf6tspsN/Dc4ePnEMKcqTrr8btMFX30/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bwZQQG/btrTf6tspsN/Dc4ePnEMKcqTrr8btMFX30/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bwZQQG/btrTf6tspsN/Dc4ePnEMKcqTrr8btMFX30/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbwZQQG%2FbtrTf6tspsN%2FDc4ePnEMKcqTrr8btMFX30%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3840&quot; height=&quot;2077&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;생각보다 Landscape가 너무 크다..... Landscape부터 다시 작업해야할 것 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/HPk9x/btrTf70l4CD/UIPhkKaGveAkxERTtBjAb1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/HPk9x/btrTf70l4CD/UIPhkKaGveAkxERTtBjAb1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/HPk9x/btrTf70l4CD/UIPhkKaGveAkxERTtBjAb1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FHPk9x%2FbtrTf70l4CD%2FUIPhkKaGveAkxERTtBjAb1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3840&quot; height=&quot;2077&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;적당히 맵을 제작했다. 꽤 그럴듯하게(?) 나온다. 물을 넣을 구간도 만들었으니, 물을 채워넣어야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c2GPUb/btrThzhcRNi/bKgjBuZnHecIHLApCeA8yK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c2GPUb/btrThzhcRNi/bKgjBuZnHecIHLApCeA8yK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c2GPUb/btrThzhcRNi/bKgjBuZnHecIHLApCeA8yK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc2GPUb%2FbtrThzhcRNi%2FbKgjBuZnHecIHLApCeA8yK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3840&quot; height=&quot;2077&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;화면을 좀 더 어둡게 만들고, 물도 채워넣고.. 맵도 조금 더 배치해보고..&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제 탑 다운 컨트롤러를 넣을 차례인듯.&lt;/p&gt;</description>
      <category>삽질 정보/UE5</category>
      <author>텐시야</author>
      <guid isPermaLink="true">https://tensiya.tistory.com/46</guid>
      <comments>https://tensiya.tistory.com/entry/UE5-%EB%A1%A4%ED%94%8C%EB%A0%88%EC%9E%89-%EA%B2%8C%EC%9E%84%EC%9D%84-%EC%9C%84%ED%95%9C-%EB%A0%88%EB%B2%A8-%EB%94%94%EC%9E%90%EC%9D%B8-%EC%97%B0%EC%8A%B5#entry46comment</comments>
      <pubDate>Fri, 9 Dec 2022 20:03:24 +0900</pubDate>
    </item>
    <item>
      <title>[UE5] Water 플러그인</title>
      <link>https://tensiya.tistory.com/entry/UE5-Water-%ED%94%8C%EB%9F%AC%EA%B7%B8%EC%9D%B8</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;300&quot; data-origin-height=&quot;168&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dctIe0/btrQYuqektY/pYRCZMGEE3XiKSoFpRGymk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dctIe0/btrQYuqektY/pYRCZMGEE3XiKSoFpRGymk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dctIe0/btrQYuqektY/pYRCZMGEE3XiKSoFpRGymk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdctIe0%2FbtrQYuqektY%2FpYRCZMGEE3XiKSoFpRGymk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;300&quot; height=&quot;168&quot; data-origin-width=&quot;300&quot; data-origin-height=&quot;168&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;저번에 만들었던 지형 생성에 이어서, 이번에는 강과 바다를 채워보기 위해서 UE5에서 제공하는 Water System을 활용해보려고 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음과 같은 레퍼런스를 참고했다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.unrealengine.com/5.0/en-US/water-system-in-unreal-engine/&quot;&gt;Water System in Unreal Engine | Unreal Engine 5.0 Documentation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.youtube.com/watch?v=MpCQc4sDMjw&quot;&gt;Unreal Engine 5: Water System in UE5 Tutorial - YouTube&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;(1) 플러그인&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;972&quot; data-origin-height=&quot;726&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/AaPWn/btrQ0HVv6gr/rCRRCT96zflFJiAJyPXH61/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/AaPWn/btrQ0HVv6gr/rCRRCT96zflFJiAJyPXH61/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/AaPWn/btrQ0HVv6gr/rCRRCT96zflFJiAJyPXH61/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FAaPWn%2FbtrQ0HVv6gr%2FrCRRCT96zflFJiAJyPXH61%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;453&quot; height=&quot;338&quot; data-origin-width=&quot;972&quot; data-origin-height=&quot;726&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Settings &amp;gt; Plugins 메뉴를 선택해서 플러그인 창을 연다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1792&quot; data-origin-height=&quot;1176&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ppZVk/btrQXOijFJW/wdmk1osaE0rIxyQ6KHNSSK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ppZVk/btrQXOijFJW/wdmk1osaE0rIxyQ6KHNSSK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ppZVk/btrQXOijFJW/wdmk1osaE0rIxyQ6KHNSSK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FppZVk%2FbtrQXOijFJW%2Fwdmk1osaE0rIxyQ6KHNSSK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;724&quot; height=&quot;475&quot; data-origin-width=&quot;1792&quot; data-origin-height=&quot;1176&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;검색 창에 Water를 검색하고, 결과에서 옆에 체크 표시를 눌러서 플러그인을 설치한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1186&quot; data-origin-height=&quot;368&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ox2Z2/btrQYFLJsEp/PaT4eEWkHUfIi44eiHlky0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ox2Z2/btrQYFLJsEp/PaT4eEWkHUfIi44eiHlky0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ox2Z2/btrQYFLJsEp/PaT4eEWkHUfIi44eiHlky0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fox2Z2%2FbtrQYFLJsEp%2FPaT4eEWkHUfIi44eiHlky0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;644&quot; height=&quot;200&quot; data-origin-width=&quot;1186&quot; data-origin-height=&quot;368&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실험 단계의 플러그인이기 때문에 경고가 나타난다. Yes를 누른다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1566&quot; data-origin-height=&quot;156&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/vTi2v/btrQZPs3VFR/oCEKUjtwcUSJ2bAoYeriE1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/vTi2v/btrQZPs3VFR/oCEKUjtwcUSJ2bAoYeriE1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/vTi2v/btrQZPs3VFR/oCEKUjtwcUSJ2bAoYeriE1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FvTi2v%2FbtrQZPs3VFR%2FoCEKUjtwcUSJ2bAoYeriE1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1566&quot; height=&quot;156&quot; data-origin-width=&quot;1566&quot; data-origin-height=&quot;156&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Restart Now를 눌러 에디터를 재시작한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;710&quot; data-origin-height=&quot;364&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dtbGsr/btrQZefORZh/yk8rIcW46ahKrhJpSeo8f0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dtbGsr/btrQZefORZh/yk8rIcW46ahKrhJpSeo8f0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dtbGsr/btrQZefORZh/yk8rIcW46ahKrhJpSeo8f0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdtbGsr%2FbtrQZefORZh%2Fyk8rIcW46ahKrhJpSeo8f0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;437&quot; height=&quot;224&quot; data-origin-width=&quot;710&quot; data-origin-height=&quot;364&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;재시작 할 때, 셰이더 컴파일이 오래 걸린다. 조금 기다려준다. 에디터 안열린다고 당황할 필요 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1732&quot; data-origin-height=&quot;874&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cl1QnK/btrQ0wzNV66/nYSDkFjkxY4OuYtb56VLCK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cl1QnK/btrQ0wzNV66/nYSDkFjkxY4OuYtb56VLCK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cl1QnK/btrQ0wzNV66/nYSDkFjkxY4OuYtb56VLCK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcl1QnK%2FbtrQ0wzNV66%2FnYSDkFjkxY4OuYtb56VLCK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;743&quot; height=&quot;375&quot; data-origin-width=&quot;1732&quot; data-origin-height=&quot;874&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Water 플러그인이 활성화된 것을 확인한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;(2) 바다 추가하기&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2535&quot; data-origin-height=&quot;1751&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cHYRR2/btrQZWNGERT/aP89vFAHR4qLlM4aQmzeLK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cHYRR2/btrQZWNGERT/aP89vFAHR4qLlM4aQmzeLK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cHYRR2/btrQZWNGERT/aP89vFAHR4qLlM4aQmzeLK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcHYRR2%2FbtrQZWNGERT%2FaP89vFAHR4qLlM4aQmzeLK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;805&quot; height=&quot;556&quot; data-origin-width=&quot;2535&quot; data-origin-height=&quot;1751&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Landscape 모드로 전환하고, Enable Edit Layer를 활성화 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 Landscape를 생성한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2555&quot; data-origin-height=&quot;1675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/pa29w/btrQ2fLZfWL/KUXixpq6xxT0HGqo8sLAhk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/pa29w/btrQ2fLZfWL/KUXixpq6xxT0HGqo8sLAhk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/pa29w/btrQ2fLZfWL/KUXixpq6xxT0HGqo8sLAhk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fpa29w%2FbtrQ2fLZfWL%2FKUXixpq6xxT0HGqo8sLAhk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;785&quot; height=&quot;515&quot; data-origin-width=&quot;2555&quot; data-origin-height=&quot;1675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Water Body Ocean 액터를 씬에 추가한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/AR8oc/btrQ0v290LO/vjoDrW7l52HHbxyURY6bx1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/AR8oc/btrQ0v290LO/vjoDrW7l52HHbxyURY6bx1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/AR8oc/btrQ0v290LO/vjoDrW7l52HHbxyURY6bx1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FAR8oc%2FbtrQ0v290LO%2FvjoDrW7l52HHbxyURY6bx1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3840&quot; height=&quot;2077&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;씬에 WaterBodyOcean 및 부가 요소들이 추가되었으나, 뭔가 이상하다. 이를 해결해주기 위해, 먼저 Landscape 액터를 눌러본다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/TRxnN/btrQ0XrvPwJ/Plcfvt1df6uKyxy4XaCBZK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/TRxnN/btrQ0XrvPwJ/Plcfvt1df6uKyxy4XaCBZK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/TRxnN/btrQ0XrvPwJ/Plcfvt1df6uKyxy4XaCBZK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FTRxnN%2FbtrQ0XrvPwJ%2FPlcfvt1df6uKyxy4XaCBZK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3840&quot; height=&quot;2077&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Landscape 액터는 -5040.0, -5040.0, 100.0 좌표에 있으며, 씬 내에서 위치는 사진과 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/6Ifz7/btrQ0XkHBSW/pIVUKdO8Kv7PzOKw8IKKW0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/6Ifz7/btrQ0XkHBSW/pIVUKdO8Kv7PzOKw8IKKW0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/6Ifz7/btrQ0XkHBSW/pIVUKdO8Kv7PzOKw8IKKW0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F6Ifz7%2FbtrQ0XkHBSW%2FpIVUKdO8Kv7PzOKw8IKKW0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3840&quot; height=&quot;2077&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러나 WaterBodyOcean은 엉뚱한 곳에 가있다. 이를 보고, 좌표를 적절히 조정해줘야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Honeycam 2022-11-12 16-33-55.gif&quot; data-origin-width=&quot;682&quot; data-origin-height=&quot;391&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dH4wQs/btrQZ4EIerW/CAqVxOfdl0etKlrURKx1w0/img.gif&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dH4wQs/btrQZ4EIerW/CAqVxOfdl0etKlrURKx1w0/img.gif&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dH4wQs/btrQZ4EIerW/CAqVxOfdl0etKlrURKx1w0/img.gif&quot; srcset=&quot;https://blog.kakaocdn.net/dn/dH4wQs/btrQZ4EIerW/CAqVxOfdl0etKlrURKx1w0/img.gif&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;682&quot; height=&quot;391&quot; data-filename=&quot;Honeycam 2022-11-12 16-33-55.gif&quot; data-origin-width=&quot;682&quot; data-origin-height=&quot;391&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;WaterBodyOcean 액터를 Landscape 액터가 있던 좌표로 우선 맞추어주었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Honeycam 2022-11-12 16-40-24.gif&quot; data-origin-width=&quot;682&quot; data-origin-height=&quot;391&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bufdbN/btrQ3SJAzSv/LR8aDbKLBuAKXIADGOOx7K/img.gif&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bufdbN/btrQ3SJAzSv/LR8aDbKLBuAKXIADGOOx7K/img.gif&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bufdbN/btrQ3SJAzSv/LR8aDbKLBuAKXIADGOOx7K/img.gif&quot; srcset=&quot;https://blog.kakaocdn.net/dn/bufdbN/btrQ3SJAzSv/LR8aDbKLBuAKXIADGOOx7K/img.gif&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;682&quot; height=&quot;391&quot; data-filename=&quot;Honeycam 2022-11-12 16-40-24.gif&quot; data-origin-width=&quot;682&quot; data-origin-height=&quot;391&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;WaterBodyOcean 좌표를 다시 한번 맞추어주고, 뷰포트에 나타나는 가이드선을 보고, Spline Point를 설정해준다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;움짤에서는 일부러 좌표 하나하나 설정했는데, 그냥 Spline Point을 한 번에 다 선택하고 스케일 조정 및 좌표를 한꺼번에 하는 것이 편하기는 더 편하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/7DSjn/btrQ1Lc9wnP/ROQECQjRmQjQ0V7Vks3kDK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/7DSjn/btrQ1Lc9wnP/ROQECQjRmQjQ0V7Vks3kDK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/7DSjn/btrQ1Lc9wnP/ROQECQjRmQjQ0V7Vks3kDK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F7DSjn%2FbtrQ1Lc9wnP%2FROQECQjRmQjQ0V7Vks3kDK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3840&quot; height=&quot;2077&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가까이서 보면, 아주 그럴듯하게 바다가 만들어져있음을 알 수 있다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;(3) 강 만들기&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번에는 강을 만들어 보려고 한다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1589&quot; data-origin-height=&quot;1205&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bMAT2E/btrQZXy3g4w/3o7uqU91cY2Q8kAAJzhry0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bMAT2E/btrQZXy3g4w/3o7uqU91cY2Q8kAAJzhry0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bMAT2E/btrQZXy3g4w/3o7uqU91cY2Q8kAAJzhry0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbMAT2E%2FbtrQZXy3g4w%2F3o7uqU91cY2Q8kAAJzhry0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;598&quot; height=&quot;453&quot; data-origin-width=&quot;1589&quot; data-origin-height=&quot;1205&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번엔 Water Body River 액터를 추가한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/XZUyI/btrQZPOzAXT/s83BjUQWSLNb87RqK5uYCK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/XZUyI/btrQZPOzAXT/s83BjUQWSLNb87RqK5uYCK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/XZUyI/btrQZPOzAXT/s83BjUQWSLNb87RqK5uYCK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FXZUyI%2FbtrQZPOzAXT%2Fs83BjUQWSLNb87RqK5uYCK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3840&quot; height=&quot;2077&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;추가는 되었으나, 마찬가지로 좌표 상태가 영 이상하다. 조정해주자.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Honeycam 2022-11-12 16-48-54.gif&quot; data-origin-width=&quot;670&quot; data-origin-height=&quot;382&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ctzMt6/btrQ0Q63mRN/m1n7yyrD1my0HY1W06pXQ1/img.gif&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ctzMt6/btrQ0Q63mRN/m1n7yyrD1my0HY1W06pXQ1/img.gif&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ctzMt6/btrQ0Q63mRN/m1n7yyrD1my0HY1W06pXQ1/img.gif&quot; srcset=&quot;https://blog.kakaocdn.net/dn/ctzMt6/btrQ0Q63mRN/m1n7yyrD1my0HY1W06pXQ1/img.gif&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;670&quot; height=&quot;382&quot; data-filename=&quot;Honeycam 2022-11-12 16-48-54.gif&quot; data-origin-width=&quot;670&quot; data-origin-height=&quot;382&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이와 같이 WaterBodyRiver의 위치 및 Spline Point를 옮겨주는 것으로 간단하게 강 제작까지 완성!&lt;/p&gt;</description>
      <category>삽질 정보/UE5</category>
      <author>텐시야</author>
      <guid isPermaLink="true">https://tensiya.tistory.com/35</guid>
      <comments>https://tensiya.tistory.com/entry/UE5-Water-%ED%94%8C%EB%9F%AC%EA%B7%B8%EC%9D%B8#entry35comment</comments>
      <pubDate>Sat, 12 Nov 2022 16:44:01 +0900</pubDate>
    </item>
    <item>
      <title>[UE5] C++ 로그 출력하기</title>
      <link>https://tensiya.tistory.com/entry/UE5-C-%EB%A1%9C%EA%B7%B8-%EC%B6%9C%EB%A0%A5%ED%95%98%EA%B8%B0</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;UE5에서 간단하게 쓸만한 로그 출력의 종류는 총 두 가지가 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;꽤 여러 용도로 자주 쓰일 기능이라서, 하나씩 복습 겸 포스팅.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;참고 자료&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;a href=&quot;https://unrealcommunity.wiki/logging-lgpidy6i&quot;&gt;Logging | Unreal Engine Community Wiki (unrealcommunity.wiki)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.unrealengine.com/4.27/en-US/ProgrammingAndScripting/ProgrammingWithCPP/UnrealArchitecture/StringHandling/FString/&quot;&gt;FString | Unreal Engine 4.27 Documentation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.unrealengine.com/4.27/en-US/API/Runtime/Engine/Engine/UEngine/AddOnScreenDebugMessage/1/&quot;&gt;UEngine::AddOnScreenDebugMessage | Unreal Engine Documentation&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;(1) UE_LOG 매크로를 사용한 로그&lt;/h2&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;UE_LOG(LogTemp, Warning, TEXT(&quot;Hello&quot;));&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;UE_LOG 매크로를 활용한다. 세 개의 각 인자의 의미는 각각 LogCategory, Verbosity, FormatString 이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Verbosity Level은 다음과 같이 7개의 종류가 존재한다. (UnrealCommunity Wiki 발췌)&lt;/p&gt;
&lt;pre class=&quot;gherkin&quot;&gt;&lt;code&gt;| Verbosity Level | Printed in Console? | Printed in Editor's Log? |                      Notes                       |
|-----------------|---------------------|--------------------------|--------------------------------------------------|
| Fatal           | Yes                 | N/A                      | Crashes the session, even if logging is disabled |
| Error           | Yes                 | Yes                      | Log text is coloured red                         |
| Warning         | Yes                 | Yes                      | Log text is coloured yellow                      |
| Display         | Yes                 | Yes                      | Log text is coloured grey                        |
| Log             | No                  | Yes                      | Log text is coloured grey                        |
| Verbose         | No                  | No                       |                                                  |
| VeryVerbose     | No                  | No                       |                                                  |&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;주의할 점은, &lt;b&gt;Fatal 레벨은 프로그램을 강제로 종료시키고 에러 보고 창을 띄워버린다.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;프로그램을 살려둔 상태에서 가장 높은 에러 레벨은 Error인 것.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Verbose와 VeryVerbose는 출력되지 않는다. 그러나 로그 파일에는 출력된다고 하는데, 일단 기본 값에서는 로그 파일에도 안나오는 것 같다. 따로 설정해줘야 하는 듯.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음과 같은 로그를 출력해보았다.&lt;/p&gt;
&lt;pre class=&quot;cpp&quot; data-ke-language=&quot;cpp&quot;&gt;&lt;code&gt;constexpr auto Number = 100;
UE_LOG(LogTemp, VeryVerbose, TEXT(&quot;%d + %d = %d!&quot;), Number, 5, Number + 5);
UE_LOG(LogTemp, Verbose, TEXT(&quot;%d + %d = %d!&quot;), Number, 5, Number + 5);
UE_LOG(LogTemp, Log, TEXT(&quot;%d - %d = %d!&quot;), Number, 5, Number + 5);
UE_LOG(LogTemp, Display, TEXT(&quot;%d * %d = %d!&quot;), Number, 5, Number + 5);
UE_LOG(LogTemp, Warning, TEXT(&quot;%d / %d = %d!&quot;), Number, 5, Number + 5);
UE_LOG(LogTemp, Error, TEXT(&quot;%lf / %lf = %lf!&quot;), Number, 5.0, Number / 5.0);
// UE_LOG(LogTemp, Fatal, TEXT(&quot;%lf / %lf = %lf!&quot;), Number, 7.5, Number / 7.5);&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;UE_LOG 매크로는 4번째 인자부터 자동으로 포맷 인자로 인식하기 때문에, printf처럼 쓰면 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 로그를 출력하면 다음과 같이 나온다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;699&quot; data-origin-height=&quot;123&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/48Cq1/btrQWXMDiun/bp3SkVKKqU5rIlTZLbbPB1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/48Cq1/btrQWXMDiun/bp3SkVKKqU5rIlTZLbbPB1/img.png&quot; data-alt=&quot;언리얼 에디터에서 출력 로그&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/48Cq1/btrQWXMDiun/bp3SkVKKqU5rIlTZLbbPB1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F48Cq1%2FbtrQWXMDiun%2Fbp3SkVKKqU5rIlTZLbbPB1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;699&quot; height=&quot;123&quot; data-origin-width=&quot;699&quot; data-origin-height=&quot;123&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;언리얼 에디터에서 출력 로그&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1021&quot; data-origin-height=&quot;161&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/YiT5D/btrQZc9q6S3/kG6oEZ2jiqUONW9wKpnqHk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/YiT5D/btrQZc9q6S3/kG6oEZ2jiqUONW9wKpnqHk/img.png&quot; data-alt=&quot;Rider에서 나타난 로그&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/YiT5D/btrQZc9q6S3/kG6oEZ2jiqUONW9wKpnqHk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FYiT5D%2FbtrQZc9q6S3%2FkG6oEZ2jiqUONW9wKpnqHk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1021&quot; height=&quot;161&quot; data-origin-width=&quot;1021&quot; data-origin-height=&quot;161&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Rider에서 나타난 로그&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;(2) 화면에 메시지 출력&lt;/h2&gt;
&lt;pre id=&quot;code_1668148531917&quot; class=&quot;cpp&quot; data-ke-language=&quot;cpp&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;const auto Name = GetName();
GEngine-&amp;gt;AddOnScreenDebugMessage(INDEX_NONE, 5.f, FColor::White, FString::Printf(TEXT(&quot;Your name is %s!&quot;), *Name));&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;GEngine-&amp;gt;AddOnScreenDebugMessage 메서드를 사용한다. FString::Printf와 결합하여 사용할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;각 인자는 Key, 시간, 색상, 텍스트 이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기에서 Key는 메시지 출력 시 &lt;b&gt;화면에 여러 번 나오는걸 방지하기 위한 고유 키&lt;/b&gt;이다. 고유 키 없이 계속 쌓이게 하려면, -1 또는 &lt;b&gt;INDEX_NONE&lt;/b&gt;으로 설정한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;591&quot; data-origin-height=&quot;337&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/3vJ4t/btrQWW73HsE/ihi3BQqTRdn2QiVG9AkEk0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/3vJ4t/btrQWW73HsE/ihi3BQqTRdn2QiVG9AkEk0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/3vJ4t/btrQWW73HsE/ihi3BQqTRdn2QiVG9AkEk0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F3vJ4t%2FbtrQWW73HsE%2Fihi3BQqTRdn2QiVG9AkEk0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;591&quot; height=&quot;337&quot; data-origin-width=&quot;591&quot; data-origin-height=&quot;337&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;요로코롬 화면 왼쪽 위에 나타난다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>삽질 정보/UE5</category>
      <author>텐시야</author>
      <guid isPermaLink="true">https://tensiya.tistory.com/34</guid>
      <comments>https://tensiya.tistory.com/entry/UE5-C-%EB%A1%9C%EA%B7%B8-%EC%B6%9C%EB%A0%A5%ED%95%98%EA%B8%B0#entry34comment</comments>
      <pubDate>Fri, 11 Nov 2022 15:42:20 +0900</pubDate>
    </item>
    <item>
      <title>[UE5] 지형 생성</title>
      <link>https://tensiya.tistory.com/entry/UE5-%EC%A7%80%ED%98%95-%EC%83%9D%EC%84%B1</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;674&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/mtMHg/btrQTV2Tg88/hAStxUsekzUSb5deh4yJG1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/mtMHg/btrQTV2Tg88/hAStxUsekzUSb5deh4yJG1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/mtMHg/btrQTV2Tg88/hAStxUsekzUSb5deh4yJG1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FmtMHg%2FbtrQTV2Tg88%2FhAStxUsekzUSb5deh4yJG1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1280&quot; height=&quot;674&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;674&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;대충 블록으로 쌓는 맵도 봤으니, Landscape툴을 사용한 야외 레벨 디자인도 한 번 시도.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;어차피 아래의 언리얼 엔진 공식 매뉴얼에 잘 설명되어 있는 부분이지만, 복습을 겸해서 포스팅.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.unrealengine.com/4.26/en-US/BuildingWorlds/Landscape/QuickStart/&quot;&gt;Landscape Quick Start Guide | Unreal Engine Documentation&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;(1) 기반 지형 생성&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1191&quot; data-origin-height=&quot;647&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bmiwfv/btrQXg5zt89/JdMLupeOxagJ2GfDiXfyLK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bmiwfv/btrQXg5zt89/JdMLupeOxagJ2GfDiXfyLK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bmiwfv/btrQXg5zt89/JdMLupeOxagJ2GfDiXfyLK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbmiwfv%2FbtrQXg5zt89%2FJdMLupeOxagJ2GfDiXfyLK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;540&quot; height=&quot;293&quot; data-origin-width=&quot;1191&quot; data-origin-height=&quot;647&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;먼저 Landscape 모드로 전환해야 한다 :)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/0Im8w/btrQVAKeoXU/j3Jufc8OFuWp2epkZyuSt1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/0Im8w/btrQVAKeoXU/j3Jufc8OFuWp2epkZyuSt1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/0Im8w/btrQVAKeoXU/j3Jufc8OFuWp2epkZyuSt1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F0Im8w%2FbtrQVAKeoXU%2Fj3Jufc8OFuWp2epkZyuSt1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;727&quot; height=&quot;2077&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;적당한 사이즈의 Landscape 액터를 생성하는게 먼저이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;머티리얼이 대충 M_Ground로 지정되어 있기는 한데, 사실 별 의미없더라. 어차피 Landscape용 Material을 만들어야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;(2) Landscape 머티리얼 만들기&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1563&quot; data-origin-height=&quot;1525&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/wDv7C/btrQUTQZafK/chDqhVIIIyOZIUKkkLLW8k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/wDv7C/btrQUTQZafK/chDqhVIIIyOZIUKkkLLW8k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/wDv7C/btrQUTQZafK/chDqhVIIIyOZIUKkkLLW8k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FwDv7C%2FbtrQUTQZafK%2FchDqhVIIIyOZIUKkkLLW8k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;534&quot; height=&quot;521&quot; data-origin-width=&quot;1563&quot; data-origin-height=&quot;1525&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;새로운 Landscape용으로 사용할 머티리얼을 생성한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1831&quot; data-origin-height=&quot;1353&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cxq96C/btrQWXkQqOK/oCMV1KfFsa2xt3E9zyqbM0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cxq96C/btrQWXkQqOK/oCMV1KfFsa2xt3E9zyqbM0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cxq96C/btrQWXkQqOK/oCMV1KfFsa2xt3E9zyqbM0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcxq96C%2FbtrQWXkQqOK%2FoCMV1KfFsa2xt3E9zyqbM0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1831&quot; height=&quot;1353&quot; data-origin-width=&quot;1831&quot; data-origin-height=&quot;1353&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1. LandscapeLayerBlend 노드를 생성한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2. Landscape에 칠할 종류의 개수의 Layer를 생성한다. 여기서는 Grass, Gravel, Moss의 3개.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;3. LandscapeLayerBlend 노드는 BaseColor용, Normal용 각각 만든다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;4. Roughness는 1로 설정한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;5. BaseImage 및 NormalMap 텍스처를 가져와서 각각 Layer Blend에 올바르게 연결한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;6. UV 타일링 벡터를 적절하게 조정한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 과정을 거쳐, Landscape 머티리얼을 만든다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;947&quot; data-origin-height=&quot;1569&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cOLMHi/btrQUBb1mOQ/9cExrYJdKPKO10wuIypQ41/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cOLMHi/btrQUBb1mOQ/9cExrYJdKPKO10wuIypQ41/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cOLMHi/btrQUBb1mOQ/9cExrYJdKPKO10wuIypQ41/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcOLMHi%2FbtrQUBb1mOQ%2F9cExrYJdKPKO10wuIypQ41%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;346&quot; height=&quot;573&quot; data-origin-width=&quot;947&quot; data-origin-height=&quot;1569&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이후, Paint 탭에서 각 Layer에 대해 Weight-Blended Layer로 레이어를 생성한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;(3) 지형 디자인 :)&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/H1dWy/btrQT97Pwwo/EE7gzJNczTkPFbHsrFYwGk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/H1dWy/btrQT97Pwwo/EE7gzJNczTkPFbHsrFYwGk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/H1dWy/btrQT97Pwwo/EE7gzJNczTkPFbHsrFYwGk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FH1dWy%2FbtrQT97Pwwo%2FEE7gzJNczTkPFbHsrFYwGk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3840&quot; height=&quot;2077&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Sculpt, Paint 툴을 사용해 지형을 디자인한다 :)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;(4) 텍스쳐 벽 부드럽게 만들기&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1577&quot; data-origin-height=&quot;737&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/eqRg3c/btrQYcviipb/XeB2XGemNOqgBKcK1zicC0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/eqRg3c/btrQYcviipb/XeB2XGemNOqgBKcK1zicC0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/eqRg3c/btrQYcviipb/XeB2XGemNOqgBKcK1zicC0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FeqRg3c%2FbtrQYcviipb%2FXeB2XGemNOqgBKcK1zicC0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1577&quot; height=&quot;737&quot; data-origin-width=&quot;1577&quot; data-origin-height=&quot;737&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 사진 처럼 텍스처 간 경계가 부자연스럽게 딱 분리되는 형태가 생기면, Blend를 시켜서 경계를 부드럽게 만들수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bJaw2Z/btrQU9M3O25/y6NTaHk7ZRmhIr5pNjAw4K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bJaw2Z/btrQU9M3O25/y6NTaHk7ZRmhIr5pNjAw4K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bJaw2Z/btrQU9M3O25/y6NTaHk7ZRmhIr5pNjAw4K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbJaw2Z%2FbtrQU9M3O25%2Fy6NTaHk7ZRmhIr5pNjAw4K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3840&quot; height=&quot;2077&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;왼쪽에서 Smooth 툴을 선택하고, 경계를 문질문질 문질러준다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1377&quot; data-origin-height=&quot;659&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/k9i0q/btrQYFjzEdH/ckPI3Av1yITgFZSRrMroq0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/k9i0q/btrQYFjzEdH/ckPI3Av1yITgFZSRrMroq0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/k9i0q/btrQYFjzEdH/ckPI3Av1yITgFZSRrMroq0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fk9i0q%2FbtrQYFjzEdH%2FckPI3Av1yITgFZSRrMroq0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;760&quot; height=&quot;364&quot; data-origin-width=&quot;1377&quot; data-origin-height=&quot;659&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Smooth 툴로 문질러준 왼쪽 부분과, 문지르지 않은 오른쪽 부분이 딱 봐도 확 차이가 느껴질 정도이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;요로케 자연스럽게 경계를 희미하게 해줄 수 있다.&lt;/p&gt;</description>
      <category>삽질 정보/UE5</category>
      <author>텐시야</author>
      <guid isPermaLink="true">https://tensiya.tistory.com/33</guid>
      <comments>https://tensiya.tistory.com/entry/UE5-%EC%A7%80%ED%98%95-%EC%83%9D%EC%84%B1#entry33comment</comments>
      <pubDate>Fri, 11 Nov 2022 14:07:13 +0900</pubDate>
    </item>
    <item>
      <title>[UE5] C++ 개발을 하려니, 호기심이 넘쳐서 고민.</title>
      <link>https://tensiya.tistory.com/entry/UE5-C-%EA%B0%9C%EB%B0%9C%EC%9D%84-%ED%95%98%EB%A0%A4%EB%8B%88-%ED%98%B8%EA%B8%B0%EC%8B%AC%EC%9D%B4-%EB%84%98%EC%B3%90%EC%84%9C-%EA%B3%A0%EB%AF%BC</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;780&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bjwTXx/btrQTFjFhAz/bx2VKlbLUL18mMGd6DuDv1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bjwTXx/btrQTFjFhAz/bx2VKlbLUL18mMGd6DuDv1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bjwTXx/btrQTFjFhAz/bx2VKlbLUL18mMGd6DuDv1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbjwTXx%2FbtrQTFjFhAz%2Fbx2VKlbLUL18mMGd6DuDv1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;780&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;780&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;본격적으로 뭔가를 개발하려면 C++든 블루프린트든, 아무튼 게임 로직 구현을 위해서 스크립팅을 하는 방법을 알아야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;애초에 블루프린트는 애초에 워낙 간단하기도 하고, 나는 이미 UE4 시절 가끔가다 언리얼4를 깔아서 찍먹도 해본 상태였다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉, 아무튼 '블루프린트'라는 방식 자체는 나중에 배워도 어렵지 않을 것 같아서, &lt;b&gt;일단&lt;/b&gt; C++를 도전해보기로 했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;먼저, C++로 언리얼 엔진 게임 개발을 어떻게 하는지 영상을 좀 찾아봤다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;a href=&quot;https://www.youtube.com/watch?v=AylYGHBkrHI&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;How&amp;nbsp;To&amp;nbsp;Make&amp;nbsp;YOUR&amp;nbsp;OWN&amp;nbsp;Action&amp;nbsp;RPG!&amp;nbsp;|&amp;nbsp;Unreal&amp;nbsp;and&amp;nbsp;C++&amp;nbsp;Tutorial,&amp;nbsp;Part&amp;nbsp;1&amp;nbsp;(Basic&amp;nbsp;RPG&amp;nbsp;Stats&amp;nbsp;and&amp;nbsp;Elements)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.youtube.com/watch?v=D4UM73O7Zxs&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Intro&amp;nbsp;to&amp;nbsp;Unreal&amp;nbsp;Engine&amp;nbsp;C++&amp;nbsp;Tutorial&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;대충 어떻게 만드는지 처음부터 쭉 진행하는 튜토리얼식 코스를 조금 시청했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;세계에서 널리 쓰이는 만큼, 엔진 자체가 이미 굉장히 완성도가 높기 때문에 거의 모든 기능을 담고 있다고 해도 과언이 아닌 것 같았고, 편의성 또한 우수해보였다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다행히 이전에 이미 유니티 엔진을 하다가 온 경험이 있기에 강좌가 설명하는 것을 따라가는 것도 그렇게 크게 어렵진 않았다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1. 원하는 로직을 만들기 위해서 필요한 C++ 클래스를 만든다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2. 헤더에 변수 및 함수를 정의하고, 필요하다면 블루프린트에 노출될 수 있게 UPROPERTY, UFUNCTION등의 매크로를 붙인다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;3. 언리얼 엔진에서 제공하는 모듈들의 API들을 활용해 기능을 구현한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;4. 필요하다면 블루프린트로 C++ 클래스를 상속받아서, 추가 기능을 구현한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;5. 결과를 확인한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만 문제는 이거였다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1. 유니티에서도 처음에 비슷한 문제를 겪었었는데, &lt;b&gt;저렇게 많은 레퍼런스를 어떻게 다 알고&lt;/b&gt; 사용해야 하지?&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2. 유니티는 그나마 System 네임스페이스의 라이브러리들을 쉽게 활용할 수 있었는데, &lt;b&gt;언리얼은 STD/STL을 안쓴다.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;결국 어느 정도는 언리얼 엔진의 C++ 레퍼런스를 좀 봐둬야겠다고 판단이 섰다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 C++ 레퍼런스를 읽어보고 있던 와중이었다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.unrealengine.com/5.0/en-US/API/QuickStart/&quot;&gt;Getting started with the Unreal Engine API | Unreal Engine Documentation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.unrealengine.com/5.0/en-US/API/Runtime/Core/&quot;&gt;Core | Unreal Engine Documentation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.unrealengine.com/5.0/en-US/API/Runtime/CoreUObject/&quot;&gt;CoreUObject | Unreal Engine Documentation&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;근데 레퍼런스를 쭉 보고 있자니, 깨달은 사실은 &lt;b&gt;언리얼은 C++ 표준을 거의 안갖다 쓴다&lt;/b&gt;고 해도 과언이 아니었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉, reinterpret_cast 대신에 C스타일 괄호 캐스팅을 주로 사용하고, 템플릿도 std::enable_if 같은게 이미 있음에도 TEnableIf 같은 템플릿이 따로 존재했으며, std::map, std::vector 등이 이미 존재함에도 TMap, TList 등이 또 따로 다 있었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;언리얼 엔진4를 개발할 때 이미 C++11 표준은 커녕 C++98도 이미 std::map, std::vector는 지원하는 판국에 어째서 자체적으로 이 모든걸 다 구현하고 STD는 거의 배제하다시피 해놓은 건지가 궁금했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;대충 찾아보니 아래와 같은 포럼 스레드를 발견할 수 있었다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;a href=&quot;https://forums.unrealengine.com/t/why-doesnt-ue-utilize-stl-containers/34551/4&quot;&gt;Why doesn't UE utilize STL containers? - Programming &amp;amp; Scripting / C++ - Unreal Engine Forums&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;꼽아본다면 몇 가지가 나오는데,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1. C++98 표준은, '언리얼1'이 출시된 해와 같은 1998년에 발표되었다. 이미 &lt;b&gt;엔진 기반이 만들어진 상태에서&lt;/b&gt; &lt;b&gt;뒤늦게&lt;/b&gt; 나온 표준이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2. 옛날에는 C++ 표준의 구현이 &lt;b&gt;그다지 성능이나 완성도가 좋지 못했고&lt;/b&gt;, 심지어 사실 상 플랫폼 종속적이었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;3. 현재에도 모바일 기기, 콘솔 등 모든 &lt;b&gt;플랫폼을 독립적&lt;/b&gt;으로 동일하게 아우으려면 어쩔 수 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;4. STD/STL은 언리얼 입장에서는 서드파티기 때문에, &lt;b&gt;엔진에 맞게 최적화&lt;/b&gt;를 할 수 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;요런 의견이 나온 것 같다. 뭐 이해가 안되는 내용인건 아닌 것 같다. 그래서 일단은 납득하고 넘어가려고 하는데..&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만 여전히 reinterpret_cast, dynamic_cast 같은걸 쓰면 안되는 이유는 궁금했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 그것도 검색을 해보니 언리얼 C++의 캐스팅 원리에 대해 정리한 글을 통해 어느 정도 알 수 있었다.&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;a href=&quot;https://peterleontev.com/blog/unreal_cast/&quot;&gt;Peter Leontev - Entrepreneur &amp;amp; Game Tools &amp;amp; Tech Programmer | How Unreal Engine C++ Cast&amp;lt;T&amp;gt; function works?&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;자세하고 깊게 정말 잘 쓰여져 있어서, 재미있게 읽을 수 있었다. 그리고 몇 가지 사실을 알 수 있었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1. 타입 안전한 dynamic_cast를 언리얼에서 Cast&amp;lt;T&amp;gt;로 새로 구현했다. 타입 형변환에서 static_cast 멈춰!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2. dynamic_cast에 비해서, &lt;b&gt;이미 언리얼 내부적으로 구현된 리플렉션을 활용&lt;/b&gt;하므로 &lt;b&gt;성능상의 커다란 이점&lt;/b&gt;을 갖는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;3. &lt;span style=&quot;background-color: #f8f8f8; color: #000000;&quot;&gt;TCastImpl, TCastFlags 같은 템플릿으로 캐스팅에 필요한 템플릿 구조체를 만들어 활용한다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f8f8f8; color: #000000;&quot;&gt;4. 전달되는 객체의 유형을 이미 안다면, ExactCast&amp;lt;T&amp;gt;를 사용하면 더 빠르다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아직도 갈 길이 멀다. 레퍼런스나 계속 읽어보러 가야겠다..&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;(추가1)&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;레퍼런스를 보다가, 무려 &lt;b&gt;공식 레퍼런스에서&lt;/b&gt; C/C++의 표준 함수를 안쓰는 이유에 대해서 설명하고 있는걸 찾았다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;바로 &lt;a href=&quot;https://docs.unrealengine.com/5.0/en-US/epic-cplusplus-coding-standard-for-unreal-engine/#useofstandardlibraries&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;b&gt;여기에서&lt;/b&gt;&lt;/a&gt; 발견할 수 있었는데, 읽어보면 이런 내용이 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #000000;&quot;&gt;Historically, UE has avoided direct use of the C and C++ standard libraries. There have been several reasons for this, including: replacing slow implementations with our own, allowing additional control over memory allocation, adding new functionality before it's widely available, making desirable but non-standard behavioral changes, having consistent syntax across the codebase, or avoiding constructs which are incompatible with UE's idioms.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #fdfdfd; color: #000000;&quot;&gt;위에 스레드에서 얻은 내용과 거의 비슷해서 추가적으로 다른 부분은 없다. 최신 C++ 표준에 대한 언급이 있어서 이 부분에 대해서 신경을 좀 써서 읽어봤다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #fdfdfd; color: #000000; letter-spacing: 0px;&quot;&gt;해당 부분의 대략적인 내용은, 같은 구현이 있다면 레거시 UE 코드 대신 최신 표준 라이브러리로 전환할 수 있지만, 일관성에 신경을 쓰라는 대목이다. 같은 API에서 UE 레거시 코드와 표준 라이브러리를 혼용하지 말라는 부분이다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #fdfdfd; color: #000000;&quot;&gt;&amp;lt;atomic&amp;gt;, &amp;lt;type_traits&amp;gt;, &amp;lt;initializer_list&amp;gt;, &amp;lt;regex&amp;gt; 같은건 필요하면 가져다 쓸 수 있는 것 같다. 특히 언리얼 자체의 atomic 지원이 부실하다고 적혀있는데, C++ 표준의 &amp;lt;atomic&amp;gt;을 활용하 수 있다면 큰 이점이 될 것 같다.&lt;/span&gt;&lt;/p&gt;</description>
      <category>삽질 정보/UE5</category>
      <author>텐시야</author>
      <guid isPermaLink="true">https://tensiya.tistory.com/32</guid>
      <comments>https://tensiya.tistory.com/entry/UE5-C-%EA%B0%9C%EB%B0%9C%EC%9D%84-%ED%95%98%EB%A0%A4%EB%8B%88-%ED%98%B8%EA%B8%B0%EC%8B%AC%EC%9D%B4-%EB%84%98%EC%B3%90%EC%84%9C-%EA%B3%A0%EB%AF%BC#entry32comment</comments>
      <pubDate>Thu, 10 Nov 2022 14:22:58 +0900</pubDate>
    </item>
    <item>
      <title>[UE5] 머티리얼 UV Tiling + UV Offset 설정</title>
      <link>https://tensiya.tistory.com/entry/UE5-%EB%A8%B8%ED%8B%B0%EB%A6%AC%EC%96%BC-UV-Tiling-UV-Offset-%EC%84%A4%EC%A0%95</link>
      <description>&lt;h2 data-ke-size=&quot;size26&quot;&gt;(1) 레벨 디자인 연습중..&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;611&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bsre6F/btrQGSd55iT/kdjZPzVkuimuli5ShebQKK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bsre6F/btrQGSd55iT/kdjZPzVkuimuli5ShebQKK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bsre6F/btrQGSd55iT/kdjZPzVkuimuli5ShebQKK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbsre6F%2FbtrQGSd55iT%2FkdjZPzVkuimuli5ShebQKK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;730&quot; height=&quot;348&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;611&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시작용 콘텐츠를 가지고 레벨 디자인을 연습해보고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;엄청 투박한 큐브만으로 뚝딱뚝딱 하고 있는거긴 한데, 시작용 콘텐츠에 포함된 머티리얼 애셋이 워낙에 퀄이 좋아서, 그냥 갖다만 써도 굉장히 그럴듯해 보인다. -_-ㅋㅋ&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그런데 이제 건물을 하나 세우고, 문을 달아보고 싶은데... 어떻게 해야할지 감이 안잡힌다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;(2) 텍스처 &amp;amp; 머티리얼&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일단 무작정 문짝 텍스쳐를 구해본다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2141&quot; data-origin-height=&quot;1539&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b9sbZt/btrQKDsEbp3/thnvwEIDS31KYIQ4ivvaGk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b9sbZt/btrQKDsEbp3/thnvwEIDS31KYIQ4ivvaGk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b9sbZt/btrQKDsEbp3/thnvwEIDS31KYIQ4ivvaGk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb9sbZt%2FbtrQKDsEbp3%2FthnvwEIDS31KYIQ4ivvaGk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;781&quot; height=&quot;561&quot; data-origin-width=&quot;2141&quot; data-origin-height=&quot;1539&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;대충 적당한 문짝을 하나 구했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1489&quot; data-origin-height=&quot;1031&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/51KbU/btrQJbRuF5E/JUEZPqbw9mk8cMgW9zFt5K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/51KbU/btrQJbRuF5E/JUEZPqbw9mk8cMgW9zFt5K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/51KbU/btrQJbRuF5E/JUEZPqbw9mk8cMgW9zFt5K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F51KbU%2FbtrQJbRuF5E%2FJUEZPqbw9mk8cMgW9zFt5K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;728&quot; height=&quot;1031&quot; data-origin-width=&quot;1489&quot; data-origin-height=&quot;1031&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 큐브를 적당히 문짝처럼 만들어서 머티리얼을 넣어보았다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;... 그런데, 상,좌우의 하얀색 여백 때문에 상당히 거슬린다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1205&quot; data-origin-height=&quot;1037&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cn5B8a/btrQJiCY8Dg/box5KkkMw3Q5zjrXG9lmQ0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cn5B8a/btrQJiCY8Dg/box5KkkMw3Q5zjrXG9lmQ0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cn5B8a/btrQJiCY8Dg/box5KkkMw3Q5zjrXG9lmQ0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcn5B8a%2FbtrQJiCY8Dg%2Fbox5KkkMw3Q5zjrXG9lmQ0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;475&quot; height=&quot;1037&quot; data-origin-width=&quot;1205&quot; data-origin-height=&quot;1037&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정면에서 보니까 이것이 더욱 더 두드러져보인다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;(3) UV 오프셋 조정&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2781&quot; data-origin-height=&quot;1489&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/beRNQm/btrQK1z3Xka/x6ym4vlZkaQy6KxqhbNFxk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/beRNQm/btrQK1z3Xka/x6ym4vlZkaQy6KxqhbNFxk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/beRNQm/btrQK1z3Xka/x6ym4vlZkaQy6KxqhbNFxk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbeRNQm%2FbtrQK1z3Xka%2Fx6ym4vlZkaQy6KxqhbNFxk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;798&quot; height=&quot;427&quot; data-origin-width=&quot;2781&quot; data-origin-height=&quot;1489&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일단 여기 TextureCoord 노드에서, 유니티처럼 UV Offset을 설정할 수 있을 줄 알았는데, 암만 찾아도 UV Tiling만 있는 것 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;우선 다음 링크에서 방법을 알았고, 영감을 얻었다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;a href=&quot;https://forums.unrealengine.com/t/is-there-a-way-to-offset-a-texture/359235&quot;&gt;Is there a way to offset a texture - Development / Rendering - Unreal Engine Forums&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;UV 값도 &lt;b&gt;어차피 2차원 벡터이므로&lt;/b&gt;, 그걸 계산해주면 되는 것 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2813&quot; data-origin-height=&quot;1559&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cHByTg/btrQJbcRCIi/WP3l0PCofVbHaNXKh3kExK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cHByTg/btrQJbcRCIi/WP3l0PCofVbHaNXKh3kExK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cHByTg/btrQJbcRCIi/WP3l0PCofVbHaNXKh3kExK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcHByTg%2FbtrQJbcRCIi%2FWP3l0PCofVbHaNXKh3kExK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2813&quot; height=&quot;1559&quot; data-origin-width=&quot;2813&quot; data-origin-height=&quot;1559&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1. Constant Vector2 노드를 하나 생성한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2. TexCoord 및 Constant Vector2 값을 적당히 조정해가면서 최적의 값을 찾는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;3. 최종적으로, UV크기가 계산된 값에 Offset 벡터를 Add를 통해 더한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;4. 그 값을 텍스쳐의 UV 인풋에 연결한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1633&quot; data-origin-height=&quot;1057&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b6SzlM/btrQHBDoS2L/5L5eFRi7P34YDrapBPOnpk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b6SzlM/btrQHBDoS2L/5L5eFRi7P34YDrapBPOnpk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b6SzlM/btrQHBDoS2L/5L5eFRi7P34YDrapBPOnpk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb6SzlM%2FbtrQHBDoS2L%2F5L5eFRi7P34YDrapBPOnpk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;764&quot; height=&quot;495&quot; data-origin-width=&quot;1633&quot; data-origin-height=&quot;1057&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;꽤 그럴듯하게 나온 것 같다. :)&lt;/p&gt;</description>
      <category>삽질 정보/UE5</category>
      <author>텐시야</author>
      <guid isPermaLink="true">https://tensiya.tistory.com/31</guid>
      <comments>https://tensiya.tistory.com/entry/UE5-%EB%A8%B8%ED%8B%B0%EB%A6%AC%EC%96%BC-UV-Tiling-UV-Offset-%EC%84%A4%EC%A0%95#entry31comment</comments>
      <pubDate>Tue, 8 Nov 2022 22:14:15 +0900</pubDate>
    </item>
    <item>
      <title>[UE5] C++ 클래스의 변수를 블루프린트로 쓰기</title>
      <link>https://tensiya.tistory.com/entry/UE5-C-%ED%81%B4%EB%9E%98%EC%8A%A4%EC%9D%98-%EB%B3%80%EC%88%98%EB%A5%BC-%EB%B8%94%EB%A3%A8%ED%94%84%EB%A6%B0%ED%8A%B8%EB%A1%9C-%EC%93%B0%EA%B8%B0</link>
      <description>&lt;h2 data-ke-size=&quot;size26&quot;&gt;(1) 서론&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사실 이거도 이거인데.. C++ 개발 환경을 세팅하는거부터가 난관이었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;유니티는 그냥 Visual Studio + Unity 3D 깔면 알아서 다 세팅되어서 그냥 쓰면 됐는데, 얘는 C++라서 그런건지...&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;엄청 신경쓰이게시리 Visual Studio 상에서 컴파일 에러가 나오고 난리난다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;결국 Rider 2022를 깔아버렸다. 요새 Rider가 Unreal Engine을 완벽히 지원하게 나왔다고 해서,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가지고 있던 Jetbrains 교육용 라이센스를 가지고 무료로 설치했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1419&quot; data-origin-height=&quot;777&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/EloTb/btrQDQfDFi7/WKFHOIYv3kypjln1DKtgSK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/EloTb/btrQDQfDFi7/WKFHOIYv3kypjln1DKtgSK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/EloTb/btrQDQfDFi7/WKFHOIYv3kypjln1DKtgSK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FEloTb%2FbtrQDQfDFi7%2FWKFHOIYv3kypjln1DKtgSK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;705&quot; height=&quot;777&quot; data-origin-width=&quot;1419&quot; data-origin-height=&quot;777&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;컴파일 에러가 안나니까, 싱글벙글 타이핑하고 컴파일을 돌리려는 찰나...&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;컴파일 에러가 나온다! -_-&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;679&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Oihd5/btrQDP84jy5/dwROAJtZE6XVRX8br6ed90/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Oihd5/btrQDP84jy5/dwROAJtZE6XVRX8br6ed90/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Oihd5/btrQDP84jy5/dwROAJtZE6XVRX8br6ed90/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FOihd5%2FbtrQDP84jy5%2FdwROAJtZE6XVRX8br6ed90%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;536&quot; height=&quot;284&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;679&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이에 대한 컴파일 오류 해결에 대해서도 삽질이 시작되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://tensiya.tistory.com/entry/UE5-Live-Coding-%EC%BB%B4%ED%8C%8C%EC%9D%BC-fatal-error-LNK1104-%EC%98%A4%EB%A5%98&quot;&gt;[UE5] Live Coding 컴파일 fatal error LNK1104 오류&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1667883224265&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;[UE5] Live Coding 컴파일 fatal error LNK1104 오류&quot; data-og-description=&quot;'***' 파일을 열 수 없습니다. 라는 에러가 미친듯이 쏟아져 나온다. 아무것도 안했는데 이러니까 미치고 팔짝 뛸 노릇. 엄청나게 검색을 해댔다. 그리고 나온 해결책은 다음과 같다. (1) 첫 번째 &quot; data-og-host=&quot;tensiya.tistory.com&quot; data-og-source-url=&quot;https://tensiya.tistory.com/entry/UE5-Live-Coding-%EC%BB%B4%ED%8C%8C%EC%9D%BC-fatal-error-LNK1104-%EC%98%A4%EB%A5%98&quot; data-og-url=&quot;https://tsi.kr/entry/UE5-Live-Coding-%EC%BB%B4%ED%8C%8C%EC%9D%BC-fatal-error-LNK1104-%EC%98%A4%EB%A5%98&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/Tc8sr/hyQveTKEDL/KygqHkl8UPiRse5ciPY3ck/img.png?width=800&amp;amp;height=424&amp;amp;face=0_0_800_424,https://scrap.kakaocdn.net/dn/bpKzho/hyQviaKaqk/pGfqgyklIBgyfMdgFuZG2k/img.png?width=800&amp;amp;height=424&amp;amp;face=0_0_800_424&quot;&gt;&lt;a href=&quot;https://tensiya.tistory.com/entry/UE5-Live-Coding-%EC%BB%B4%ED%8C%8C%EC%9D%BC-fatal-error-LNK1104-%EC%98%A4%EB%A5%98&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://tensiya.tistory.com/entry/UE5-Live-Coding-%EC%BB%B4%ED%8C%8C%EC%9D%BC-fatal-error-LNK1104-%EC%98%A4%EB%A5%98&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/Tc8sr/hyQveTKEDL/KygqHkl8UPiRse5ciPY3ck/img.png?width=800&amp;amp;height=424&amp;amp;face=0_0_800_424,https://scrap.kakaocdn.net/dn/bpKzho/hyQviaKaqk/pGfqgyklIBgyfMdgFuZG2k/img.png?width=800&amp;amp;height=424&amp;amp;face=0_0_800_424');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;[UE5] Live Coding 컴파일 fatal error LNK1104 오류&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;'***' 파일을 열 수 없습니다. 라는 에러가 미친듯이 쏟아져 나온다. 아무것도 안했는데 이러니까 미치고 팔짝 뛸 노릇. 엄청나게 검색을 해댔다. 그리고 나온 해결책은 다음과 같다. (1) 첫 번째&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;tensiya.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 마침내 해결했으며, 해결은 위와 같은 방법으로 할 수 있었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;(2) 블루프린트에서 변수 확인 및 기본 값 채워넣기&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;737&quot; data-origin-height=&quot;459&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/6IYeo/btrQDPVrEh0/P6K2RJG6NKl2LVlBGLpycK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/6IYeo/btrQDPVrEh0/P6K2RJG6NKl2LVlBGLpycK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/6IYeo/btrQDPVrEh0/P6K2RJG6NKl2LVlBGLpycK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F6IYeo%2FbtrQDPVrEh0%2FP6K2RJG6NKl2LVlBGLpycK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;299&quot; height=&quot;186&quot; data-origin-width=&quot;737&quot; data-origin-height=&quot;459&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;뭐 여튼 저튼 쨌든, 이제 블루프린트 에디터에서도 값이 잘 나타난다. 근데 값이 0인게 좀 불편하다.. 기본값을 채워넣어야겠다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1539&quot; data-origin-height=&quot;835&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dcx3Z3/btrQDD8DX7Q/228wNjVtTKjrusl5KkpyM1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dcx3Z3/btrQDD8DX7Q/228wNjVtTKjrusl5KkpyM1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dcx3Z3/btrQDD8DX7Q/228wNjVtTKjrusl5KkpyM1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fdcx3Z3%2FbtrQDD8DX7Q%2F228wNjVtTKjrusl5KkpyM1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;508&quot; height=&quot;276&quot; data-origin-width=&quot;1539&quot; data-origin-height=&quot;835&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;생성자에서 기본값을 채워넣었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2385&quot; data-origin-height=&quot;817&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bkTYG7/btrQFYYt5Wl/fyoF6rF7b2xOp0MQBRhEFK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bkTYG7/btrQFYYt5Wl/fyoF6rF7b2xOp0MQBRhEFK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bkTYG7/btrQFYYt5Wl/fyoF6rF7b2xOp0MQBRhEFK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbkTYG7%2FbtrQFYYt5Wl%2FfyoF6rF7b2xOp0MQBRhEFK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;685&quot; height=&quot;235&quot; data-origin-width=&quot;2385&quot; data-origin-height=&quot;817&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제는 Live Coding도 정상적으로 잘 컴파일 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;699&quot; data-origin-height=&quot;441&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cGrfDC/btrQDQUsice/1w6EC2H0HyllqlxJHYZ4S0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cGrfDC/btrQDQUsice/1w6EC2H0HyllqlxJHYZ4S0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cGrfDC/btrQDQUsice/1w6EC2H0HyllqlxJHYZ4S0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcGrfDC%2FbtrQDQUsice%2F1w6EC2H0HyllqlxJHYZ4S0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;392&quot; height=&quot;247&quot; data-origin-width=&quot;699&quot; data-origin-height=&quot;441&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제 해당 변수들에 기본값도 정상적으로 잘 들어간 것을 확인할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;(3) 블루프린트 노드에서 변수 활용하기&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이것을 직접 블루프린트 노드 편집기에서 사용하려면, 다음과 같이 할 수 있다.&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #9d9d9d;&quot;&gt;&lt;s&gt;직접 알아낸게 자랑&lt;/s&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;961&quot; data-origin-height=&quot;465&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/brVthr/btrQEarELiq/g021JF7Uof3UWxLr7LEJvK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/brVthr/btrQEarELiq/g021JF7Uof3UWxLr7LEJvK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/brVthr/btrQEarELiq/g021JF7Uof3UWxLr7LEJvK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbrVthr%2FbtrQEarELiq%2Fg021JF7Uof3UWxLr7LEJvK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;471&quot; height=&quot;228&quot; data-origin-width=&quot;961&quot; data-origin-height=&quot;465&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;C++ 변수를 쉽게 사용할 수 있게끔, 자동으로 블루프린트 액션이 친절히 만들어져 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;대충 get max hea 까지면 쳐도, Get Max Health라는 블루프린트 액션이 검색된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해당 액션을 눌러서 새로운 노드를 생성하면,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;509&quot; data-origin-height=&quot;293&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/brNlL5/btrQDc4OKXu/mtkhmrogZLxvbRj8ZaQ4q0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/brNlL5/btrQDc4OKXu/mtkhmrogZLxvbRj8ZaQ4q0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/brNlL5/btrQDc4OKXu/mtkhmrogZLxvbRj8ZaQ4q0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbrNlL5%2FbtrQDc4OKXu%2FmtkhmrogZLxvbRj8ZaQ4q0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;243&quot; height=&quot;140&quot; data-origin-width=&quot;509&quot; data-origin-height=&quot;293&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;짜잔, 이렇게 인풋이 없는 블루프린트 노드가 새로이 생성된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음과 같은 레퍼런스를 참고하여서, Health 및 MaxHealth를 게임 시작시에 출력하는 블루프린트를 작성했다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-topic-id=&quot;298632&quot;&gt;&lt;a href=&quot;https://forums.unrealengine.com/t/format-string-in-blueprints/298632&quot;&gt;Format String In Blueprints - Programming &amp;amp; Scripting / Blueprint - Unreal Engine Forums&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.unrealengine.com/4.27/en-US/ProgrammingAndScripting/Blueprints/UserGuide/FlowControl/&quot;&gt;Flow Control | Unreal Engine 4.27 Documentation&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1605&quot; data-origin-height=&quot;689&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/eAwOxX/btrQD8Obony/7DY0uZOGu36esLoCRIJIW0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/eAwOxX/btrQD8Obony/7DY0uZOGu36esLoCRIJIW0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/eAwOxX/btrQD8Obony/7DY0uZOGu36esLoCRIJIW0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FeAwOxX%2FbtrQD8Obony%2F7DY0uZOGu36esLoCRIJIW0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;634&quot; height=&quot;272&quot; data-origin-width=&quot;1605&quot; data-origin-height=&quot;689&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;작성된 블루프린트는 위와 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1397&quot; data-origin-height=&quot;875&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bMPCk2/btrQEqVA2Rz/4EVHSYa40TLg3NevKgLWIk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bMPCk2/btrQEqVA2Rz/4EVHSYa40TLg3NevKgLWIk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bMPCk2/btrQEqVA2Rz/4EVHSYa40TLg3NevKgLWIk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbMPCk2%2FbtrQEqVA2Rz%2F4EVHSYa40TLg3NevKgLWIk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;444&quot; height=&quot;875&quot; data-origin-width=&quot;1397&quot; data-origin-height=&quot;875&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;테스트 결과, C++ 변수를 올바르게 읽어서 출력하는 것을 확인할 수 있다 :)&lt;/p&gt;</description>
      <category>삽질 정보/UE5</category>
      <author>텐시야</author>
      <guid isPermaLink="true">https://tensiya.tistory.com/30</guid>
      <comments>https://tensiya.tistory.com/entry/UE5-C-%ED%81%B4%EB%9E%98%EC%8A%A4%EC%9D%98-%EB%B3%80%EC%88%98%EB%A5%BC-%EB%B8%94%EB%A3%A8%ED%94%84%EB%A6%B0%ED%8A%B8%EB%A1%9C-%EC%93%B0%EA%B8%B0#entry30comment</comments>
      <pubDate>Tue, 8 Nov 2022 13:51:39 +0900</pubDate>
    </item>
    <item>
      <title>[UE5] Live Coding 컴파일 fatal error LNK1104 오류</title>
      <link>https://tensiya.tistory.com/entry/UE5-Live-Coding-%EC%BB%B4%ED%8C%8C%EC%9D%BC-fatal-error-LNK1104-%EC%98%A4%EB%A5%98</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2412&quot; data-origin-height=&quot;1280&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bZXbci/btrQE3yLCag/ZbGUhUctYNHWi8nCKkrxY1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bZXbci/btrQE3yLCag/ZbGUhUctYNHWi8nCKkrxY1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bZXbci/btrQE3yLCag/ZbGUhUctYNHWi8nCKkrxY1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbZXbci%2FbtrQE3yLCag%2FZbGUhUctYNHWi8nCKkrxY1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2412&quot; height=&quot;1280&quot; data-origin-width=&quot;2412&quot; data-origin-height=&quot;1280&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;'***' 파일을 열 수 없습니다.&lt;/b&gt; 라는 에러가 미친듯이 쏟아져 나온다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아무것도 안했는데 이러니까 미치고 팔짝 뛸 노릇.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;파일에 접근 권한이 없거나, 아니면 이미 해당 파일이 사용중일때 나오는 에러&lt;/b&gt;인건 이미 알고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;근데 니가 여기서 이러면 안되지...&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2440&quot; data-origin-height=&quot;1497&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bpG8x5/btrQChSHVqF/pE5PLueqy4oB6U3SICoLS1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bpG8x5/btrQChSHVqF/pE5PLueqy4oB6U3SICoLS1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bpG8x5/btrQChSHVqF/pE5PLueqy4oB6U3SICoLS1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbpG8x5%2FbtrQChSHVqF%2FpE5PLueqy4oB6U3SICoLS1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2440&quot; height=&quot;1497&quot; data-origin-width=&quot;2440&quot; data-origin-height=&quot;1497&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;엄청나게 검색을 해댔다. 그리고 나온 해결책은 다음과 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;(1) 첫 번째 해결책&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;컴파일 할 때는 UE5 에디터를 종료하라.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;(2) 두 번째 해결책&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&amp;lt;프로젝트 경로&amp;gt;\Binaries\Win64 안에 있는 파일들을 모두 삭제하라.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일단, 첫 번째 해결책인 '컴파일 할 때는 UE5 에디터를 종료하라.' 는, &lt;b&gt;컴파일 할 때 마다 매번 에디터를 끄라는 소리&lt;/b&gt;인가? 로 들려서, 뭔가 썩 마음에 들지 않았다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서, 두 번째 해결책을 먼저 시도해보기로 했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1591&quot; data-origin-height=&quot;955&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/sMfUk/btrQDlNPUOU/9h1vl6IINYKkpJukZHG4b1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/sMfUk/btrQDlNPUOU/9h1vl6IINYKkpJukZHG4b1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/sMfUk/btrQDlNPUOU/9h1vl6IINYKkpJukZHG4b1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FsMfUk%2FbtrQDlNPUOU%2F9h1vl6IINYKkpJukZHG4b1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;563&quot; height=&quot;338&quot; data-origin-width=&quot;1591&quot; data-origin-height=&quot;955&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;엥 -_- 삭제도 안된다. UnrealEditor에서 열려있다고 나온다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2010&quot; data-origin-height=&quot;1237&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/9DcPB/btrQDb5JMwg/ktE8YBUEvirwmEoiWd4mTk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/9DcPB/btrQDb5JMwg/ktE8YBUEvirwmEoiWd4mTk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/9DcPB/btrQDb5JMwg/ktE8YBUEvirwmEoiWd4mTk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F9DcPB%2FbtrQDb5JMwg%2FktE8YBUEvirwmEoiWd4mTk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;541&quot; height=&quot;333&quot; data-origin-width=&quot;2010&quot; data-origin-height=&quot;1237&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;결국, &lt;span style=&quot;color: #9d9d9d;&quot;&gt;&lt;s&gt;내가 졌다&lt;/s&gt;&lt;/span&gt; UE5 에디터를 종료하고, 파일들을 모두 삭제했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;778&quot; data-origin-height=&quot;396&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dLxjn2/btrQDvJEwLK/ANJ8F7Td4166ByucTnrfJK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dLxjn2/btrQDvJEwLK/ANJ8F7Td4166ByucTnrfJK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dLxjn2/btrQDvJEwLK/ANJ8F7Td4166ByucTnrfJK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdLxjn2%2FbtrQDvJEwLK%2FANJ8F7Td4166ByucTnrfJK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;352&quot; height=&quot;179&quot; data-origin-width=&quot;778&quot; data-origin-height=&quot;396&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다시 에디터를 실행하니, 위와 같은 메시지가 나온다. 뭐 리빌드 하신다는데... 그러십쇼 하고 예 버튼을 눌렀다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cikQM9/btrQI7fVn7K/NUIwKblY2a3GtSegFIZNf1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cikQM9/btrQI7fVn7K/NUIwKblY2a3GtSegFIZNf1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cikQM9/btrQI7fVn7K/NUIwKblY2a3GtSegFIZNf1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcikQM9%2FbtrQI7fVn7K%2FNUIwKblY2a3GtSegFIZNf1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3840&quot; height=&quot;2077&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;잠시 기다리면 리빌드가 완료되고, UE5 에디터가 정상적으로 켜진다. 근데 아까 생각한 그것이 궁금하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;과연 Live Coding 컴파일 할 때 마다 매번 에디터를 종료해야 하는가?&lt;/b&gt; &lt;span style=&quot;color: #9d9d9d;&quot;&gt;&lt;s&gt;안되면 이게 무슨 Live Coding이야&lt;/s&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1143&quot; data-origin-height=&quot;378&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dwQ7H5/btrQDFekm7R/wiaKAoP5kmKvfKAsVNSPUK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dwQ7H5/btrQDFekm7R/wiaKAoP5kmKvfKAsVNSPUK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dwQ7H5/btrQDFekm7R/wiaKAoP5kmKvfKAsVNSPUK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdwQ7H5%2FbtrQDFekm7R%2FwiaKAoP5kmKvfKAsVNSPUK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;530&quot; height=&quot;175&quot; data-origin-width=&quot;1143&quot; data-origin-height=&quot;378&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Ammo 및 MaxAmmo 변수를 추가하고, 다시 Live Coding 컴파일을 시도해본다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b0NIAJ/btrQGRkubTL/le8Qf18xBvwL3Wr3PdpDU1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b0NIAJ/btrQGRkubTL/le8Qf18xBvwL3Wr3PdpDU1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b0NIAJ/btrQGRkubTL/le8Qf18xBvwL3Wr3PdpDU1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb0NIAJ%2FbtrQGRkubTL%2Fle8Qf18xBvwL3Wr3PdpDU1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;978&quot; height=&quot;529&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #9d9d9d;&quot;&gt;&lt;s&gt;아니?&lt;/s&gt;&lt;/span&gt; 이번엔 또 잘 된다 -_-... Visual Studio -&amp;gt; Rider로 외부 툴을 전환할 때, 프로젝트를 재생성하게 됐는데.. 아마 여기서 꼬인 것 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉, 얘네는 아마 patch라는 파일을 만드는걸로 보아서.. 새로운 파일을 계속 컴파일하고, 그것을 로딩하면서 기존의 내용을 바꿔치기 하는 방식을 사용하는 것으로 추측된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그런데 프로젝트를 재생성하는 과정에서, '&lt;b&gt;나 이미 patch0 있음, 다음 순번은 patch1임.&lt;/b&gt;' 이라는 데이터까지 &lt;u&gt;&lt;b&gt;같이 날아가버렸기에&lt;/b&gt;&lt;/u&gt;, 'p&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;'인데&lt;b&gt; 그걸 인지 못하고&lt;/b&gt; 'patch0을 생성'을 시도하다가 터진게 아닐까하는 뇌피셜을 끼워맞춰본다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #9d9d9d;&quot;&gt;&lt;s&gt;뭐... 되면 된거 아니겠나.&lt;/s&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>삽질 정보/UE5</category>
      <author>텐시야</author>
      <guid isPermaLink="true">https://tensiya.tistory.com/29</guid>
      <comments>https://tensiya.tistory.com/entry/UE5-Live-Coding-%EC%BB%B4%ED%8C%8C%EC%9D%BC-fatal-error-LNK1104-%EC%98%A4%EB%A5%98#entry29comment</comments>
      <pubDate>Tue, 8 Nov 2022 13:38:06 +0900</pubDate>
    </item>
    <item>
      <title>[UE5] UI 만들기</title>
      <link>https://tensiya.tistory.com/entry/UE5-UI-%EB%A7%8C%EB%93%A4%EA%B8%B0</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/JhV2x/btrQDw2pxAh/mbyFv1FyHLFksgvIk1Az11/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/JhV2x/btrQDw2pxAh/mbyFv1FyHLFksgvIk1Az11/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/JhV2x/btrQDw2pxAh/mbyFv1FyHLFksgvIk1Az11/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FJhV2x%2FbtrQDw2pxAh%2FmbyFv1FyHLFksgvIk1Az11%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3840&quot; height=&quot;2077&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/I7ufD/btrQCVIybQR/mIheprEKc3tlwQ3kdS8ihk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/I7ufD/btrQCVIybQR/mIheprEKc3tlwQ3kdS8ihk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/I7ufD/btrQCVIybQR/mIheprEKc3tlwQ3kdS8ihk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FI7ufD%2FbtrQCVIybQR%2FmIheprEKc3tlwQ3kdS8ihk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3840&quot; height=&quot;2077&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;(1) 다음 작업?&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;벽면까지 텍스처를 칠하고, 맵 정중앙에 플레이어 스타트를 놓는 것으로 간단하게 맵 제작이 끝났다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제 뭘 할지를 생각해보다가, UI를 만들어 보면 어떨까 싶었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인벤토리 같은 복잡한 UI보다, 그냥 &lt;b&gt;HP와 MP를 표시하는 정도의 HUD&lt;/b&gt;만 만들어보도록 해야겠다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://docs.unrealengine.com/5.0/ko/umg-ui-designer-quick-start-guide/&quot;&gt;UMG UI 디자이너 퀵스타트 가이드 | 언리얼 엔진 5.0 문서 (unrealengine.com)&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1667874731652&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;UMG UI 디자이너 퀵스타트 가이드&quot; data-og-description=&quot;언리얼 엔진 4 에서 언리얼 모션 그래픽 사용 시작 안내입니다.&quot; data-og-host=&quot;docs.unrealengine.com&quot; data-og-source-url=&quot;https://docs.unrealengine.com/5.0/ko/umg-ui-designer-quick-start-guide/&quot; data-og-url=&quot;https://docs.unrealengine.com/5.0/ko/umg-ui-designer-quick-start-guide/&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/h36HM/hyQvnbUNLM/0X2kHCryh6xx1ROZAxoTTK/img.png?width=1080&amp;amp;height=608&amp;amp;face=0_0_1080_608&quot;&gt;&lt;a href=&quot;https://docs.unrealengine.com/5.0/ko/umg-ui-designer-quick-start-guide/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://docs.unrealengine.com/5.0/ko/umg-ui-designer-quick-start-guide/&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/h36HM/hyQvnbUNLM/0X2kHCryh6xx1ROZAxoTTK/img.png?width=1080&amp;amp;height=608&amp;amp;face=0_0_1080_608');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;UMG UI 디자이너 퀵스타트 가이드&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;언리얼 엔진 4 에서 언리얼 모션 그래픽 사용 시작 안내입니다.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;docs.unrealengine.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;항상 느끼는거지만, 언리얼 엔진은 문서화 및 튜토리얼이 정말 잘 되어있다. &lt;span style=&quot;color: #9d9d9d;&quot;&gt;&lt;s&gt;유니티하다가 언리얼 하니까 문서의 질차이가 확 느껴진다.&lt;/s&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 튜토리얼에서도 Health, Energy, Ammo 라는 HUD를 만드는 튜토리얼이 들어있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만 위 튜토리얼은 블루프린트 프로젝트를 기반으로 설명하고 있다. 따라서 일단 초보자인 나도 블루프린트로 따라해야겠으나....&lt;b&gt; 나는 C++ 프로젝트로 시작했다~&lt;/b&gt; 이 말씀이야!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 먼저, &lt;b&gt;Health 및 Energy 변수를 블루프린트에 노출시키는 작업&lt;/b&gt;을 시작해야했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://tensiya.tistory.com/entry/UE5-C-%ED%81%B4%EB%9E%98%EC%8A%A4%EC%9D%98-%EB%B3%80%EC%88%98%EB%A5%BC-%EB%B8%94%EB%A3%A8%ED%94%84%EB%A6%B0%ED%8A%B8%EB%A1%9C-%EC%93%B0%EA%B8%B0&quot;&gt;[UE5] C++ 클래스의 변수를 블루프린트로 쓰기&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1667883333640&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;[UE5] C++ 클래스의 변수를 블루프린트로 쓰기&quot; data-og-description=&quot;(1) 서론 사실 이거도 이거인데.. C++ 개발 환경을 세팅하는거부터가 난관이었다. 유니티는 그냥 Visual Studio + Unity 3D 깔면 알아서 다 세팅되어서 그냥 쓰면 됐는데, 얘는 C++라서 그런건지... 엄청 신&quot; data-og-host=&quot;tsi.kr&quot; data-og-source-url=&quot;https://tensiya.tistory.com/entry/UE5-C-%ED%81%B4%EB%9E%98%EC%8A%A4%EC%9D%98-%EB%B3%80%EC%88%98%EB%A5%BC-%EB%B8%94%EB%A3%A8%ED%94%84%EB%A6%B0%ED%8A%B8%EB%A1%9C-%EC%93%B0%EA%B8%B0&quot; data-og-url=&quot;https://tsi.kr/entry/UE5-C-%ED%81%B4%EB%9E%98%EC%8A%A4%EC%9D%98-%EB%B3%80%EC%88%98%EB%A5%BC-%EB%B8%94%EB%A3%A8%ED%94%84%EB%A6%B0%ED%8A%B8%EB%A1%9C-%EC%93%B0%EA%B8%B0&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/ci7q4e/hyQvgxeXpB/Fcsaz2A47AwwmMb3TEgsTK/img.png?width=800&amp;amp;height=438&amp;amp;face=0_0_800_438,https://scrap.kakaocdn.net/dn/UrjhS/hyQvd8mVnF/4GEls9nVwFjNy8WUsyqii1/img.png?width=800&amp;amp;height=438&amp;amp;face=0_0_800_438,https://scrap.kakaocdn.net/dn/RXqeQ/hyQviu3XIv/twrWgqUpEoeZyf6d30fGVK/img.png?width=2385&amp;amp;height=817&amp;amp;face=0_0_2385_817&quot;&gt;&lt;a href=&quot;https://tensiya.tistory.com/entry/UE5-C-%ED%81%B4%EB%9E%98%EC%8A%A4%EC%9D%98-%EB%B3%80%EC%88%98%EB%A5%BC-%EB%B8%94%EB%A3%A8%ED%94%84%EB%A6%B0%ED%8A%B8%EB%A1%9C-%EC%93%B0%EA%B8%B0&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://tensiya.tistory.com/entry/UE5-C-%ED%81%B4%EB%9E%98%EC%8A%A4%EC%9D%98-%EB%B3%80%EC%88%98%EB%A5%BC-%EB%B8%94%EB%A3%A8%ED%94%84%EB%A6%B0%ED%8A%B8%EB%A1%9C-%EC%93%B0%EA%B8%B0&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/ci7q4e/hyQvgxeXpB/Fcsaz2A47AwwmMb3TEgsTK/img.png?width=800&amp;amp;height=438&amp;amp;face=0_0_800_438,https://scrap.kakaocdn.net/dn/UrjhS/hyQvd8mVnF/4GEls9nVwFjNy8WUsyqii1/img.png?width=800&amp;amp;height=438&amp;amp;face=0_0_800_438,https://scrap.kakaocdn.net/dn/RXqeQ/hyQviu3XIv/twrWgqUpEoeZyf6d30fGVK/img.png?width=2385&amp;amp;height=817&amp;amp;face=0_0_2385_817');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;[UE5] C++ 클래스의 변수를 블루프린트로 쓰기&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;(1) 서론 사실 이거도 이거인데.. C++ 개발 환경을 세팅하는거부터가 난관이었다. 유니티는 그냥 Visual Studio + Unity 3D 깔면 알아서 다 세팅되어서 그냥 쓰면 됐는데, 얘는 C++라서 그런건지... 엄청 신&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;tsi.kr&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위와 같은 작업을 통해서, &lt;b&gt;Health 및 Energy에 더해, Ammo 변수&lt;/b&gt;까지 블루프린트에 성공적으로 노출시켰다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;(2) UI 디자인하기&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;먼저, 매뉴얼에 나온대로 '위젯 블루프린트 에디터'를 찾아서 열어야 한다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1499&quot; data-origin-height=&quot;1173&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/lwUHr/btrQFZJ164R/wS1QbF33OmkUr2oCE9IUy1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/lwUHr/btrQFZJ164R/wS1QbF33OmkUr2oCE9IUy1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/lwUHr/btrQFZJ164R/wS1QbF33OmkUr2oCE9IUy1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FlwUHr%2FbtrQFZJ164R%2FwS1QbF33OmkUr2oCE9IUy1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;486&quot; height=&quot;380&quot; data-origin-width=&quot;1499&quot; data-origin-height=&quot;1173&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;대충 이렇게 해도 열리는 것 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2705&quot; data-origin-height=&quot;1531&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/SuTgt/btrQISKuPdu/5di9NPh9TTqOARTTxqUym0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/SuTgt/btrQISKuPdu/5di9NPh9TTqOARTTxqUym0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/SuTgt/btrQISKuPdu/5di9NPh9TTqOARTTxqUym0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FSuTgt%2FbtrQISKuPdu%2F5di9NPh9TTqOARTTxqUym0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;756&quot; height=&quot;1531&quot; data-origin-width=&quot;2705&quot; data-origin-height=&quot;1531&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공식 문서를 따라, Health 및 Energy 항목을 각각 디자인 해주었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2205&quot; data-origin-height=&quot;1473&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bP3Yup/btrQJn35MwT/t8rGkzYSBXCUjK3v6CMYfk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bP3Yup/btrQJn35MwT/t8rGkzYSBXCUjK3v6CMYfk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bP3Yup/btrQJn35MwT/t8rGkzYSBXCUjK3v6CMYfk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbP3Yup%2FbtrQJn35MwT%2Ft8rGkzYSBXCUjK3v6CMYfk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;573&quot; height=&quot;383&quot; data-origin-width=&quot;2205&quot; data-origin-height=&quot;1473&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2203&quot; data-origin-height=&quot;1457&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/zmxd9/btrQJoBVwZG/w9kKhDAOSGGmOD26hkGvmK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/zmxd9/btrQJoBVwZG/w9kKhDAOSGGmOD26hkGvmK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/zmxd9/btrQJoBVwZG/w9kKhDAOSGGmOD26hkGvmK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fzmxd9%2FbtrQJoBVwZG%2Fw9kKhDAOSGGmOD26hkGvmK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;574&quot; height=&quot;380&quot; data-origin-width=&quot;2203&quot; data-origin-height=&quot;1457&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;레이아웃에서, `Slot` 카테고리에 있는 Size를 Fill로 두어서 'Horizontal Box'에서 설정한 가로 크기 최대만큼 채워지게 하였다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;생각보다 디자인 하는 방법이 어렵지 않았다. 유니티에 비해서 확실히 정렬 자체를 예쁘게 할 수 있게 해놔서 좋은듯.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&amp;nbsp;&lt;/h2&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;(3) 블루프린트 구현&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;디자인은 되었으니, 이제 실제로 해당 HUD에 내용이 채워지게 구현해야 했다. 공식 매뉴얼에 나온대로 일단 다음과 같이 플레이어 캐릭터를 변수로 설정한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1659&quot; data-origin-height=&quot;411&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/52hUq/btrQDQHfQto/tq1KogwXJkKi1mc7LKReO1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/52hUq/btrQDQHfQto/tq1KogwXJkKi1mc7LKReO1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/52hUq/btrQDQHfQto/tq1KogwXJkKi1mc7LKReO1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F52hUq%2FbtrQDQHfQto%2Ftq1KogwXJkKi1mc7LKReO1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;678&quot; height=&quot;411&quot; data-origin-width=&quot;1659&quot; data-origin-height=&quot;411&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그런데 공식 문서에서는 Health, Energy를 모두 float로 0 ~ 1까지 범위를 갖는 실수로 구현했다. 하지만 나는 MaxHealth, MaxEnergy를 각각 가지는 정수형으로 구현했기 때문에, 0 ~ 1 범위를 갖는 실수로 변환할 필요가 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;블루프린트로 계산해도 되지만, 연습 겸 C++에서 해당 float 값을 계산할 수 있는 함수 프로퍼티를 만들기로 생각했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://www.reddit.com/r/unrealengine/comments/pw63ng/help_with_property_getterssetters/&quot;&gt;(2) Help with Property Getters/Setters? : unrealengine (reddit.com)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 링크를 참조해서 구현했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1149&quot; data-origin-height=&quot;265&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/W1q6W/btrQDEmwar0/nNqhveibvrgfrn7AMxD0L0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/W1q6W/btrQDEmwar0/nNqhveibvrgfrn7AMxD0L0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/W1q6W/btrQDEmwar0/nNqhveibvrgfrn7AMxD0L0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FW1q6W%2FbtrQDEmwar0%2FnNqhveibvrgfrn7AMxD0L0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;678&quot; height=&quot;156&quot; data-origin-width=&quot;1149&quot; data-origin-height=&quot;265&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1153&quot; data-origin-height=&quot;237&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/6BsKb/btrQDFeICdH/0faxBXBqM81iU0HOYbSBN0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/6BsKb/btrQDFeICdH/0faxBXBqM81iU0HOYbSBN0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/6BsKb/btrQDFeICdH/0faxBXBqM81iU0HOYbSBN0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F6BsKb%2FbtrQDFeICdH%2F0faxBXBqM81iU0HOYbSBN0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;676&quot; height=&quot;139&quot; data-origin-width=&quot;1153&quot; data-origin-height=&quot;237&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위와 같은 함수 및 프로퍼티를 선언했다. BlueprintGetter 라는 인자를 처음 봤다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 UFUNCTION 매크로의 인자로, BlueprintPure 및 BlueprintInternalUseOnly 라는 인자를 보게 되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1137&quot; data-origin-height=&quot;299&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/tOFBR/btrQJjnjqS4/3TDmfUqwfAgPnXiCf70HE1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/tOFBR/btrQJjnjqS4/3TDmfUqwfAgPnXiCf70HE1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/tOFBR/btrQJjnjqS4/3TDmfUqwfAgPnXiCf70HE1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FtOFBR%2FbtrQJjnjqS4%2F3TDmfUqwfAgPnXiCf70HE1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;662&quot; height=&quot;299&quot; data-origin-width=&quot;1137&quot; data-origin-height=&quot;299&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마우스를 가리키면 Rider가 알아서 문서를 보여줘서, 해당 인자에 대해 이해하는 것이 간결하고 쉬웠다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마찬가지로 BlueprintPure 역시 어딘가에 영향을 끼치는 사항이 없는 순수 함수라는 의미이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2359&quot; data-origin-height=&quot;975&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bq7Kfx/btrQDQAsuEj/k8bjc5b0MQ03TmwO1iKex1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bq7Kfx/btrQDQAsuEj/k8bjc5b0MQ03TmwO1iKex1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bq7Kfx/btrQDQAsuEj/k8bjc5b0MQ03TmwO1iKex1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbq7Kfx%2FbtrQDQAsuEj%2Fk8bjc5b0MQ03TmwO1iKex1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2359&quot; height=&quot;975&quot; data-origin-width=&quot;2359&quot; data-origin-height=&quot;975&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Live Coding 컴파일 후, 디자이너 탭에서 디테일 패널에서 공식매뉴얼 처럼, 해당 값을 가져올 수 있는지 확인한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2167&quot; data-origin-height=&quot;1117&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/vhmSg/btrQFwBjZHV/BuvKiKWmXX6cmdooapeNp0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/vhmSg/btrQFwBjZHV/BuvKiKWmXX6cmdooapeNp0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/vhmSg/btrQFwBjZHV/BuvKiKWmXX6cmdooapeNp0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FvhmSg%2FbtrQFwBjZHV%2FBuvKiKWmXX6cmdooapeNp0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;662&quot; height=&quot;341&quot; data-origin-width=&quot;2167&quot; data-origin-height=&quot;1117&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정상적으로 해당 값을 바인딩 할 수 있게 되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2159&quot; data-origin-height=&quot;1253&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bWchmG/btrQI78xQBr/GKcZz1mzW1AIFEKrjVTKk1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bWchmG/btrQI78xQBr/GKcZz1mzW1AIFEKrjVTKk1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bWchmG/btrQI78xQBr/GKcZz1mzW1AIFEKrjVTKk1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbWchmG%2FbtrQI78xQBr%2FGKcZz1mzW1AIFEKrjVTKk1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;664&quot; height=&quot;385&quot; data-origin-width=&quot;2159&quot; data-origin-height=&quot;1253&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마찬가지로 Energy 역시 바인딩해준다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;(4) 문제 해결&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;913&quot; data-origin-height=&quot;343&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/nNEaS/btrQDEUm8Fc/M2dSfeFbFh1UfxF3UR7at0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/nNEaS/btrQDEUm8Fc/M2dSfeFbFh1UfxF3UR7at0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/nNEaS/btrQDEUm8Fc/M2dSfeFbFh1UfxF3UR7at0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FnNEaS%2FbtrQDEUm8Fc%2FM2dSfeFbFh1UfxF3UR7at0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;580&quot; height=&quot;218&quot; data-origin-width=&quot;913&quot; data-origin-height=&quot;343&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만 HUD는 나오는데, 게이지가 채워지지 않아있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1299&quot; data-origin-height=&quot;459&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/W4J0J/btrQJcaNuwg/9xM2CKBKIRW3RPFMBBOtmk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/W4J0J/btrQJcaNuwg/9xM2CKBKIRW3RPFMBBOtmk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/W4J0J/btrQJcaNuwg/9xM2CKBKIRW3RPFMBBOtmk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FW4J0J%2FbtrQJcaNuwg%2F9xM2CKBKIRW3RPFMBBOtmk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;588&quot; height=&quot;459&quot; data-origin-width=&quot;1299&quot; data-origin-height=&quot;459&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이상해서 Ratio값들을 띄워보기 위해, 위와 같은 블루프린트를 작성했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;847&quot; data-origin-height=&quot;375&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dVAQu3/btrQDFy00oE/Tduq9ORbMU2qeOQlkl79U1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dVAQu3/btrQDFy00oE/Tduq9ORbMU2qeOQlkl79U1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dVAQu3/btrQDFy00oE/Tduq9ORbMU2qeOQlkl79U1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdVAQu3%2FbtrQDFy00oE%2FTduq9ORbMU2qeOQlkl79U1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;576&quot; height=&quot;375&quot; data-origin-width=&quot;847&quot; data-origin-height=&quot;375&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만 당연하게도, 값들을 잘만 가져오고 있다. 그러면 도대체 어디서 잘못된 것인가..?&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1313&quot; data-origin-height=&quot;1191&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cqv7TO/btrQEr8qTI6/xnWjuMUwGMthp4SQgnAxtK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cqv7TO/btrQEr8qTI6/xnWjuMUwGMthp4SQgnAxtK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cqv7TO/btrQEr8qTI6/xnWjuMUwGMthp4SQgnAxtK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcqv7TO%2FbtrQEr8qTI6%2FxnWjuMUwGMthp4SQgnAxtK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;527&quot; height=&quot;478&quot; data-origin-width=&quot;1313&quot; data-origin-height=&quot;1191&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;값을 수정하면 뭔가 업데이트가 되면서, 해결되지 않을까? 라는 생각을 하게 되어서 위와 같이 값을 수정하는 코드도 넣어보았다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1145&quot; data-origin-height=&quot;721&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/N4epy/btrQDQHqUpB/SnlQ1rLRa7bdpGtqzAw2b1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/N4epy/btrQDQHqUpB/SnlQ1rLRa7bdpGtqzAw2b1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/N4epy/btrQDQHqUpB/SnlQ1rLRa7bdpGtqzAw2b1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FN4epy%2FbtrQDQHqUpB%2FSnlQ1rLRa7bdpGtqzAw2b1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;533&quot; height=&quot;336&quot; data-origin-width=&quot;1145&quot; data-origin-height=&quot;721&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만 값이 변해도 체력,에너지바 게이지는 변하지 않는다.....&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2571&quot; data-origin-height=&quot;1121&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/boj0n3/btrQFYY0RBF/rMZnld4oIKNsGkxCBUWHb0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/boj0n3/btrQFYY0RBF/rMZnld4oIKNsGkxCBUWHb0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/boj0n3/btrQFYY0RBF/rMZnld4oIKNsGkxCBUWHb0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fboj0n3%2FbtrQFYY0RBF%2FrMZnld4oIKNsGkxCBUWHb0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;812&quot; height=&quot;354&quot; data-origin-width=&quot;2571&quot; data-origin-height=&quot;1121&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;계속된 삽질을 하다가, 위와 같은 블루프린트를 작성했더니 된다. Event Construct대신 Event Tick으로 옮기고, Ratio 값들을 직접 가져와서 변수에 넣었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2091&quot; data-origin-height=&quot;637&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cWkHhu/btrQDPBJBf4/65pE3nD6VNo5yfiSEU980K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cWkHhu/btrQDPBJBf4/65pE3nD6VNo5yfiSEU980K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cWkHhu/btrQDPBJBf4/65pE3nD6VNo5yfiSEU980K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcWkHhu%2FbtrQDPBJBf4%2F65pE3nD6VNo5yfiSEU980K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;794&quot; height=&quot;242&quot; data-origin-width=&quot;2091&quot; data-origin-height=&quot;637&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 해당 Ratio 블루프린트 변수들을 직접 Percent로 바인딩 한 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아니.. 이렇게 할거라면 애초에 Ratio 계산도 블루프린트로 했을텐데.... 좀 억울하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1887&quot; data-origin-height=&quot;827&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/oiJ5u/btrQEsfeTK8/QDxpi1l8fqB9SFWyIKeyd1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/oiJ5u/btrQEsfeTK8/QDxpi1l8fqB9SFWyIKeyd1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/oiJ5u/btrQEsfeTK8/QDxpi1l8fqB9SFWyIKeyd1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FoiJ5u%2FbtrQEsfeTK8%2FQDxpi1l8fqB9SFWyIKeyd1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;666&quot; height=&quot;292&quot; data-origin-width=&quot;1887&quot; data-origin-height=&quot;827&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;너무 억울해서 안되겠다. 그래서 해결 방법을 다시 찾아보려고 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일단 Event Tick에 다시 옮겨넣었으나, 여전히 안된다. bind도 다시 원래대로 하고 했지만 여전히 나오지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2036&quot; data-origin-height=&quot;2064&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/PNvkp/btrQFxAszSN/7liXB1vTTzPL7rWLBbn2x1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/PNvkp/btrQFxAszSN/7liXB1vTTzPL7rWLBbn2x1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/PNvkp/btrQFxAszSN/7liXB1vTTzPL7rWLBbn2x1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FPNvkp%2FbtrQFxAszSN%2F7liXB1vTTzPL7rWLBbn2x1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;681&quot; height=&quot;2064&quot; data-origin-width=&quot;2036&quot; data-origin-height=&quot;2064&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만 암만 찾아도 모르겠다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1717&quot; data-origin-height=&quot;1171&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/yBmDz/btrQJjgMBiX/8y0oRpZF4TaKsvPTv4nC6k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/yBmDz/btrQJjgMBiX/8y0oRpZF4TaKsvPTv4nC6k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/yBmDz/btrQJjgMBiX/8y0oRpZF4TaKsvPTv4nC6k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FyBmDz%2FbtrQJjgMBiX%2F8y0oRpZF4TaKsvPTv4nC6k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;665&quot; height=&quot;454&quot; data-origin-width=&quot;1717&quot; data-origin-height=&quot;1171&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1153&quot; data-origin-height=&quot;637&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/l7ojM/btrQI7OqMWp/mokJqOwldFYsnvSsj7cokk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/l7ojM/btrQI7OqMWp/mokJqOwldFYsnvSsj7cokk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/l7ojM/btrQI7OqMWp/mokJqOwldFYsnvSsj7cokk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fl7ojM%2FbtrQI7OqMWp%2FmokJqOwldFYsnvSsj7cokk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;597&quot; height=&quot;330&quot; data-origin-width=&quot;1153&quot; data-origin-height=&quot;637&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;값은 얻어오는데, 위젯은 업데이트가 안된다. 이상하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;대충 추측하기로는, Widget을 이렇게 바인딩하려면 C++에서 위젯 코드도 따로 만들어서 넣어줘야 하는건가? 싶긴 한데...&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일단 그러기 싫어서 이러고 있는거라서 슬슬 열받는다. -_-&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2465&quot; data-origin-height=&quot;1501&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dnjzMR/btrQD8ODzET/ycqenJljp32uksbSWcqPPK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dnjzMR/btrQD8ODzET/ycqenJljp32uksbSWcqPPK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dnjzMR/btrQD8ODzET/ycqenJljp32uksbSWcqPPK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdnjzMR%2FbtrQD8ODzET%2FycqenJljp32uksbSWcqPPK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;635&quot; height=&quot;387&quot; data-origin-width=&quot;2465&quot; data-origin-height=&quot;1501&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하하 결국 포기했다. C++ 코드에 넣었던 Ratio 함수 및 프로퍼티를 모두 제거하고, 그냥 Tick마다 블루프린트가 계산해서 변수에 넣게 만들었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1395&quot; data-origin-height=&quot;775&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cijKGi/btrQEayZbQ4/KKzk9PyeErw3Hk4wAU6gC0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cijKGi/btrQEayZbQ4/KKzk9PyeErw3Hk4wAU6gC0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cijKGi/btrQEayZbQ4/KKzk9PyeErw3Hk4wAU6gC0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcijKGi%2FbtrQEayZbQ4%2FKKzk9PyeErw3Hk4wAU6gC0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;603&quot; height=&quot;335&quot; data-origin-width=&quot;1395&quot; data-origin-height=&quot;775&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러면 일단 잘 되거든. 깔깔. 다음에 내가 언리얼 엔진을 다루는 실력이 늘게 된다면, 그때 다시 시도해보는 것으로,...&lt;/p&gt;</description>
      <category>삽질 정보/UE5</category>
      <author>텐시야</author>
      <guid isPermaLink="true">https://tensiya.tistory.com/28</guid>
      <comments>https://tensiya.tistory.com/entry/UE5-UI-%EB%A7%8C%EB%93%A4%EA%B8%B0#entry28comment</comments>
      <pubDate>Tue, 8 Nov 2022 13:10:28 +0900</pubDate>
    </item>
    <item>
      <title>[UE5] 큰 텍스처 작게 타일링 (UV 타일링)</title>
      <link>https://tensiya.tistory.com/entry/UE5-%ED%81%B0-%ED%85%8D%EC%8A%A4%EC%B2%98-%EC%9E%91%EA%B2%8C-%ED%83%80%EC%9D%BC%EB%A7%81-UV-%ED%83%80%EC%9D%BC%EB%A7%81</link>
      <description>&lt;h2 data-ke-size=&quot;size26&quot;&gt;(1) 문제&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bt7Tts/btrQFw1yDAk/IlRHYa2oteUkaNKr9q1Zy0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bt7Tts/btrQFw1yDAk/IlRHYa2oteUkaNKr9q1Zy0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bt7Tts/btrQFw1yDAk/IlRHYa2oteUkaNKr9q1Zy0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbt7Tts%2FbtrQFw1yDAk%2FIlRHYa2oteUkaNKr9q1Zy0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;644&quot; height=&quot;2077&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;대충 언리얼엔진5 공부하면서, 작은 맵이나 하나 만들고 연습하려고 하는 중..&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;631&quot; data-origin-height=&quot;1275&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/pwkaj/btrQEq8xsIv/ttVS1e1PiPkN02bBQBem0K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/pwkaj/btrQEq8xsIv/ttVS1e1PiPkN02bBQBem0K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/pwkaj/btrQEq8xsIv/ttVS1e1PiPkN02bBQBem0K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fpwkaj%2FbtrQEq8xsIv%2FttVS1e1PiPkN02bBQBem0K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;222&quot; height=&quot;1275&quot; data-origin-width=&quot;631&quot; data-origin-height=&quot;1275&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;바닥 텍스처가 너무 밋밋해서, 시작용 콘텐츠에서 적당한 텍스처를 골라서 바꿔봤는데..&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2263&quot; data-origin-height=&quot;1741&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/kMG5s/btrQCg0cefM/zzsnZSnX4tdexiQn0eWnAK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/kMG5s/btrQCg0cefM/zzsnZSnX4tdexiQn0eWnAK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/kMG5s/btrQCg0cefM/zzsnZSnX4tdexiQn0eWnAK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkMG5s%2FbtrQCg0cefM%2FzzsnZSnX4tdexiQn0eWnAK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;566&quot; height=&quot;1741&quot; data-origin-width=&quot;2263&quot; data-origin-height=&quot;1741&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;이게 웬걸.... 바닥에 꽉 차버렸다. 이건 너무 크다..&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;진짜 타일처럼, 바닥에 작게 바둑판처럼 그려지는걸 원했는데.&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;text-align: left;&quot; data-ke-size=&quot;size26&quot;&gt;(2) ...&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사실 이런거 할 때 항상 느끼는건데, 이런 건 도대체 키워드를 어떻게 잡아야 할 지 모르겠다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일단 '구글 신'을 믿고, 생각나는 키워드를 검색어로 조진다. 나는 'unreal engine5 texture tiling' 이라고 검색했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2384&quot; data-origin-height=&quot;1364&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/baEB7v/btrQDkHMkxP/LC5Dh4BrBQ1MB3mfOm6ol1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/baEB7v/btrQDkHMkxP/LC5Dh4BrBQ1MB3mfOm6ol1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/baEB7v/btrQDkHMkxP/LC5Dh4BrBQ1MB3mfOm6ol1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbaEB7v%2FbtrQDkHMkxP%2FLC5Dh4BrBQ1MB3mfOm6ol1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;673&quot; height=&quot;385&quot; data-origin-width=&quot;2384&quot; data-origin-height=&quot;1364&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 뭔가 나랑 의미가 통할 것 같은 검색 결과를 발견했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1931&quot; data-origin-height=&quot;1295&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/0UHlT/btrQDPtTxe5/dccixA8N0w72zTABuoGy0K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/0UHlT/btrQDPtTxe5/dccixA8N0w72zTABuoGy0K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/0UHlT/btrQDPtTxe5/dccixA8N0w72zTABuoGy0K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F0UHlT%2FbtrQDPtTxe5%2FdccixA8N0w72zTABuoGy0K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;675&quot; height=&quot;1295&quot; data-origin-width=&quot;1931&quot; data-origin-height=&quot;1295&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;내용을 확인하니, 다음과 같다.&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;디퓨즈의 UV 입력부에 TextureCoordinate 노드를 연결하세요. (노멀도 있다면 똑같이). 그리고, 거기서 X, Y 타일링을 변경할 수 있습니다.&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;(3) 해결 작업&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;먼저, 기존 시작용 콘텐츠의 머티리얼을 복제하여 새로운 바닥용 머티리얼을 만든다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;853&quot; data-origin-height=&quot;497&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cg4czw/btrQC7Ptt2a/ns3mMz4HGKhL4HgkqDomE0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cg4czw/btrQC7Ptt2a/ns3mMz4HGKhL4HgkqDomE0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cg4czw/btrQC7Ptt2a/ns3mMz4HGKhL4HgkqDomE0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcg4czw%2FbtrQC7Ptt2a%2Fns3mMz4HGKhL4HgkqDomE0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;505&quot; height=&quot;294&quot; data-origin-width=&quot;853&quot; data-origin-height=&quot;497&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위와 같이 &lt;b&gt;M_HelloWorld_Floor&lt;/b&gt; 이라는 이름의 머티리얼로 복제하였다. 다음, 해당 머티리얼을 더블클릭하여 편집창을 열었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;3380&quot; data-origin-height=&quot;1872&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cfPgxi/btrQF0hcaZ4/iHdavm5XYJuNp0QZF0Ub7K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cfPgxi/btrQF0hcaZ4/iHdavm5XYJuNp0QZF0Ub7K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cfPgxi/btrQF0hcaZ4/iHdavm5XYJuNp0QZF0Ub7K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcfPgxi%2FbtrQF0hcaZ4%2FiHdavm5XYJuNp0QZF0Ub7K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3380&quot; height=&quot;1872&quot; data-origin-width=&quot;3380&quot; data-origin-height=&quot;1872&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러나 UV 입력으로 보이는 부분은 보이지 않는다. 마우스 우클릭 + 드래그로, 편집창을 패닝하며 원하는 곳이 있는지 본다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;949&quot; data-origin-height=&quot;785&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dCSPps/btrQDxtxZXE/ycD2kkbme4BPPKZpgkiUN1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dCSPps/btrQDxtxZXE/ycD2kkbme4BPPKZpgkiUN1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dCSPps/btrQDxtxZXE/ycD2kkbme4BPPKZpgkiUN1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdCSPps%2FbtrQDxtxZXE%2FycD2kkbme4BPPKZpgkiUN1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;366&quot; height=&quot;785&quot; data-origin-width=&quot;949&quot; data-origin-height=&quot;785&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Base Color에 해당하는 텍스쳐를 반영하는 노드를 발견했다. 그리고, 여기에 UV입력을 받고 있는 것을 확인할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1395&quot; data-origin-height=&quot;919&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dwOLVn/btrQEInCIIF/zvAKtfVO9suxwnJantJkG1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dwOLVn/btrQEInCIIF/zvAKtfVO9suxwnJantJkG1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dwOLVn/btrQEInCIIF/zvAKtfVO9suxwnJantJkG1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdwOLVn%2FbtrQEInCIIF%2FzvAKtfVO9suxwnJantJkG1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;499&quot; height=&quot;329&quot; data-origin-width=&quot;1395&quot; data-origin-height=&quot;919&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해당 노드 소켓에 우클릭 메뉴를 열고, '연결로 점프'를 사용하면 즉시 이동할 수 있는 기능이 있더라.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1239&quot; data-origin-height=&quot;727&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bZ1LbK/btrQDvJft2Q/XC1bz99Gehz6sKuuG1GnpK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bZ1LbK/btrQDvJft2Q/XC1bz99Gehz6sKuuG1GnpK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bZ1LbK/btrQDvJft2Q/XC1bz99Gehz6sKuuG1GnpK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbZ1LbK%2FbtrQDvJft2Q%2FXC1bz99Gehz6sKuuG1GnpK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;678&quot; height=&quot;727&quot; data-origin-width=&quot;1239&quot; data-origin-height=&quot;727&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 이 친구가 바로 내가 찾던 그 기능인 것 같다. 이미 위와 같이 UV타일링 값이 반영된 노드가 추가되어 있기 때문에, 나는 간단히 이 값만 수정해주면 될 것 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1495&quot; data-origin-height=&quot;1639&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/xnqRg/btrQDwg1ywu/8rFkzTdWJOTFqkyLDMkczk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/xnqRg/btrQDwg1ywu/8rFkzTdWJOTFqkyLDMkczk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/xnqRg/btrQDwg1ywu/8rFkzTdWJOTFqkyLDMkczk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FxnqRg%2FbtrQDwg1ywu%2F8rFkzTdWJOTFqkyLDMkczk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;366&quot; height=&quot;401&quot; data-origin-width=&quot;1495&quot; data-origin-height=&quot;1639&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;머티리얼 미리보기에서도 타일링이 되어 변한 것을 확인할 수 있다. 이제 저장을 눌러 머티리얼을 저장한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bpmN0Y/btrQDwH99G1/BJ0J315xaogJXmrHd4NOT0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bpmN0Y/btrQDwH99G1/BJ0J315xaogJXmrHd4NOT0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bpmN0Y/btrQDwH99G1/BJ0J315xaogJXmrHd4NOT0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbpmN0Y%2FbtrQDwH99G1%2FBJ0J315xaogJXmrHd4NOT0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3840&quot; height=&quot;2077&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2077&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;내가 원하는던대로 잘 적용되었다 :)&lt;/p&gt;</description>
      <category>삽질 정보/UE5</category>
      <author>텐시야</author>
      <guid isPermaLink="true">https://tensiya.tistory.com/27</guid>
      <comments>https://tensiya.tistory.com/entry/UE5-%ED%81%B0-%ED%85%8D%EC%8A%A4%EC%B2%98-%EC%9E%91%EA%B2%8C-%ED%83%80%EC%9D%BC%EB%A7%81-UV-%ED%83%80%EC%9D%BC%EB%A7%81#entry27comment</comments>
      <pubDate>Tue, 8 Nov 2022 11:07:06 +0900</pubDate>
    </item>
  </channel>
</rss>