분류 전체보기 225

(25) UI - Item Slot & UI Camera

(19) 아이템 #UI시작하기 전, 고정구체 아이템은 디자인에 변화를 주었다. 기존 고정구체랑 완전히 똑같이 디자인을 가져가다보니플레이 도중에 너무 헷갈릴것 같다  (18) 아이템 #랜덤 생성우선 시작하기전에sangeun00.tistory.com위 글에서 나는 아이템 획득시 아이템을 저장할 인벤,슬롯의 개념을 만들게 되는데 이때 당시에는 이 슬롯을 UI가 아니라 그대로 이미지 3개를 갖다붙여 만들어버린다이때는 문제가 없을줄 알았으나 계속 게임을 해오면서 느낀게 이런 식으로 오브젝트끼리 겹치거나, 심지어 겹치지 않을때도 자주 아이템 클릭이 되지 않는것을 발견할 수 있었다이게 도대체 왜이러나 싶었지만 바로 아이템 슬롯을 UI가 아닌 아이템과 똑같은 이미지로 설정해서 그런것이었다 그리고 굳이 클릭이 안되고 이..

(24) 아이템으로 패배판정 & 아이템 획득 & 충돌판정

이번엔 아이템을 확실하게 짚고 넘어가보려고 한다. 지금까지는 단순하게 아이템의 기능구현에 대해서만 다뤘지만이번글에는 아이템 역시 일반 발사구체처럼 충돌판정이 일어나내구도를 깎기도, 패배판정을 내기도, 아이템 획득도 하도록 하겠다 시작하기전에 간단한 수정부분을 한가지 적고 가겠다 private void Update() { if (Input.GetMouseButtonDown(0)) { clickPosition = Camera.main.ScreenToWorldPoint(Input.mousePosition); clickPosition.z = 0f; Collider2D[] colliders = Physics2D.OverlapPointAll(clickPosi..

(23) 일시정지 기능 & 인트로씬 보완

핵심 기능구현은 전부 끝내놓은 시점에서 사실상 지금은 계속해서 보완하고 자잘한 기능들을 추가하는 단계이다 이번글에서는 일시정지 버튼을 눌렀을때 실제로 게임을 일시정지 시키고, 맨 처음 나오는 인트로씬을 보완해보겠다 (17) 개인 프로젝트 - inGame Scene #Pause모든 씬들이 전부 연결된줄 알았지만 한가지 놓친게 있었다. 바로 인게임씬과 다른 씬들과의 연결이었다. 아이템에 본격적으로 넘어가기전에, 다른 모든걸 전부 구현을 시키고 넘어가고 싶기에sangeun00.tistory.com위 글의 보완내용이다인게임화면 우측 가운데 보이는 일시정지 버튼을 누르면 일시정시 창이 활성화되지만정작 화면뒤에 보이는 오브젝트들은 정지되지 않고 계속해서 진행중이다 우선 일시정지 버튼을 누르면 게임이 정지되고, x버..

(22) 인트로씬 & Json 응용 연습

이번엔 임시로 쓰일 인트로씬을 만들고 Json으로 스테이지를 만드는 연습을 해보겠다 게임을 실행하면 나오는 회사만의 로고들을 나도 만들어보겠다 그림판으로 그린 귀여운 로고. 핸드폰 비율에 맞춰 1920X1080으로 틀을 맞춘뒤 그렸다쓰일 그림을 그렸다면 새로운 씬(Intro Scene)을 만든뒤 UI로 이미지를 붙여주자 using UnityEngine;using UnityEngine.UI;using System.Collections;using UnityEngine.SceneManagement;public class FadeInOut : MonoBehaviour{ public Image image; public float fadeTime = 2f; void Start() { ..

싱글톤 (Singleton Pattern)

싱글톤 : 프로그래밍 디자인 패턴 중 추상 객체 인스턴스 생성 패턴중의 하나로  1. 게임 시스템에서 전체를 관장하는 스크립트(단일 시스템 자원 관리 차원)2. 게임 시스템상 전역 변수의 역할을 하는 스크립트3. 씬 로드시 데이터가 파괴되지 않고 유지4. 여러 오브젝트가 접근을 해야 하는 스크립트의 역할5. 단 한개의 객체만 존재 이렇게 5가지의 특성을 지니고 있다 특히 3번 같은 경우 새로운 씬을 로드하더라도싱글톤만큼은 다른 변수들처럼 파괴되는것이 아닌 자신이 가진 데이터들을 함께 유지한다  using System.Collections;using System.Collections.Generic;using UnityEngine;public class GameManager : MonoBehaviour{ ..

Json + Excel 응용(JsonUtility)

원래는 쭉 Json.Convert로 사용할 생각이었지만 아무리 생각해도지금 상황에서 더 편해보이는 JsonUtility를 사용하지 않을 이유가 없을것같다 그리고 후에 볼 수도 있으니 정리글을 간략하게나마 적어보려 한다 public class test1 : MonoBehaviour{ class Data { public int id; public string name; public int count; } void Start() { Data fruit = new Data() { id = 101, name = "apple", count = 3 }; //Json으로 변환 string jsondata = JsonU..

유니티/Json 2024.04.26

Json + Excel 응용(Json.Convert)

json생각보다 의미 자체나 활용은 어렵지 않지만 중요한 내용이기에 꼭 확실하게 짚고 넘어가야하는 json이다 json : 웹이나 네트워크에서 서버와 클라이언트 사이에서 데이터를 주고 받을 때 사용하sangeun00.tistory.com우선 json에 대한 아주 기본적인 설명이다 그리고 패키지 매니저에서 Newtonsoft Json이 설치되었는지 확인하자  이제 엑셀과 제이슨을 유니티에 응용하는 과정을 살펴보자그전에 유용하게 쓰일 사이트들부터 소개하고 시작하겠다  Mr. Data Converter shancarter.github.io어떠한 형식의 문서를 집어넣어도 JSON 형식의 텍스트로 변환해주는 사이트(엑셀 -> JSON)  https://jsonformatter.curiousconcept.com/ ..

유니티/Json 2024.04.25

(21) 아이템 #아이템 밸런스 조절 & 기능구현

(20) 개인 프로젝트 - 아이템 #사용구현•구체 충돌 시 반사 •구체 정지 시 확장 •Deadzone •Firezone •발사 구현 •확장이 완료 시 고정 & 충돌 피해 X •구체 내구도 부여 & 내구도 소진시 구체 파괴 •사운드 이펙트 •메인 화면 & 환sangeun00.tistory.com 이제 아이템 아이콘을 클릭하면 해당 아이콘과 일치하는 프리팹이 다음 발사구체로 생성 되는것까지 구현하였다그전에 간단한 수정 하나만 하고 넘어가자 한가지 문제가 생겼다. 위 동영상처럼 아이템을 한번 사용하면 다음차례에도, 그 다음 차례에도계속 해당 아이템만 생성된다는것. (BallController 스크립트는 빼놓은 상태라 날아가진 않는다)  if (fireitem != null) ..

(20) 아이템 #사용구현

•구체 충돌 시 반사•구체 정지 시 확장•Deadzone•Firezone•발사 구현•확장이 완료 시 고정 & 충돌 피해 X•구체 내구도 부여 & 내구도 소진시 구체 파괴•사운드 이펙트•메인 화면 & 환경설정창•턴제 시스템•아이템 랜덤 생성 & UI•아이템 기능 구현•밸런스 조절 맨 처음 짜두었던 R&D 목록이다. 아이템 기능구현을 제외한 모든 목록들을 끝낸것을 확인할 수 있다 아이템이 대략 10개 정도 되니 10개의 기능들을 하나하나 전부 구현해야겠지만그 단계까지 필요한 과정들을 정리하고 시작하겠다 1. 아이템 아이콘 클릭시 다음 생성 구체는 해당 아이템2. 한턴에 여러 아이템을 클릭해도 다음 생성 구체는 마지막으로 클릭한 아이템3. 어떠한 클릭도 없다면 기본구체 발사 쉽게 말해 아이콘 클릭과 아이템 생..

(19) 아이템 #UI

시작하기 전, 고정구체 아이템은 디자인에 변화를 주었다. 기존 고정구체랑 완전히 똑같이 디자인을 가져가다보니플레이 도중에 너무 헷갈릴것 같다  (18) 아이템 #랜덤 생성우선 시작하기전에 아이템을 랜덤 생성시킬 스크립트는 어디에 들어가야할지부터 생각해보겠다 using System; using UnityEngine; public class GameManager : MonoBehaviour { public GameObject P1ballPrefab; public GameObject Psangeun00.tistory.com1. 10~15초마다 플레이 영역 한정 랜덤한 곳에 구체를 생성2. 그 구체는 내가 정해놓은 확률에 따라 구체의 이미지가 달라짐3. 내가 발사한 구체가 랜덤생성 구체에 충돌하는 순간 사라짐(..

반응형