최근 티스토리에서 추가된 Namecard로 다크모드에서 색상이 올바르게 적용되지 않아 어색하게 보이는 문제점이 생겨 이를 제거하는 방법을 공유합니다. 위 이미지와 같이 다크모드에서 흰색 영역으로 매우 어색한것을 볼 수 있습니다. div[data-tistory-react-app="Namecard"] { display: none } 티스토리 스킨편집에서 CSS 영역에 위 코드를 추가합니다. 적용 후 새로고침하면 정상적으로 제거된것을 볼 수 있습니다.
나의 개발 일지
·
기타/소개 글
Contact. Email. vldkdhtudrjs@gmail.com Profile. essential-cod.super.site Blog. https://bonnate.tistory.com GitHub. https://github.com/bonnate Itch.io. https://bonnate.itch.io " data-ke-type="html">HTML 삽입미리보기할 수 없는 소스 My Development Diary.'나의 개발 일지' 블로그는 저의 개발 관련 학습과 성장 과정을 담은 공간입니다. 이 블로그는 '22.02.13일에 시작되어 현재까지 운영되고 있습니다. 모든 사람은 쉽게 학습할 수 있어야 합니다. 처음 개발을 시작할 때 기본적인 기능 ..
[정보처리기사] UI 설계
·
기타/정보처리기사
· 문제 풀기 HTML 삽입 미리보기할 수 없는 소스 블로그에 작성한 모든 내용을 퀴즈로 풀어보세요. 새 창에서 전체 화면으로 이용하시려면 [여기]를 누르세요. · UI UI(User Interface)의 개념 넓은 의미에서 사용자와 시스템 사이에서 의사소통할 수 있도록 고안된 물리적, 가상의 매개체 좁은 의미에서 정보 기기나 소프트웨어의 화면 등에서 사람이 접하게 되는 화면 UX(User eXperience)의 개념 제품과 시스템, 서비스 등을 사용자가 경험하면서 느끼고 생각하는 총체적인 경험 UI의 유형 CLI 정적인 텍스트 기반 인터페이스 (명령어를 텍스트로 입력) GUI 그래픽 반응 기반 인터페이스 (마우스나 태블릿을 이용) NUI 직관적 사용자 반응 기반 인터페이스 (터치인식, 음성인식 등) O..
[정보처리기사] 디자인 패턴 종류
·
기타/정보처리기사
· 문제 풀기 HTML 삽입 미리보기할 수 없는 소스 블로그에 작성한 모든 내용을 퀴즈로 풀어보세요. 새 창에서 전체 화면으로 이용하시려면 [여기]를 누르세요. · 생성 패턴 Builder(빌더) 복잡한 인스턴스를 조립하여 만드는 구조로, 복합 객체를 생성할 때 객체를 생성하는 방법(과정)과 객체를 구현(표현)하는 방법을 분리함으로써 동일한 생성 절차에서 서로 다른 표현 결과를 만들 수 있는 패턴 Prototype(프로토타입) 처음부터 일반적인 원형을 만들고, 그것을 복사한 후 필요한 부분만 수정하여 사용하는 패턴 기존 객체를 복사하여 객체를 생성 Factory Method(팩토리 메서드) 상위 클래스에서 객체를 생성하는 인터페이스를 정의하고, 하위 클래스에서 인스턴스를 생성하도록 하는 방식 상위 클래스..
[클라이언트 & 서버] 물리엔진 움직임 동기화
·
기타/기타
💻 작업 내용 유니티 클라이언트의 리지드바디 연산을 다른 클라이언트와 동기화 📑 개선 사항 플레이어가 도중 퇴장할경우 소유권을 해제해야함 플레이어가 도중 입장할경우, Room에 이미 존재하는 플레이어들의 모든 데이터를 받아 적용해야함
[클라이언트 & 서버] 다국어 지원, MySQL 비동기 쿼리
·
기타/기타
💻 작업 내용 유니티 리소스 다국어지원을 위한 별도의 Tool 제작 이전 버전보다 한 단계 업그레이드 된 형태 다국어 지원을 더욱 매끄럽게 하기 위한 언어 별 TextMesh 폰트 자동 변경 스크립트 [Socket + MySql] 비동기 쿼리 사용 This MySqlConnection is already in use. 클라이언트 서버 DB 관계에서는 비동기 쿼리 호출응답을 사용하여야 하는데, 멀티쓰레드 환경에서 오류가 발생하였고, 이를 해결하여 정리해봤습니다. 📺 오류 This MySqlConnection is already in use. 오 bonnate.tistory.com MySQL 비동기 멀티쓰레드 환경에서 공유변수 동시 사용 문제를 해결
[클라이언트 & 서버] RSA를 이용하여 안전하게 비밀번호 전송
·
기타/기타
💻 작업 내용 RSA 알고리즘을 이용하여 안전하게 비밀번호를 서버에 전송하여 유효성 검사 "안녕하세요"가 비밀번호일 때 이것을 RSA로 암호화하여 전송 후 서버는 이것을 복호화하여 평문으로 사용하도록 구현
[서버] 공공 오브젝트 동기화
·
기타/기타
💻 작업 내용 자체 소켓서버 구축 중 플레이어가 아닌 Scene에 배치된 공공 오브젝트의 트랜스폼을 동기화 기능 구현
[Windows11] 윈도우 시작프로그램 줄이는 방법
·
기타/useful things
시작 프로그램들은 컴퓨터 부팅 시 자동으로 실행되는 프로그램들로, 많은 시작 프로그램들이 있다면 부팅 속도가 느려질 수 있습니다. 따라서 필요하지 않은 시작 프로그램들을 제거하면 부팅 속도를 개선할 수 있습니다. ⚒️ 방법 1. 작업 관리자를 엽니다. 시작 프로그램들을 관리하기 위해 먼저 작업 관리자를 엽니다. 작업 관리자를 열기 위해서는 작업 표시줄에서 마우스 오른쪽 버튼을 클릭하고 "작업 관리자"를 선택합니다. 2. 시작 프로그램 탭으로 이동합니다. 작업 관리자가 열리면 좌측 탭 중 "시작 앱"을 클릭합니다. 이 탭은 현재 컴퓨터 부팅 시 자동으로 실행되는 프로그램들의 목록을 보여줍니다. 3. 불필요한 시작 프로그램들을 비활성화합니다. 시작 프로그램들 중에서 불필요한 프로그램들을 우클릭하고 "사용안함..
[Windows11] 윈도우 로그인 비밀번호 해제
·
기타/useful things
PC를 집에서 사용하는경우 컴퓨터를 부팅 후 시작할 때 로그인을 하는 과정은 꽤 불편할 수 있습니다. Windows11에서 비밀번호를 입력하는 과정을 스킵하는 방법을 정리하였습니다. 💬 작성 조건 운영체제가 Windows11에 맞게 작성된 글입니다. Windows에 연결되어있는 계정이 로컬계정이아닌 Microsoft 계정이어야합니다. 23.05.26 기준으로 작성된 글입니다. ⚒️ 방법 1. [시작버튼] + [R] 키를 눌러 실행창을 엽니다. 2. 실행창에서 netplwiz 를 검색합니다. 3. "사용자 이름과 암호를 입력해야 이 컴퓨터를 사용할 수 있음(E)" 를 체크 해제합니다. 😒 만약 "사용자 이름과 암호를 입력해야 이 컴퓨터를 사용할 수 있음(E)"가 보이지 않는경우 아래 과정을 수행합니다. A..
[Windows] 상대 경로로 바로가기 기능 만들기
·
기타/useful things
Windows의 바로가기 생성은 일반적으로 절대경로로 Link를 생성합니다. 프로젝트를 협업할 때 다른 PC에서 열리지 않는 문제가 발생할 수 있으며, 상대경로롤 바로가기 기능을 구현하면 이를 해결할 수 있습니다. 📺 미리 보기 원격지에서 바로가기를 실행하여 파일을 열고자하면, Windows에서는 바로가기를 만든 PC에서의 절대경로로 바로가기를 생성하기에 다른 PC에서는 이 바로가기가 열리지 않을 수 있습니다. 💬 서론 위 이미지와 같이 절대경로로 생성된 바로가기 링크를 상대경로로 바꾸어 모든 PC에서도 동일하게 동작하도록 만들어보겠습니다. 📖 방법 1. 공유하는 폴더 내부에 텍스트 파일을 생성합니다. 텍스트 문서를 생성합니다. 2. 해당 텍스트 문서를 엽니다. 3. 상대 경로로 실행할 파일 위치의 경로..
[깃허브] gitignore 예외처리
·
기타/개발 지식
gitignore는 파일을 무시하지만, 예외처리를 통해 특정 파일들은 추적 및 관리할 수 있게 합니다. 💬 서론 gitignore에서 무시된 특정 확장자 중 특정 폴더내의 모든 파일을 예외처리하고싶다면 다음과같이 작성할 수 있습니다. ⚒️ 작성 # 특정 폴더에 대한 gitignore 규칙 무시 !/CSharp_SocketServer/** !/CSharp_WebServer/** 파일의 맨 마지막에 작성하였습니다. !로 시작을 합니다. gitignore의 위치를 기준으로 예외처리할 경로를 작성합니다. 폴더명 하위 **는 해당 폴더의 모든 파일을 예외처리한다는 와일드카드입니다. ✅ 전체보기 해당 파일을 작성한 원본입니다. # Created by https://www.toptal.com/developers/gi..
[토탈 커맨더] 여러 이름으로 파일을 한번에 검색
·
기타/useful things
토탈 커맨더를 이용하여 파일을 검색할 때 여러 가지의 이름을 가지고 한 번에 파일을 검색할 수 있습니다. 이름 당 한 번씩 검색을 하지 않고 모든 결과를 한 번에 보여주어 매우 유용합니다. Total Commander - home www.ghisler.com ✅ 검색 1. 토탈 커맨더를 사용하여 검색창을 열어줍니다. Alt + F7을 누르면 검색창이 열립니다. 자신이 검색하고싶은 위치의 디렉터리를 클릭하고 Alt + F7을 누르면 해당 위치로부터 검색을 할 수 있도록 범위를 제한할 수 있습니다. 2. [Search for: ] 영역에 다음과 같은 규칙을 이용하여 여러개의 이름을 한 번에 검사합니다. 영역 사이에 ;(세미콜론)을 이용하여 검색하고자 하는 이름을 여러 개 넣어줍니다. 상점에서 물건을 구매할 ..
대학교 수업 개발 관련 과제들
·
기타/기타
[자바] 멀티미디어자바프로젝트II 최종 프로젝트
·
기타/univ. projects
GitHub - Bonnate/Java_Multimedia_Project_II: 대학교 3학년 2학기 자바 수업 대학교 3학년 2학기 자바 수업. Contribute to Bonnate/Java_Multimedia_Project_II development by creating an account on GitHub. github.com
[자바] 멀티미디어자바프로젝트II ch.10 연습문제
·
기타/univ. projects
package _1124_A; import javax.swing.*; import javax.swing.border.EmptyBorder; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; public class main extends JFrame { private JLabel mImageLabel; private ImageIcon[] mImages; private int mImageIndex; public static void main(String[] args) { main frame = new main(); frame.setVisible(true); } public main() { thi..
ZombieRun by Bonnate(PARK SEUNG GEUN) It is a simple FPS game where you use a gun and avoid zombies to reach your destination. bonnate.itch.io ZombieRun Game creation time: 12 hours Development Engine: Unity (URP, 2022) [Game Description] Lost in the dark mountains, you must climb to the top of the mountain to ask for help. Follow the path and move without dying. Use your gun to kill zombies and..
[유니티] 게임엔진응용실습 Unit5 프로젝트 - Tower Defense (Windows & Android)
·
기타/univ. projects
Tower Defense by Bonnate Tower, Defense bonnate.itch.io
[깃허브 데스크톱] 3. 협업, Branch
·
기타/개발 지식
깃허브의 Branch를 사용하여, 여러명의 개발자가 동시에 하나의 프로젝트를 개발하고, 마지막 단계에서 현 시점까지의 변경사항을 합쳐 프로젝트를 관리할 수 있습니다. 1. Branch 생성하기 깃허브 데스크톱에서 Branch를 생성하여 하나의 프로젝트를 복사하여 다른 사람이 별도의 프로젝트로 작업할 수 있도록 만들어줍니다. Branch > New Branch에서 이름을 적절히 정한 후 Publish합니다. (Publish 해야 다른 사람들이 볼 수 있음) 2. Branch를 나누어 작업하기 A라는 사람은 기존의 Branch인 main, B라는 사람은 새로 생성된 collaborator에서 작업을 합니다. 각자의 변경사항을 커밋합니다. 서로 각자의 Branch에 접근하여 변경사항을 즉시 적용해볼 수 있습니..
[깃허브 데스크톱] 2. 프로젝트 동기화 및 되돌리기
·
기타/개발 지식
개발을 이어서 하면, 수정사항이 생기고 이것을 다른 협업자에게 동기화를 시키거나 변경사항을 저장하기위해 업로드해야합니다. 간단한 방법으로 변경사항을 업로드하고, 동기화하는 방법을 알아보겠습니다. 프로젝트를 수정합니다 깃허브 데스크톱을 실행하면 변경 사항이 나열되며, 무엇이 변경되었는지 볼 수 있습니다(텍스트 및 이미지 등) 1. 직전 수정사항을 업로드하기 변경사항을 적고(필수) 설명을 작성(선택)한 후 Commit to main을 합니다. Push origin을 하여 푸쉬합니다. 2. 직전 수정사항(커밋 전 현재)중 일부를 되돌리기 특정 파일을 우클릭하고, Discard ... changes를 누르면 해당 파일에 대한 변경사항을 되돌릴 수 있습니다. 3. 이전 수정사항(커밋)으로 현재 프로젝트 전체를 되..
[깃허브 데스크톱] 1. 프로젝트 생성 및 업로드
·
기타/개발 지식
수 많은 개발자들이 사용하는 깃허브를 이용하여 프로젝트를 체계적으로 관리하는 방법을 간단히 살펴보겠습니다. 예전에는 깃허브를 커맨드 기반으로 사용했으나, 깃허브 데스크톱은 직관적이고 초보자들이 쉽게 접근이 가능할정도로 쉽고 간단하게 사용할 수 있습니다. 물론 커맨드 기반의 명령어도 사용이 가능합니다. 1. 깃허브 데스크톱 설치 GitHub Desktop Simple collaboration from your desktop desktop.github.com 깃허브 데스크톱 공식 홈페이지에서 깃허브 데스크톱 설치파일을 다운로드하고 설치합니다. 깃허브 아이디가 필요하며 회원가입(https://github.com/join)이 필요합니다. 깃허브 데스크톱을 설치하고, 로그인합니다. 2. 자신의 프로젝트(유니티 프..
package _1027_A; import java.util.*; // 키보드로 문자열을 4개 입력 받아 ArrayList에 삽입하고 가장 긴 이름을 출력하라. // 가장 긴 이름은 : Ashley public class Main { public static void main(String[] args) { ArrayList s = new ArrayList(); int index = 0, max = -1; for(int i = 0; i
[자바] 멀티미디어자바프로젝트II ch.06 연습문제
·
기타/univ. projects
package _1020_A; import java.util.Scanner; public class Main { public static Scanner keyboard=new Scanner(System.in); public static void main(String[] args) { String input; while(true) { System.out.print("입력하시오(종료:Z) "); input = keyboard.nextLine(); if(input.equals("Z")) { System.out.println("프로그램을 종료합니다!!"); return; } try { Integer.parseInt(input); System.out.println("숫자입니다!!"); } catch (Except..
[유니티] 게임엔진응용실습 Unit4 프로젝트 - Airplane Shooting (Space Invader)
·
기타/univ. projects
Space Invader by Bonnate Super simple arcade game You move through a designated path, in the meantime you have to destroy enemies and avoid walls in your path. Operation: The player automatically moves forward. W/D: Move up/down based on the direction of travel Move left/right bas bonnate.itch.io Super simple arcade game You move through a designated path, in the meantime you have to destroy ene..
[자바] 멀티미디어자바프로젝트II ch.05 연습문제
·
기타/univ. projects
import java.util.Scanner; enum Week { MON, TUE, WED, THU, FRI, SAT, SUN } public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); Week[] values = Week.values(); boolean flag; while (true) { System.out.print("요일을 입력하세요: "); String input = sc.nextLine(); flag = false; // case 1. 'XXX'를 입력하면, 종료시킨다. if (input.equals("XXX")) { System.out.println("프로그램을 종료합니다..
[자바] 멀티미디어자바프로젝트II ch.04 연습문제
·
기타/univ. projects
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 package _0922_B; public class Main { public static void main(String[] args) { //클래스를 생성할 때, Animal > Animal로 형변환(실제로는 하지 않음) Animal animal = new Animal(); //클래스를 생성할 때, Dog(자식 객체)를 Amimal(부모 객체)로 형변환을 하여 생성한다. //실제 인스턴스는 Dog이지만, Animal로 취급 Animal dog = new Dog(); //클래스를 생성할 때, Cat(자식 객체)를 Animal(부모 객체..