반응형 개발875 게임개발) io 게임장르 io 게임장르 요즘 모바일이나 유튜브 같은 플레이 영상들을 보다보면 xx .io 으로 게임이 나오는 경우가 꽤나 많다많다. 작성일 기준 19.01.30일 구글(인기 차트- 무료 게임)순위이다게임) 순위이다. 통칭 io 게임이라고 불르는 게임은 뭘까? io 게임의 원조라고 불리리는 agar.io (아가리오)의 게임이 있다. http://agar.io Agar.io The smash hit game! Control your cell and eat other players to grow larger! Play with millions of players around the world and try to become the biggest cell of all! agar.io io 게임은 특정 장르를 지칭하지는 .. 2019. 12. 6. Unity) 특수 폴더 이름 (Special Folder Name) 특수 폴더이름 (Special Folder Name) 유니티를 개발하다보면. 특정 폴더 이름을 지정해야 하는 경우가 있다. 이거는 유니티 엔진에서 룩으로 패스를 정해둔 것들이다. 해당 특수 폴더의 경로와 규칙을 잘 숙지해야 사용하는데 문제가 발생하지 않는다. 에셋(Assets) Assets 폴더는 Unity 프로젝트에서 사용하는 에셋이 포함되는 주 폴더입니다. 에디터 프로젝트 창의 콘텐츠는 에셋 폴더의 콘텐츠와 직접 연관됩니다. 대부분의 API 함수는 모든 것이 에셋 폴더 에 있다고 가정하므로 명시적으로 경로를 알려줄 필요는 없습니다. 그러나 일부 함수는 경로 이름에 에셋 폴더를 반드시 포함해야 한다. (Assets) 에디터(Editor) Editor 라고 하는 폴더에 있는 스크립트는 런타임 스크립트가.. 2019. 12. 6. Unity) 10000번의 Update 호출 Unity 10000번의 Update 호출 유니티의 Message System에 대한 설명인데 다들 개발을 하면서 '프레임'에 대한 고민을 많이 할 것이다. 유니티는 Update를 호출하기 위해 모든 Behaviours 순회합니다. 프레임에 대해서는 그냥 단순히 어떤 순서상에 의거해서 계속적으로 Update라는 함수가 호출될 거라고 생각을 하고 작업을 하는데 과연 내부는 어떨까?? 유니티의 Life Cycle 순서상에 보면 Object - Awake - OnEnable - Start -FixedUpdate - Update -yield null - yield StartCoroutine -Late Update 순으로 이뤄져 있다. Update 문은 어떻게 호출되나? 유니티는 유저의 매직 함수를 한번 호출하기.. 2019. 12. 6. Unity)문제해결) 유니티 빌드 에러 (CommandInvokationFailure: Gradle build failed.) 유니티 빌드 에러 (CommandInvokationFailure: Gradle build failed.) 유니티에서 안드로이드 빌드를 진행하면서 위와 같은 에러가 생겼다. CommandInvokationFailure: Gradle build failed. 열심히 찾다 보니 Gradle 빌드가 정상적으로 안 되는 현상이었다. 안드로이드 SDK과 NDK를 해당 빌드가 세팅되는 타깃 버전으로도 변경해도 안 되는 현상으로 골치가 아팠는데. 결국 해결한 방법은 다음과 같다. C:\Users\[사용자이름]\.gradle\caches 의 캐시파일을 모두 다 삭제하고 다시 빌드를 진행하니 진행이 되었다. 이슈는 아마 다른 Gradle버전으로 이것저것 테스트해보다가 맞지 않은 Gradle으로 캐싱이 되어있어서 그런 것으.. 2019. 12. 4. 자료구조) Map 의 파생 클래스 Map의 파생 클래스 Map의 파생된 클래스는 대략 다음고 ㅏ같다. Map을 기본 베이스로 HashTable , Hash Map, SortedMap이 있고 HashMap의 파생으로 LinkedHash Map ( 해쉬 맵 + 링크드 리스트) SortedMap의 파생으로는 Tree Map이 존재한다. ★☆☆☆☆ 2019. 12. 3. 게임개발) 레퍼 클래스(Wrapper Class) 레퍼 클래스(Wrapper Class) 레퍼 클래스(Wrapper Class)는 참 조형을 한다는 클래스로 래퍼를 표현하는 클래스를 '레퍼 클래스'라고 표현한다. 기본 자료형에 대해서 객체로 인식되도록 한번더 감싼다라는 뜻으로 생각하면 되는데. 상황에 따라 컴파일러가 자동으로 처리하기 때문에 오토박싱(AutoBoxing)이라고 한다. 래퍼 클래스를 사용하는 경우는 다음과 같다. 객체 또는 클래스가 제공하는 메소드를 사용하기 위해서 숫자, 문자로의 형변환 또는 진법 전환하기 위해서 기본형 타입 Wrapper Class byte Byte short Short int Integer long Long float Float double Double char Character boolean Boolean void .. 2019. 12. 3. 게임개발) 랜덤(Random) 랜덤(Random) 임의의'라는 뜻을 가진 영어단어로 '무작위'로 선택하는 것을 랜덤이라고 한다. 정해지지 않는 상태를 말하는 표현인데. 많은 무작위의 상태를 표현하기 위해서 사용을 한다. 확률이라던지, 상태라던지 등등 여러 상황에서 같은 패턴이 아닌 다른 변수를 만들기 위해서 사용한다. 코드에서 쓰는 기본적인 Seed 방식의 랜덤은 Time Clock을 기반으로 생성된다. 게임에서는 확률을 많이 사용하기 때문에 랜덤에 대해서 알고 사용해야 한다. 참고 URL : https://youtu.be/BLZKiAhf2UY ★★☆☆☆ 2019. 11. 25. 게임지식) 데브 옵스-DevOps (Developement + Operations) 데브 옵스(DevOps) 데브 옵스는 소프트웨어의 개발 (Develoment)와 운영(Operations)의 합성어로 소프트웨어 개발팀이 더 빠르고 안정적으로 소프트웨어를 개발하기 위한 방법론으로 자동화빌드, 테스트 및 릴리즈 할수 있도록 프로세스를 자동화하는 일련의 과정이다. 데브 옵스 환경을 구축하기 위해서는 서로의 상호 협의된 과정에서 이슈를 빠르게 해결하고 같은 업무를 반복해서 개발하지 않는것을 원칙으로 한다. 데브 옵스의 목적과 장점은 다음과 같다. 협업과정의 신뢰및 안정성 더 빠른 릴리즈 및 업무시간의 단축(Tim to market) 문제 해결시간 및 통합 적용 운영 프로세스의 예측, 유지보수의 극대화 단순한 프로세스들은 데브 옵스 환경을 구축해서 자동화하면 좋다. 데브 옵스 환경은 여러가지로.. 2019. 11. 21. 게임개발) Dps (Damage Per Second) Dps (Damage Per Second) 이름 그대로 '초당 피해량'으로 해석이된다. 즉, 1초당 얼마나 많은 양의 피해를 입힐 수 있는지를 측정하는 척도이다. 게임에서는 수치화된 정보가 필요한 경우가 굉장히 많다. 예시로 밸런스에서도 수치가 있어야 어떤결과가 나올지 예측이된다. DPS 를 계산하는 방식은 1초라는 것을 기준으로 데미지를 말하는 공식인데 1분 또는 1시간을 기준으로 데미지의 총량을 계산해서 초로 나눠서 표현한다. 1분을 기준으로 = 60/총 데미지량 = DPS ★★★☆☆ 2019. 11. 20. 환경설정) 소스트리 프로젝트 설정 소스트리 프로젝트 설정 소스트리를 다운 받는다. URL : https://www.sourcetreeapp.com/ Sourcetree | Free Git GUI for Mac and Windows A Git GUI that offers a visual representation of your repositories. Sourcetree is a free Git client for Windows and Mac. www.sourcetreeapp.com 실행하고 프로젝트에 대한 설정을 해야하는데 프로젝트의 로그인 방법을 SSH Key로 셋팅을 하려고 한다. [도구]-[옵션]을 들어간다. [옵션]-[일반]의 SSH 클라이언트 설정에서 OpenSSH로 설정을 하고 SSH키를 등록한다. 기본적으로 등록되어있는 SS.. 2019. 11. 16. 기본기) Extends와 Implements의 차이점 Extends와 Implements의 차이점 코드를 작업하다보면 상속(Inheritance)를 하게된다. 상속이란. 부모의 속성이나 값, 메소드등을 물려받는것을 의미하는데. 작업을 하다보면 ' Base Class'를 만들고 기본이 되는 속성을 처리를 하게된다. 상속은 단일 Extends와 Implement의 차이점으로는 같은 상속의 기능을 제공하지만 Implement는 구현부를 항상 구현을 해줘야 하고 다중 상속이 가능하다. Implements는 상속이라는 개념보다는 구현을 하는 처리에 가깝다. Implements를 사용하면 메서드를 구현을 항상 해야 한다. 하지 않으면 컴파일러 오류가 발생한다. 어떤 정형화된 명령어나 변수를 사용하는 곳에서는 Extends로 상속을 권장하고 ( 베이스가되는 기본이 되는.. 2019. 11. 15. 개인생각) 접근제한자에 대한 생각 접근 제한자에 대한 생각 코드를 짜다보면.. 네이밍과 함께 엄청 중요하다고 생각하는 건 '접근 제한자'이다. 어떤 속성에 인덱스의 get 및 set 부분을 명시하는 과정이다. 접근성을 제한하거나 접근성에 대해 제한을 풀어서 여러 곳에서 참조 및 접근을 가능하게 하는 과정을 말하는데 대표적으로 getXX , setXX으로 명칭을 사용한다. 접근 제한자를 정확하게 명시해야 데이터 흐름 및 작업에서도 의 관계가 명확하게 된다. 모호하게 public으로 사용하다 보면 이상현상이 생길 가능성이 생기기 때문에 접근 제한자를 정확하게 명시하는 것이 중요하다. 기본 중에 기본이라고 생각하는데 이걸 위배하고 사용하면 예기치 못한 상황이 많이 생기게 된다. ★★★☆☆ 2019. 11. 15. 환경셋팅) 소스트리(SourceTree) 설치하기 소스 트리(SourceTree) 설치하기 소스트리란 Atlassian에서 개발한 Git을 GUI로 사용자가 쉽게 코드에 대한 병합 및 관리를 가능하게 해주는 툴로 무료이다. Git과 연동이 가능하고 Window와 Mac을 지원한다. Download URL : https://www.sourcetreeapp.com/ Sourcetree | Free Git GUI for Mac and Windows A Git GUI that offers a visual representation of your repositories. Sourcetree is a free Git client for Windows and Mac. www.sourcetreeapp.com 설치 페이지에서 환경에 맞게 다운로드해준다. 라이선스를 동의.. 2019. 11. 13. Tip) VScode 정의로 이동이 안되는경우(NETFramework,Version=vX.X.X) VScode 정의로 이동이 안 되는 경우 (NETFramework, Version=vX.X.X) NETFramework, Version=vX.X.X" 프레임워크에 대한 참조 어셈블리를 찾을 수 없습니다. 라는 오류로 정의로의 이동이 안 되는 경우가 있다. 이럴 때 참조 어셈블리가 안 맞아서 그렇다. 오류에서 나오듯이 Net FrameWork를 호환성이 맞는 버전으로 설치하면 된다. Download URL :https://dotnet.microsoft.com/download/archives Download archives | .NET Download archives for all versions of .NET - past and present. Get downloads for all versions of .. 2019. 11. 13. 게임개발) FPS( Frame Per Second) FPS (Frame per Second) 1초에 발생하는 프레임 개수를 의미하는 표현이다. 정지된 사진 사진을 '프레임'이라고 표현하고 연속적으로 1초당 14 프레임 이상 되면 사람은 일반적으로 움직임(동작)으로 인식할 수 있다. 여러 장면을 순차적으로 보여주는 과정을 하게 되면 움직인다라고 생각하게 된다. 이 단위 자체를 '프레임'이라고 하고 프레임이 높으면 높을수록 부드러운 움직임(동작)을 표현할 수 있다. 높은 FPS일수록 동작이 세부적으로 표현이 가능하다. (고 품질 고 퀄리티) 게임 개발하는 과정에서도 FPS를 기본적으로 측정하면서 개발하게 된다. 1초당 화면에 그려지는 횟수를 계산하면 된다. 프레임 = 1초당 그려지는횟수 게임에서는 기본 30 프레를 최저 프레임으로 본다. 30 프레임 이하로 .. 2019. 11. 13. 이전 1 ··· 52 53 54 55 56 57 58 59 다음 반응형