전체 글(295)
-
[SKKU DT] 77일차 -교통 시뮬레이터(Traffic Simulator) 만들기(3)
어제 만들었던 Editor 폴더 안에 스크립트 생성 TrafficHQEditor / TrafficHQEditorGizmo / TrafficHQInspectorEditor / TrafficIntersectionEditor / VehicleSettingEditor TrafficHQEditorGizmo 스크립트 작성 using System.Collections; using System.Collections.Generic; using UnityEngine; using System; using UnityEditor; using System.Linq; public static class TrafficHQEditorGizmo { //화살표를 그린다. 대각선 45도 방향 양쪽 2개 private static void ..
2024.02.22 -
[SKKU DT] 76일차 -교통 시뮬레이터(Traffic Simulator) 만들기(2)
TrafficHeadquarter 자율 주행차가 구간에서 구간을 이동할 때 다음 구간을 검색하기 위한 최소 거리 조절. 웨이포인트 크기 조정 가능 충돌체 레이어 관리 모든 구간을 갖고 있음 모든 교차로 갖고 있음 TrafficSegment 다음에 연결된 구간들 웨이포인트 갖고 있음 특정 위치를 중심으로 세그먼트 안에 있는지 검사 TrafficWaypoint 부모 Segment 스스로 충돌체 제거.(웨이포인트 충돌되면 안된다. 위치만 표시) 리프레쉬 기능 VehicleControl WheelDriveControl 갖고 있음 Headquarter 를 알고 있음 웨이포인트 검색 최소 거리를 갖고 있음 충돌 검출을 위한 Raycast를 갖고 있음.(부채꼴 모양으로 ray를 쏴서 충돌체 검출) 어플리케이션이 실행..
2024.02.21 -
유니티 태양광패널 디지털 트윈 프로젝트(5) -3D 에셋에 마우스 호버 시 정보 출력 기능 만들기
3D 에셋에 마우스를 올려놓았을 때 정보가 출력되거나 테두리 셰이더를 적용하는 기능을 만들어야 한다. 이 기능은 첫 번째 전국 지도 씬에서 3D 지도에 마우스를 올려놓을 때도 쓰이고, 마지막 솔라시도 씬에서 각 A, B, C, D 구역 별에서도 마우스를 올려 놓았을 때 정보 표시에도 사용된다. 먼저, 간단한 테스트를 위해 에셋을 놓고 Box Collider를 감싸서 마우스를 올려놓았을 때 Debug.Log가 출력되는 지 살펴본다. using System.Collections; using System.Collections.Generic; using UnityEngine; public class MouseEnterTest : MonoBehaviour { private void OnMouseEnter() { ..
2024.02.20 -
[SKKU DT] 75일차 -교통 시뮬레이터(Traffic Simulator) 만들기
백터의 내적(dot) Cube 생성 - 기본위치 sphere 생성 - (0, 0, -3) TestScript 생성 using System.Collections; using System.Collections.Generic; using UnityEngine; using TMPro; public class TestScript : MonoBehaviour { public TextMeshProUGUI textLabel; public Transform target; // Update is called once per frame void Update() { // 타겟 없이는 동작하지 않습니다. (실무에서도 꼭 주석을 달아준다.) if (target == null) { return; } // cube transform..
2024.02.20 -
[SKKU DT] 74일차 -C#, 유니티 팁 정리
시작은 무조건 Data. Data - Control - Viewer의 조합 Data에 대한 개념을 이해해야 한다. 구글 스프레드 시트의 데이터를 tsv 형식으로 받아와서 교통 시뮬레이션을 만들어서 사고가 났다면 교차로의 모든 신호등을 빨간색으로 바꿔서 차단하도록 만들어볼 것이다. 데이터를 기반으로 컨트롤하는 방식이다. 유니티 2021.3.27f1 설치 뒤에 프로젝트를 위해서 설치. 여러 팁들 *meta 파일에는 2048x2048, Mipmap 체크 등 텍스쳐라면 텍스쳐의 Inspector 정보가 들어있다. guid는 텍스쳐가 유니티에 들어갈 때 유니티에서 부여한다. **Asset Hunter (유료) https://assetstore.unity.com/packages/tools/utilities/asse..
2024.02.19 -
[SKKU DT] 73일차 -MySQL 데이터베이스, FastAPI
어제에 이어서, createTable로 text.contents 테이블 만드는 코드이다. import pymysql # orm 아님. from dotenv import load_dotenv import os load_dotenv(verbose=True) DB_HOST=os.getenv('DB_HOST') DB_USERNAME=os.getenv('DB_USERNAME') DB_PASSWORD=os.getenv('DB_PASSWORD') DB_NAME=os.getenv('DB_NAME') DB_PORT=os.getenv('DB_PORT') connection = pymysql.connect(host=DB_HOST, user=DB_USERNAME, password=DB_PASSWORD, database=DB_..
2024.02.16