[Git + UVCS] 잔디 왜 안심어짐?
열심히 살고 있는데 억까가 심해요.
- 별 잡다
- · 2025. 10. 22.
뭔가 한창 달리고 있다가,쌩 프로그래밍 출발점 - [뭔가 있는 듯 없는 듯 비어있음] - 유니티 게임 개발자 이 상황인 것 같아서 글 하나에 정리하려고 한다. C#이라는 걸 제외하면 OOP나 3D 수학은 다른 엔진에 가서도 충분히 활용처가 있을 것이라고 생각한다.. 즉각즉각 답 할 수 있게 제대로 기억하기3D 수학Vector의 외적/내적 정의내적 : 한 벡터를 다른 벡터에 투영한 크기를 말한다. 핵심은 두 벡터가 얼마나 같은 방향을 보느냐?결과는 -1 ~ 1 사이에서 나올 수 있는데, 1에 가까우면 같은 방향, 0은 완전한 수직, -1로 갈수록 완전히 다른 방향이다. abs(A) * abs(B) * cos(theta)벡터를 가질 수 있는 두 객체 사이에서의 방향 관계를 정의 할 때 사용 할 수 있다.외적..
ㄴㄴ 그런거 없음. 가상 메모리를 기깔나게 관리하는건 좋지만, 왠만하면 우리는 혼자 일하는게 아니다. 유지보수성, 가독성, 다양한걸 고려해야하고, 그래서 트레이드오프를 논하는 것이다.가상 메모리 친화적 코딩하기주의!! 이걸 다 지켜서 프로그램을 만들었다면 그 프로그램은 미래가 없다. 이건 항상 따라야 할 코딩 표준이 아니니, 진짜 문제가 있는 범위에 신중히 쓰자. 페이지 단위 접근 최적화: 데이터 접근이 4KB 페이지 경계를 넘지 않도록 설계한다.단점극심한 코드 복잡도 증가: 프로그래머가 논리적 데이터 구조가 아닌, 하드웨어의 물리적 페이지 경계라는 임의의 기준에 맞춰야한다.시스템 의존성: 페이지 크기는 시스템 아키텍처나 설정에 따라 달라질 수 있다. 4KB에 하드코딩된 최적화는 다른 환경에서 무용지물이..
가상 메모리는 밥 벌어 먹고 사는데 정말 잘 공부해야겠다고 느낀다. 기본 개념메모리를 관리 할 때는 실제 메모리에 담겨있는 내용이 있고 또 그 메모리에 접근 할 주소로 나누어진다. 우리는 주소를 논할 것인데, 이 주소는 물리 주소와 가상 주소를 구분하는데에서 출발한다.물리 주소는 컴퓨터의 램에 있는 실제 주소를 말한다. 하드웨어적으로 정해진 진짜 주소이다.가상 주소는 CPU나 프로그램이 사용하는 논리적인 주소이다.게임과 연결시켜 이야기를 해보겠다. 게임을 실행하면 운영체제는 프로세스라는 독립된 실행 단위를 만든다. 운영체제는 이 프로세스에게 PC에 장착된 램을 온전히 다 쓰는 것처럼 행하도록 가상 주소 공간을 배정한다.게임의 코드 내에서 변수 선언이나 객체를 생성 할 때, 이 내용들은 가상 주소 어딘가에..
문제 상황 : Waypoint 들을 인식하는 간단한 경로 확인 AI를 만들었는데, 모델이 바뀌었을 때 제대로 대응하지 못하는 상황 발생. 모델 본연의 문제인가 했지만 닿는다는 부분은 육안 상 별 문제가 없었던 점에 착안하여 작동 방식이 유사한 코드 교체로 해결하였다.문제 재현 : 하루 왠 종일 Node 하나 두고 드리프트만 하고 있음 에셋의 3D 모델 자체의 문제인가 싶었지만 현재 만들고 있는 로직 자체와 도착 판정 거리의 상호작용이 영 시원찮아서 충분히 발생 할 수 있었던 문제였다.문제가 있었을 때의 스크립트는 두 개를 동시에 처리 했다 : 회전과 전진.이 내용의 문제는 차가 targetPosition 에 가까워지지만, 정확히 향하진 않고 turnSpeed 에 따라 회전 중인 셈이다. 이 때 아래 코..
열심히 살고 있는데 억까가 심해요.
GC.Alloc의 핵심은 힙에 덜 쌓기이다. 근데 힙에 덜 쌓으면 모든 문제가 해결되는건 아니다. 힙에 덜 쌓음으로써 만들어지는 다양한 트레이드오프를 글에서 논해보자.2025.10.16 - [컴퓨터 이론/Unity] - Deepdiving Garbage Collection : GC #1 Deepdiving Garbage Collection : GC #1스크램블 또는 Python으로 프로그래밍을 시작한다음, 게임을 개발해보겠다는 마음에 학습 곡선이 그나마 나은 Unity를 시작하면 얼마 지나지 않아 GC의 중요함을 볼 수 있다. GC 관리는 중요한게 사hyeonistic.tistory.com 구조체 VS 클래스 : 복사 비용 대폭발대폭발이라는 워딩을 쓸 정도냐고? 그렇다..구조체는 값 복사로 동작하는데, ..