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 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 {
|
export interface ScenePathRoadSettings {
|
||||||
enabled: boolean;
|
enabled: boolean;
|
||||||
@@ -20,6 +35,7 @@ export interface ScenePathRoadSettings {
|
|||||||
heightOffset: number;
|
heightOffset: number;
|
||||||
terrainConform: boolean;
|
terrainConform: boolean;
|
||||||
materialId: string | null;
|
materialId: string | null;
|
||||||
|
edges: ScenePathRoadEdgesSettings;
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface ScenePath {
|
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_HEIGHT_OFFSET = 0.03;
|
||||||
export const DEFAULT_SCENE_PATH_ROAD_TERRAIN_CONFORM = true;
|
export const DEFAULT_SCENE_PATH_ROAD_TERRAIN_CONFORM = true;
|
||||||
export const DEFAULT_SCENE_PATH_ROAD_MATERIAL_ID = null;
|
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 MIN_SCENE_PATH_ROAD_WIDTH = 0.1;
|
||||||
export const MAX_SCENE_PATH_ROAD_WIDTH = 100;
|
export const MAX_SCENE_PATH_ROAD_WIDTH = 100;
|
||||||
export const MIN_SCENE_PATH_ROAD_SHOULDER_WIDTH = 0;
|
export const MIN_SCENE_PATH_ROAD_SHOULDER_WIDTH = 0;
|
||||||
export const MAX_SCENE_PATH_ROAD_SHOULDER_WIDTH = 100;
|
export const MAX_SCENE_PATH_ROAD_SHOULDER_WIDTH = 100;
|
||||||
export const MIN_SCENE_PATH_ROAD_FALLOFF = 0;
|
export const MIN_SCENE_PATH_ROAD_FALLOFF = 0;
|
||||||
export const MAX_SCENE_PATH_ROAD_FALLOFF = 1;
|
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 MIN_SCENE_PATH_SAMPLED_RESOLUTION = 1;
|
||||||
export const MAX_SCENE_PATH_SAMPLED_RESOLUTION = 64;
|
export const MAX_SCENE_PATH_SAMPLED_RESOLUTION = 64;
|
||||||
export const MIN_SCENE_PATH_POINT_COUNT = 2;
|
export const MIN_SCENE_PATH_POINT_COUNT = 2;
|
||||||
|
|||||||
Reference in New Issue
Block a user