분류 전체보기79 유니티 프로파일러(Profiler)를 이용해 성능 개선하기 게임을 만들 때 제일 골치 아픈 것은 최적화이다. 최적화가 정말 잘 된 게임, 이른바 갓적화인 게임은 낮은 성능의 컴퓨터로도 아주 섬세한 3D 그래픽을 60 프레임으로 표현할 수 있다. 반대로 최적화가 안 된 게임, 속된 말로 개적화 게임은 아주 단순한 2D 도트 그래픽 게임조차 엔비디아 RTX 그래픽 카드에서 40 프레임이 나오지 않을 수 있다. 물론 PUBG 같은 배틀 로얄 장르는 최적화를 잘해도 저사양 컴퓨터에서는 프레임 드롭이 심할 수 있다. 이는 타 장르에 비해 플레이어의 수가 많고 맵이 넓어서 처리해야 할 연산량이 많은 데다가, 실시간으로 게임을 진행하기 때문이다. 이러한 장르적 차이나 게임 시스템 상의 차이로 인해 피치 못하게 성능 저하가 일어나기도 한다. 그러나 이렇게 원인을 알 수 있는 .. 2020. 10. 4. 유니티 셰이더&렌더링 파이프라인 공부 내용 정리 참고 영상 : youtu.be/0XJWdNFnq50 해당 포스팅은 retr0님의 유니티 셰이더&렌더링 에센스 시리즈를 보고 공부한 내용을 정리하는 글입니다. CG에 관한 지식이 충분하지 않은 상태로 쓴 글이니 오류가 있으면 댓글로 지적해 주세요. 셰이더 셰이더(Shader)란? - 화면에 색을 칠하는(Shading) 프로그램이다. - 렌더링 파이프라인의 일부를 유연하게 변경할 수 있게 해 준다. 렌더링 파이프라인? - 정점으로 정의된 물체를 그려내는 과정을 렌더링이라 한다. - 화면 상에 그림을 그리는 과정을 여러 단계로 나누는 것이다. 작업을 수행하는 걸 파이프라고 하면 전체 과정은 여러 개의 파이프를 이은 것처럼 될 것이고, 이를 렌더링 파이프라인이라 부른다. 셰이더의 종류 - 버텍스 셰이더(Vert.. 2020. 9. 8. 랜덤 미로 생성 알고리즘 정리 이전 포스팅에서는 경어체를 사용했지만 긴 글을 쓰기에는 불편해서 낮춤말로 쓰려고 합니다. 이 점 양해 바랍니다. 동아리에서 미로에 관한 이야기를 하다가 동아리 선배가 미로를 생성하는 데에는 많은 알고리즘이 있다고 이야기했다. 나는 또 그런 이야기를 들으면 못 참는 성격이라서 직접 자료를 찾아보니, 당장 인터넷에만 해도 무려 한글(!) 미로 생성 알고리즘도 많아 놀라웠다. 참고할 만한 자료도 적당히 있어서 가볍게 공부하기에 적당한 주제인 데다가 도전 욕구를 자극하는 소재였다. 그래서 간단하게 유니티를 랜덤 미로 생성을 만들어보기로 했다. http://www.jamisbuck.org/mazes/ Maze Algorithms Maze Algorithms If you're interested in maze al.. 2020. 9. 8. 유니티 C# 싱글턴 패턴 + Lazy를 이용한 버전 2023.08.08 추가: 본문에 존재하는 코드(특히 Lazy를 사용한 코드!)는 충분히 검증된 코드는 아닙니다. 따라서 아이디어는 채용하되, 직접 복사-붙여넣기할 경우에 오류가 발생하지 않는다는 보장은 못 드립니다 ㅠ 1. 싱글톤이란? 싱글톤(Singleton)은 게임 개발 시 가장 많이 사용되는 패턴 중 하나입니다. 우선 싱글턴이 무엇인지부터 알아봐야겠지요. 오직 한 개의 클래스 인스턴스만을 갖도록 보장하고, 이에 대한 전역적인 접근점을 제공합니다.(『GOF의 디자인 패턴』 181쪽) 정의에 따르면 싱글톤은 단 하나의 클래스 인스턴스만을 갖도록 보장합니다. 전역적인 접근점을 제공한다는 것은 어디에서나 해당 클래스의 인스턴스에 접근할 수 있다는 뜻입니다. 유니티에 적용을 해보자면 게임을 관리하는 매니저.. 2020. 8. 30. 초심자를 위한 알고리즘과 자료구조 2편 - 알고리즘의 효율성, 시간 복잡도, 빅오 표기법(Big-O Notation) - 해당 글은 비전공자 혹은 개발 초심자를 대상으로 하는 글입니다. 다소 비전문적이고 구어체에 가까운 표현이 등장하더라도 양해 부탁드립니다. - 이번 글은 수학적 정의를 포함하고 있습니다. 최대한 쉽게 풀어쓰고자 노력했으나 이해하기 어려울 수 있습니다. 해당 글은 전 편의 내용과 이어집니다. 전편 보기 : https://dev-nicitis.tistory.com/2 초심자를 위한 알고리즘과 자료구조 1편 - 알고리즘 - 해당 글은 비전공자 혹은 개발 초심자를 대상으로 하는 글입니다. 다소 비전문적이고 구어체에 가까운 표현이 등장하더라도 양해 부탁드립니다. - 수학적으로 엄밀하지 않은 정의를 포함하고 dev-nicitis.tistory.com 이번 글에서는 알고리즘의 효율성, 시간 복잡도, 빅 O 표기법에.. 2020. 8. 27. 초심자를 위한 알고리즘과 자료구조 1편 - 알고리즘 - 해당 글은 비전공자 혹은 개발 초심자를 대상으로 하는 글입니다. 다소 비전문적이고 구어체에 가까운 표현이 등장하더라도 양해 부탁드립니다. - 수학적으로 엄밀하지 않은 정의를 포함하고 있습니다. 알고리즘이라는 단어는 누구나 한 번쯤 들어보셨을 겁니다. 컴퓨터 과학 관련 전공을 하신 분이나 개발 분야에서 일하시던 분은 물론이고, 유튜브를 즐겨보는 사람이라면 흔히들 "유튜브 알고리즘의 선택을 받았다"는 식의 드립으로 이야기합니다. 유튜브에서 이해할 수 없는 맞춤 동영상이 올라올 때 그런 말을 합니다. 내가 안 보던 분야의 동영상이 올라오기도 하고, 갑자기 한 번도 들어본 적도 없는 언어의 제목도 간혹 보입니다. 신기하게도 저는 동영상의 썸네일만 보고도 신기해서 곧잘 들어가곤 합니다. 그럴 때면 제가 유튜브.. 2020. 8. 18. VSCODE (Visual Studio Code) 자동 완성 기능이 안 될 때(2023.9.11 추가) 해당 글은 Vscode를 사용하는 유니티 C# 유저들을 위한 가이드입니다. 자동 완성이 안 될 때 참고해주시면 좋을 거 같아요. +++ 2023.9.11 추가: 먼저 읽어주세요!! 아래 내용은 22년도까지는 유효한 방법이었지만 지금은 Vscode에서 Unity를 제공하게 되면서 조금 사정이 달라진 것 같습니다. 이미 아시는 분들이 많으시겠지만 vscode의 익스텐션에 Unity가 추가되었습니다. 유니티에서 사용할 수 있는 Visual Studio Code 익스텐션으로 기존의 C#이 제공해주던 기능을 유니티에 특화하여 제공해주는 것으로 보입니다. 만약 해당 익스텐션이 설치되어 있지 않다 하시는 분들은 바로 설치해주시면 좋을 것 같습니다. Assets->Open C# Project를 눌러서 해결되었던 것들이.. 2020. 8. 12. 이전 1 ··· 6 7 8 9 다음