전체 글
-
최적화 - 15 (코드 수정 마무리)Galaxy Ball/5. 최적화 2024. 11. 13. 01:36
이제 정말 얼마 안남았다... 게임에 쓰인 대부분의 스크립트들이 한번 이상 최적화를 거치거나 확인했고마지막으로 남은 카테고리는 바로 멀티플레이다. 지금까지 늘 메인컨텐츠라고 생각하고 여겨온 싱글플레이에 개발을 집중해왔기에 멀티플레이는 계속 우선순위에서 미뤄오긴 했었다. 그렇기에 최적화도 맞지만 개발 마무리라고 하는것도 맞는 표현이겠다 void Update() { if (Time.time >= nextSpawnTime) { SpawnSphere(); nextSpawnTime = Time.time + Random.Range(minSpawnTime, maxSpawnTime); } } 우선 멀티플레이에서 아이템을 일정 텀..
-
최적화 - 14 (코드수정 #InvokeRepeating)Galaxy Ball/5. 최적화 2024. 11. 7. 20:25
이번에 해볼것은 싱글플레이 패배창을 관리하는 SPFailSceneManager코드이다 using System.Collections;using UnityEngine;using UnityEngine.SceneManagement;public class SPFailSceneManager : MonoBehaviour{ void Update() { StageGameManager stageGameManager = FindObjectOfType(); int randomnumber = Random.Range(1, 6); if (Input.GetMouseButtonDown(0)) { RaycastHit2D hit = Physics2D.Rayc..
-
최적화 - 13 (코드 수정 #SmoothDamp, #LateUpdate, #Awake)Galaxy Ball/5. 최적화 2024. 11. 5. 01:58
계속해서 코드 수정을 이어나가보겠다 이번글에서는 적 유닛에 대한 코드 수정을 이어나가보겠다using System.Collections;using System.Collections.Generic;using TMPro;using UnityEngine;using UnityEngine.SceneManagement;public class EnemyBulletControl : MonoBehaviour{ SPGameManager spGameManager; Rigidbody2D rb; BGMControl bGMControl; Vector2 lastVelocity; float deceleration = 2f; public float increase; private bool iscol..
-
최적화 - 12 (코드수정 #Canvas Group, #DOTween)Galaxy Ball/5. 최적화 2024. 10. 30. 02:51
지난글까지는 설정에서 건드릴 수 있는 부분들을 손봤다면 이번에는 코드들을 수정해볼 생각이다여러차례 만들었지만 이 게임은 게임개발을 배워나감과 동시에 만든 게임이기 때문에초창기에 만들어둔 코드들은 아무것도 모르고, 최적화를 염두조차 해두지 않고 만든 코드들이 대부분이다 그러니 이번엔 코드들을 싹 다 검토하고, 필요없는 코드들은 지워버리고, 최적화가 필요한 부분들은최적화를 해주고 코드를 수정해주는걸로 하겠다 가장 먼저 생각나는건 바로 페이드인 효과. 게임을 맨 처음 시작할때 새로하기든, 이어하기든 뭐든 눌렀을때화면이 검은색으로 페이드인 된뒤 알맞는 씬으로 로드되도록 하였는데 이게 컴퓨터에서는 부드럽게 페이드인 효과가 이루어지는데 폰에서는 대놓고 뚝뚝 끊긴다는것이 보인다는것..그렇다고 둘의 사양이 천지차이니 ..
-
(2) 챌린지 모드 수정Galaxy Ball/3. 싱글플레이 - 챌린지모드 2024. 10. 25. 18:02
챌린지 모드를 우선 구현이 되도록 만든뒤 정말 많은 시간이 지나고 나서 최적화라는것을 하게 되었고그 과정에서 꽤나 많은 변화들이 있었고, 챌린지 모드는 진행불가능한 상태가 되어버렸다 이 참에 그냥 의미도 없어보이는 챌린지 모드를 아예 없애버릴까도 고민이 많았는데...단순히 챌린지의 의미를 넘어 언제든지 가볍게 게임을 연습할 수 있는 모드이기 때문에 다시 한번다듬어서 만들어보기로 했다 우선 캔버스부터 정리해주자. 웬만하면 UI 요소들은 하나의 캔버스안에 넣어주는것이 가장 바람직하다 이제 챌린지모드의 핵심이 될 챌린지공을 컨트롤하는 스크립트를 다시 짜보겠다. 사실 이게 챌린지모드의 핵심이자 전부이기도 하다 using System.Collections;using System.Collections.Generic..
-
최적화 - 11 (설정수정★)Galaxy Ball/5. 최적화 2024. 10. 17. 20:10
2024.10.09 - [Galaxy Ball/5. 최적화] - 최적화 - 10 (설정 수정★) 최적화 - 10 (설정 수정★)안좋은 소식이 있다.. 최근에 핸드폰에다 다시 한번 빌드를 해본 결과....달라진게 없다...확실히 컴 유니티에서는 부드러워진게 체감이 되길래 진짜 끝난줄 알았는데 다시 원점이다 하지만 낙sangeun00.tistory.com 지난 글에 이어 계속해서 최적화를 해보도록 하겠다 Rigidbody Interpolation:Rigidbody2D의 Interpolation을 Interpolate 또는 Extrapolate로 설정하여 물리 기반 오브젝트의 움직임을 더 부드럽게 만들 수 있습니다.Dynamic Resolution:모바일 플랫폼에서는 동적 해상도(Dynamic Resolut..
-
최적화 - 10 (설정 수정★)Galaxy Ball/5. 최적화 2024. 10. 9. 23:13
안좋은 소식이 있다.. 최근에 핸드폰에다 다시 한번 빌드를 해본 결과....달라진게 없다...확실히 컴 유니티에서는 부드러워진게 체감이 되길래 진짜 끝난줄 알았는데 다시 원점이다 하지만 낙심하지말고 다시 방법을 찾을때까지 해보자! 지금부터는 순서 같은것 없이 최적화에 조금이라도 도움이 될 것 같으면 실행에 옮겨보겠다 그러고보니 최적화를 하고 나서 만든 실행파일은 찍어둔 로그들을 하나도 제거하지 않았었다 상황에 따라 Debug.Log 제거하는 법이미 어느정도 예상은 하고 있었지만 스크립트안에 찍힌 로그가 많을시 모바일 환경안에서는 CPU 사용량이 증가하여 성능에 영향을 준다고 한다 그리고 웬만한 로직보다 이 로그 연산이 더 무sangeun00.tistory.com 위에 첨부한 방법대로 찍은 로그들부터 제..
-
상황에 따라 Debug.Log 제거하는 법유니티/유니티 기능 2024. 10. 9. 18:54
이미 어느정도 예상은 하고 있었지만 스크립트안에 찍힌 로그가 많을시 모바일 환경안에서는 CPU 사용량이 증가하여 성능에 영향을 준다고 한다 그리고 웬만한 로직보다 이 로그 연산이 더 무겁다고 하는데 사실인지는 모르겠지만 중요한건 그 정도로 로그가 성능에 영향을 준다는것이다미 어느정도 예상은 하고 있었지만 스크립트안에 찍힌 로그가 많을시 모바일 환경안에서는 CPU 사용량이 증가하여 성능에 영향을 준다고 한다 그리고 웬만한 로직보다 이 로그 연산이 비용도 더 들고, GC도 많이 만든다고 한다사실인지는 모르겠지만 중요한건 그 정도로 로그가 성능에 영향을 많이 준다는것이다 그렇기에 이번엔 로그를 상황에 따라 제거하고 생성하는 방법에 대해서 알아보겠다using System;using UnityEngine;publ..