반응형

전체 글 76

[유니티] Update, FixedUpdate, LateUpdate 차이

https://iflife1124.tistory.com/4 유니티(unity) Update, FixedUpdate, LateUpdate 차이점Update, FixedUpdate, LateUpdate 차이점 Update() Update는 프레임마다 한번씩만 호출이 되는 기본적인 업데이트 입니다. FixedUpdate()FixedUpdate는 Update보다 자주 호출이 되는 경우가 있습니다.프레임 속도가 낮iflife1124.tistory.com  물체를 따라가는 카메라와 같은 경우에는 물체가 이동한 후 카메라가 움직일 수 있도록 LateUpdate를 사용하는 것이 좋다.

[구글 플레이 콘솔] '결제 프로필에 문제가 있음'과 앱 이전 과정 (2)

이전이 완료 되었는데 애드몹은 결국 옮겨지지 않았다. 애드몹에 앱 추가를 다시 하고 새로 광고 단위를 만들어 주었다. 예전 애드몹 계정은 오류를 일으킬 수 있을 것 같아서 없앴다. 전에 검색해보니 광고 단위 아이디가 2개 인식되면 애드몹이 정지될 수도 있다고 봤다. 애드몹에 있던 수익도 그냥 날렸다.... 어차피 정산 기준인 100달러도 안 넘었긴 하지만 아깝다. 이전하기 전에 있던 인 앱 결제 수익은 그대로 옮겨져 왔다. 클라우드는 잘 된다.

프로그래밍/AOS 2024.02.08

[구글 플레이 콘솔] '결제 프로필에 문제가 있음'과 앱 이전 과정

앱을 출시하고 수익이 난 상태인데 이런 알림이 떴다. 그리고 나는 저런 메일이 오지 않았다. 검색을 해보니 저 본인 확인을 할 때 여러 서류를 제출해야 하는데 이때 결제 프로필을 잘못 생성했다는 것을 깨달았다. 우리는 개인 사업자라 개인 계정으로 결제 프로필을 생성해야 하는데 기업 계정으로 만든 것이다.... 우리도 회사니까 기업인줄 알았지.... 암튼 결제 프로필은 수정이 안 된다. 구글에 물어보기도 하고 검색도 해봤는데 앱 이전 밖에 답이 없었다. 결제 프로필을 삭제하고 다시 만들면 되지 않나? 고 생각했지만 결제 프로필을 삭제하면 앱과 연결된 수익도 삭제된다. 결론은 새로운 구글 아이디를 만들고 그 아이디로 개발자 계정을 만들어 앱 이전을 하면 된다는 것이다. 이러면 개발자 계정 등록 수수료를 또 ..

프로그래밍/AOS 2024.02.06

[홍정모의 게임 만들기 연습 문제 패키지] 1.2 과제

class Homework1 : public Game2D { public: float time = 0; void update() override { setLineWidth(3.0f); // 태양 beginTransformation(); scale(0.4f, 0.4f); rotate(time * 90.0f); drawFilledStar(Colors::gold, 0.5f, 0.3f); endTransformation(); // 지구 rotate(time * 90.0f); translate(0.8f, 0.0f); scale(0.25f, 0.25f); drawFilledCircle(Colors::blue, 0.4f); // 달 rotate(time * 90.0f); translate(1.0f, 0.0f); dr..

[홍정모의 게임 만들기 연습 문제 패키지] 1.3 과제 1번

#pragma once #include "Game2D.h" using namespace std; namespace jm { class MyTank { public: vec2 center = vec2(0.0f, 0.0f); //vec2 direction = vec2(1.0f, 0.0f, 0.0f); void draw() { beginTransformation(); { translate(center); drawFilledBox(Colors::green, 0.25f, 0.1f); // body translate(-0.02f, 0.1f); drawFilledBox(Colors::blue, 0.15f, 0.09f); // turret translate(0.15f, 0.0f); drawFilledBox(Colors..

[유니티/C#] 여러 개의 오브젝트 풀링 구현하기 (Dictionary 사용)

던전에 사용할 총알을 오브젝트 풀링으로 구현하였다. 플레이어 총알과 몬스터 총알을 나누기 위해 만들었다. SerializeField인 ObjectPoolingPrefabs에 총알 프리팹을 넣어주면 프리팹 이름을 통해 오브젝트를 분류한다. 나는 싱글톤으로 DungeonManager를 생성해 그 안에 이 코드를 넣어주었다. Awake나 Start에 InitializeObject 함수를 넣어줘야 한다. [SerializeField] private GameObject[] ObjectPoolingPrefabs; private Dictionary poolingObjectPrefabs = new Dictionary(); private Dictionary poolingObjectQueues = new Dictionar..

[유니티/C#] 책 UI 만들기

위와 같은 책을 만들어보자. 구조는 이렇게 되어 있다. public class RecipePanel : MonoBehaviour { public List recipePages; // 페이지를 저장해둘 리스트 int pageIndex = 0; // 현재 페이지 인덱스 public GameObject frontPageButton; // 누르면 앞 페이지로 이동하는 버튼 (왼쪽) public GameObject backPageButton; // 누르면 뒤 페이지로 이동하는 버튼 (오른쪽) public GameObject pages; // 페이지를 담아둘 부모 오브젝트 public GameObject pagePrefab; // 페이지 프리팹 // 레시피북을 여는 버튼을 눌렀을 때 public void OnRec..

[유니티/C#] Content 크기에 맞춰 늘어나는 Scroll View 만들기(유동적인 Scroll View)

왼쪽에 보이는 것과 같은 스크롤 뷰를 만들어보자. 퀘스트 페이지는 이런 식으로 구성되어 있다. Page2는 오른쪽에 표시되는 내용들이 담겨 있다. foreach (var p in GameManager.instance.ongoingQuests) { foreach (var oq in p.Value) { GameObject tempSlot = Instantiate(questSlotPrefab, ongoingQuestContents.transform); tempSlot.GetComponent().UpdateSlot(GameManager.instance.quests[oq.NPCName][oq.QID]); } } 인벤토리 만드는 것과 비슷하다. public GameObject 선언해서 프리팹 담아주고 (questS..

[유니티 2D/C#] 탑다운 뷰에서 아이템이 바닥에서 튕기는 연출 만들기

탑다운 뷰에서 아이템이 바닥에 튕기도록 만들어보자. 비어있는 게임 오브젝트를 하나 만들고 오브젝트 안에 아이템 스프라이트와 가상 바닥을 넣어주었다. 탄성을 넣어야 하기 때문에 project 창에서 우클릭 - Create - 2D - Physics Material 2D를 눌러 만들어준다. https://docs.unity3d.com/kr/530/Manual/class-PhysicsMaterial2D.html 물리 머티리얼 2D(Physics Material 2D) - Unity 매뉴얼 Physics Material 2D 는 2D 물리 오브젝트 간에 충돌이 발생할 때 일어나는 마찰과 탄성을 조정하기 위해 사용합니다. 에셋 메뉴에서 물리 머티리얼 2D를 생성할 수 있습니다(Assets > Create > Ph..

[유니티/C#] csv 파일을 원하는 타입으로 읽기(Generic 사용)

string LINE_SPLIT_RE = @"\r\n|\n\r|\n|\r"; public List ReadCSV(string fileName) where T: CSVData, new() { List list = new List(); var data = Resources.Load(path + fileName) as TextAsset; string[] lines = Regex.Split(data.text, LINE_SPLIT_RE); for (int i = 1; i < lines.Length - 1; i++) { string[] values = lines[i].Split(','); for (int j = 0; j < values.Length; j++) { string value = values[j]; val..

반응형