载入中...
搜索中...
未找到
VegetationPreset.h 文件参考
#include "common/Export.h"
#include "asset/CanonicalMesh.h"
#include "asset/import/AssetImporter.h"
#include "common/Result.h"
#include "common/Value.h"
#include <array>
#include <cstdint>
#include <map>
#include <optional>
#include <set>
#include <span>
#include <string>
#include <vector>

浏览源代码.

类

struct  eve::asset_import::VegetationPresetCommand
 One evaluated TVE conversion command in source execution order. 更多...
 
struct  eve::asset_import::VegetationPresetContext
 Immutable source facts used by TVE preset predicates. 更多...
 
struct  eve::asset_import::VegetationTextureChannelRecipe
 One channel instruction in a TVE packed-texture recipe. 更多...
 
struct  eve::asset_import::VegetationTexturePackRecipe
 One ordered texture packing recipe produced by preset execution. 更多...
 
struct  eve::asset_import::VegetationPresetImage
 Owning linear RGBA8 source or packed texture used by preset conversion. 更多...
 
struct  eve::asset_import::VegetationConversionCandidate
 Owning unpublished material, mesh and texture candidate mutated transactionally by preset commands. 更多...
 
struct  eve::asset_import::VegetationConversionResult
 Complete detached output of one vegetation preset conversion transaction. 更多...
 
struct  eve::asset_import::UnityVegetationConversionRequest
 Owning inputs for one complete Unity Material and TVE preset conversion transaction. 更多...
 
struct  eve::asset_import::UnityVegetationAssetImportRequest
 Owning inputs for one atomically prepared Unity vegetation asset group. 更多...
 
struct  eve::asset_import::UnityVegetationBatchImportRequest
 Owning ordered set of independently converted vegetation objects published as one package. 更多...
 

命名空间

namespace  eve
 Build metadata (engine git commit, build time, third-party version).
 
namespace  eve::asset_import
 

枚举

enum class  eve::asset_import::VegetationMeshOutputMode : std::uint8_t { eve::asset_import::Off , eve::asset_import::Default , eve::asset_import::Custom }
 TVE mesh publication mode selected by OutputMeshes. 更多...
 
enum class  eve::asset_import::VegetationMaterialOutputMode : std::uint8_t { eve::asset_import::Off , eve::asset_import::Default }
 TVE material publication mode selected by OutputMaterials. 更多...
 
enum class  eve::asset_import::VegetationTextureOutputEncoding : std::uint8_t { eve::asset_import::Png , eve::asset_import::Tga , eve::asset_import::Exr , eve::asset_import::UnityAsset }
 Requested source encoding for converted texture publication. 更多...
 
enum class  eve::asset_import::VegetationTransformOutputMode : std::uint8_t { eve::asset_import::KeepOriginal , eve::asset_import::TransformToWorldSpace }
 Transform policy selected for converted mesh publication. 更多...
 

函数

EVENGINE_API_PLATFORM Result< VegetationConversionCandidate > eve::asset_import::decodeUnityVegetationConversionCandidate (std::span< const std::uint8_t > yaml, std::string sourcePath, std::uint64_t maximumBytes=16ull *1024ull *1024ull)
 Decode Unity text Material saved properties into an owning vegetation conversion baseline.
 
EVENGINE_API_PLATFORM Result< std::vector< std::uint8_t > > eve::asset_import::encodeUnityVegetationConversionMaterial (const VegetationConversionCandidate &candidate, std::uint64_t maximumBytes=16ull *1024ull *1024ull)
 Encode an applied vegetation candidate as a detached Unity text Material for the canonical TVE importer.
 
EVENGINE_API_PLATFORM VegetationPresetContext eve::asset_import::makeVegetationPresetContext (const VegetationConversionCandidate &candidate, std::string shaderName, std::string materialName, std::string shaderPipeline, std::set< std::string > outputOptions={})
 Project one conversion baseline into immutable preset predicate facts.
 
Result< std::vector< VegetationPresetCommand > > eve::asset_import::evaluateVegetationPreset (const std::map< std::string, Value > &definitions, std::string_view root, const VegetationPresetContext &context)
 Decode, resolve and evaluate a library of canonical TVE preset definitions.
 
EVENGINE_API_PLATFORM Result< VegetationConversionCandidate > eve::asset_import::applyVegetationPreset (VegetationConversionCandidate source, const std::vector< VegetationPresetCommand > &commands)
 Type-check and atomically apply an evaluated TVE command sequence.
 
EVENGINE_API_PLATFORM Result< std::map< std::string, VegetationPresetImage > > eve::asset_import::executeVegetationTexturePacks (const VegetationConversionCandidate &candidate, const std::map< std::string, VegetationPresetImage > &sources, std::uint64_t maximumPixels=16ull *1024ull *1024ull)
 Execute all texture recipes against detached RGBA8 source images.
 
EVENGINE_API_PLATFORM Result< std::map< std::string, VegetationPresetImage > > eve::asset_import::executeVegetationTexturePacks (const VegetationConversionCandidate &candidate, const std::map< std::string, VegetationPresetImage > &sources, const asset::CanonicalMeshData &mesh, std::uint64_t maximumPixels=16ull *1024ull *1024ull)
 Execute texture recipes with a canonical mesh for object/tangent normal-space transforms.
 
EVENGINE_API_PLATFORM Result< asset::CanonicalMeshData > eve::asset_import::executeVegetationMeshRules (const VegetationConversionCandidate &candidate, asset::CanonicalMeshData source, float variationSeed=1.f)
 Execute preset mask and coordinate rules into canonical TVE authoring streams.
 
EVENGINE_API_PLATFORM Result< asset::CanonicalMeshData > eve::asset_import::executeVegetationMeshRules (const VegetationConversionCandidate &candidate, asset::CanonicalMeshData source, const std::map< std::string, VegetationPresetImage > &textures, float variationSeed=1.f)
 Execute mesh rules with RGBA8 textures keyed by source material property.
 
EVENGINE_API_PLATFORM Result< VegetationConversionResult > eve::asset_import::executeVegetationConversion (VegetationConversionCandidate source, const std::vector< VegetationPresetCommand > &commands, std::optional< asset::CanonicalMeshData > mesh, const std::map< std::string, VegetationPresetImage > &textures, float variationSeed=1.f, const std::optional< std::array< float, 16 > > &sourceToWorld={}, const std::optional< std::array< float, 9 > > &sourceDirectionToWorld={})
 Apply commands and execute all available mesh and texture outputs as one transaction.
 
EVENGINE_API_PLATFORM Result< VegetationConversionResult > eve::asset_import::executeUnityVegetationConversion (const UnityVegetationConversionRequest &request)
 Decode a Unity Material, evaluate one TVE preset graph, and execute every output atomically.
 
Result< PreparedAssetImport > eve::asset_import::prepareUnityVegetationConversionImport (const UnityVegetationAssetImportRequest &request)
 Convert and prepare one material, its packed images, and optional mesh as a single EVA candidate.
 
Result< PreparedAssetImport > eve::asset_import::prepareUnityVegetationConversionBatch (const UnityVegetationBatchImportRequest &request)
 Prepare several vegetation objects as one all-or-nothing EVA candidate.