목록전체 글 (147)
오보에블로그
1인칭 시점으로 보이게끔 하기 위한 조건 키보드 제어가 가능해야한다. 마우스로 카메라 방향 전환이 가능해야한다. 마우스로 방향이 조절 되어있을 때, y 축 회전 방향으로는 키보드 제어로 인한 전진시 적용이 되어야하지만, x 축 방향 회전시 키보드 제어를 하면 위로 올라가거나 아래로 내려가므로 막아 놔야한다. void MouseRoatate() { float yRotateSize = Input.GetAxis("Mouse X") \* mouseSpeed; float xRotateSize = -Input.GetAxis("Mouse Y") \* mouseSpeed; transform.localRotation \*= Quaternion.Euler(0.0f, yRotateSize, 0.0f); mainCamera...
Shader 언어란 Shader 프로그래밍을 편하게 할 수 있게 만든 언어 도메인 특화 언어(DSL)라고 불러도 되는걸까? Cg(C for graphics) NVIDIA에서 개발한 상위 레벨 쉐이딩 언어. OpenGL/DirectX 모두 호환된다. HLSL(High Level Shading Language) DirectX에서 지원하는 셰이더 언어. GLSL(OpenGL Shading Language) OpenGL에서 지원하는 셰이더 언어. 개발자가 그래픽스 파이프라인을 직접 제어할 수 있는 언어 여러 운영체제 간의 호환성을 지원 쉐이더라고 쓰니까 빨간줄이 뜨네..

아래의 사진과 같이 레포지터리 루트에 유니티 프로젝트가 바로 있는 것이 아닌, 루트에 유니티 프로젝트 폴더가 있는 구조라면, Github에서 제공하는 Unity 용 .gitignore가 잘 먹히지 않는다. 원본 .gitignore에는 Library , Temp .. 의 폴더를 무시하라고 명시되어 있지만, 트래킹 되고 있는 상황 해당 부분을 아래처럼 바꿔주자. 그러면 루트 폴더 자체가 유니티 프로젝트가 아니어도 .gitignore가 제대로 동작한다. 그 후에 .gitignore만 push 한다. 꼭 git fetch 를 해줘서야한다. 유니티 프로젝트를 push한다.
소스트리에서 git pull 진행시 충돌이 발생하면 이전에 있던 내용을 commit 한 후에 다시 git pull 을 진행해준다. 그 후에 푸시!
자동 줄 바꿈 ON/OFF : alt + z
문제 상황 develop 브랜치에서 pull 받은 개인 브랜치(obo_branch)에서 작업을 하다가 커밋 후 push를 했다. 병합 요청을 하려고 소스 트리 내역을 확인해보니 내가 수정한 파일이 develop에서 이미 수정이 되어있어서, 내 브랜치가 병합이 되면 충돌될 우려가 있었다. 그래서 git push 한 부분을 돌려서 develop 브랜치를 pull 받고, 다시 git push를 해야하는 상황 해결 방법 소스트리에서 돌아가길 원하는 이력을 클릭한뒤에 이 커밋까지 현재 브랜치를 초기화를 클릭한다.(문제 상황에서는 develop 브랜치에서 pull 받은 지점까지 초기화 진행) 그 후에 나의 개인 브랜치에 develop 브랜치를 pull 받는다. 변경한 내용을 수정한다. push 한다 여기서 push..
디자인 패턴 디자인 패턴이란? 코드를 작성할 때 세부적인 구현 방식을 설계할 때 전형적으로 사용되는 해결 방식 또는 구조를 말한다. 싱글톤 하나의 객체를 생성하면 생성된 객체를 어디서든 참조 가능 클래스 내에서 인스턴스가 하나 뿐임을 보장 팩토리 메소드 객체 생성을 서브 클래스에서 처리하도록 분리하여 캡슐화한 패턴 상위 클래스에서는 인터페이스만 정의, 서브 클래스에서 실제 생성 담당 프로토 타입 원본 객체를 복제하는 방법으로 객체 생성 어댑터 호환성이 없는 클래스들의 인터페이스를 다른 클래스가 이용할 수 있도록 변환해주는 패턴 브리지 기능과 구현을 두개의 별도 클래스로 분리 옵저버 한 객체의 상태가 변화하면 객체에 상속되어 있는 다른 객체들에게 변화된 상태를 전달하는 패턴 ex ) 키보드 키 입력 시 키..

세계적으로 가장 유명한 자율주행 오픈소프트웨어인 Autoware. 현재 ROS2기반인 Autoware.auto를 개발 중이다. ( Autoware.ai는 ROS1) 회사 업무에서 Autoware.auto 관련 공부 및 시뮬레이터와 연동하는 일을 맡아서, 해당 오픈 SW를 사용하던 중에 제어 예제 코드에서 오타가 있는 것을 발견했다. 나처럼 헤매는 사람이 적어지길 바랬어서, 해당 레포에 이슈를 올렸고, MR을 보내 나보고 직접 해당 부분을 고쳐달라고 답장을 보내주셨다...! (처음엔 MR이 뭐지하고 찾아보니까 깃랩의 MR은 깃헙의 PR과 같은 의미라고한다.) 확실히 MR 을 하기위한 순서가 복잡했다. 이때 깃랩에서 CI 라는 걸 처음 해봤는데, 미리 빌드를 해서 오류가 발생하는지 체크하는 기능이라고 한다...