본문 바로가기
728x90

공부159

[JS] 내가 필요한 키워드 저장해두는 확장 만들기1 - 기본 구성 파악 유튜브에서 크롬 확장 프로그램을 만드는 영상을 봤더니 갑자기 나도 만들고 싶어졌다. 기왕이면 내가 필요한 기능을 넣어서 만들어보기로 했다.예를 들어, 나는 운동을 할때 비공개로 일기를 적어놓는다.제목을 년도와 날짜로 표시하는데 이걸 일일히 직접 작성한다. 아마 확장 프로그램으로 오늘의 날짜를 제목에 맞게 복사할 수 있다면 큰 수고를 덜 수 있을 것 같다.       이제 확장 프로그램을 제일 빨리 만들어 볼 수 있는 방법을 사용했다.바로 ChatGPT에게 물어보는 것이다.자바스크립트는 데이터가 많아서 그런지 쉽게 대답해준다. manifest.json확장의 메타데이터를 정의하며, 필수적인 파일입니다. 다음과 같은 정보를 포함합니다{ "manifest_version": 3, "name": "My Chro.. 2025. 1. 7.
NullReferenceException: Object reference not set to an instance of an object 문제 해결 (URP Missing RendererFeature) 발생한 문제는 아래와 같다. 이것만 봐서는 무엇이 원인인지 잘 모른다.NullReferenceException: Object reference not set to an instance of an objectOVRProjectSetupRenderingTasks+c.b__4_42 (UnityEngine.Rendering.Universal.ScriptableRendererFeature feature) (at Assets/Oculus/VR/Editor/OVRProjectSetup/Tasks/Implementations/OVRProjectSetupRenderingTasks.cs:311)System.Linq.Enumerable.Any[TSource] (System.Collections.Generic.IEnumera.. 2025. 1. 6.
[Devexpress Winform] 스프레드 시트 컨트롤 셀 대상 바꾸기 메세지박스 가로채기 Devexpress 의 SpreadsheetControl에서 셀 영역을 드래그해서 다른 셀에 드롭할 때, 두 영역 모두 값이 있었다면 "Do you want to replace the contents of the destination cells?" 라는 메세지 박스가 나오고 확인을 누르면 셀 대상 바꾸기가 된다. 문제는 이 기능이 Devexpress 라이브러리 내부에서 넣은 기능이라 외부에서 컨트롤할 수 없다.다행히 ReplaceService 함수를 통해 해당 기능을 중간에 가져올 수 있다고 한다.  how to intercept the spreadsheets control "Do you want to replace the contents of the destination cells?" message ?.. 2025. 1. 6.
[Devexpress Winform] GridView 에서 ValidatingEditor 이벤트때 변경 전 데이터 가져오기 GridView의 ValidatingEditor 이벤트에 있는 BaseContainerValidateEditorEventArgs에서는  변경된 후의 데이터만 가져올 수 있다. 이럴때는 GridView 인스턴스에서 ActiveEditor의 OldEditValue를 가져온다. 예를 들어, GridView gridView 가 있을 때,ValidatingEditor 이벤트 발생시변한 값이 변경 전 값과 같을 때 다른 작업을 하거나 넘길 수 있다.  gridView.ValidatingEditor += (s, e) => { string name = e.Value as string; if (gridView_Lamp.FocusedColumn.FieldName == "Validate할 column 필드이름.. 2025. 1. 5.
유니티 드로우콜(배치) 줄이기 - 그림자 설정 현재 VR 플랫폼으로 게임을 만들어보고 있다.테스트를 돌려보던 중 가끔씩 뚝 끊기거나 버벅이는 현상이 발생했다. 이유는 모르겠지만 드로우콜이 매우 많이 발생하고 있었다.플레이어가 바라보는 방향에 따라 9000개 정도 발생하기도 했다. 같이 작업을 하고 있는 동기가 빛이 비춰질 때 크게 발생하니 그림자가 원인인 것 같다고 했다. 이전에 씬에 새로운 오브젝트들을 배치하고나서 그림자가 많이 생겼으니 가능성이 있었다.     우선 맵에 있는 오브젝트를 모두 Static 을 체크했다.대부분 움직이지 않고 고정해둔 오브젝트이기 때문에 Map 이라는 이름의 빈 오브젝트에 두고 모두 정적 게임 오브젝트로 만들었다. 이러면 Batches를 큰 오브젝트 하나로 만들어 렌더링을 최적화한다는데, 문서만 봐서는 이해가 힘들고 .. 2025. 1. 1.
블렌더 두 그룹의 오브젝트 위치,크기 변경없이 합치기(부모관계 해제, 설정) 에셋의 기능을 추가하기 위해 블랜더로 모델링을 수정한 후 fbx로 내보냈는데 원본에 있던 타이어 모델링을 누락해버렸다.다시 만들기에는 원래 내 모델링이 아니고 이미 수정한 것이 많아서 다시 만들기도 애매한 상황이다.     결국 원본 fbx를 가져와서 겹쳐놓고 타이어 모델링만 쏙 빼서 합치기로 했다.     그런데 단순히 타이어 오브젝트를 (SUV001) 그룹 오브젝트에서 빼서 (SUV) 그룹으로 SHIFT + 드래그 앤 드롭으로 옮겨서 같은 위치에 두었으나, 면 아래와 같이 크기와 위치가 크게 어긋나버린다. 해당 타이어의 원래 부모 오브젝트를 기준으로 자리잡고 있었는데 그걸 벗어나면 문제가 생기는 것으로 보인다.    이를 해결하기 위해 우선 모든 오브젝트를 선택했다. 단순히 부모 오브젝트만 선택하면 .. 2024. 12. 28.
반응형