본문 바로가기
반응형

개발869

Unity)보로노이 다이어그램 (Voronoi diagram) 보로노이 다이어그램 (Voronoi diagram) 보로노이 다이어그램은 주어진 평면 위의 점 집합에서, 각 점에 대해 해당 점과 가장 가까운 영역을 나누는 공간 분할 방법으로 여러가지 과학적 및 공학적 분야에서 자주 사용된다. 특정 전체를 기준으로 분할되기 때문에 어느정도의 일정구역을 차지하게 된다.  Map Size 에서 Point Count 만큼 영역을 생성하는 로직이다.    using System.Collections.Generic;using UnityEngine;public class VoronoiDiagram : MonoBehaviour{ public int pointCount = 10; public Vector2 mapSize = new Vector2(10, 10); private List.. 2024. 10. 19.
Unity) 재화 획득 연출(흩뿌리고 타겟 이동 연출) 재화 획득 연출(흩뿌리고 타겟 이동 연출) 보상으로 재화를 획득하는 과정에서 시각적인 연출 효과로 인해서 보상을 받는 느낌을 더 주기 위해서특정위치에서 타겟으로 이동하는 연출을 작업했다.구조는 내부에서 Object Pool 을 사용해서 보상에 처리할 적당한 수준의 보상 오브젝트를 초기화해서 만든다.보상 오브젝트의 재사용성과 보상의 개수에 따라 유동적으로 변화를 해야하는 것에 대해 고려하고 작업진행 했다.   Diameter 값을 통해서 처음에 보상오브젝트를 1차적으로 흩뿌려주는 과정이 끝나면타겟으로 이동한다.  타켓 오브젝트의 Script 로 Animation Curve를 활용해서 시간의 흐름에 대해서 처리를 진행했다. using System;using System.Threading.Tasks;using.. 2024. 10. 18.
읽은거리) 2025년 홍보 트렌드(PR Trends 2025: The 30 Hottest Public Relations Trends) 2025년 홍보 트렌드(PR Trends 2025: The 30 Hottest Public Relations Trends)모든 산업과 마찬가지로 PR 트렌드는 직원의 기대, 기술, 소비자 선호도 등의 영향을 받는다.  이러한 변화와 함께 PR 전략 도 변화에 맞춰 적응해야 한다. 2025년의 홍보 트렌드를 간략하게 정리해보면 다음과 같다. 원본 [ 링크 ] PR Trends 2025 - The Hottest PR Trends in 2025 ⭐️ PRLabPR Trends 2025 ➤ Everything you need to know about the hottest PR Trends in 2025 ⭐️ Human-centric movements ✚ Understand Media ✚ more...prlab... 2024. 10. 13.
Unity) Debug -Json Pretty Print 적용하기 Debug -Json Pretty Print 적용하기작업을 하다보면 Json Parsing 의 값을 Unity Console에 노출하는 경우가 종종 있는데일반적으로 노출을 하게되면 Json 의 형식이 한눈에 보이지 않는다.   Json을 파싱하는 곳들을 보면 다음과 같이 'Pretty Print 적용' 같은 체크박스를 하면 형식이 이쁘게 나오는 것을 참고해서 Debug Class를 커스텀해보자. using UnityEngine;public class DebugTest : MonoBehaviour{ string json = "[\r\n {\r\n \"postId\": 1,\r\n \"id\": 1,\r\n \"name\": \"id labore ex et quam laborum\",\r\.. 2024. 10. 10.
Unity) 커스텀 디바이스 추가 하기(Custom Simulator : iPhone 14,15 Pro / etc) 커스텀 디바이스 추가 하기(Custom Simulator :  iPhone 14,15 Pro / etc) Unity 엔진에서 모바일을 개발하는 과정에서는 여러가지 Device의 해상도에서 어떻게 나오는지 확인을 해야 한다.그 과정에서 Simulator를 사용하는데 시간이 지날수록 새로운 Device가 나오는데 내장된 업데이트가 되지 않고 있다.    기존의 시뮬레이터에서는 지원하는 Device가 최신 기기의 디바이스가 없는 경우에 추가를 해야한다.  Device의 정보를 적은 Json 형태의 파일을 넣으면 된다.경로Assset 경로.Device JsonAssets/Devices/디바이스 이미지Assets/Devices/Overlays/iPhone 14.png { "friendlyName": "App.. 2024. 10. 9.
Unity)격투 게임 HP 구현하기 (Recoverable HP :회복 가능 HP) 격투 게임 HP 구현하기 (Recoverable HP :회복 가능 HP)  격투게임이나 특정 순간의 강력한 데미지를 표현해줄때 2중으로 HP를 표현해줌으로써 매번 체력 게이지를 보는게 아니기 때문에 얼만큼 차감이 되는지에 대해새 임펙트가 있는 형태의 HP이다.   using System.Collections;using UnityEngine;using UnityEngine.UI;public class HPBar : MonoBehaviour{ [SerializeField] private Image foregroundImage; // 즉시 감소하는 이미지 [SerializeField] private Image backgroundImage; // 서서히 감소하는 이미지 public f.. 2024. 10. 8.
기본기)C# : Namespace 명명 규칙 C# : Namespace 명명 규칙 C#에서 네임스페이스의 명명 규칙은 주로 회사 또는 프로젝트의 구조에 맞게 최상위부터 하위로 계층적인 구조를 따르는 것이 일반적입니다. 네임드 스페이스로 명명을 하게되면 무엇인지 즉시 알수 있도록 명확성과 구분을 하는 용도로 사용한다..(|)[.][.] 테스트 툴(Test Tool) 이라는 개념과 에디터 (Editor)라는 개념으로 네임드스페이스를 만드는 경우를 간단하게 정리한다. 'Editor.TestTool' 으로 네임드 스페이스를 정의하는 경우Editor'라는 큰 범주 안에 'TestTool'이 존재한다는 것을 암시합니다. 이렇게 명명하면 'Editor'라는 모듈이나 기능 내의 다양한 서브기능 중 하나로 'TestTool'을 분류할 수 있습니다. 'TestToo.. 2024. 10. 5.
Unity) GameObject Active Script로만 제어하기 GameObject Active Script로만 제어하기Prefab 작업을 하다가 보면 Active를 끄는 이슈가 생기는 경우가 종종 존재한다.그런 케이스가 발생하지 않도록 GameObject를 컨트롤을 Script로만 가능하게 만드는 Script를 생성해서꺼지면 안되는 GameObject에 해당 Script를 추가하면 된다. 테스트는 간단하게 GameObject의 Active를 껏다 켰다 가능한지.Script 코드로는 해당 GameObject를 컨트롤 가능한지 판단해서 작업했다.    using UnityEngine;public class GameObjectScriptActive : MonoBehaviour{ // Inspector에서 활성화 상태 제어를 선택할 수 있는 변수 [SerializeFiel.. 2024. 9. 30.
Unity) 슬롯 연출 : 보상 연출 (Slot Animation) 슬롯 연출 : 보상 연출 (Slot Animation)게임에서 보상에 대한 연출으로 순차적으로 선택되다가 서서히 멈추면서 특정 보상이 선택되는 형태의 연출을 간단하게 작업 진행했다. 바로 선택되는게 아니고 이렇게 연출로 선택을 하게되면 긴장감과 기대감을 동시에 줄 수 있기 때문이다.   보상은 간단하게 4*4의 형태로 Grid Layout으로 작업 진행했다.보상 데이터는 대부분 확률에 의거해서 뽑혀야 하기 때문에Select 버튼을 누르는 순간 해당 뽑히는 상자가 선택이 되고 연출을 시작하는 형식으로 구현했다.의도지 않은 형태의 보상이 선택이되면 안되기 때문이다. 간단하게 Image Alpha를 조절하는 것으로 보상을 선택한것으로 판단해서 작업 진행 했다.  Animation Curve를 통해서 선택되는 .. 2024. 9. 25.
Unity) Text Animation (Slide-in / Slide-Out) Text Animation (Slide-in / Slide-Out)몬스터와 플레이어의 턴에 대한 표시를 해주기 위해서Text의 이동하는 연출을 Animation Curve 를 활용해서 작업햇다.  왼쪽 이동>     오른쪽 이동>  Animation Curve 를 2개를 활용해서Screen  Width 와 Text Component Width를 계산해서 시작점, 도착점, 중앙에 대한 계산을 진행하고Duration 만큼 Component가 이동하게 처리를 진행했다.     ★☆☆☆☆ 2024. 9. 24.
Unity) 배경 이미지 반복 처리하기 ( 배경 타일링 ) 배경 이미지 반복 처리하기 ( 배경 타일링 ) 간단하게 패턴 이미지를 기반으로 UV 좌표를 변경해서 반복되는 이미지를 만들고 매 시간 마다 이동해서 반복적인 패턴 이미지가 이동하는 코드이다.  이미지는 간단하게 패턴이 어색하지 않도록 만들어 준다.   Wrap Mode 를 Repeat으로 반복 처리해줘야 한다.그러면 이렇게 반복 처리가 된다. using UnityEngine;using UnityEngine.UI;public class BackgroundPattern : MonoBehaviour{ [SerializeField] private RawImage rawImage; // RawImage 컴포넌트를 저장할 변수 private Rect uvRect; // UV 좌표를 저장할 Rect 변수 public.. 2024. 9. 23.
C#) Enum 값 순환 처리하기 Enum 값 순환 처리하기 Enum 값을 순환해서 처리해야할 때가 있다.간단하게 사용할수 있는 코드이다.결국은 현재 Enum의 값을 기준으로 마지막 혹은 처음 Enum 값으로 다시 선택해주는 코드이다. public enum TextShowOption{ Empty, Content, Font}public static class TextShowOptionExtensions{ public static TextShowOption Next(this TextShowOption option) { // Get the enum values as an array TextShowOption[] values = (TextShowOption[])Enum.GetValues(typ.. 2024. 9. 19.
읽을거리)사용자 인터페이스(UI)의 황금 비율(Golden Ratio in User Interface) 사용자 인터페이스(UI)의 황금 비율(Golden Ratio in User Interface) 황금비율에 대한 이 설명은 매우 흥미롭습니다! 황금비율(1.618)은 역사적으로 예술, 건축, 그리고 디자인에서 중요한 역할을 해왔고, 자연에서 발견되는 많은 패턴과도 연결됩니다. 이를 바탕으로 사진 촬영이나 UX/UI 디자인에서도 시각적 조화와 균형을 제공하는 강력한 도구로 활용할 수 있죠. 원본 링크 : [링크] Golden Ratio in User InterfaceWhen we talk about the Golden Ratio, I often think of photography and how it can make a shot more interesting, especially by guiding the .. 2024. 9. 19.
Unity) GUI Slider 간격 조절(1 -> 5단위 간격 조절) GUI Slider 간격 조절(1 -> 5단위 간격 조절) EditorGUILayout.IntSlider 의 간격은 기본적으로 1단위로 변경이되는데특정 단위(5단위)로 조절이 가능한 간단한 코드이다.간단하게 값을 특정 단위값이 아니면 조절을 하는 형태로 구현하면 원하는 형태로 간격을 조절이 가능하다.using UnityEditor;using UnityEngine;public class SliderExample : EditorWindow{ private int sliderValue = 0; [MenuItem("Window/Slider Example")] public static void ShowWindow() { GetWindow("Slider Example"); }.. 2024. 9. 15.
Unity) 원형 룰렛(Roulette) 만들기 원형 룰렛(Roulette) 만들기   간단하게 룰렛을 만들어보았다.데이터들의 가중치를 기준으로 데이터를 각도별로 셋팅하고 회전을 해서 선택이 되는 형식이다.게임에서도 랜덤으로 단순하게 지급하는것 보다는 룰렛의 형태로 구현을 해서 지급하거나 그런 여러가지 케이스를 위해서 간단하지만 범용성 있게 구성해 보았다.  Image 의 Fill Method의 Radial 360 값을 기준으로 하나의 원형 룰렛의 부분을 표현했다.룰렛을 만들때 데이터들을 다양하게 셋팅을 하기 위해서범용적으로 가중치를 기반으로 셋팅이 되도록 했다.     가중치값을 전체를 기준으로 데이터를 구분하게 되니 실제 값이 달라지더라도 정상적으로 퍼센트 계산이 되어서 룰렛이 잘 나온다.룰렛이 당첨되었을때의 처리나 그런 표시에 대한 처리도 추가하.. 2024. 9. 10.
반응형