SKKU DT(84)
-
[SKKU DT] 78일차 -교통 시뮬레이터(Traffic Simulator) 만들기(4) 완성
타일 맵을 만들고 Segment를 [Ctrl + 좌클릭]으로 만들고 Waypoint를 [Shift + 좌클릭]으로 만든다. Intersection은 교차로에 [Alt + 좌클릭]으로 만든 후 콜라이더를 키워서 교차로를 덮는다. 각 Segment들은 Next Segments로 갈 수 있는 다음 세그먼트를 리스트로 추가한다. 신호등에는 Traffic Light Control 스크립트를 넣고 해당하는 Intersection을 끌어놓고 신호등 규칙에 따라 [Light Group ID]를 설정한다. 대각선 위치의 신호등에 같은 ID를 부여하면 된다. ID는 0은 쓰지 않고 1과 2를 사용해야 한다. 1을 써야 하는 지 2를 써야 하는 지는 밑에 추가로 설명했다. 교차로 전체에 TRAFFIC_LIGHT 타입을 선택..
2024.02.23 -
[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 -
[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