载入中...
搜索中...
未找到
RoadRecipes.cpp
浏览该文件的文档.
32 return RoadNetwork::makeScene(scene, params.getFloat("span", 36.f), params.getFloat("bridgeHeight", 6.f),
60std::unique_ptr<image::ImageData> generateRoadMarkingsTexture(const Params& params, std::string& error) {
61 const int width = std::clamp(params.getWidth() > 0 ? params.getWidth() : params.getInt("width", 256), 8, 2048);
123 schema.params.push_back(ParamDescriptor::floating("bridgeHeight", "Bridge Height", 6.f, 1.f, 64.f, 0.5f));
132 ParamDescriptor::floating("sideObjectSpacing", "Side Object Spacing", 8.f, 0.25f, 100.f, 0.25f));
136 ParamDescriptor::floating("sideObjectClearance", "Side Object Clearance", 1.5f, 0.f, 32.f, 0.1f));
138 ParamDescriptor::floating("junctionChordError", "Junction Curve Error", 0.10f, 0.01f, 1.f, 0.01f));
140 ParamDescriptor::floating("terrainBlendDistance", "Terrain Surface Blend", 2.f, 0.f, 64.f, 0.25f));
141 schema.params.push_back(ParamDescriptor::floating("chunkSize", "Render Chunk Size", 64.f, 4.f, 1024.f, 1.f));
147 RecipeDescriptor schema = RecipeDescriptor::grid("tex.roadMarkings", "Road Markings Logic", "Road", 8, 8);
148 schema.params.push_back(ParamDescriptor::floating("dashPeriod", "Dash Period", 0.18f, 0.02f, 1.f, 0.01f));
149 schema.params.push_back(ParamDescriptor::floating("dashDuty", "Dash Duty", 0.45f, 0.05f, 0.95f, 0.01f));
static Result failure(Status status)
Construct a failed result from a structured status.
Definition Result.h:175
CPU triangle mesh from procedural mesh recipes (e.g. marching cubes). Positions/normals are xyz-packe...
Definition MeshBuild.h:19
void registerRecipe(const std::string &id, MeshRecipeFn fn)
Register a recipe without metadata.
Definition MarchingCubes.cpp:456
void registerRecipe(const std::string &id, TextureRecipeFn fn)
Register a recipe without metadata.
Definition TextureRecipe.cpp:17
static Result< RoadNetwork > makeScene(const std::string &scene, float span=36.f, float bridgeHeight=6.f, int lanes=2, std::uint32_t seed=1)
Dispatch a named debug/demo scene.
Definition RoadNetwork.cpp:1329
Definition RoadBake.cpp:17
Result< RoadOverlay > generateRoadNetworkOverlay(const Params ¶ms)
Bake navigation overlay for the same Params used by mesh.roadNetwork.
Definition RoadRecipes.cpp:54
std::unique_ptr< image::ImageData > generateRoadMarkingsTexture(const Params ¶ms, std::string &error)
Pure-function road marking atlas (asphalt + edge + dashed center + zebra).
Definition RoadRecipes.cpp:60
Result< RoadBakeResult > bakeRoadNetwork(const RoadNetwork &network, const RoadBakeOptions &options)
Bake every edge, junction platform, pier, marking and navigation overlay.
Definition RoadBake.cpp:1899
Result< RoadBakeResult > bakeRoadNetworkRecipe(const Params ¶ms)
Build the shared road recipe once for mesh, navigation and artifact projections.
Definition RoadRecipes.cpp:38
bool generateRoadNetworkMesh(const Params ¶ms, MeshBuild &out, std::string &error)
Generate a multi-level interchange mesh from Params (span/height/lanes/seed).
Definition RoadRecipes.cpp:44
void registerRoadMeshRecipes(MeshRecipeRegistry ®istry)
Registers road mesh recipes.
Definition RoadRecipes.cpp:115
void registerRoadTextureRecipes(TextureRecipeRegistry ®istry)
Registers road texture recipes.
Definition RoadRecipes.cpp:146
static ParamDescriptor boolean(std::string key, std::string label, bool defaultValue)
Construct a Boolean descriptor stored as zero or one in Params.
Definition ParamSchema.cpp:47
static ParamDescriptor choice(std::string key, std::string label, std::string defaultValue, std::vector< std::string > choices)
Construct a finite-choice string descriptor.
Definition ParamSchema.cpp:65
static ParamDescriptor floating(std::string key, std::string label, float defaultValue, float minimum, float maximum, float step)
Construct a bounded floating-point descriptor.
Definition ParamSchema.cpp:33
static ParamDescriptor integer(std::string key, std::string label, int defaultValue, int minimum, int maximum, int step=1)
Construct a bounded integer descriptor.
Definition ParamSchema.cpp:19
Complete metadata and parameter schema shared by every procgen recipe family.
Definition ParamSchema.h:52
static RecipeDescriptor grid(std::string id, std::string displayName, std::string category, int minimumWidth, int minimumHeight, int maximumWidth=4096, int maximumHeight=4096)
Create a schema with common seed, width and height parameters.
Definition ParamSchema.cpp:73
std::vector< ParamDescriptor > params
Definition ParamSchema.h:56