Implement road edge settings and types for scene paths
This commit is contained in:
@@ -11,6 +11,21 @@ export interface ScenePathPoint {
|
||||
}
|
||||
|
||||
export type ScenePathCurveMode = "linear" | "catmullRom";
|
||||
export type ScenePathRoadEdgeKind = "curb" | "softShoulder" | "bank" | "ditch";
|
||||
export type ScenePathRoadEdgeSide = "left" | "right";
|
||||
|
||||
export interface ScenePathRoadEdgeSettings {
|
||||
enabled: boolean;
|
||||
kind: ScenePathRoadEdgeKind;
|
||||
width: number;
|
||||
height: number;
|
||||
materialId: string | null;
|
||||
}
|
||||
|
||||
export interface ScenePathRoadEdgesSettings {
|
||||
left: ScenePathRoadEdgeSettings;
|
||||
right: ScenePathRoadEdgeSettings;
|
||||
}
|
||||
|
||||
export interface ScenePathRoadSettings {
|
||||
enabled: boolean;
|
||||
@@ -20,6 +35,7 @@ export interface ScenePathRoadSettings {
|
||||
heightOffset: number;
|
||||
terrainConform: boolean;
|
||||
materialId: string | null;
|
||||
edges: ScenePathRoadEdgesSettings;
|
||||
}
|
||||
|
||||
export interface ScenePath {
|
||||
@@ -156,12 +172,28 @@ export const DEFAULT_SCENE_PATH_ROAD_FALLOFF = 0.5;
|
||||
export const DEFAULT_SCENE_PATH_ROAD_HEIGHT_OFFSET = 0.03;
|
||||
export const DEFAULT_SCENE_PATH_ROAD_TERRAIN_CONFORM = true;
|
||||
export const DEFAULT_SCENE_PATH_ROAD_MATERIAL_ID = null;
|
||||
export const SCENE_PATH_ROAD_EDGE_KINDS = [
|
||||
"curb",
|
||||
"softShoulder",
|
||||
"bank",
|
||||
"ditch"
|
||||
] as const satisfies readonly ScenePathRoadEdgeKind[];
|
||||
export const DEFAULT_SCENE_PATH_ROAD_EDGE_ENABLED = false;
|
||||
export const DEFAULT_SCENE_PATH_ROAD_EDGE_KIND: ScenePathRoadEdgeKind =
|
||||
"softShoulder";
|
||||
export const DEFAULT_SCENE_PATH_ROAD_EDGE_WIDTH = 0.35;
|
||||
export const DEFAULT_SCENE_PATH_ROAD_EDGE_HEIGHT = 0.12;
|
||||
export const DEFAULT_SCENE_PATH_ROAD_EDGE_MATERIAL_ID = null;
|
||||
export const MIN_SCENE_PATH_ROAD_WIDTH = 0.1;
|
||||
export const MAX_SCENE_PATH_ROAD_WIDTH = 100;
|
||||
export const MIN_SCENE_PATH_ROAD_SHOULDER_WIDTH = 0;
|
||||
export const MAX_SCENE_PATH_ROAD_SHOULDER_WIDTH = 100;
|
||||
export const MIN_SCENE_PATH_ROAD_FALLOFF = 0;
|
||||
export const MAX_SCENE_PATH_ROAD_FALLOFF = 1;
|
||||
export const MIN_SCENE_PATH_ROAD_EDGE_WIDTH = 0.01;
|
||||
export const MAX_SCENE_PATH_ROAD_EDGE_WIDTH = 50;
|
||||
export const MIN_SCENE_PATH_ROAD_EDGE_HEIGHT = 0;
|
||||
export const MAX_SCENE_PATH_ROAD_EDGE_HEIGHT = 20;
|
||||
export const MIN_SCENE_PATH_SAMPLED_RESOLUTION = 1;
|
||||
export const MAX_SCENE_PATH_SAMPLED_RESOLUTION = 64;
|
||||
export const MIN_SCENE_PATH_POINT_COUNT = 2;
|
||||
|
||||
Reference in New Issue
Block a user