0. 개요 이전 글에서 기본 설정 하는 법을 읽지 않았다면 이전 글을 먼저 읽고 오자. (접은글을 펼치자!) 더보기 https://freeedeveloper.tistory.com/entry/Unity-%EB%A9%80%ED%8B%B0-%ED%94%8C%EB%A0%88%EC%9D%B4%EB%A5%BC-%EC%9C%84%ED%95%B4-%ED%8F%AC%ED%86%A4%EC%9D%84-%EC%97%B0%EB%8F%99%ED%95%98%EC%9E%90Photon-0-%EA%B8%B0%EB%B3%B8%EC%84%A4%EC%A0%95%EA%B3%BC-%EA%B0%80%EC%9E%85%EB%B0%A9%EB%B2%95 [Unity] 멀티 플레이를 위해 포톤을 연동하자!(Photon) - 0. 기본설정과 가입방법 0...
전체 글
Unity를 중점적으로 공부하는중입니다. 개인 깃허브 https://github.com/LKM0222 Nitros 소속0. 개요유니티로 게임을 개발하다보면 멀티플레이를 구현해야 할 때가 있다. 여러 API가 있지만, 이번에는 Photon을 사용해보려고 한다. 1. 기본 설정포톤은 다음 사이트에서 만나볼 수 있다. https://doc.photonengine.com/ko-kr/server/v4/getting-started/photon-server-intro Photon Server 소개 | Photon EnginePhoton은 굉장히 빠르고 매우 쉽게 사용할 수 있는 온프레미스 실시간 소켓 서버이며 크로스 플랫폼 멀티 플레이어 게임 개발 프레임워크 입니다. Photon Server 멀티플레이어 API를 이용하여 여러 플doc.photonengine.com 사이트에 들어가서 간단한 회원가입을 한 후, 우측 상단의 대쉬보드..
바이러스 2606번: 바이러스 첫째 줄에는 컴퓨터의 수가 주어진다. 컴퓨터의 수는 100 이하인 양의 정수이고 각 컴퓨터에는 1번 부터 차례대로 번호가 매겨진다. 둘째 줄에는 네트워크 상에서 직접 연결되어 있는 컴퓨터 쌍 www.acmicpc.net 시간 제한메모리 제한제출정답맞힌 사람정답 비율 1 초 128 MB 158336 73298 49294 45.833% 문제 신종 바이러스인 웜 바이러스는 네트워크를 통해 전파된다. 한 컴퓨터가 웜 바이러스에 걸리면 그 컴퓨터와 네트워크 상에서 연결되어 있는 모든 컴퓨터는 웜 바이러스에 걸리게 된다. 예를 들어 7대의 컴퓨터가 과 같이 네트워크 상에서 연결되어 있다고 하자. 1번 컴퓨터가 웜 바이러스에 걸리면 웜 바이러스는 2번과 5번 컴퓨터를 거쳐 3번과 6번 ..
DFS와 BFS 1260번: DFS와 BFS 첫째 줄에 정점의 개수 N(1 ≤ N ≤ 1,000), 간선의 개수 M(1 ≤ M ≤ 10,000), 탐색을 시작할 정점의 번호 V가 주어진다. 다음 M개의 줄에는 간선이 연결하는 두 정점의 번호가 주어진다. 어떤 두 정점 사 www.acmicpc.net 시간 제한메모리 제한제출정답맞힌 사람정답 비율 2 초 128 MB 261931 100887 60021 37.307% 문제 그래프를 DFS로 탐색한 결과와 BFS로 탐색한 결과를 출력하는 프로그램을 작성하시오. 단, 방문할 수 있는 정점이 여러 개인 경우에는 정점 번호가 작은 것을 먼저 방문하고, 더 이상 방문할 수 있는 점이 없는 경우 종료한다. 정점 번호는 1번부터 N번까지이다. 입력 첫째 줄에 정점의 개수..
0. 로그라이크란? 로그라이크는 말 그대로 로그 처럼 생긴 게임을 의미한다. 로그 게임은 1980년대 제작된 텍스트 기반으로 된 RPG 던전 탐험 게임이다. 현대에 들어서는 이 로그라이크 게임의 특징 중, 게임오버 시 처음부터 다시시작, 모든 아이템 초기화, 맵 초기화 등이 있다. 이 중, 맵이 초기화 되는 기능을 구현하고자 한다. 맵을 생성할때, 맵의 크기는 전부 동일하다고 가정한다. 또한 통로는 생성하지 않고, 맵을 모두 연결시킨다. 1. 고려할 점. 일단 로그라이크 맵을 만들기 위해 n*m 크기의 배열을 먼저 생성할것이다. 이후, 배열위에서 아무 무작위 점을 하나 정하고, 커서를 그 위치로 옮긴다. 커서가 움직이는 방향은 상하좌우이고, 커서가 움직일때마다 움직인 방향에 맵을 생성할것이다. 맵의 프리..
0. 오브젝트 풀링이란? 오브젝트 풀링은 말 그대로 객체 수영장이라는 뜻이다. 예를 들어 수 많은 오브젝트를 생성해야하는 탄막슈팅게임 (이러한 게임에서는 수 많은 총알들을 생성해야 한다...) 이나, 폭파되는 연출을 위한 파티클들을 위해 오브젝트 풀링 기법을 주로 쓴다. 오브젝트들을 생성하고 파괴하는 작업은 가비지 컬렉터 때문에 메모리 상에 많은 부하를 남기게 된다. 따라서 오브젝트 풀링 기법을 활용해서 이 부하를 최소화 하는 작업이 필요하다. 1. 오브젝트 풀링 구현 전 //2D Square에 붙일 코드 using System.Collections; using System.Collections.Generic; using UnityEngine; public class Square : MonoBehavio..
개요 유니티 게임을 만들다 보면 간혹, 통신을 위한 API가 필요한 경우가 있다. 통신을 위해서는 대표적으로 포톤을 많이 사용하지만, 이번에는 MIRROR를 사용해서 구현해 볼 생각이다. MIRROR는 유니티가 원래 제공하던 UNET이 서비스 중단되면서 이 UNET을 기반으로 만들어서 에셋 스토어에 무료로 공개된 네트워크 API이다. 추가로 Mirror 네트워크는 동시 수천명 정도 접속 할 수 있는 규모라고 한다. 수천명 단위의 MMORPG정도는 구현 가능한 서버 프로그램이라고 한다. https://assetstore.unity.com/packages/tools/network/mirror-129321 Mirror | 네트워크 | Unity Asset Store Get the Mirror package f..
오타가 있을 수 있습니다... 시험에 자주 나오는 개념들을 정리해 보았습니다!기출경향기출경향은 문제 번호 - 문제 유형으로 표기하였습니다. 또한, 프로그래밍 언어는 따로 유형을 표기 하지 않고, 문제 번호만 작성하였습니다.더보기 목차2020-1개수2020-2개수1. 요구사항 확인16-LOC모형14- 애자일 방법론 10- 디자인 패턴22. 화면 설계 16- UI설계원칙13. 데이터 입출력 구현17- 반정규화118- 데이터모델절차14. 통합구현 13 - SOAP15. 인터페이스 구현4- XML 5- JSON23- AJAX16. 프로그래밍 언어 활용 JAVA13, 14251C121191Python 217. SQL616, 1227-1. SQL개념8- 트랜잭션의 특성17- 트랜잭션 제어18. 서버 프로그램 구현1..
※ 모든 문제는 시험 응시자의 기억으로 복원 된 문제임을 알립니다. 따라서 문제의 지문과 답이 상이한 경우가 발생 할 수 있습니다. (서술형의 경우 정확하게 맞지 않을 수 있습니다.) ※ 또한, 모든 문제의 기본 풀이는 수제비2023 책을 기반으로 작성하였습니다. 오타가 있을 경우, 답이 틀렸을 경우 댓글 부탁드립니다. ※ 수제비 카페 바로가기 - https://cafe.naver.com/soojebi 1. 다음은 C언어 코드의 문제이다. 보기의 조건에 맞도록 괄호 안에 알맞은 코드를 작성하시오 #include int main(void){ int n[5]; int i; for(i = 0; i가 들어가야 한다. 자신보다 더 작은수가 있다면 앞으로 옮겨야 하기 때문 19. 다음 파이썬 코드에서 알맞는 출력값..
※ 모든 문제는 시험 응시자의 기억으로 복원 된 문제임을 알립니다. 따라서 문제의 지문과 답이 상이한 경우가 발생 할 수 있습니다. (서술형의 경우 정확하게 맞지 않을 수 있습니다.) ※ 또한, 모든 문제의 기본 풀이는 수제비2023 책을 기반으로 작성하였습니다. 오타가 있을 경우, 답이 틀렸을 경우 댓글 부탁드립니다. ※ 수제비 카페 바로가기 - https://cafe.naver.com/soojebi 1. 아래 자바 코드에서 출력되는 값을 작성하시오. class Static{ public int a = 20; static int b = 0; } public class Main{ public static void main(String[] args) { int a; a = 10; Static.b = a; ..