분류 전체보기
-
[Unity] 스프라이트 시트(아틀라스)를 사용하는 이유Dev/Unity 2025. 1. 17. 16:46
위 사진은 이미지에 따른 게임 stats 창이다. "1번 -> 2번"으로 갈 때와 "1번 -> 3번"으로 갈 때의 차이를 보면 똑같이 이미지가 1개 추가됐지만 Batches 값이 다른 것을 볼 수 있다.먼저, Batch와 드로우 콜에 대해 알아보자.1. 드로우 콜(Draw Call)CPU → GPU 명령드로우 콜은 “이 오브젝트를 그려라”라는 명령을 CPU가 GPU에게 전달하는 과정을 의미한다.한 번의 드로우 콜이 발생할 때마다 CPU와 GPU 사이에 통신 비용이 들기 때문에, 드로우 콜이 많아질수록 전체 성능(프레임률)에 부담이 된다. 2. 배치(Batch)여러 오브젝트를 한 번에 묶어 그리는 것Unity에서 “Batch”는 “한 번에 그려질 오브젝트 그룹”을 의미한다.배치 1개 = 일반적으로 드로우 ..
-
[Unity] 캐릭터 대각선 이동 시 속도 증가 문제Dev/Unity 2024. 11. 28. 10:54
캐릭터 이동 방법 1. Position 이동using System.Collections;using System.Collections.Generic;using UnityEngine;public class ExampleClass : MonoBehaviour{ public float moveSpeed = 5f; void Update() { if (Input.GetKey(KeyCode.W)) { transform.position += Vector3.forward * Time.deltaTime * moveSpeed; } if (Input.GetKey(KeyCode.S)) { transform.po..
-
[C++] 1991번 트리 순회Algorithm/Baekjoon 2024. 11. 20. 10:21
문제https://www.acmicpc.net/problem/1991 코드#include #include #include using namespace std;// 트리를 저장할 그래프 자료구조// 각 노드는 문자로 표현되며, 해당 노드의 자식 노드들을 저장unordered_map> graph;// 전위 순회 함수 (Preorder Traversal)// 현재 노드 -> 왼쪽 자식 -> 오른쪽 자식 순으로 순회void preorder(char node) { if (node == '.') return; // 현재 노드가 비어있다면 종료 cout 현재 노드 -> 오른쪽 자식 순으로 순회void inorder(char node) { if (node == '.') return; // 현재 ..
-
[C++] 1987번 알파벳Algorithm/Baekjoon 2024. 11. 20. 09:34
문제https://www.acmicpc.net/problem/1987 코드#include #include #include #include using namespace std;// DFS를 사용하여 보드에서 가능한 가장 긴 경로의 길이를 찾는 함수int dfs(const int& r, const int& c, const vector& board) { // 이동 방향: 상, 하, 좌, 우 int dx[] = { -1, 1, 0, 0 }; int dy[] = { 0, 0, -1, 1 }; // DFS에 사용할 스택. 각 요소는 (x, y, mask, length)를 나타냄 stack> s; int ret = 0; // 최대 길이를 저장할 변수 // 초기 상태: (0,..
-
[C++] 1967번 트리의 지름Algorithm/Baekjoon 2024. 11. 1. 16:29
문제https://www.acmicpc.net/problem/1967 코드#include #include #include #include using namespace std;// BFS를 통해 시작 노드 v에서 가장 먼 노드와 거리를 반환pair bfs(int v, const int n, const vector>>& graph) { queue q; vector visited(n + 1, -1); // 방문 여부 및 거리를 저장하는 배열 (초기값 -1) q.push(v); visited[v] = 0; // 시작 노드는 거리가 0 // BFS 수행 while (!q.empty()) { v = q.front(); q.pop(); // 현재 노드 v와 연결된 모든 노드 탐색 for (const ..
-
[MySQL] 카테고리 별 상품 개수 구하기Algorithm/Programmers 2024. 10. 28. 19:04
문제https://school.programmers.co.kr/learn/courses/30/lessons/131529 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 풀이-- PRODUCT 테이블에서 제품 코드의 앞 두 자리를 추출하여 카테고리별로 제품 수를 계산하는 쿼리SELECT SUBSTRING(PRODUCT_CODE, 1, 2) AS CATEGORY, -- 각 카테고리에 속하는 제품의 개수를 세어 'PRODUCTS'라는 별칭을 부여 COUNT(*) AS PRODUCTSFROM PRODUCT-- 앞 두 자리로 나눈 카테고리별로 그룹화GROUP BY CATEGORY..
-
[MySQL] DATETIME에서 DATE로 형 변환Algorithm/Programmers 2024. 10. 28. 18:57
문제https://school.programmers.co.kr/learn/courses/30/lessons/59414 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 풀이-- ANIMAL_INS 테이블에서 동물 ID, 이름, 입소 날짜를 조회하는 쿼리SELECT ANIMAL_ID, NAME, -- DATETIME 필드를 'YYYY-MM-DD' 형식의 문자열로 변환하여 '날짜'라는 별칭을 부여 DATE_FORMAT(DATETIME, '%Y-%m-%d') AS 날짜FROM ANIMAL_INS-- 결과를 ANIMAL_ID를 기준으로 정렬ORDER BY ANIMAL..