본문 바로가기
반응형

개발893

ChatGPT) Task 활용해서 게임뉴스 크롤링하기 : 매일알림 Task 활용해서 게임뉴스 크롤링하기ChatGPT에서 Task(스케줄)형태로 특정 명령을 등록할수 있는 기능이 생겨서 간단하게 해보았다.  스케줄이 등록이 가능하다.간단하게 매일 오전 10시에 해당 지침을 실행하는 형태로 스케줄을 등록한다.지침에는 좀더 디테일하게 가능하다.게임뉴스의 특정 참조 사이트 주소를 몇개 지정해두고 해당 사이트를 크롤링해서 게임뉴스를 받아본다. 푸시와 이메일로 설정을 해둔다.   알림은 연동된 메일로 오고 해당 메시지 보기를 누르면 연결된 채팅으로 가고 해당 내용이 출력이 된다. 아직은 Beta 기능이지만 ChatGPT에 기능이 개선될때마다 더 새로운 기능들로 접근할수 있어서 굉장히 맘에 들었다. Scheduled tasks in ChatGPT : [링크] ★★★★☆ 2025. 3. 18.
AI활용) MGX 활용해서 Team Agent 형태로 개발하기 MGX 활용해서 Team Agent 형태로 개발하기 AI -Agent 형태로 개발을 해주는 웹 사이트(Beta)가 있어서 간단하게 사용해본다. C# 코드의 3 - Match Game을 만들라고 요청을 해보았다.총 5명의 agent 가 존재하는데 거의 리더가 요청을 하고 엔지니어가 하게되는 경우로 진행되었다. 만들어진 프로젝트의 스크립트 파일들이다. Unity 의 내장 함수를 가지고 구현을 해준점이 인상 깊었다.다른 AI와 다르게 전체적인 구성을 보면서 진행이 되어서 프로젝트를 구성하기에 꽤나 좋은 사이트같다.  다른 사람들이 만든 프로젝트들이 공유된 App  World 에서는 미리보기도 가능하고 플레이도 가능하다.  https://mgx.dev/app/0no4nd https://mgx.dev/app/8a.. 2025. 3. 13.
개발지식) 게임적허용 (Game Rule Bending) 게임적허용 (Game Rule Bending)게임적 허용이란 ? 게임의 재미와 몰입감을 유지하기 위해서 현실적이지 않는 비현실적인 요소들을 허용하는 요소들을 말한다. 해당 요소는 디자인, 게임 시스템, 뷰, 물리 등등 여러가지 요소들이 존재한다.   예시체력 자동 회복현실과 다르게 게임에서 일정 행동을 하지 않으면 회복되거나,  스테이지를 넘어가면 회복하는 경우무한 인벤토리캐릭터의 인벤토리에 굉장히 많은 무기, 장비아이템, 소비아이템을 소지해도 아무렇지도 않게 움직이는 경우무한 탄창총에 탄이 무한대로 존재하고 플레이어는 계속해서 총을 사용할 수 있는 경우비현실적인 내구도자동차가 벽에 부딪히거나 총에 맞아도 진행하는경우 등등선택적인 시야시야 플레이를 하는 게임에서 특정 조건에서만 반응하는 경우 ex) 어쎄.. 2025. 3. 6.
읽을거리) 시니어 프런트엔드 개발자의 37가지 팁(37 Tips from a Senior Frontend Developer) 시니어 프런트엔드 개발자의 37가지 팁(37 Tips from a Senior Frontend Developer)원본 링크 : [링크] 37 Tips from a Senior Frontend DeveloperI really liked @abbeyperini post and decided to share my tips after 5+ years as a software...dev.to  프론트엔드 개발자로 성장하려면 기본기를 탄탄히 다지고, 꾸준히 학습하며 동료와 소통하는 것이 중요합니다. 실전 경험을 쌓고, 사용자 중심의 사고방식으로 가치를 제공하는 여러가지 방법에 대한 37가지의 팁이다.  HTML, CSS, JavaScript 기초가 약하면 작은 문제에도 쉽게 막힐 수 있습니다.기본기가 있어야 프레임.. 2025. 3. 4.
Unity) 앱 위변조 방지 방법들 앱 위변조 확인 방법들특정 환경에서는 무력화될수 있습니다.탈옥/ 루팅된 기기에서는 작동하지 않습니다.메모리 위변조로 해당 플래그를변경하는 경우에도 파단이 되지 않습니다. if (!Application.genuine) { Debug.LogWarning("앱이 변조되었습니다! 종료합니다."); Application.Quit();}  if (Application.genuineCheckAvailable) { if (Application.genuine) { Debug.Log("정품 인증 확인됨"); } else { Debug.LogWarning("변조된 앱이 감지되었습니다!"); Application.Quit(); }} else { Debug... 2025. 2. 25.
Unity) 백그라운드 실행 옵션 (Run In Background) 백그라운드 실행 옵션 (Run In Background) Unity에서 백그라운드에서 실행 여부 설정을 하는 옵션이다.  Project Setting -> Resolution and Presentation - Run In background 체크Application.runInBackground의 기본 설정은 false입니다.Application.runInBackground 속성은 애플리케이션이 표시될 때만 Android에서 작동합니다.iOS에서는 Application.runInBackground 속성이 무시됩니다.웹에서 업데이트 루프는 애플리케이션이 백그라운드에 있을 때 약 1초에 한 번씩 실행됩니다.백그라운드에서 실행되는건 게임의 성능과 배터리 소모에 영향을 줄 수 있으므로, 프로젝트의 요구사항에 따라.. 2025. 2. 22.
Unity) OnGUI Attribute 작업하기 OnGUI Attribute 작업하기 개발과정에서 필요한 데이터를 확인하는 과정에서 매번 GUI를 가지고 만들기에는 부담스러워서 Manager 클래스와 함께 언제든지 필요하면 사용 가능하도록 Attribute로 만들었다. using System.Collections;using System.Collections.Generic;using UnityEngine;public class MonitorTest : MonitorBehaviour{ [Monitor(MonitorAttribute.MonitorAttributeType.Label, MonitorAttribute.AlignType.BottomRight, "BottomLeft Label")]public string bottomLeftLabel = default.. 2025. 2. 18.
Unity) 특정 주기마다 호출되는 코드 만들기 (PeriodicInvoker) 특정 주기마다 호출되는 코드 만들기 (PeriodicInvoker) 간단하게 특정 주기마다만 호출되는 코드를 만들고 싶었다.1초마다 호출되는 타이머 같은 기능이다.  using System;using System.Collections.Concurrent;using System.Threading;using System.Timers; // System.Timers.Timer 사용을 위한 네임스페이스using UnityEngine;public class PeriodicInvoker{ private readonly ConcurrentDictionary _tasks = new(); private readonly System.Timers.Timer _timer; // System.Timers.Timer 명시적으로 .. 2025. 2. 13.
Unity) RectTransform 스크린 좌표로 변환해서 위치값 찾기 RectTransform  스크린 좌표로 변환해서 위치값 찾기 특정 상황에서 Target Object를 기준으로 좌표를 처리해야하는 작업에서 유용하게 사용한 코드이다.  public Vector3 GetOffsetPosition(){ if (targetTranform == null || Camera.main == null) { Debug.LogError("Target Transform 또는 Main Camera가 없습니다!"); return Vector3.zero; } // 타겟의 월드 좌표 가져오기 Vector3 worldPosition = targetTranform.position; Vector2 screenPoint = RectTransfor.. 2025. 2. 12.
읽을거리)개발자도 '일잘러'가 되어야하는 이유 개발자도 '일잘러'가 되어야하는 이유원본 링크 : [링크] 개발자도 ‘일잘러’가 되어야 하는 이유 | 요즘IT요즘 개발자는 단순히 뛰어난 코드를 작성하는 것만으로는 성공하기 어렵습니다. 저 역시 주니어 개발자일 때, 능력의 부족함을 많이 느꼈습니다. 다만 그때는 ‘일잘러’가 된다기보다 개발yozm.wishket.com 개발자가 기술적 능력뿐만 아니라 소프트 스킬을 중요하게 여겨야 한다는 내용을 으로 협업, 소통, 그리고 비즈니스의 요구 사항을 이해하는 능력이 개발자의 역할을 강화시키며, 이러한 스킬을 갖추면 팀과 프로젝트에서 더 큰 기여를 할 수 있다는 점을 강조한다.결국, 개발자는 ‘일잘러’로서 소프트 스킬과 기술적 능력 모두를 갖추어야 한다.   기존에는 코드 작성만 했던 과거와 다는 다르게 코드 품.. 2025. 2. 10.
Unity) 2D Grid 만들기 ( 2D Grid ) 2D Grid 만들기 ( 2D Grid ) 몬스터의 크기나 특정 위치를 확인하기 위해서 격자를 처리하는 코드를 작업했다.단순히 나열하는것보다는 전체적인 크기를 가늠할때도 유용하게 사용이 가능하다.  인스펙터에서 격자를 쉽게 사용하기 위해서격자 사이즈 / 격자 개수 / 격자의 Offset / 격자 Color 를 설정이 가능하게 작업했다.  using UnityEditor;using UnityEngine;/// /// 2D 격자 그리기/// public class DrawGrid : MonoBehaviour{ [SerializeField] private float gridSize = 1.0f; [SerializeField] private int divisions = 10; [SerializeField] pr.. 2025. 2. 4.
개발) 문자열 검색 필터(*와일드 카드 , 정규식 변환 활용하기) 문자열 검색 필터(*와일드 카드 , 정규식 변환 활용하기) 작업을 하다가 검색 / 필터의 형태로  문자열(String)을 검색하는 과정에서흔히 많이 사용하는 와일드 카드(*)를 가지고 검색을 하는 코드를 간단하게  포스팅한다.   /// /// 와일드카드(*를 포함한) 검색을 처리하는 함수 (GameObject 리스트를 필터링)/// /// GameObject 리스트/// 검색 쿼리 (와일드카드 지원, 자동 처리)/// 필터링된 GameObject 리스트private List FilterWithWildcard(List list, string query){ if (list == null || string.IsNullOrEmpty(query)) { return new List(); /.. 2025. 1. 31.
Unity) Main Thread Dispactcher (메인 쓰레드에서 사용하기) Main Thread Dispactcher (메인 쓰레드에서 사용하기) Unity 에서 어떤 동작을 다시 하기 위해서는 메인 쓰레드에서 동작을 하지 않으면 문제가 생기는 경우가 종종 생긴다.확정적으로 Unity의 메인 쓰레드에서 동작하는것을 보장하기 위한 코드이다.  using UnityEngine;using System.Collections;using System.Collections.Generic;using System;using System.Threading.Tasks; public class UnityMainThreadDispatcher : MonoBehaviour { private static readonly Queue _executionQueue = new Queue(); public vo.. 2025. 1. 27.
Unity) Sorting Layout 셋팅하기 Sorting Layout 셋팅하기Unity 에서 Sorting Layout은 2D 에서 렌더링 순서를 지정하는데 사용하는 Component로 여러가지 복합적인 그려지는 과정에서 주로 많이 사용하게 된다.   렌더링 그룹을 설정하게되면 해당 그룹에서의 우선순위를 지정하는 형태로 우선순위가 지정된다.    스프라이트의 포지션이나 정렬방식 설정  Sorting Layer 설정 및 Order In Layer 값 변경Sorting Layer 설정 및 Order In Layer 값 변경 [Project Settings] -[Tags and Layers]     기본적으로 Unity는 3D 의 깊이(Z - Depth)를 기준으로 처리가 되고 UI에서는 Hierarchy의 순서를 기준으로 렌더링된다.2D 의 특정 객.. 2025. 1. 23.
Unity Editor) Animator Preview 기능 만들기 Animator Preview 기능 만들기 Animator 는 Animation의 여러가지 상태를 자연스럽게 변경을 하는 과정에서 사용을 한다.그 과정에서 Animator의 Window를 켜서 해당 Animation을 선택해서 실행하는것이 너무 불편해서 Preview Editor를 만들었다.   애니메이션의 전환된 상태까지 확인하면 참 좋긴한데.너무 복잡해서 간단하게 Animation 선택 기능, Animation Speed(Time Scale) / Animation Frame을 확인할수 있도록 작업했다. Preview의 기능도 포함되어있기 때문에 해당 Animation을 초기화 시키는 Reset도 추가했다. 개발 하는 과정에서 좀 더 편하게 Animator를 확인이 가능하다. ★★★☆☆ 2025. 1. 15.
반응형