본문 바로가기
반응형

개발878

게임용어)티밍(Teaming) 티밍(Teaming) 티밍(Teaming)이란 일반적으로 팀이 허용되지 않은 게임에서 플레이어들의 서로 공격할 수 있음에도 불구하고 연합, 혹을 맺는 부정행위를 뜻한다. 특히나 서바이벌 게임에서는 이러한 티밍 이슈가 적지 않은 편이었으나, 배틀그라운드, LOL, 도타 등등 공식적인 대회에서도 티밍으로 부당한 이득을 챙기는 사례가 늘면서 부각되었다. ★★★☆☆ 2020. 12. 30.
개발일지)솔리테어 클론다이크 시뮬레이터(Solitaire Klondike Simulator) -1 솔리테어 클론다이크 시뮬레이터(Solitaire Klondike Simulator) -1 솔리테어는 혼자하는 카드게임을 총칭하는 말로 카드놀이를 말한다. 솔리테어의 종류를 굉장히 많은데 그중에서 가장 대중적인 게임모드인 (Klondike)를 시뮬레이터로 만들 예정이다. 게임 클리어 규칙은 다음과 같다. 파운데이션(Foundation)에 A ,2,3,4,5~10, J, Q, K의 순서의 카드를 모두 다 올리면 된다. Deck에서는 카드를 셔플할수 있다. 모두 다 셔플 되면 다시 리셋된다. 타블루에 있는 오픈된 카드가 움직이면 뒷장의 클로즈된 카드는 오픈이 된다. 총 4개의 카드 세트가 파운데이션에 올라가면 끝나게 된다. ------------------------------------------------.. 2020. 12. 29.
Unity) 스프라이트 아틀라스(Sprite Atlas) 스프라이트 아틀라스(Sprite Atlas) Unity 에서 Atlas를 사용하는 방법을 포스팅한다. Altas는 이미지의 모음으로 따로따로 있는 리소스(Image, Texture)등등 을 하나의 묶음으로 메모리 상에 올려놓아서 사용하는 방식을 말한다. 낮은 버전에서는 Sprite Paker라는 것을 통해서 사용 했다. 2019버전 이상에서는 레거시로 곧 사라질 항목이기 때문에 Sprite Atlas를 사용하도록 하자. [Project Setting] - [Editor] - [Sprite Packer] - [Always Enabled]를 선택한다. 하이어라키에서 마우스 오른쪽 메뉴- [Create] -[Sprite Atlas]를 선택해서 아틀라스를 생성한다. 생성된 아틀라스에 Object for Pack.. 2020. 12. 27.
개발용어)Dice-Rolls in Role-Playing Games (운 요소) Dice-Rolls in Role-Playing Games (운 요소) 어떤 선택지를 하는 과정에서 우선순위를 정하는 가장 보편적인 단순한 방법 중 하나로 주사위를 정해서 우선순위(운)를 결정하는 방식을 말한다. Dice-Rolls을 구성하는 방식은 다음과 같다. 1. 특정 수치를 기준으로 확률 배열을 구성한다. 2. 확률에 대한 배열 을 섞는다.(Shuffle) 3. 확률 배열중 랜덤으로 한 개를 뽑고 우선순위를 비교한다. 게임을 만드는 과정에서의 많이 쓰이는 방식이다. 결국 게임도 어떤 순위에 의거한 경쟁 및 수치에 대한 랜덤 성이 포함이 되어야 재미를 느끼기 때문이다. 미리 알게 되면 흥미가 떨어진다. 재미에서 '운'적인 요소를 말한다. 전문적인 표현이 애매하다보니 찾다 보니 논문 확인 및 명칭을 .. 2020. 12. 23.
문제풀이)프로그래머스)c#) 여행경로 여행경로 URL : programmers.co.kr/learn/courses/30/lessons/43164 코딩테스트 연습 - 여행경로 [[ICN, SFO], [ICN, ATL], [SFO, ATL], [ATL, ICN], [ATL,SFO]] [ICN, ATL, ICN, SFO, ATL, SFO] programmers.co.kr DFS를 사용한 구조로 작업 진행했다. 하다가 여러 번 문제가 생겨서 고쳤는데 이유는 다음과 같다. 1. 주어진항공권을 모두 사용해야 한다 (실제로는 모든 경로를 다 우회하는 것이 아닌 가장 길게 갈 수 있는 경로를 만들어야 한다.) 2. 재귀하는 과정에서 무한 루프( ex : A -> B ->B -> A) using System; using System.Collections.G.. 2020. 12. 23.
프로토타입)스도쿠 탄 만들기(Sudoku) 스도쿠 탄 만들기(Sudoku) 머리를 쓰는 게임으로 1979년에 하워드 간즈(Howard Garns)가 넘버 플레이스(Number Place)라는 이름으로 대중에 소개돼서 일본의 잡지에서 스도쿠'라는 이름을 붙인 것이 유래된 게임이다. 스도쿠(Sudoku)는 9*9 의 크기에 1~9까지의 숫자가 중복되지 않는 것을 원칙으로 된 것을 맞추는 게임을 말한다. 스도쿠의 규칙은 다음과 같다. 3*3의 그룹 영역에 1~9값이 중복되지 않고 존재해야 하고 한 행의 가로 영역이 1~9 값이 중복되지 않고 존재해야 하고 한 행의 세로 영역이 1~9 값이 중복되지 않고 존재해야 한다. 게임은 다음과 같다. 완성되지 않은 스도쿠 조건에 맞는 숫자를 체워넣어는 게임이다. Unity를 기반으로 만들었고 기본적으로는 공간을 .. 2020. 12. 19.
Unity)List Shuffle(리스트 랜덤으로 순서 변경) List Shuffle(리스트 랜덤으로 순서 변경) 리스트의 순서를 랜덤으로 변경하는 코드이다. 데이터를 개수만큼 생성 이후에 랜덤으로 순서를 변경한다. 기본적으로 Swap의 코드로 구성되어있다. Genergeneric type으로 선언해서 List의 어떤 형태든 가능하도록 했다. public List GetShuffleList(List _list){ for (int i = _list.Count - 1; i > 0; i--) { int rnd = UnityEngine.Random.Range(0, i); T temp = _list[i]; _list[i] = _list[rnd]; _list[rnd] = temp; } return _list; } System.Random r.. 2020. 12. 15.
게임개발) 스키게임(Ski Game) 스키 게임(Ski Game) 간략하게 스포츠 스키의 종목 중 알파인 스키(Alpine skiing)에 영감을 받아 만든 스키게임 프로토 타입니다. 기본적으로 장애물에 부딪히면 게임오버가 되는 룰을 가지고, 장애물 근처에 가면 고득점을 준다. 아슬아슬하게 장애물들 근처에서 피해서 깃발이 있는 끝까지 도달하는 것을 간단한 레벨로 친다. 레벨이 높아지면 장애물들이 추가로 생긴다. 기본적으로 2가지 타입의 나무와 1가지의 돌로 방해물을 구성되어있다. ----------------------------------------------------------------------------------------------------------------------------------- 1. 처음에는 기본적인 스키(.. 2020. 12. 14.
Unity) Unity Define 설정 (Unity Scripting Define Symbols) Unity Define 설정 (Unity Scripting Define Symbols) Unity에서도 Define 스크립트의 Define 설정을 할 수 있다. 사용방법은 플랫폼 전처리처럼 사용하면된다. public void SetTest(){ #if ENABLE_LOG //Define 설정되어있을경우만 실행 #endif } 정의 방법은 다음과 같다. [Build Setting]-[PlayerSetting] - [Other]-[Configuration]항목의 Script Define Symbols에 정의를 입력한다. ★☆☆☆☆ 2020. 12. 13.
잡학지식)알고리즘)Rule - Based System (단순 AI) Rule - Based System (RBS) 규칙 기반 시스템은 특정한 규칙(아이디어)을 포착하고 이를 컴퓨터 내에 구성하는 것이다. 대부분은 특정 많은 조건들로 구성되어 있다. (if - than - else) 이 규칙을 기반한 시스템은 학습능력이 없기 때문에 인공지능으로는 가짜라고 표현할 수 있지만 구성하는 아이디어가 인간의 행동을 비롯해서 구성하기 때문에 가장 단순 형태의 AI로 간주한다. 단순 능력에 대한 시뮬레이터로써는 적합한 방식이다. 구현방식은 다음과 같다. 1. 규칙을 기반해서 우선순위를 지정한다. 2. 우선순위에 의한 가중치를 부여한다. 3. 구성 및 구현부를 진행한다. 4. 검증과정을 진행한다. 참고 URL : occamsrazr.net/view/AboutRuleBasedAi Occa.. 2020. 12. 11.
Xocde)문제해결)xcode-select: error: tool 'xcodebuild' requires Xcode, but active developer directory '/Library/Developer/CommandLineTools' is a command line tools instance xcode-select: error: tool 'xcodebuild' requires Xcode, but active developer directory '/Library/Developer/CommandLineTools' is a command line tools instance Xcode를 커맨드로 빌드하는 과정에서 CommandLineTools를 사용하지 못한다는 에러이다. 터미널에서 다음으로 권한을 준다. sudo xcode-select -s /Applications/Xcode.app/Contents/Developer rwx는 각각 읽기(read), 쓰기(write), 실행(execute) 권한이다. Xcode-select [—switch] [path.. 2020. 12. 7.
Unity) 비동기 프로그래밍(Aync, Await) 비동기 프로그래밍(Aync, Await) I / O 요구가 있는 상황(파일을 읽거나, 데이터베이스 액세스, 네트워크 요청, 응답 등등)에서는 비동기 프로그래밍을 활용하는 것이 좋다. C#에서는 언어 수준에서 지원하기 때문에 쉽게 사용이 가능하다. TAP(Task-base Asynchronous Pattern)이라고 하는 방식을 따른다. 동기식 (30분) 비동기식(15분) 다음은 게임에서 데이터를 계산하는 과정에서 예시는 다음과 같다. CalculateButton을 클릭하는 동안에는 제어권 넘겨주고 계산을 처리하고 다시 UI에 표현하는 예시이다. private DamageResult CalculateDamageDone() { // Code omitted: // // Does an expensive calc.. 2020. 12. 7.
개발환경)Home brew 에서 젠킨스삭제하기(Jenkins Uninstall) Home brew 에서 Jenkins 삭제하기 젠킨스 설정이 이상하고 겸사겸사 테스트 설정들을 날릴 셈으로 젠킨스를 삭제하고 다시 깔기로 했다. brew로 젠킨스를 설치했던 환경이어서 brew에서 삭제하는 명령어로 진행했다. brew remove jenkins brew cleanup brew uninstall jenkins --force brew cleanup mac에서 젠킨스를삭제하고 난 이후에 설정 파일들이 남아있다. 삭제 명령어로 해당위치의 경로의 설정및 파일을 삭제해준다. sudo rm -rf /var/root/.jenkins ~/.jenkins 젠킨스를 설치하는 환경에 따라 다른 커맨드로 삭제를 진행해야할때도 있다. 단순히 파일을 휴지통으로 삭제하는것 보다는 uninsall 명령어를 통해서 삭제.. 2020. 12. 3.
개발환경)Unity)IOS Build(TestFlight 업로드) Unity)IOS Build(TestFlight 업로드) IOS에 계정이 활성화되면 인증서와 프로파일을 만들어야 한다. appstoreconnect.apple.com/login https://appstoreconnect.apple.com/login appstoreconnect.apple.com Device 등을 등록하고 인증서를 만들고 난 이후에는 TestFlight에서 신규 앱을 눌러서 프로젝트를 연결한다. TestFlight에 설정이 끝난 이후에는 Unity Project(IOS)를 만들어서 등록한다. Unity에서 빌드를 해서 Xcode용 빌드로 만들어서 Xcode에서 TestFlight로 업로드하는 과정이다. 설정 이후에 빌드를 하게 되면 다음과 같은 Xcode용 프로젝트가 나오게 된다. IOS로.. 2020. 11. 29.
Unity)해결) error CS1704: An assembly with the same name `SyntaxTree.VisualStudio.Unity.Bridge' has already been imported. error CS1704: An assembly with the same name `SyntaxTree.VisualStudio.Unity.Bridge' has already been imported. 해결 error CS1704: An assembly with the same name `SyntaxTree.VisualStudio.Unity.Bridge' has already been imported. Consider removing one of the references or sign the assembly C:/Program Files (x86)/Microsoft Visual Studio Tools for Unity/16.0/Editor/SyntaxTree.VisualStudio.Unity.Bridge... 2020. 11. 23.
반응형