Product documentation · Current desktop UI

Engine source functions

3367 definitions in the current source checkout. This source map includes internal helpers and class methods. It is not a supported API contract or a promise that a function can be called through a bridge. For supported entry points use the Python API reference or bundled DCC wrapper pages.

tech_connector.game_engine.assets.animation_asset_service

AnimationIssue.to_dict

def AnimationIssue.to_dict(self) -> dict[str, str]

class method · public name · tech_connector/game_engine/assets/animation_asset_service.py:34

AnimationConversionReceipt.succeeded

def AnimationConversionReceipt.succeeded(self) -> bool

class method · public name · tech_connector/game_engine/assets/animation_asset_service.py:47

AnimationConversionReceipt.to_dict

def AnimationConversionReceipt.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/animation_asset_service.py:50

animation_clip_defaults

def animation_clip_defaults(*, skeleton_id: str='', duration_seconds: float=1.0, sample_rate: float=30.0, loop: bool=True) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/animation_asset_service.py:59

blend_space_defaults

def blend_space_defaults(*, skeleton_id: str='', dimensions: int=2, axes: Sequence[Mapping[str, Any]]=(), samples: Sequence[Mapping[str, Any]]=()) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/animation_asset_service.py:76

animation_mask_defaults

def animation_mask_defaults(*, skeleton_id: str='', weights: Mapping[str, float] | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/animation_asset_service.py:95

animation_controller_defaults

def animation_controller_defaults(*, skeleton_id: str='') -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/animation_asset_service.py:103

AnimationAssetService.__init__

def AnimationAssetService.__init__(self, project_root: str | Path, database: AssetDatabase) -> None

class method · internal · tech_connector/game_engine/assets/animation_asset_service.py:123

AnimationAssetService.create_clip

def AnimationAssetService.create_clip(self, name: str, *, skeleton_id: str='', duration_seconds: float=1.0, sample_rate: float=30.0, loop: bool=True, folder: str | Path='Assets/Animation/Clips')

class method · public name · tech_connector/game_engine/assets/animation_asset_service.py:128

AnimationAssetService.create_blend_space

def AnimationAssetService.create_blend_space(self, name: str, *, skeleton_id: str='', dimensions: int=2, axes: Sequence[Mapping[str, Any]]=(), samples: Sequence[Mapping[str, Any]]=(), folder: str | Path='Assets/Animation/BlendSpaces')

class method · public name · tech_connector/game_engine/assets/animation_asset_service.py:134

AnimationAssetService.create_mask

def AnimationAssetService.create_mask(self, name: str, *, skeleton_id: str='', weights: Mapping[str, float] | None=None, folder: str | Path='Assets/Animation/Masks')

class method · public name · tech_connector/game_engine/assets/animation_asset_service.py:141

AnimationAssetService.create_controller

def AnimationAssetService.create_controller(self, name: str, *, skeleton_id: str='', properties: Mapping[str, Any] | None=None, folder: str | Path='Assets/Animation/Controllers')

class method · public name · tech_connector/game_engine/assets/animation_asset_service.py:147

AnimationAssetService.properties

def AnimationAssetService.properties(self, asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/animation_asset_service.py:155

AnimationAssetService.update

def AnimationAssetService.update(self, asset_id: str, values: Mapping[str, Any], *, replace: bool=False) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/animation_asset_service.py:159

AnimationAssetService.validate

def AnimationAssetService.validate(self, asset_id: str) -> list[AnimationIssue]

class method · public name · tech_connector/game_engine/assets/animation_asset_service.py:166

AnimationAssetService.evaluate_blend_space

def AnimationAssetService.evaluate_blend_space(self, asset_id: str, x: float, y: float=0.0) -> dict[str, float]

class method · public name · tech_connector/game_engine/assets/animation_asset_service.py:173

AnimationAssetService.evaluate_controller

def AnimationAssetService.evaluate_controller(self, asset_id: str, *, parameter_values: Mapping[str, Any] | None=None, layer_id: str='', current_state: str='', normalized_time: float=0.0) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/animation_asset_service.py:179

AnimationAssetService.cook

def AnimationAssetService.cook(self, asset_id: str, *, platform: str='desktop', quality: str='high') -> DerivedArtifact

class method · public name · tech_connector/game_engine/assets/animation_asset_service.py:191

AnimationAssetService.convert_unreal

def AnimationAssetService.convert_unreal(self, payload: Mapping[str, Any], *, folder: str | Path='Assets/Animation/Converted/Unreal') -> AnimationConversionReceipt

class method · public name · tech_connector/game_engine/assets/animation_asset_service.py:200

AnimationAssetService.convert_unity

def AnimationAssetService.convert_unity(self, payload: Mapping[str, Any], *, folder: str | Path='Assets/Animation/Converted/Unity') -> AnimationConversionReceipt

class method · public name · tech_connector/game_engine/assets/animation_asset_service.py:203

AnimationAssetService.convert_file

def AnimationAssetService.convert_file(self, source_path: str | Path, *, provider: str, folder: str | Path='Assets/Animation/Converted') -> AnimationConversionReceipt

class method · public name · tech_connector/game_engine/assets/animation_asset_service.py:206

Convert an Unreal/Unity editor export file into native editable assets.

AnimationAssetService.import_interchange

def AnimationAssetService.import_interchange(self, payload: Mapping[str, Any], *, folder: str | Path='Assets/Animation/Converted') -> AnimationConversionReceipt

class method · public name · tech_connector/game_engine/assets/animation_asset_service.py:223

AnimationAssetService.export_interchange

def AnimationAssetService.export_interchange(self, asset_ids: Iterable[str], *, provider: str='tech_connector') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/animation_asset_service.py:230

AnimationAssetService._convert

def AnimationAssetService._convert(self, provider: str, payload: Mapping[str, Any], folder: str | Path) -> AnimationConversionReceipt

class method · internal · tech_connector/game_engine/assets/animation_asset_service.py:237

AnimationAssetService._load

def AnimationAssetService._load(self, asset_id: str)

class method · internal · tech_connector/game_engine/assets/animation_asset_service.py:264

AnimationAssetService._save

def AnimationAssetService._save(self, asset_id: str, properties: Mapping[str, Any]) -> None

class method · internal · tech_connector/game_engine/assets/animation_asset_service.py:272

validate_animation_clip

def validate_animation_clip(values: Mapping[str, Any]) -> list[AnimationIssue]

module function · public name · tech_connector/game_engine/assets/animation_asset_service.py:284

validate_blend_space

def validate_blend_space(values: Mapping[str, Any]) -> list[AnimationIssue]

module function · public name · tech_connector/game_engine/assets/animation_asset_service.py:298

validate_animation_mask

def validate_animation_mask(values: Mapping[str, Any]) -> list[AnimationIssue]

module function · public name · tech_connector/game_engine/assets/animation_asset_service.py:320

validate_animation_controller

def validate_animation_controller(values: Mapping[str, Any]) -> list[AnimationIssue]

module function · public name · tech_connector/game_engine/assets/animation_asset_service.py:324

evaluate_animation_controller

def evaluate_animation_controller(values: Mapping[str, Any], *, parameter_values: Mapping[str, Any] | None=None, layer_id: str='', current_state: str='', normalized_time: float=0.0) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/animation_asset_service.py:346

Evaluate one deterministic editor-preview step without mutating controller data.

_animation_condition_matches

def _animation_condition_matches(condition: Mapping[str, Any], parameters: Mapping[str, Any], normalized_time: float) -> bool

module function · internal · tech_connector/game_engine/assets/animation_asset_service.py:389

evaluate_blend_space

def evaluate_blend_space(values: Mapping[str, Any], *, x: float, y: float=0.0) -> dict[str, float]

module function · public name · tech_connector/game_engine/assets/animation_asset_service.py:408

compile_animation_payload

def compile_animation_payload(type_id: str, values: Mapping[str, Any], *, platform: str, quality: str) -> bytes

module function · public name · tech_connector/game_engine/assets/animation_asset_service.py:427

Validate and compile any first-class animation asset into portable runtime data.

_normalize_interchange

def _normalize_interchange(provider: str, payload: Mapping[str, Any]) -> tuple[dict[str, Any], list[AnimationIssue]]

module function · internal · tech_connector/game_engine/assets/animation_asset_service.py:444

_normalize_unreal

def _normalize_unreal(data: dict[str, Any], diagnostics: list[AnimationIssue]) -> dict[str, Any]

module function · internal · tech_connector/game_engine/assets/animation_asset_service.py:453

_normalize_unity

def _normalize_unity(data: dict[str, Any], diagnostics: list[AnimationIssue]) -> dict[str, Any]

module function · internal · tech_connector/game_engine/assets/animation_asset_service.py:476

_unreal_machine

def _unreal_machine(value: Mapping[str, Any], index: int) -> dict[str, Any]

module function · internal · tech_connector/game_engine/assets/animation_asset_service.py:531

_unreal_transition

def _unreal_transition(value: Mapping[str, Any], index: int) -> dict[str, Any]

module function · internal · tech_connector/game_engine/assets/animation_asset_service.py:541

_unity_transition

def _unity_transition(value: Mapping[str, Any], index: int) -> dict[str, Any]

module function · internal · tech_connector/game_engine/assets/animation_asset_service.py:546

_unity_blend_tree

def _unity_blend_tree(tree: dict[str, Any], source_id: str, skeleton: str) -> dict[str, Any]

module function · internal · tech_connector/game_engine/assets/animation_asset_service.py:555

_unsupported_nodes

def _unsupported_nodes(row: Mapping[str, Any], provider: str, diagnostics: list[AnimationIssue]) -> list[dict[str, Any]]

module function · internal · tech_connector/game_engine/assets/animation_asset_service.py:567

_parse_condition

def _parse_condition(text: str) -> list[dict[str, Any]]

module function · internal · tech_connector/game_engine/assets/animation_asset_service.py:578

_compile_asset

def _compile_asset(type_id: str, values: Mapping[str, Any], *, platform: str, quality: str) -> bytes

module function · internal · tech_connector/game_engine/assets/animation_asset_service.py:596

_normalize_properties

def _normalize_properties(type_id: str, properties: Mapping[str, Any]) -> dict[str, Any]

module function · internal · tech_connector/game_engine/assets/animation_asset_service.py:616

_asset_references

def _asset_references(type_id: str, values: Mapping[str, Any]) -> set[tuple[str, str]]

module function · internal · tech_connector/game_engine/assets/animation_asset_service.py:636

_replace_source_refs

def _replace_source_refs(value: Any, mapping: Mapping[str, str]) -> Any

module function · internal · tech_connector/game_engine/assets/animation_asset_service.py:654

_normalize_sample

def _normalize_sample(value: Mapping[str, Any], dimensions: int) -> dict[str, Any]

module function · internal · tech_connector/game_engine/assets/animation_asset_service.py:661

_parameter_spec

def _parameter_spec(value: Any) -> dict[str, Any]

module function · internal · tech_connector/game_engine/assets/animation_asset_service.py:666

_axis_from_unreal

def _axis_from_unreal(value: Mapping[str, Any]) -> dict[str, Any]

module function · internal · tech_connector/game_engine/assets/animation_asset_service.py:680

_schema_for

def _schema_for(type_id: str) -> str

module function · internal · tech_connector/game_engine/assets/animation_asset_service.py:684

_safe_name

def _safe_name(value: str) -> str

module function · internal · tech_connector/game_engine/assets/animation_asset_service.py:688

_available_name

def _available_name(folder: Path, name: str, _operations: AssetOperationsService, type_id: str) -> str

module function · internal · tech_connector/game_engine/assets/animation_asset_service.py:693

_atomic_json_write

def _atomic_json_write(path: Path, value: Mapping[str, Any]) -> None

module function · internal · tech_connector/game_engine/assets/animation_asset_service.py:700

tech_connector.game_engine.assets.asset_bulk_operation_service

BulkAssetPlanItem.to_dict

def BulkAssetPlanItem.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/asset_bulk_operation_service.py:32

BulkAssetPlan.to_dict

def BulkAssetPlan.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/asset_bulk_operation_service.py:46

BulkAssetReceipt.to_dict

def BulkAssetReceipt.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/asset_bulk_operation_service.py:63

BulkAssetOperationService.__init__

def BulkAssetOperationService.__init__(self, project_root: str | Path, database: AssetDatabase, *, operations: AssetOperationsService | None=None, production: AssetProductionService | None=None, exports: AssetExportService | None=None) -> None

class method · internal · tech_connector/game_engine/assets/asset_bulk_operation_service.py:74

BulkAssetOperationService.plan

def BulkAssetOperationService.plan(self, operation: str, asset_ids: Iterable[str], *, options: Mapping[str, Any] | None=None) -> BulkAssetPlan

class method · public name · tech_connector/game_engine/assets/asset_bulk_operation_service.py:86

BulkAssetOperationService.execute

def BulkAssetOperationService.execute(self, plan: BulkAssetPlan) -> BulkAssetReceipt

class method · public name · tech_connector/game_engine/assets/asset_bulk_operation_service.py:153

BulkAssetOperationService._project_path

def BulkAssetOperationService._project_path(self, value: Any) -> Path

class method · internal · tech_connector/game_engine/assets/asset_bulk_operation_service.py:201

_bulk_name

def _bulk_name(base: str, type_id: str, index: int, options: Mapping[str, Any]) -> str

module function · internal · tech_connector/game_engine/assets/asset_bulk_operation_service.py:211

_tags

def _tags(value: Any) -> tuple[str, ...]

module function · internal · tech_connector/game_engine/assets/asset_bulk_operation_service.py:226

_action_summary

def _action_summary(action: str) -> str

module function · internal · tech_connector/game_engine/assets/asset_bulk_operation_service.py:231

_result_dict

def _result_dict(value: Any) -> dict[str, Any]

module function · internal · tech_connector/game_engine/assets/asset_bulk_operation_service.py:238

_record_token

def _record_token(record: Any) -> str

module function · internal · tech_connector/game_engine/assets/asset_bulk_operation_service.py:246

tech_connector.game_engine.assets.asset_conversion_service

AssetConversionPlan.to_dict

def AssetConversionPlan.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/asset_conversion_service.py:70

plan_asset_conversion

def plan_asset_conversion(type_id: str, source_path: str | Path, target: str, *, registry: AssetTypeRegistry | None=None) -> AssetConversionPlan

module function · public name · tech_connector/game_engine/assets/asset_conversion_service.py:74

conversion_coverage_report

def conversion_coverage_report(*, registry: AssetTypeRegistry | None=None, targets: Iterable[str]=CONVERSION_TARGETS) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/asset_conversion_service.py:119

_matched_extension

def _matched_extension(path: Path, descriptor: AssetTypeDescriptor | None) -> str

module function · internal · tech_connector/game_engine/assets/asset_conversion_service.py:154

_best_sample_path

def _best_sample_path(descriptor: AssetTypeDescriptor, targets: tuple[str, ...]) -> Path

module function · internal · tech_connector/game_engine/assets/asset_conversion_service.py:163

tech_connector.game_engine.assets.asset_database_service

_AutoClosingConnection.__exit__

def _AutoClosingConnection.__exit__(self, exc_type: Any, exc: Any, traceback: Any) -> bool | None

class method · internal · tech_connector/game_engine/assets/asset_database_service.py:25

stable_asset_id

def stable_asset_id(asset_type: str, source_path: str | Path) -> str

module function · public name · tech_connector/game_engine/assets/asset_database_service.py:65

AssetDatabase.__init__

def AssetDatabase.__init__(self, database_path: str | Path, cache_root: str | Path | None=None) -> None

class method · internal · tech_connector/game_engine/assets/asset_database_service.py:74

AssetDatabase.register_asset

def AssetDatabase.register_asset(self, source_path: str | Path, asset_type: str, *, asset_id: str | None=None, metadata: dict[str, Any] | None=None, dependencies: Iterable[str | tuple[str, str]]=()) -> AssetRecord

class method · public name · tech_connector/game_engine/assets/asset_database_service.py:86

AssetDatabase.asset

def AssetDatabase.asset(self, asset_id: str) -> AssetRecord | None

class method · public name · tech_connector/game_engine/assets/asset_database_service.py:159

AssetDatabase.asset_for_path

def AssetDatabase.asset_for_path(self, source_path: str | Path) -> AssetRecord | None

class method · public name · tech_connector/game_engine/assets/asset_database_service.py:164

AssetDatabase.list_assets

def AssetDatabase.list_assets(self, *, status: str | None=None) -> list[AssetRecord]

class method · public name · tech_connector/game_engine/assets/asset_database_service.py:171

AssetDatabase.set_dependencies

def AssetDatabase.set_dependencies(self, asset_id: str, dependencies: Iterable[str | tuple[str, str]]) -> None

class method · public name · tech_connector/game_engine/assets/asset_database_service.py:181

AssetDatabase.dependencies

def AssetDatabase.dependencies(self, asset_id: str) -> tuple[str, ...]

class method · public name · tech_connector/game_engine/assets/asset_database_service.py:211

AssetDatabase.dependency_edges

def AssetDatabase.dependency_edges(self, asset_id: str) -> tuple[tuple[str, str], ...]

class method · public name · tech_connector/game_engine/assets/asset_database_service.py:218

AssetDatabase.referencers

def AssetDatabase.referencers(self, asset_id: str, *, recursive: bool=False) -> tuple[str, ...]

class method · public name · tech_connector/game_engine/assets/asset_database_service.py:226

AssetDatabase.referencer_edges

def AssetDatabase.referencer_edges(self, asset_id: str) -> tuple[tuple[str, str], ...]

class method · public name · tech_connector/game_engine/assets/asset_database_service.py:248

AssetDatabase.replace_dependency

def AssetDatabase.replace_dependency(self, owner_asset_id: str, old_asset_id: str, new_asset_id: str) -> bool

class method · public name · tech_connector/game_engine/assets/asset_database_service.py:256

Replace one dependency while retaining its relationship kind.

AssetDatabase.unregister_asset

def AssetDatabase.unregister_asset(self, asset_id: str) -> AssetRecord

class method · public name · tech_connector/game_engine/assets/asset_database_service.py:294

Remove an unreferenced asset record after its source has been safely relocated.

AssetDatabase.dependency_closure

def AssetDatabase.dependency_closure(self, asset_ids: Iterable[str]) -> tuple[str, ...]

class method · public name · tech_connector/game_engine/assets/asset_database_service.py:311

AssetDatabase.affected_assets

def AssetDatabase.affected_assets(self, asset_ids: Iterable[str]) -> tuple[str, ...]

class method · public name · tech_connector/game_engine/assets/asset_database_service.py:315

AssetDatabase.scan_changes

def AssetDatabase.scan_changes(self) -> list[AssetChange]

class method · public name · tech_connector/game_engine/assets/asset_database_service.py:330

AssetDatabase.store_derived

def AssetDatabase.store_derived(self, asset_id: str, key: str, payload: bytes, *, metadata: dict[str, Any] | None=None, extension: str='.bin') -> DerivedArtifact

class method · public name · tech_connector/game_engine/assets/asset_database_service.py:353

AssetDatabase.derived

def AssetDatabase.derived(self, asset_id: str, key: str) -> DerivedArtifact | None

class method · public name · tech_connector/game_engine/assets/asset_database_service.py:390

AssetDatabase.derived_artifacts

def AssetDatabase.derived_artifacts(self, asset_id: str, *, include_invalid: bool=False) -> tuple[DerivedArtifact, ...]

class method · public name · tech_connector/game_engine/assets/asset_database_service.py:404

Return the persisted derived-data inventory for one source asset.

AssetDatabase.assets_with_valid_derived_data

def AssetDatabase.assets_with_valid_derived_data(self) -> tuple[str, ...]

class method · public name · tech_connector/game_engine/assets/asset_database_service.py:423

Return asset IDs with at least one current on-disk derived artifact.

AssetDatabase.asset_events

def AssetDatabase.asset_events(self, asset_id: str, *, limit: int=100) -> tuple[dict[str, Any], ...]

class method · public name · tech_connector/game_engine/assets/asset_database_service.py:437

Return newest-first revision and lifecycle events for an asset.

AssetDatabase.poll_events

def AssetDatabase.poll_events(self, after_sequence: int=0, *, limit: int=1000) -> list[dict[str, Any]]

class method · public name · tech_connector/game_engine/assets/asset_database_service.py:452

AssetDatabase._record_change

def AssetDatabase._record_change(self, record: AssetRecord, kind: str, content_hash: str, *, stat: os.stat_result | None=None) -> AssetChange

class method · internal · tech_connector/game_engine/assets/asset_database_service.py:463

AssetDatabase._dependency_closure

def AssetDatabase._dependency_closure(connection: sqlite3.Connection, roots: Iterable[str]) -> set[str]

class method · internal · tech_connector/game_engine/assets/asset_database_service.py:497

AssetDatabase._initialize_schema

def AssetDatabase._initialize_schema(self) -> None

class method · internal · tech_connector/game_engine/assets/asset_database_service.py:511

AssetDatabase._connect

def AssetDatabase._connect(self) -> sqlite3.Connection

class method · internal · tech_connector/game_engine/assets/asset_database_service.py:545

AssetDatabase._transaction

def AssetDatabase._transaction(self) -> Iterator[sqlite3.Connection]

class method · internal · tech_connector/game_engine/assets/asset_database_service.py:554

AssetDatabase._append_event

def AssetDatabase._append_event(connection: sqlite3.Connection, kind: str, asset_id: str, payload: dict[str, Any]) -> int

class method · internal · tech_connector/game_engine/assets/asset_database_service.py:558

_DatabaseTransaction.__init__

def _DatabaseTransaction.__init__(self, owner: AssetDatabase) -> None

class method · internal · tech_connector/game_engine/assets/asset_database_service.py:567

_DatabaseTransaction.__enter__

def _DatabaseTransaction.__enter__(self) -> sqlite3.Connection

class method · internal · tech_connector/game_engine/assets/asset_database_service.py:571

_DatabaseTransaction.__exit__

def _DatabaseTransaction.__exit__(self, exception_type: Any, exception: Any, traceback: Any) -> None

class method · internal · tech_connector/game_engine/assets/asset_database_service.py:577

AssetWatchService.__init__

def AssetWatchService.__init__(self, database: AssetDatabase, callback: Callable[[list[AssetChange]], None], *, interval_seconds: float=0.5) -> None

class method · internal · tech_connector/game_engine/assets/asset_database_service.py:589

AssetWatchService.running

def AssetWatchService.running(self) -> bool

class method · public name · tech_connector/game_engine/assets/asset_database_service.py:604

AssetWatchService.start

def AssetWatchService.start(self) -> None

class method · public name · tech_connector/game_engine/assets/asset_database_service.py:607

AssetWatchService.stop

def AssetWatchService.stop(self, timeout: float=2.0) -> None

class method · public name · tech_connector/game_engine/assets/asset_database_service.py:614

AssetWatchService._run

def AssetWatchService._run(self) -> None

class method · internal · tech_connector/game_engine/assets/asset_database_service.py:621

_canonical_path

def _canonical_path(value: str | Path) -> str

module function · internal · tech_connector/game_engine/assets/asset_database_service.py:632

_file_hash

def _file_hash(path: Path) -> str

module function · internal · tech_connector/game_engine/assets/asset_database_service.py:636

_json

def _json(value: Any) -> str

module function · internal · tech_connector/game_engine/assets/asset_database_service.py:644

_dict

def _dict(value: str) -> dict[str, Any]

module function · internal · tech_connector/game_engine/assets/asset_database_service.py:648

_asset_record

def _asset_record(row: sqlite3.Row) -> AssetRecord

module function · internal · tech_connector/game_engine/assets/asset_database_service.py:653

tech_connector.game_engine.assets.asset_dependency_graph_service

AssetDependencyNode.to_dict

def AssetDependencyNode.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/asset_dependency_graph_service.py:25

AssetDependencyEdge.to_dict

def AssetDependencyEdge.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/asset_dependency_graph_service.py:35

AssetDependencyGraph.to_dict

def AssetDependencyGraph.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/asset_dependency_graph_service.py:49

AssetDependencyGraphService.__init__

def AssetDependencyGraphService.__init__(self, project_root: str | Path, database: AssetDatabase) -> None

class method · internal · tech_connector/game_engine/assets/asset_dependency_graph_service.py:64

AssetDependencyGraphService.analyze

def AssetDependencyGraphService.analyze(self, root_asset_id: str, *, include_referencers: bool=True, max_depth: int=32) -> AssetDependencyGraph

class method · public name · tech_connector/game_engine/assets/asset_dependency_graph_service.py:68

AssetDependencyGraphService._cycles

def AssetDependencyGraphService._cycles(asset_ids: tuple[str, ...], edges: tuple[AssetDependencyEdge, ...]) -> tuple[tuple[str, ...], ...]

class method · internal · tech_connector/game_engine/assets/asset_dependency_graph_service.py:124

tech_connector.game_engine.assets.asset_export_service

AssetExportReceipt.to_dict

def AssetExportReceipt.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/asset_export_service.py:33

AssetExportService.__init__

def AssetExportService.__init__(self, project_root: str | Path, database: AssetDatabase, registry: AssetTypeRegistry | None=None) -> None

class method · internal · tech_connector/game_engine/assets/asset_export_service.py:44

AssetExportService.export_assets

def AssetExportService.export_assets(self, asset_ids: Iterable[str], destination: str | Path, *, target: str='generic', include_dependencies: bool=True, require_ready: bool=False) -> AssetExportReceipt

class method · public name · tech_connector/game_engine/assets/asset_export_service.py:49

AssetExportService.conversion_coverage

def AssetExportService.conversion_coverage(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/asset_export_service.py:115

AssetExportService._dependency_closure

def AssetExportService._dependency_closure(self, roots: tuple[str, ...]) -> tuple[str, ...]

class method · internal · tech_connector/game_engine/assets/asset_export_service.py:118

AssetExportService._write_adapter

def AssetExportService._write_adapter(root: Path, target: str, rows: list[dict[str, Any]]) -> Path | None

class method · internal · tech_connector/game_engine/assets/asset_export_service.py:129

tech_connector.game_engine.assets.asset_graph_compile_service

AssetCompileReceipt.succeeded

def AssetCompileReceipt.succeeded(self) -> bool

class method · public name · tech_connector/game_engine/assets/asset_graph_compile_service.py:40

AssetGraphCompileService.__init__

def AssetGraphCompileService.__init__(self, database: AssetDatabase, registry: AssetTypeRegistry | None=None) -> None

class method · internal · tech_connector/game_engine/assets/asset_graph_compile_service.py:45

AssetGraphCompileService.compile_asset

def AssetGraphCompileService.compile_asset(self, asset_id: str, *, target: str='runtime') -> AssetCompileReceipt

class method · public name · tech_connector/game_engine/assets/asset_graph_compile_service.py:51

_compile_graph

def _compile_graph(graph: dict[str, Any], *, allow_cycles: bool) -> tuple[list[dict[str, Any]], list[AssetCompileDiagnostic]]

module function · internal · tech_connector/game_engine/assets/asset_graph_compile_service.py:133

_compile_emitters

def _compile_emitters(emitters: list[dict[str, Any]]) -> tuple[dict[str, Any], list[AssetCompileDiagnostic]]

module function · internal · tech_connector/game_engine/assets/asset_graph_compile_service.py:201

_compile_curves

def _compile_curves(curves: list[dict[str, Any]]) -> tuple[dict[str, Any], list[AssetCompileDiagnostic]]

module function · internal · tech_connector/game_engine/assets/asset_graph_compile_service.py:245

_entry_points

def _entry_points(operations: list[dict[str, Any]]) -> list[int]

module function · internal · tech_connector/game_engine/assets/asset_graph_compile_service.py:268

_opcode

def _opcode(title: str) -> str

module function · internal · tech_connector/game_engine/assets/asset_graph_compile_service.py:272

_operation_count

def _operation_count(executable: dict[str, Any]) -> int

module function · internal · tech_connector/game_engine/assets/asset_graph_compile_service.py:277

_pin_type

def _pin_type(pins: list[Any] | tuple[Any, ...], pin_name: str) -> str

module function · internal · tech_connector/game_engine/assets/asset_graph_compile_service.py:287

_generate_shader_graph_source

def _generate_shader_graph_source(type_id: str, operations: list[dict[str, Any]], *, target: str) -> str

module function · internal · tech_connector/game_engine/assets/asset_graph_compile_service.py:297

tech_connector.game_engine.assets.asset_metadata_service

asset_metadata_path

def asset_metadata_path(source_path: str | Path) -> Path

module function · public name · tech_connector/game_engine/assets/asset_metadata_service.py:17

new_asset_id

def new_asset_id() -> str

module function · public name · tech_connector/game_engine/assets/asset_metadata_service.py:22

read_asset_metadata

def read_asset_metadata(source_path: str | Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/asset_metadata_service.py:26

write_asset_metadata

def write_asset_metadata(source_path: str | Path, *, asset_id: str, type_id: str, importer: str='', importer_settings: dict[str, Any] | None=None, previous_paths: list[str] | tuple[str, ...]=()) -> Path

module function · public name · tech_connector/game_engine/assets/asset_metadata_service.py:42

ensure_asset_metadata

def ensure_asset_metadata(source_path: str | Path, type_id: str, *, preferred_asset_id: str='', importer: str='', importer_settings: dict[str, Any] | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/asset_metadata_service.py:87

tech_connector.game_engine.assets.asset_operations_service

validate_fbx_import

def validate_fbx_import(source: Path, type_id: str) -> None

module function · public name · tech_connector/game_engine/assets/asset_operations_service.py:22

Preflight FBX imports before a raw file is registered as a native asset.

AssetOperationReceipt.to_dict

def AssetOperationReceipt.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/asset_operations_service.py:60

AssetReferenceFixupReceipt.to_dict

def AssetReferenceFixupReceipt.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/asset_operations_service.py:73

AssetReferenceReplacementPlan.can_execute

def AssetReferenceReplacementPlan.can_execute(self) -> bool

class method · public name · tech_connector/game_engine/assets/asset_operations_service.py:86

AssetReferenceReplacementPlan.to_dict

def AssetReferenceReplacementPlan.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/asset_operations_service.py:89

AssetReferenceReplacementReceipt.to_dict

def AssetReferenceReplacementReceipt.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/asset_operations_service.py:100

AssetInUseError.__init__

def AssetInUseError.__init__(self, asset_id: str, referencers: tuple[str, ...]) -> None

class method · internal · tech_connector/game_engine/assets/asset_operations_service.py:130

AssetOperationsService.__init__

def AssetOperationsService.__init__(self, project_root: str | Path, database: AssetDatabase, registry: AssetTypeRegistry | None=None) -> None

class method · internal · tech_connector/game_engine/assets/asset_operations_service.py:143

AssetOperationsService.can_undo

def AssetOperationsService.can_undo(self) -> bool

class method · public name · tech_connector/game_engine/assets/asset_operations_service.py:156

AssetOperationsService.undo_label

def AssetOperationsService.undo_label(self) -> str

class method · public name · tech_connector/game_engine/assets/asset_operations_service.py:160

AssetOperationsService.undo_last

def AssetOperationsService.undo_last(self) -> Any

class method · public name · tech_connector/game_engine/assets/asset_operations_service.py:163

AssetOperationsService.undo_group

def AssetOperationsService.undo_group(self, label: str)

class method · public name · tech_connector/game_engine/assets/asset_operations_service.py:170

Collapse child operations into one undo and roll all of them back on failure.

AssetOperationsService.create_asset

def AssetOperationsService.create_asset(self, type_id: str, name: str, *, folder: str | Path='Assets', properties: dict[str, Any] | None=None) -> AssetOperationReceipt

class method · public name · tech_connector/game_engine/assets/asset_operations_service.py:185

AssetOperationsService.import_asset

def AssetOperationsService.import_asset(self, source_path: str | Path, *, folder: str | Path='Assets', type_id: str='', importer_settings: dict[str, Any] | None=None, conflict_policy: str='error', cancellation_event: Any | None=None, progress_callback: Callable[[int, int], None] | None=None) -> AssetOperationReceipt

class method · public name · tech_connector/game_engine/assets/asset_operations_service.py:236

AssetOperationsService.move_asset

def AssetOperationsService.move_asset(self, asset_id: str, destination: str | Path, *, _record_undo: bool=True) -> AssetOperationReceipt

class method · public name · tech_connector/game_engine/assets/asset_operations_service.py:307

AssetOperationsService.rename_asset

def AssetOperationsService.rename_asset(self, asset_id: str, new_name: str) -> AssetOperationReceipt

class method · public name · tech_connector/game_engine/assets/asset_operations_service.py:354

AssetOperationsService.duplicate_asset

def AssetOperationsService.duplicate_asset(self, asset_id: str, *, destination: str | Path | None=None) -> AssetOperationReceipt

class method · public name · tech_connector/game_engine/assets/asset_operations_service.py:360

AssetOperationsService.reimport_asset

def AssetOperationsService.reimport_asset(self, asset_id: str) -> AssetOperationReceipt

class method · public name · tech_connector/game_engine/assets/asset_operations_service.py:386

AssetOperationsService.set_asset_tags

def AssetOperationsService.set_asset_tags(self, asset_id: str, *, add: tuple[str, ...]=(), remove: tuple[str, ...]=(), _record_undo: bool=True) -> AssetOperationReceipt

class method · public name · tech_connector/game_engine/assets/asset_operations_service.py:416

AssetOperationsService.delete_asset

def AssetOperationsService.delete_asset(self, asset_id: str, *, replacement_asset_id: str='', _record_undo: bool=True) -> AssetDeleteReceipt

class method · public name · tech_connector/game_engine/assets/asset_operations_service.py:439

AssetOperationsService.plan_reference_replacement

def AssetOperationsService.plan_reference_replacement(self, asset_id: str, replacement_asset_id: str, *, owner_asset_ids: tuple[str, ...]=()) -> AssetReferenceReplacementPlan

class method · public name · tech_connector/game_engine/assets/asset_operations_service.py:505

AssetOperationsService.replace_asset_references

def AssetOperationsService.replace_asset_references(self, asset_id: str, replacement_asset_id: str, *, owner_asset_ids: tuple[str, ...]=(), _record_undo: bool=True) -> AssetReferenceReplacementReceipt

class method · public name · tech_connector/game_engine/assets/asset_operations_service.py:544

AssetOperationsService.validate_asset

def AssetOperationsService.validate_asset(self, asset_id: str) -> AssetValidationReport

class method · public name · tech_connector/game_engine/assets/asset_operations_service.py:598

AssetOperationsService.validate_all

def AssetOperationsService.validate_all(self) -> tuple[AssetValidationReport, ...]

class method · public name · tech_connector/game_engine/assets/asset_operations_service.py:739

AssetOperationsService.move_assets

def AssetOperationsService.move_assets(self, asset_ids: list[str] | tuple[str, ...], destination_folder: str | Path) -> tuple[AssetOperationReceipt, ...]

class method · public name · tech_connector/game_engine/assets/asset_operations_service.py:742

AssetOperationsService.resolve_redirect

def AssetOperationsService.resolve_redirect(self, previous_path: str | Path) -> AssetRecord | None

class method · public name · tech_connector/game_engine/assets/asset_operations_service.py:750

AssetOperationsService.redirector_report

def AssetOperationsService.redirector_report(self) -> tuple[dict[str, Any], ...]

class method · public name · tech_connector/game_engine/assets/asset_operations_service.py:755

Describe every recorded path redirect and whether it still resolves.

AssetOperationsService.repair_project_references

def AssetOperationsService.repair_project_references(self, *, prune_stale_redirectors: bool=True) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/asset_operations_service.py:771

Repair all known legacy path aliases and optionally remove dead redirectors.

AssetOperationsService.reference_report

def AssetOperationsService.reference_report(self, asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/asset_operations_service.py:799

AssetOperationsService.fix_legacy_path_references

def AssetOperationsService.fix_legacy_path_references(self, asset_id: str) -> AssetReferenceFixupReceipt

class method · public name · tech_connector/game_engine/assets/asset_operations_service.py:819

AssetOperationsService._require_asset

def AssetOperationsService._require_asset(self, asset_id: str) -> AssetRecord

class method · internal · tech_connector/game_engine/assets/asset_operations_service.py:865

AssetOperationsService._project_destination

def AssetOperationsService._project_destination(self, folder: str | Path, filename: str) -> Path

class method · internal · tech_connector/game_engine/assets/asset_operations_service.py:871

AssetOperationsService._resolve_project_path

def AssetOperationsService._resolve_project_path(self, value: str | Path) -> Path

class method · internal · tech_connector/game_engine/assets/asset_operations_service.py:874

AssetOperationsService._project_relative

def AssetOperationsService._project_relative(self, path: Path) -> str

class method · internal · tech_connector/game_engine/assets/asset_operations_service.py:883

AssetOperationsService._remember_undo

def AssetOperationsService._remember_undo(self, label: str, callback: Callable[[], Any]) -> None

class method · internal · tech_connector/game_engine/assets/asset_operations_service.py:889

AssetOperationsService._restore_payload

def AssetOperationsService._restore_payload(self, path: Path, payload: bytes, asset_id: str) -> AssetOperationReceipt

class method · internal · tech_connector/game_engine/assets/asset_operations_service.py:893

AssetOperationsService._restore_metadata

def AssetOperationsService._restore_metadata(self, asset_id: str, metadata: dict[str, Any]) -> AssetOperationReceipt

class method · internal · tech_connector/game_engine/assets/asset_operations_service.py:907

AssetOperationsService._restore_deleted

def AssetOperationsService._restore_deleted(self, record: AssetRecord, trash_path: Path, outgoing_edges: tuple[tuple[str, str], ...], referencer_snapshots: dict[str, tuple[tuple[tuple[str, str], ...], bytes | None]]) -> AssetOperationReceipt

class method · internal · tech_connector/game_engine/assets/asset_operations_service.py:918

AssetOperationsService._restore_reference_snapshots

def AssetOperationsService._restore_reference_snapshots(self, snapshots: dict[str, tuple[tuple[tuple[str, str], ...], bytes | None]]) -> tuple[str, ...]

class method · internal · tech_connector/game_engine/assets/asset_operations_service.py:951

AssetOperationsService._read_redirectors

def AssetOperationsService._read_redirectors(self) -> dict[str, dict[str, str]]

class method · internal · tech_connector/game_engine/assets/asset_operations_service.py:968

AssetOperationsService._write_redirector

def AssetOperationsService._write_redirector(self, previous_path: str, asset_id: str, current_path: str) -> None

class method · internal · tech_connector/game_engine/assets/asset_operations_service.py:977

AssetOperationsService._save_redirectors

def AssetOperationsService._save_redirectors(self, redirectors: dict[str, dict[str, str]]) -> None

class method · internal · tech_connector/game_engine/assets/asset_operations_service.py:984

_safe_asset_name

def _safe_asset_name(value: str) -> str

module function · internal · tech_connector/game_engine/assets/asset_operations_service.py:994

_copy_file_cancellable

def _copy_file_cancellable(source: Path, destination: Path, *, cancellation_event: Any | None=None, progress_callback: Callable[[int, int], None] | None=None) -> None

module function · internal · tech_connector/game_engine/assets/asset_operations_service.py:1001

Copy in chunks and atomically publish only a fully completed import.

_unique_copy_path

def _unique_copy_path(source: Path) -> Path

module function · internal · tech_connector/game_engine/assets/asset_operations_service.py:1033

_is_json_authored_asset

def _is_json_authored_asset(path: Path) -> bool

module function · internal · tech_connector/game_engine/assets/asset_operations_service.py:1044

_replace_legacy_paths

def _replace_legacy_paths(value: Any, aliases: dict[str, str]) -> tuple[Any, int]

module function · internal · tech_connector/game_engine/assets/asset_operations_service.py:1049

tech_connector.game_engine.assets.asset_production_service

AssetAuditReport.ready

def AssetAuditReport.ready(self) -> bool

class method · public name · tech_connector/game_engine/assets/asset_production_service.py:36

AssetAuditReport.to_dict

def AssetAuditReport.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/asset_production_service.py:39

AssetProductionService.__init__

def AssetProductionService.__init__(self, project_root: str | Path, database: AssetDatabase, registry: AssetTypeRegistry | None=None) -> None

class method · internal · tech_connector/game_engine/assets/asset_production_service.py:44

AssetProductionService.audit

def AssetProductionService.audit(self) -> AssetAuditReport

class method · public name · tech_connector/game_engine/assets/asset_production_service.py:55

AssetProductionService.cook_manifest

def AssetProductionService.cook_manifest(self, root_asset_ids: Iterable[str], *, platform: str='desktop', quality: str='high') -> AssetCookReceipt

class method · public name · tech_connector/game_engine/assets/asset_production_service.py:81

AssetProductionService._project_relative

def AssetProductionService._project_relative(self, path: Path) -> str

class method · internal · tech_connector/game_engine/assets/asset_production_service.py:412

tech_connector.game_engine.assets.asset_schema_service

asset_property_schema

def asset_property_schema(type_id: str) -> tuple[AssetPropertyDescriptor, ...]

module function · public name · tech_connector/game_engine/assets/asset_schema_service.py:602

default_asset_properties

def default_asset_properties(type_id: str) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/asset_schema_service.py:606

merge_asset_properties

def merge_asset_properties(type_id: str, values: dict[str, Any] | None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/asset_schema_service.py:610

default_import_settings

def default_import_settings(type_id: str) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/asset_schema_service.py:627

merge_import_settings

def merge_import_settings(type_id: str, values: dict[str, Any] | None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/asset_schema_service.py:631

tech_connector.game_engine.assets.asset_type_registry

AssetTypeDescriptor.__post_init__

def AssetTypeDescriptor.__post_init__(self) -> None

class method · internal · tech_connector/game_engine/assets/asset_type_registry.py:35

AssetTypeRegistry.__init__

def AssetTypeRegistry.__init__(self, descriptors: Iterable[AssetTypeDescriptor]=()) -> None

class method · internal · tech_connector/game_engine/assets/asset_type_registry.py:53

AssetTypeRegistry.register

def AssetTypeRegistry.register(self, descriptor: AssetTypeDescriptor, *, replace: bool=False) -> AssetTypeDescriptor

class method · public name · tech_connector/game_engine/assets/asset_type_registry.py:59

AssetTypeRegistry.unregister

def AssetTypeRegistry.unregister(self, type_id: str) -> None

class method · public name · tech_connector/game_engine/assets/asset_type_registry.py:70

AssetTypeRegistry.descriptor

def AssetTypeRegistry.descriptor(self, type_id: str) -> AssetTypeDescriptor | None

class method · public name · tech_connector/game_engine/assets/asset_type_registry.py:80

AssetTypeRegistry.require

def AssetTypeRegistry.require(self, type_id: str) -> AssetTypeDescriptor

class method · public name · tech_connector/game_engine/assets/asset_type_registry.py:83

AssetTypeRegistry.all

def AssetTypeRegistry.all(self, *, family: str='', creatable: bool | None=None) -> tuple[AssetTypeDescriptor, ...]

class method · public name · tech_connector/game_engine/assets/asset_type_registry.py:89

AssetTypeRegistry.infer

def AssetTypeRegistry.infer(self, path: str | Path) -> AssetTypeDescriptor | None

class method · public name · tech_connector/game_engine/assets/asset_type_registry.py:97

AssetTypeRegistry.families

def AssetTypeRegistry.families(self) -> tuple[str, ...]

class method · public name · tech_connector/game_engine/assets/asset_type_registry.py:106

_type

def _type(type_id: str, name: str, family: str, extensions: tuple[str, ...]=(), *, creatable: bool=False, importable: bool=False, editor: str='generic', preview: str='generic', loader: str='data', cooker: str='data', hot_reload: str='restart_required', color: str='#8da7b8', standard_editor: str='Asset Editor', suite: str='', maturity: str='authoring_preview', python_api: str='editor.assets', node_graph: str='', bake_modes: tuple[str, ...]=()) -> AssetTypeDescriptor

module function · internal · tech_connector/game_engine/assets/asset_type_registry.py:110

builtin_asset_type_registry

def builtin_asset_type_registry() -> AssetTypeRegistry

module function · public name · tech_connector/game_engine/assets/asset_type_registry.py:215

Return an independent registry so plugins can extend it safely.

tech_connector.game_engine.assets.audio_asset_service

AudioIssue.to_dict

def AudioIssue.to_dict(self) -> dict[str, str]

class method · public name · tech_connector/game_engine/assets/audio_asset_service.py:47

AudioConversionReceipt.succeeded

def AudioConversionReceipt.succeeded(self) -> bool

class method · public name · tech_connector/game_engine/assets/audio_asset_service.py:60

AudioConversionReceipt.to_dict

def AudioConversionReceipt.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/audio_asset_service.py:63

audio_clip_defaults

def audio_clip_defaults() -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/audio_asset_service.py:67

sound_cue_defaults

def sound_cue_defaults() -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/audio_asset_service.py:80

audio_mixer_defaults

def audio_mixer_defaults() -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/audio_asset_service.py:92

attenuation_defaults

def attenuation_defaults() -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/audio_asset_service.py:107

reverb_defaults

def reverb_defaults(*, preset: str='room') -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/audio_asset_service.py:121

AudioAssetService.__init__

def AudioAssetService.__init__(self, project_root: str | Path, database: AssetDatabase) -> None

class method · internal · tech_connector/game_engine/assets/audio_asset_service.py:136

AudioAssetService.clip_settings

def AudioAssetService.clip_settings(self, asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/audio_asset_service.py:140

AudioAssetService.set_clip_settings

def AudioAssetService.set_clip_settings(self, asset_id: str, values: Mapping[str, Any]) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/audio_asset_service.py:144

AudioAssetService.create_sound_cue

def AudioAssetService.create_sound_cue(self, name: str, *, properties: Mapping[str, Any] | None=None, folder: str | Path='Assets/Audio/Cues')

class method · public name · tech_connector/game_engine/assets/audio_asset_service.py:151

AudioAssetService.create_mixer

def AudioAssetService.create_mixer(self, name: str, *, properties: Mapping[str, Any] | None=None, folder: str | Path='Assets/Audio/Mixers')

class method · public name · tech_connector/game_engine/assets/audio_asset_service.py:154

AudioAssetService.create_attenuation

def AudioAssetService.create_attenuation(self, name: str, *, properties: Mapping[str, Any] | None=None, folder: str | Path='Assets/Audio/Attenuation')

class method · public name · tech_connector/game_engine/assets/audio_asset_service.py:157

AudioAssetService.create_reverb

def AudioAssetService.create_reverb(self, name: str, *, preset: str='room', properties: Mapping[str, Any] | None=None, folder: str | Path='Assets/Audio/Reverb')

class method · public name · tech_connector/game_engine/assets/audio_asset_service.py:160

AudioAssetService.properties

def AudioAssetService.properties(self, asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/audio_asset_service.py:163

AudioAssetService.update

def AudioAssetService.update(self, asset_id: str, values: Mapping[str, Any], *, replace: bool=False) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/audio_asset_service.py:168

AudioAssetService.validate

def AudioAssetService.validate(self, asset_id: str) -> list[AudioIssue]

class method · public name · tech_connector/game_engine/assets/audio_asset_service.py:173

AudioAssetService.cook

def AudioAssetService.cook(self, asset_id: str, *, platform: str='desktop', quality: str='high') -> DerivedArtifact

class method · public name · tech_connector/game_engine/assets/audio_asset_service.py:176

AudioAssetService.convert_unreal

def AudioAssetService.convert_unreal(self, payload: Mapping[str, Any], *, folder: str | Path='Assets/Audio/Converted/Unreal') -> AudioConversionReceipt

class method · public name · tech_connector/game_engine/assets/audio_asset_service.py:184

AudioAssetService.convert_unity

def AudioAssetService.convert_unity(self, payload: Mapping[str, Any], *, folder: str | Path='Assets/Audio/Converted/Unity') -> AudioConversionReceipt

class method · public name · tech_connector/game_engine/assets/audio_asset_service.py:187

AudioAssetService._convert

def AudioAssetService._convert(self, provider: str, payload: Mapping[str, Any], folder: str | Path) -> AudioConversionReceipt

class method · internal · tech_connector/game_engine/assets/audio_asset_service.py:190

AudioAssetService._create

def AudioAssetService._create(self, type_id: str, name: str, defaults: dict[str, Any], properties: Mapping[str, Any] | None, folder: str | Path)

class method · internal · tech_connector/game_engine/assets/audio_asset_service.py:203

AudioAssetService._require

def AudioAssetService._require(self, asset_id: str, types: Iterable[str])

class method · internal · tech_connector/game_engine/assets/audio_asset_service.py:206

AudioAssetService._load

def AudioAssetService._load(self, asset_id: str)

class method · internal · tech_connector/game_engine/assets/audio_asset_service.py:212

AudioAssetService._save

def AudioAssetService._save(self, asset_id: str, properties: Mapping[str, Any]) -> None

class method · internal · tech_connector/game_engine/assets/audio_asset_service.py:218

validate_audio_asset

def validate_audio_asset(type_id: str, values: Mapping[str, Any]) -> list[AudioIssue]

module function · public name · tech_connector/game_engine/assets/audio_asset_service.py:226

compile_audio_clip_payload

def compile_audio_clip_payload(source_path: Path, settings: Mapping[str, Any], *, platform: str, quality: str) -> bytes

module function · public name · tech_connector/game_engine/assets/audio_asset_service.py:267

compile_audio_payload

def compile_audio_payload(type_id: str, values: Mapping[str, Any], *, platform: str, quality: str) -> bytes

module function · public name · tech_connector/game_engine/assets/audio_asset_service.py:272

_normalize_audio

def _normalize_audio(type_id: str, values: Mapping[str, Any]) -> dict[str, Any]

module function · internal · tech_connector/game_engine/assets/audio_asset_service.py:283

_audio_references

def _audio_references(type_id: str, values: Mapping[str, Any]) -> set[tuple[str, str]]

module function · internal · tech_connector/game_engine/assets/audio_asset_service.py:287

_convert_unreal_audio

def _convert_unreal_audio(payload: Mapping[str, Any], diagnostics: list[AudioIssue]) -> tuple[list[dict[str, Any]], str]

module function · internal · tech_connector/game_engine/assets/audio_asset_service.py:305

_convert_unity_audio

def _convert_unity_audio(payload: Mapping[str, Any], diagnostics: list[AudioIssue]) -> tuple[list[dict[str, Any]], str]

module function · internal · tech_connector/game_engine/assets/audio_asset_service.py:321

_replace_refs

def _replace_refs(value: Any, mapping: Mapping[str, str]) -> Any

module function · internal · tech_connector/game_engine/assets/audio_asset_service.py:334

_schema

def _schema(type_id: str) -> str

module function · internal · tech_connector/game_engine/assets/audio_asset_service.py:340

_safe_name

def _safe_name(value: str) -> str

module function · internal · tech_connector/game_engine/assets/audio_asset_service.py:344

tech_connector.game_engine.assets.behavior_graph_asset_service

BehaviorGraphIssue.to_dict

def BehaviorGraphIssue.to_dict(self) -> dict[str, str]

class method · public name · tech_connector/game_engine/assets/behavior_graph_asset_service.py:32

BehaviorGraphAssetService.__init__

def BehaviorGraphAssetService.__init__(self, project_root: str | Path, database: AssetDatabase) -> None

class method · internal · tech_connector/game_engine/assets/behavior_graph_asset_service.py:37

BehaviorGraphAssetService.create

def BehaviorGraphAssetService.create(self, type_id: str, name: str, *, program: EngineGraphProgram | Mapping[str, Any] | None=None, folder: str | Path='Assets/Gameplay/Graphs')

class method · public name · tech_connector/game_engine/assets/behavior_graph_asset_service.py:42

BehaviorGraphAssetService.properties

def BehaviorGraphAssetService.properties(self, asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/behavior_graph_asset_service.py:55

BehaviorGraphAssetService.program

def BehaviorGraphAssetService.program(self, asset_id: str) -> EngineGraphProgram

class method · public name · tech_connector/game_engine/assets/behavior_graph_asset_service.py:59

BehaviorGraphAssetService.update

def BehaviorGraphAssetService.update(self, asset_id: str, program: EngineGraphProgram | Mapping[str, Any]) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/behavior_graph_asset_service.py:62

BehaviorGraphAssetService.validate

def BehaviorGraphAssetService.validate(self, asset_id: str) -> list[BehaviorGraphIssue]

class method · public name · tech_connector/game_engine/assets/behavior_graph_asset_service.py:73

BehaviorGraphAssetService.manifest

def BehaviorGraphAssetService.manifest(self, asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/behavior_graph_asset_service.py:78

BehaviorGraphAssetService.cook

def BehaviorGraphAssetService.cook(self, asset_id: str, *, platform: str='desktop', quality: str='high') -> DerivedArtifact

class method · public name · tech_connector/game_engine/assets/behavior_graph_asset_service.py:85

BehaviorGraphAssetService.execute

def BehaviorGraphAssetService.execute(self, asset_id: str, context: Mapping[str, Any] | None=None) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/behavior_graph_asset_service.py:93

BehaviorGraphAssetService._load

def BehaviorGraphAssetService._load(self, asset_id: str)

class method · internal · tech_connector/game_engine/assets/behavior_graph_asset_service.py:101

_identifier

def _identifier(value: str) -> str

module function · internal · tech_connector/game_engine/assets/behavior_graph_asset_service.py:110

_asset_references

def _asset_references(value: Any) -> set[str]

module function · internal · tech_connector/game_engine/assets/behavior_graph_asset_service.py:114

tech_connector.game_engine.assets.blender_character_lod_worker

_triangles

def _triangles(mesh)

module function · internal · tech_connector/game_engine/assets/blender_character_lod_worker.py:11

_meshes

def _meshes(bpy)

module function · internal · tech_connector/game_engine/assets/blender_character_lod_worker.py:14

_armatures

def _armatures(bpy)

module function · internal · tech_connector/game_engine/assets/blender_character_lod_worker.py:24

_errors

def _errors(before, after, preserve_skinning)

module function · internal · tech_connector/game_engine/assets/blender_character_lod_worker.py:29

generate

def generate(request_path, result_path)

module function · public name · tech_connector/game_engine/assets/blender_character_lod_worker.py:41

tech_connector.game_engine.assets.build_profile_service

BuildProfilePlan.ready

def BuildProfilePlan.ready(self) -> bool

class method · public name · tech_connector/game_engine/assets/build_profile_service.py:35

BuildProfilePlan.to_dict

def BuildProfilePlan.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/build_profile_service.py:38

plan_build_profile

def plan_build_profile(database: AssetDatabase, properties: Mapping[str, Any]) -> BuildProfilePlan

module function · public name · tech_connector/game_engine/assets/build_profile_service.py:42

tech_connector.game_engine.assets.character_asset_service

character_performance_profile

def character_performance_profile(name: str) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/character_asset_service.py:30

recommended_mesh_lods

def recommended_mesh_lods(count: int=4) -> list[dict[str, Any]]

module function · public name · tech_connector/game_engine/assets/character_asset_service.py:37

generate_bone_lods

def generate_bone_lods(bones: Iterable[Mapping[str, Any] | str], *, count: int=4, preserve_bones: Iterable[str]=()) -> list[dict[str, Any]]

module function · public name · tech_connector/game_engine/assets/character_asset_service.py:53

Build deterministic bone evaluation sets and parent remaps for mesh LODs.

validate_character_lods

def validate_character_lods(properties: Mapping[str, Any]) -> tuple[CharacterAssetIssue, ...]

module function · public name · tech_connector/game_engine/assets/character_asset_service.py:113

validate_skin_binding_properties

def validate_skin_binding_properties(properties: Mapping[str, Any]) -> tuple[CharacterAssetIssue, ...]

module function · public name · tech_connector/game_engine/assets/character_asset_service.py:140

validate_skeleton_properties

def validate_skeleton_properties(properties: Mapping[str, Any]) -> tuple[CharacterAssetIssue, ...]

module function · public name · tech_connector/game_engine/assets/character_asset_service.py:166

compile_skeleton_payload

def compile_skeleton_payload(properties: Mapping[str, Any], *, platform: str='desktop', quality: str='high') -> bytes

module function · public name · tech_connector/game_engine/assets/character_asset_service.py:212

compile_skin_binding_payload

def compile_skin_binding_payload(properties: Mapping[str, Any], *, platform: str='desktop', quality: str='high') -> bytes

module function · public name · tech_connector/game_engine/assets/character_asset_service.py:240

Compile compact fixed-width GPU weights without altering source DCC weights.

compile_skeletal_mesh_plan

def compile_skeletal_mesh_plan(properties: Mapping[str, Any], *, platform: str='desktop', quality: str='high') -> bytes

module function · public name · tech_connector/game_engine/assets/character_asset_service.py:301

tech_connector.game_engine.assets.cloth_asset_service

ClothAutoSetupReceipt.to_dict

def ClothAutoSetupReceipt.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/cloth_asset_service.py:46

fabric_preset

def fabric_preset(name: str) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/cloth_asset_service.py:50

automatic_cloth_maps

def automatic_cloth_maps(vertex_count: int, *, fixed_vertices: Iterable[int]=(), transition_vertices: Mapping[int, float] | None=None, max_distance: float=1.0) -> ClothAutoSetupReceipt

module function · public name · tech_connector/game_engine/assets/cloth_asset_service.py:57

Create a reversible starting mask without modifying imported bone weights.

validate_cloth_properties

def validate_cloth_properties(properties: Mapping[str, Any], *, vertex_count: int | None=None) -> tuple[ClothAuthoringIssue, ...]

module function · public name · tech_connector/game_engine/assets/cloth_asset_service.py:91

compile_cloth_payload

def compile_cloth_payload(properties: Mapping[str, Any], *, platform: str='desktop', quality: str='high') -> bytes

module function · public name · tech_connector/game_engine/assets/cloth_asset_service.py:115

Compile deterministic runtime cloth data while retaining the source skin binding.

tech_connector.game_engine.assets.content_browser_lifecycle_service

AssetCollection.to_dict

def AssetCollection.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:35

ImportQueueItem.to_dict

def ImportQueueItem.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:53

AssetImportQueue.__init__

def AssetImportQueue.__init__(self, project_root: str | Path, operations: AssetOperationsService) -> None

class method · internal · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:60

AssetImportQueue.items

def AssetImportQueue.items(self) -> tuple[ImportQueueItem, ...]

class method · public name · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:68

AssetImportQueue.enqueue

def AssetImportQueue.enqueue(self, source_paths: Iterable[str | Path], *, folder: str='Assets', type_id: str='', importer_settings: Mapping[str, Any] | None=None, conflict_policy: str='rename') -> tuple[ImportQueueItem, ...]

class method · public name · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:72

AssetImportQueue.cancel

def AssetImportQueue.cancel(self, queue_id: str) -> bool

class method · public name · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:90

AssetImportQueue.retry

def AssetImportQueue.retry(self, queue_id: str) -> bool

class method · public name · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:108

AssetImportQueue.process_next

def AssetImportQueue.process_next(self) -> ImportQueueItem | None

class method · public name · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:120

AssetImportQueue.process_all

def AssetImportQueue.process_all(self) -> tuple[ImportQueueItem, ...]

class method · public name · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:162

AssetImportQueue.clear_finished

def AssetImportQueue.clear_finished(self) -> int

class method · public name · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:170

AssetImportQueue._find

def AssetImportQueue._find(self, queue_id: str) -> ImportQueueItem | None

class method · internal · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:177

AssetImportQueue._load

def AssetImportQueue._load(self) -> list[ImportQueueItem]

class method · internal · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:180

AssetImportQueue._save

def AssetImportQueue._save(self) -> None

class method · internal · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:203

ContentBrowserLifecycleService.__init__

def ContentBrowserLifecycleService.__init__(self, project_root: str | Path, database: AssetDatabase, registry: AssetTypeRegistry | None=None, operations: AssetOperationsService | None=None) -> None

class method · internal · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:211

ContentBrowserLifecycleService.collections

def ContentBrowserLifecycleService.collections(self) -> tuple[AssetCollection, ...]

class method · public name · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:222

ContentBrowserLifecycleService.save_collection

def ContentBrowserLifecycleService.save_collection(self, name: str, *, asset_ids: Iterable[str]=(), query: str='', kind: str='static') -> AssetCollection

class method · public name · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:235

ContentBrowserLifecycleService.delete_collection

def ContentBrowserLifecycleService.delete_collection(self, name: str) -> bool

class method · public name · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:254

ContentBrowserLifecycleService.add_to_collection

def ContentBrowserLifecycleService.add_to_collection(self, name: str, asset_ids: Iterable[str]) -> AssetCollection

class method · public name · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:262

ContentBrowserLifecycleService.remove_from_collection

def ContentBrowserLifecycleService.remove_from_collection(self, name: str, asset_ids: Iterable[str]) -> AssetCollection

class method · public name · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:270

ContentBrowserLifecycleService.collection

def ContentBrowserLifecycleService.collection(self, name: str) -> AssetCollection | None

class method · public name · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:279

ContentBrowserLifecycleService.collection_asset_ids

def ContentBrowserLifecycleService.collection_asset_ids(self, name: str, documents: Iterable[Mapping[str, Any]]=()) -> tuple[str, ...]

class method · public name · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:282

ContentBrowserLifecycleService.collection_matches

def ContentBrowserLifecycleService.collection_matches(self, name: str, document: Mapping[str, Any]) -> bool

class method · public name · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:293

ContentBrowserLifecycleService.asset_document

def ContentBrowserLifecycleService.asset_document(self, path: str | Path, type_id: str, asset_id: str='', *, source_control: str='not_queried', collections: Iterable[str]=(), cooked: bool | None=None) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:301

ContentBrowserLifecycleService.matches

def ContentBrowserLifecycleService.matches(self, document: Mapping[str, Any], query: str) -> bool

class method · public name · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:332

ContentBrowserLifecycleService.compile_query

def ContentBrowserLifecycleService.compile_query(query: str) -> tuple[tuple[str, bool], ...]

class method · public name · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:336

ContentBrowserLifecycleService.matches_compiled

def ContentBrowserLifecycleService.matches_compiled(self, document: Mapping[str, Any], terms: Iterable[tuple[str, bool]]) -> bool

class method · public name · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:346

ContentBrowserLifecycleService.search_help

def ContentBrowserLifecycleService.search_help(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:355

ContentBrowserLifecycleService.revision_history

def ContentBrowserLifecycleService.revision_history(self, asset_id: str, *, limit: int=50) -> tuple[dict[str, Any], ...]

class method · public name · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:362

ContentBrowserLifecycleService.source_control_snapshot

def ContentBrowserLifecycleService.source_control_snapshot(self, paths: Iterable[str | Path], *, runner: Callable[..., Any] | None=None) -> dict[str, dict[str, Any]]

class method · public name · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:365

ContentBrowserLifecycleService.perforce_history

def ContentBrowserLifecycleService.perforce_history(self, path: str | Path, *, limit: int=25, runner: Callable[..., Any] | None=None) -> tuple[dict[str, Any], ...]

class method · public name · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:408

Return depot revision history for one asset without modifying the workspace.

ContentBrowserLifecycleService.perforce_changelists

def ContentBrowserLifecycleService.perforce_changelists(self, *, status: str='pending', limit: int=50, runner: Callable[..., Any] | None=None) -> tuple[dict[str, Any], ...]

class method · public name · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:433

List recent pending or submitted changelists visible to the current client.

ContentBrowserLifecycleService.perforce_action

def ContentBrowserLifecycleService.perforce_action(self, paths: Iterable[str | Path], action: str, *, changelist: str='', confirmed: bool=False, runner: Callable[..., Any] | None=None) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:458

Run an explicit Perforce workspace action after caller confirmation.

ContentBrowserLifecycleService.reference_health

def ContentBrowserLifecycleService.reference_health(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:483

ContentBrowserLifecycleService._run_p4

def ContentBrowserLifecycleService._run_p4(arguments: list[str], *, runner: Callable[..., Any] | None=None) -> Any

class method · internal · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:492

ContentBrowserLifecycleService._token_matches

def ContentBrowserLifecycleService._token_matches(self, document: Mapping[str, Any], token: str) -> bool

class method · internal · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:500

ContentBrowserLifecycleService._read_state

def ContentBrowserLifecycleService._read_state(self) -> dict[str, Any]

class method · internal · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:524

ContentBrowserLifecycleService._write_collections

def ContentBrowserLifecycleService._write_collections(self, collections: Iterable[AssetCollection]) -> None

class method · internal · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:533

_atomic_json

def _atomic_json(path: Path, payload: Mapping[str, Any]) -> None

module function · internal · tech_connector/game_engine/assets/content_browser_lifecycle_service.py:541

tech_connector.game_engine.assets.editor_python_api

TCEditorAPI.__init__

def TCEditorAPI.__init__(self, project_root: str | Path, *, database: AssetDatabase | None=None, registry: AssetTypeRegistry | None=None) -> None

class method · internal · tech_connector/game_engine/assets/editor_python_api.py:112

TCEditorAPI.create_asset

def TCEditorAPI.create_asset(self, type_id: str, name: str, *, folder: str | Path='Assets', properties: Mapping[str, Any] | None=None)

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:150

TCEditorAPI.content_browser_assets

def TCEditorAPI.content_browser_assets(self, *, query: str='', collection: str='') -> tuple[dict[str, Any], ...]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:153

Return authored assets and recognized source files using the same rules as the UI.

TCEditorAPI.content_browser_search_help

def TCEditorAPI.content_browser_search_help(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:193

TCEditorAPI.content_browser_collections

def TCEditorAPI.content_browser_collections(self) -> tuple[dict[str, Any], ...]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:196

TCEditorAPI.save_content_browser_collection

def TCEditorAPI.save_content_browser_collection(self, name: str, *, asset_ids: Iterable[str]=(), query: str='', kind: str='static') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:199

TCEditorAPI.delete_content_browser_collection

def TCEditorAPI.delete_content_browser_collection(self, name: str) -> bool

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:206

TCEditorAPI.queue_asset_imports

def TCEditorAPI.queue_asset_imports(self, source_paths: Iterable[str | Path], *, folder: str='Assets', type_id: str='') -> tuple[dict[str, Any], ...]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:209

TCEditorAPI.process_asset_import_queue

def TCEditorAPI.process_asset_import_queue(self) -> tuple[dict[str, Any], ...]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:218

TCEditorAPI.cancel_asset_import

def TCEditorAPI.cancel_asset_import(self, queue_id: str) -> bool

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:221

TCEditorAPI.asset_revision_history

def TCEditorAPI.asset_revision_history(self, asset_id: str, *, limit: int=50) -> tuple[dict[str, Any], ...]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:224

TCEditorAPI.asset_source_control_status

def TCEditorAPI.asset_source_control_status(self, asset_ids: Iterable[str]) -> dict[str, dict[str, Any]]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:227

TCEditorAPI.asset_source_control_history

def TCEditorAPI.asset_source_control_history(self, asset_id: str, *, limit: int=25) -> tuple[dict[str, Any], ...]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:231

TCEditorAPI.perforce_changelists

def TCEditorAPI.perforce_changelists(self, *, status: str='pending', limit: int=50) -> tuple[dict[str, Any], ...]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:237

TCEditorAPI.perforce_asset_action

def TCEditorAPI.perforce_asset_action(self, asset_ids: Iterable[str], action: str, *, changelist: str='', confirmed: bool=False) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:240

TCEditorAPI.content_browser_reference_health

def TCEditorAPI.content_browser_reference_health(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:248

TCEditorAPI.repair_content_browser_references

def TCEditorAPI.repair_content_browser_references(self, *, prune_stale_redirectors: bool=True) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:251

TCEditorAPI.qualify_content_browser

def TCEditorAPI.qualify_content_browser(self, *, sample_count: int=50000, query_budget_ms: float=750.0, inventory_budget_ms: float=2000.0) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:254

TCEditorAPI.create_world_asset

def TCEditorAPI.create_world_asset(self, type_id: str, name: str, *, folder: str | Path='Assets/World', properties: Mapping[str, Any] | None=None)

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:265

Create Terrain, Foliage, Biome, Navigation, Lighting, Data Layer, HLOD, or World Partition data.

TCEditorAPI.get_world_asset

def TCEditorAPI.get_world_asset(self, asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:272

TCEditorAPI.update_world_asset

def TCEditorAPI.update_world_asset(self, asset_id: str, values: Mapping[str, Any], *, replace: bool=False) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:275

TCEditorAPI.validate_world_asset

def TCEditorAPI.validate_world_asset(self, asset_id: str) -> list[dict[str, Any]]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:278

TCEditorAPI.preview_world_asset

def TCEditorAPI.preview_world_asset(self, asset_id: str, *, maximum_resolution: int=257) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:281

TCEditorAPI.compile_world_asset

def TCEditorAPI.compile_world_asset(self, asset_id: str, *, platform: str='desktop', quality: str='high') -> DerivedArtifact

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:284

TCEditorAPI.sculpt_terrain

def TCEditorAPI.sculpt_terrain(self, asset_id: str, *, center: tuple[float, float], radius: float, strength: float, mode: str='raise', target_height: float | None=None) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:287

TCEditorAPI.paint_terrain_layer

def TCEditorAPI.paint_terrain_layer(self, asset_id: str, layer: str, *, center: tuple[float, float], radius: float, strength: float) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:295

TCEditorAPI.paint_foliage

def TCEditorAPI.paint_foliage(self, asset_id: str, *, center: tuple[float, float], radius: float, density: float=1.0, erase: bool=False, seed: int=0) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:303

TCEditorAPI.world_asset_visualization

def TCEditorAPI.world_asset_visualization(self, asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:311

TCEditorAPI.build_world_backend

def TCEditorAPI.build_world_backend(self, asset_id: str, *, platform: str='desktop', quality: str='high') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:325

TCEditorAPI.query_navigation_path

def TCEditorAPI.query_navigation_path(self, asset_id: str, *, start: tuple[float, float], goal: tuple[float, float], agent_name: str='') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:328

TCEditorAPI.plan_navigation_rebuild

def TCEditorAPI.plan_navigation_rebuild(self, asset_id: str, previous_values: Mapping[str, Any]) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:333

TCEditorAPI.open_world_streaming_runtime

def TCEditorAPI.open_world_streaming_runtime(self, world_partition_asset_id: str) -> WorldStreamingRuntime

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:336

TCEditorAPI.create_procedural_graph

def TCEditorAPI.create_procedural_graph(self, name: str, *, graph: ProceduralGraph | None=None, folder: str | Path='Assets/Procedural')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:341

Create an editable procedural geometry asset with deterministic runtime cooking.

TCEditorAPI.get_procedural_graph

def TCEditorAPI.get_procedural_graph(self, asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:348

TCEditorAPI.set_procedural_graph

def TCEditorAPI.set_procedural_graph(self, asset_id: str, values: Mapping[str, Any], *, replace: bool=False) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:351

TCEditorAPI.validate_procedural_graph

def TCEditorAPI.validate_procedural_graph(self, asset_id: str) -> list[dict[str, Any]]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:356

TCEditorAPI.cook_procedural_graph

def TCEditorAPI.cook_procedural_graph(self, asset_id: str, *, platform: str='desktop', quality: str='high') -> DerivedArtifact

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:359

TCEditorAPI.procedural_operation_catalog

def TCEditorAPI.procedural_operation_catalog(self) -> tuple[str, ...]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:364

TCEditorAPI.procedural_execution_plan

def TCEditorAPI.procedural_execution_plan(self, asset_id: str, *, backend: str='auto') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:367

TCEditorAPI.procedural_native_document

def TCEditorAPI.procedural_native_document(self, asset_id: str, target: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:370

Serialize an editable Unreal, Blender, Houdini, Unity, or Godot adapter document.

TCEditorAPI.import_procedural_native_document

def TCEditorAPI.import_procedural_native_document(self, document: Mapping[str, Any], *, name: str='ImportedProceduralGraph', folder: str | Path='Assets/Procedural')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:374

Convert an adapter document from Unreal, Blender, Houdini, Unity, or Godot into a TC graph asset.

TCEditorAPI.procedural_diagnostics

def TCEditorAPI.procedural_diagnostics(self, asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:383

TCEditorAPI.cook_procedural_tasks

def TCEditorAPI.cook_procedural_tasks(self, asset_id: str, *, initial_attributes: Mapping[str, Any] | None=None, workers: int=1) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:386

TCEditorAPI.step_procedural_simulation

def TCEditorAPI.step_procedural_simulation(self, asset_id: str, *, session_id: str='preview', delta_time: float | None=None) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:398

TCEditorAPI.reset_procedural_simulation

def TCEditorAPI.reset_procedural_simulation(self, asset_id: str, *, session_id: str='preview') -> bool

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:409

TCEditorAPI.export_assets

def TCEditorAPI.export_assets(self, asset_ids: Iterable[str], destination: str | Path, *, target: str='generic', include_dependencies: bool=True, require_ready: bool=False) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:414

Export a dependency-closed package for Unreal, Unity, Blender, Maya, Houdini, or generic interchange.

TCEditorAPI.asset_conversion_coverage

def TCEditorAPI.asset_conversion_coverage(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:424

Report conversion classification/readiness for every registered asset type and target.

TCEditorAPI.asset_dependency_graph

def TCEditorAPI.asset_dependency_graph(self, asset_id: str, *, include_referencers: bool=True, max_depth: int=32) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:428

Return dependencies, referencers, cycle diagnostics, and package contribution.

TCEditorAPI.plan_asset_reference_replacement

def TCEditorAPI.plan_asset_reference_replacement(self, asset_id: str, replacement_asset_id: str, *, owner_asset_ids: Iterable[str]=()) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:438

Preview every database and authored-file reference affected by replacement.

TCEditorAPI.replace_asset_references

def TCEditorAPI.replace_asset_references(self, asset_id: str, replacement_asset_id: str, *, owner_asset_ids: Iterable[str]=()) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:446

Replace selected references as one undoable editor operation.

TCEditorAPI.plan_bulk_asset_operation

def TCEditorAPI.plan_bulk_asset_operation(self, operation: str, asset_ids: Iterable[str], *, options: Mapping[str, Any] | None=None) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:454

TCEditorAPI.execute_bulk_asset_operation

def TCEditorAPI.execute_bulk_asset_operation(self, operation: str, asset_ids: Iterable[str], *, options: Mapping[str, Any] | None=None) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:459

TCEditorAPI.create_level_sequence

def TCEditorAPI.create_level_sequence(self, name: str, *, folder: str | Path='Assets/Cinematics', duration_frames: int=300, fps: int=30)

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:465

Create a native cinematic Level Sequence asset.

TCEditorAPI.sequence_binding

def TCEditorAPI.sequence_binding(name: str, *, object_id: str='', binding_type: str='possessable', parent_binding_id: str='', component_path: str='', bone_name: str='', socket_name: str='', skeleton_asset_id: str='') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:473

TCEditorAPI.sequence_folder

def TCEditorAPI.sequence_folder(name: str, *, parent_id: str='') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:484

TCEditorAPI.sequence_track

def TCEditorAPI.sequence_track(track_type: str, name: str='', *, binding_id: str='', parent_id: str='') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:488

TCEditorAPI.sequence_section

def TCEditorAPI.sequence_section(name: str, start_frame: int, end_frame: int, *, asset_id: str='', row: int=0) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:492

TCEditorAPI.sequence_level_blend

def TCEditorAPI.sequence_level_blend(name: str, level_asset_id: str, start_frame: int, end_frame: int, *, ease_in: int=30, ease_out: int=30, blend_mode: str='crossfade') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:496

TCEditorAPI.sequence_key

def TCEditorAPI.sequence_key(section: dict[str, Any], channel_name: str, frame: float, value: Any, *, interpolation: str='linear') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:500

TCEditorAPI.get_level_sequence

def TCEditorAPI.get_level_sequence(self, asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:503

TCEditorAPI.update_level_sequence

def TCEditorAPI.update_level_sequence(self, asset_id: str, values: Mapping[str, Any])

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:506

TCEditorAPI.validate_level_sequence

def TCEditorAPI.validate_level_sequence(self, asset_id: str)

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:509

TCEditorAPI.evaluate_level_sequence

def TCEditorAPI.evaluate_level_sequence(self, asset_id: str, frame: int) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:512

TCEditorAPI.level_sequence_render_jobs

def TCEditorAPI.level_sequence_render_jobs(self, asset_id: str) -> tuple[dict[str, Any], ...]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:515

TCEditorAPI.cook_level_sequence

def TCEditorAPI.cook_level_sequence(self, asset_id: str, *, platform: str='windows', quality: str='high')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:518

TCEditorAPI.add_sequence_binding

def TCEditorAPI.add_sequence_binding(self, asset_id: str, name: str, **target: Any) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:521

TCEditorAPI.add_sequence_folder

def TCEditorAPI.add_sequence_folder(self, asset_id: str, name: str, *, parent_id: str='') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:524

TCEditorAPI.add_sequence_track

def TCEditorAPI.add_sequence_track(self, asset_id: str, track_type: str, name: str='', *, binding_id: str='', parent_id: str='') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:527

TCEditorAPI.add_sequence_section

def TCEditorAPI.add_sequence_section(self, asset_id: str, track_id: str, name: str, start_frame: int, end_frame: int, *, referenced_asset_id: str='', row: int=0) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:530

TCEditorAPI.add_sequence_key

def TCEditorAPI.add_sequence_key(self, asset_id: str, track_id: str, section_id: str, channel_name: str, frame: float, value: Any, *, interpolation: str='linear', in_tangent: float=0.0, out_tangent: float=0.0) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:533

TCEditorAPI.transform_sequence_keys

def TCEditorAPI.transform_sequence_keys(self, asset_id: str, track_id: str, section_id: str, channel_name: str, **transform: float) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:536

TCEditorAPI.remove_sequence_track

def TCEditorAPI.remove_sequence_track(self, asset_id: str, track_id: str) -> bool

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:539

TCEditorAPI.remove_sequence_section

def TCEditorAPI.remove_sequence_section(self, asset_id: str, track_id: str, section_id: str) -> bool

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:542

TCEditorAPI.sequence_from_unreal

def TCEditorAPI.sequence_from_unreal(payload: Mapping[str, Any]) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:546

TCEditorAPI.sequence_from_unity

def TCEditorAPI.sequence_from_unity(payload: Mapping[str, Any]) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:550

TCEditorAPI.sequence_to_unreal

def TCEditorAPI.sequence_to_unreal(payload: Mapping[str, Any]) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:554

TCEditorAPI.sequence_to_unity

def TCEditorAPI.sequence_to_unity(payload: Mapping[str, Any]) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:558

TCEditorAPI.create_prefab

def TCEditorAPI.create_prefab(self, name: str, entities: Sequence[Mapping[str, Any]], *, folder: str | Path='Assets/World', exposed_properties: Mapping[str, Any] | None=None)

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:561

Create a reusable Prefab with stable entity IDs.

TCEditorAPI.material_presets

def TCEditorAPI.material_presets(self) -> tuple[str, ...]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:570

TCEditorAPI.create_material

def TCEditorAPI.create_material(self, name: str, *, preset: str='default_lit', domain: str='', shading_model: str='', blend_mode: str='', folder: str | Path='Assets/Materials')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:573

TCEditorAPI.apply_material_preset

def TCEditorAPI.apply_material_preset(self, asset_id: str, preset: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:583

TCEditorAPI.create_material_instance

def TCEditorAPI.create_material_instance(self, name: str, parent_material_id: str, *, overrides: Mapping[str, Any] | None=None, static_switch_overrides: Mapping[str, bool] | None=None, folder: str | Path='Assets/Materials/Instances')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:586

TCEditorAPI.resolve_material

def TCEditorAPI.resolve_material(self, asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:596

TCEditorAPI.set_material_instance_overrides

def TCEditorAPI.set_material_instance_overrides(self, asset_id: str, overrides: Mapping[str, Any], *, replace: bool=False, static_switches: Mapping[str, bool] | None=None) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:599

TCEditorAPI.revert_material_instance_overrides

def TCEditorAPI.revert_material_instance_overrides(self, asset_id: str, names: Sequence[str]=()) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:607

TCEditorAPI.assign_material_texture

def TCEditorAPI.assign_material_texture(self, asset_id: str, slot: str, texture_asset_id: str, *, channel: str='rgba', color_space: str='auto', sampler: str='linear_wrap', uv_set: int=0) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:612

TCEditorAPI.material_graph_statistics

def TCEditorAPI.material_graph_statistics(self, asset_id: str, *, platform: str='desktop') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:621

TCEditorAPI.validate_material

def TCEditorAPI.validate_material(self, asset_id: str, *, platform: str='desktop') -> list[dict[str, Any]]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:630

TCEditorAPI.cook_material

def TCEditorAPI.cook_material(self, asset_id: str, *, platform: str='desktop', quality: str='high') -> DerivedArtifact

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:633

TCEditorAPI.create_shader_graph

def TCEditorAPI.create_shader_graph(self, name: str, *, stage: str='surface', language: str='portable', graph: Mapping[str, Any] | None=None, include_asset_ids: Sequence[str]=(), folder: str | Path='Assets/Shaders')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:638

TCEditorAPI.shader_backend_capabilities

def TCEditorAPI.shader_backend_capabilities(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:661

TCEditorAPI.validate_shader_graph

def TCEditorAPI.validate_shader_graph(self, asset_id: str, *, platform: str='desktop') -> list[dict[str, Any]]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:664

TCEditorAPI.compile_shader_graph

def TCEditorAPI.compile_shader_graph(self, asset_id: str, *, target: str='desktop') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:671

TCEditorAPI.texture_import_settings

def TCEditorAPI.texture_import_settings(self, asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:679

TCEditorAPI.set_texture_import_settings

def TCEditorAPI.set_texture_import_settings(self, asset_id: str, values: Mapping[str, Any]) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:685

TCEditorAPI.input_map_audit

def TCEditorAPI.input_map_audit(self, asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:704

TCEditorAPI.update_input_map

def TCEditorAPI.update_input_map(self, asset_id: str, values: Mapping[str, Any], *, replace: bool=False) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:710

TCEditorAPI.create_prefab_variant

def TCEditorAPI.create_prefab_variant(self, name: str, base_prefab_id: str, *, overrides: Mapping[str, Any] | None=None, added_entities: Sequence[Mapping[str, Any]]=(), removed_entity_ids: Sequence[str]=(), folder: str | Path='Assets/World/Variants')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:721

Create a non-destructive Prefab Variant inherited from a parent.

TCEditorAPI.resolve_prefab

def TCEditorAPI.resolve_prefab(self, asset_id: str, *, expand_nested: bool=True) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:732

TCEditorAPI.instantiate_prefab

def TCEditorAPI.instantiate_prefab(self, asset_id: str, *, overrides: Mapping[str, Any] | None=None, expand_nested: bool=False) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:735

TCEditorAPI.apply_prefab_overrides

def TCEditorAPI.apply_prefab_overrides(self, asset_id: str, overrides: Mapping[str, Any], *, paths: Sequence[str]=()) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:743

TCEditorAPI.revert_prefab_overrides

def TCEditorAPI.revert_prefab_overrides(self, asset_id: str, overrides: Mapping[str, Any], *, paths: Sequence[str]=()) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:749

TCEditorAPI.validate_prefab

def TCEditorAPI.validate_prefab(self, asset_id: str) -> list[dict[str, Any]]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:755

TCEditorAPI.cook_prefab

def TCEditorAPI.cook_prefab(self, asset_id: str, *, platform: str='desktop', quality: str='high') -> DerivedArtifact

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:758

TCEditorAPI.available_game_templates

def TCEditorAPI.available_game_templates(self) -> tuple[dict[str, Any], ...]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:763

List versioned project templates and variants shown by the editor.

TCEditorAPI.available_game_quality_profiles

def TCEditorAPI.available_game_quality_profiles(self) -> tuple[dict[str, Any], ...]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:770

List the same resolution and scalability presets shown by the New Game UI.

TCEditorAPI.create_game_project_from_template

def TCEditorAPI.create_game_project_from_template(self, *, template_id: str='playable_sandbox', variant_id: str='', visual_style: str='', quality_profile: str='', project_name: str='StarterGame', platform: str='windows', root_folder: str | Path='Assets') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:777

Create the same playable starter assets as the New Project UI.

TCEditorAPI.validate_playable_project

def TCEditorAPI.validate_playable_project(self, ruleset_asset_id: str, build_profile_asset_id: str='') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:802

Run actionable pre-Play and package-readiness checks.

TCEditorAPI.level_actors

def TCEditorAPI.level_actors(self, level_asset_id: str) -> tuple[dict[str, Any], ...]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:811

Return editable actor data from a saved Level.

TCEditorAPI.set_level_actor_render_mesh

def TCEditorAPI.set_level_actor_render_mesh(self, level_asset_id: str, actor_name: str, mesh_asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:816

Bind an imported runtime OBJ mesh to a uniquely named Level actor.

TCEditorAPI.transform_level_actors

def TCEditorAPI.transform_level_actors(self, level_asset_id: str, actor_ids: Iterable[str], *, translation: Iterable[float]=(0.0, 0.0, 0.0), rotation: Iterable[float]=(0.0, 0.0, 0.0), scale_multiplier: Iterable[float]=(1.0, 1.0, 1.0)) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:820

TCEditorAPI.set_level_actor_visibility

def TCEditorAPI.set_level_actor_visibility(self, level_asset_id: str, actor_ids: Iterable[str], visible: bool) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:831

TCEditorAPI.isolate_level_actors

def TCEditorAPI.isolate_level_actors(self, level_asset_id: str, actor_ids: Iterable[str]) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:836

TCEditorAPI.show_all_level_actors

def TCEditorAPI.show_all_level_actors(self, level_asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:839

TCEditorAPI.set_level_actor_lock

def TCEditorAPI.set_level_actor_lock(self, level_asset_id: str, actor_ids: Iterable[str], locked: bool) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:842

TCEditorAPI.duplicate_level_actors

def TCEditorAPI.duplicate_level_actors(self, level_asset_id: str, actor_ids: Iterable[str]) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:847

TCEditorAPI.delete_level_actors

def TCEditorAPI.delete_level_actors(self, level_asset_id: str, actor_ids: Iterable[str]) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:850

TCEditorAPI.move_level_actors_to_folder

def TCEditorAPI.move_level_actors_to_folder(self, level_asset_id: str, actor_ids: Iterable[str], folder: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:853

TCEditorAPI.parent_level_actors

def TCEditorAPI.parent_level_actors(self, level_asset_id: str, actor_ids: Iterable[str], parent_actor_id: str='') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:858

TCEditorAPI.reorder_level_actor_component

def TCEditorAPI.reorder_level_actor_component(self, level_asset_id: str, actor_id: str, component_id: str, new_index: int) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:863

TCEditorAPI.save_level_camera_bookmark

def TCEditorAPI.save_level_camera_bookmark(self, level_asset_id: str, slot: int, camera: Mapping[str, Any]) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:868

TCEditorAPI.create_locomotion_controller

def TCEditorAPI.create_locomotion_controller(self, name: str, *, preset: str='third_person', movement_mode: str='', folder: str | Path='Assets/Animation/Locomotion')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:873

Create the editable controller used by template player prefabs.

TCEditorAPI.create_animation_clip

def TCEditorAPI.create_animation_clip(self, name: str, *, skeleton_id: str='', duration_seconds: float=1.0, sample_rate: float=30.0, loop: bool=True, folder: str | Path='Assets/Animation/Clips')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:888

Create an editable clip with curves, events, root motion, additive, and compression settings.

TCEditorAPI.effect_presets

def TCEditorAPI.effect_presets(self) -> tuple[str, ...]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:899

TCEditorAPI.audio_clip_settings

def TCEditorAPI.audio_clip_settings(self, asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:902

TCEditorAPI.set_audio_clip_settings

def TCEditorAPI.set_audio_clip_settings(self, asset_id: str, values: Mapping[str, Any]) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:905

TCEditorAPI.create_sound_cue

def TCEditorAPI.create_sound_cue(self, name: str, *, properties: Mapping[str, Any] | None=None, folder: str | Path='Assets/Audio/Cues')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:908

TCEditorAPI.create_audio_mixer

def TCEditorAPI.create_audio_mixer(self, name: str, *, properties: Mapping[str, Any] | None=None, folder: str | Path='Assets/Audio/Mixers')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:911

TCEditorAPI.create_audio_attenuation

def TCEditorAPI.create_audio_attenuation(self, name: str, *, properties: Mapping[str, Any] | None=None, folder: str | Path='Assets/Audio/Attenuation')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:914

TCEditorAPI.create_audio_reverb

def TCEditorAPI.create_audio_reverb(self, name: str, *, preset: str='room', properties: Mapping[str, Any] | None=None, folder: str | Path='Assets/Audio/Reverb')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:917

TCEditorAPI.validate_audio_asset

def TCEditorAPI.validate_audio_asset(self, asset_id: str) -> list[dict[str, Any]]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:920

TCEditorAPI.cook_audio_asset

def TCEditorAPI.cook_audio_asset(self, asset_id: str, *, platform: str='desktop', quality: str='high') -> DerivedArtifact

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:923

TCEditorAPI.convert_unreal_audio

def TCEditorAPI.convert_unreal_audio(self, exported_data: Mapping[str, Any], *, folder: str | Path='Assets/Audio/Converted/Unreal') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:926

TCEditorAPI.convert_unity_audio

def TCEditorAPI.convert_unity_audio(self, exported_data: Mapping[str, Any], *, folder: str | Path='Assets/Audio/Converted/Unity') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:929

TCEditorAPI.create_project_settings

def TCEditorAPI.create_project_settings(self, name: str='ProjectSettings', *, properties: Mapping[str, Any] | None=None, folder: str | Path='Settings')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:932

TCEditorAPI.create_data_schema

def TCEditorAPI.create_data_schema(self, name: str, *, fields: Sequence[Mapping[str, Any]]=(), parent_schema_id: str='', folder: str | Path='Assets/Data/Schemas')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:935

TCEditorAPI.create_struct

def TCEditorAPI.create_struct(self, name: str, *, fields: Sequence[Mapping[str, Any]]=(), parent_schema_id: str='', folder: str | Path='Assets/Data/Structs')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:938

TCEditorAPI.create_enum

def TCEditorAPI.create_enum(self, name: str, *, entries: Sequence[Mapping[str, Any] | str]=(), flags: bool=False, folder: str | Path='Assets/Data/Enums')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:941

TCEditorAPI.create_typed_data_asset

def TCEditorAPI.create_typed_data_asset(self, name: str, *, schema_asset_id: str='', values: Mapping[str, Any] | None=None, folder: str | Path='Assets/Data')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:944

TCEditorAPI.create_data_table

def TCEditorAPI.create_data_table(self, name: str, *, row_schema_id: str='', rows: Sequence[Mapping[str, Any]]=(), key_field: str='id', folder: str | Path='Assets/Data/Tables')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:947

TCEditorAPI.create_component_archetype

def TCEditorAPI.create_component_archetype(self, name: str, *, components: Sequence[Mapping[str, Any]]=(), parent_archetype_id: str='', folder: str | Path='Assets/Gameplay/Components')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:950

TCEditorAPI.create_character_definition

def TCEditorAPI.create_character_definition(self, name: str, *, properties: Mapping[str, Any] | None=None, folder: str | Path='Assets/Gameplay/Characters')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:953

TCEditorAPI.create_gameplay_class

def TCEditorAPI.create_gameplay_class(self, name: str, *, class_kind: str='actor', parent_class_id: str='', components: Sequence[Mapping[str, Any]]=(), variables: Sequence[Mapping[str, Any]]=(), folder: str | Path='Assets/Gameplay/Classes')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:956

Create an inherited, component-based executable Gameplay Class.

TCEditorAPI.resolve_gameplay_class

def TCEditorAPI.resolve_gameplay_class(self, asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:967

TCEditorAPI.create_behavior

def TCEditorAPI.create_behavior(self, name: str, *, program: Mapping[str, Any] | None=None, folder: str | Path='Assets/Gameplay/Behaviors')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:970

TCEditorAPI.create_gameplay_graph

def TCEditorAPI.create_gameplay_graph(self, name: str, *, program: Mapping[str, Any] | None=None, folder: str | Path='Assets/Gameplay/Graphs')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:974

TCEditorAPI.validate_behavior_graph

def TCEditorAPI.validate_behavior_graph(self, asset_id: str) -> list[dict[str, Any]]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:978

TCEditorAPI.cook_behavior_graph

def TCEditorAPI.cook_behavior_graph(self, asset_id: str, *, platform: str='desktop', quality: str='high') -> DerivedArtifact

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:981

TCEditorAPI.execute_behavior_graph

def TCEditorAPI.execute_behavior_graph(self, asset_id: str, context: Mapping[str, Any] | None=None) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:984

TCEditorAPI.create_image_project

def TCEditorAPI.create_image_project(self, name: str, *, width: int=1024, height: int=1024, layers: Sequence[Mapping[str, Any]]=(), folder: str | Path='Assets/Images')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:987

TCEditorAPI.validate_image_project

def TCEditorAPI.validate_image_project(self, asset_id: str) -> list[dict[str, Any]]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:991

TCEditorAPI.flatten_image_project

def TCEditorAPI.flatten_image_project(self, asset_id: str) -> bytes

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:994

TCEditorAPI.cook_image_project

def TCEditorAPI.cook_image_project(self, asset_id: str, *, platform: str='desktop', quality: str='high') -> DerivedArtifact

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:997

TCEditorAPI.validate_gameplay_class

def TCEditorAPI.validate_gameplay_class(self, asset_id: str) -> list[dict[str, Any]]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1000

TCEditorAPI.compile_gameplay_class

def TCEditorAPI.compile_gameplay_class(self, asset_id: str, *, platform: str='desktop', quality: str='high') -> DerivedArtifact

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1003

TCEditorAPI.debug_gameplay_class

def TCEditorAPI.debug_gameplay_class(self, asset_id: str, context: Mapping[str, Any] | None=None) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1006

TCEditorAPI.begin_gameplay_class_debug_session

def TCEditorAPI.begin_gameplay_class_debug_session(self, asset_id: str, *, instance_id: str='EditorPreview', session_id: str='', context: Mapping[str, Any] | None=None, breakpoints: Sequence[str]=(), watches: Sequence[str]=(), execution_mode: str='editor_simulation', selected_entity_id: str='') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1009

TCEditorAPI.gameplay_class_debug_command

def TCEditorAPI.gameplay_class_debug_command(self, session_id: str, command: str, **options: Any) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1034

TCEditorAPI.list_gameplay_class_debug_sessions

def TCEditorAPI.list_gameplay_class_debug_sessions(self) -> tuple[dict[str, Any], ...]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1052

TCEditorAPI.end_gameplay_class_debug_session

def TCEditorAPI.end_gameplay_class_debug_session(self, session_id: str, *, keep_changes: bool=False) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1055

TCEditorAPI.validate_gameplay_foundation_asset

def TCEditorAPI.validate_gameplay_foundation_asset(self, asset_id: str) -> list[dict[str, Any]]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1058

TCEditorAPI.resolve_data_schema

def TCEditorAPI.resolve_data_schema(self, asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1061

TCEditorAPI.cook_gameplay_foundation_asset

def TCEditorAPI.cook_gameplay_foundation_asset(self, asset_id: str, *, platform: str='desktop', quality: str='high') -> DerivedArtifact

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1064

TCEditorAPI.convert_unreal_data_assets

def TCEditorAPI.convert_unreal_data_assets(self, exported_data: Mapping[str, Any], *, folder: str | Path='Assets/Data/Converted/Unreal') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1067

TCEditorAPI.convert_unity_scriptable_objects

def TCEditorAPI.convert_unity_scriptable_objects(self, exported_data: Mapping[str, Any], *, folder: str | Path='Assets/Data/Converted/Unity') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1070

TCEditorAPI.effect_module_library

def TCEditorAPI.effect_module_library(self) -> dict[str, dict[str, Any]]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1073

TCEditorAPI.create_effect_system

def TCEditorAPI.create_effect_system(self, name: str, *, preset: str='sparks', quality: str='high', seed: int=1, folder: str | Path='Assets/Effects')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1076

TCEditorAPI.apply_effect_preset

def TCEditorAPI.apply_effect_preset(self, asset_id: str, preset: str, *, preserve_parameters: bool=True) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1082

TCEditorAPI.effect_properties

def TCEditorAPI.effect_properties(self, asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1085

TCEditorAPI.set_effect_properties

def TCEditorAPI.set_effect_properties(self, asset_id: str, values: Mapping[str, Any], *, replace: bool=False) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1088

TCEditorAPI.validate_effect_system

def TCEditorAPI.validate_effect_system(self, asset_id: str, *, platform: str='desktop', quality: str='high') -> list[dict[str, Any]]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1091

TCEditorAPI.estimate_effect_cost

def TCEditorAPI.estimate_effect_cost(self, asset_id: str, *, quality: str='high') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1094

TCEditorAPI.cook_effect_system

def TCEditorAPI.cook_effect_system(self, asset_id: str, *, platform: str='desktop', quality: str='high') -> DerivedArtifact

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1097

TCEditorAPI.convert_unreal_effects

def TCEditorAPI.convert_unreal_effects(self, exported_data: Mapping[str, Any], *, folder: str | Path='Assets/Effects/Converted/Unreal') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1100

TCEditorAPI.convert_unity_effects

def TCEditorAPI.convert_unity_effects(self, exported_data: Mapping[str, Any], *, folder: str | Path='Assets/Effects/Converted/Unity') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1105

TCEditorAPI.create_blend_space

def TCEditorAPI.create_blend_space(self, name: str, *, skeleton_id: str='', dimensions: int=2, axes: Sequence[Mapping[str, Any]]=(), samples: Sequence[Mapping[str, Any]]=(), folder: str | Path='Assets/Animation/BlendSpaces')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1110

Create a one- or two-dimensional editable Blend Space.

TCEditorAPI.create_animation_mask

def TCEditorAPI.create_animation_mask(self, name: str, *, skeleton_id: str='', weights: Mapping[str, float] | None=None, folder: str | Path='Assets/Animation/Masks')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1121

TCEditorAPI.create_animation_controller

def TCEditorAPI.create_animation_controller(self, name: str, *, skeleton_id: str='', properties: Mapping[str, Any] | None=None, folder: str | Path='Assets/Animation/Controllers')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1127

Create a layered controller with state machines and a final pose graph.

TCEditorAPI.animation_properties

def TCEditorAPI.animation_properties(self, asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1134

TCEditorAPI.set_animation_properties

def TCEditorAPI.set_animation_properties(self, asset_id: str, values: Mapping[str, Any], *, replace: bool=False) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1137

TCEditorAPI.validate_animation_asset

def TCEditorAPI.validate_animation_asset(self, asset_id: str) -> list[dict[str, Any]]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1140

TCEditorAPI.evaluate_blend_space

def TCEditorAPI.evaluate_blend_space(self, asset_id: str, x: float, y: float=0.0) -> dict[str, float]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1143

TCEditorAPI.evaluate_animation_controller

def TCEditorAPI.evaluate_animation_controller(self, asset_id: str, *, parameter_values: Mapping[str, Any] | None=None, layer_id: str='', current_state: str='', normalized_time: float=0.0) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1146

Preview one deterministic controller step using unspecialized runtime inputs.

TCEditorAPI.cook_animation_asset

def TCEditorAPI.cook_animation_asset(self, asset_id: str, *, platform: str='desktop', quality: str='high') -> DerivedArtifact

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1156

TCEditorAPI.convert_unreal_animation

def TCEditorAPI.convert_unreal_animation(self, exported_data: Mapping[str, Any], *, folder: str | Path='Assets/Animation/Converted/Unreal') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1159

Convert Unreal Editor-exported animation reflection data; raw .uasset parsing is intentionally unsupported.

TCEditorAPI.convert_unity_animation

def TCEditorAPI.convert_unity_animation(self, exported_data: Mapping[str, Any], *, folder: str | Path='Assets/Animation/Converted/Unity') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1165

Convert Unity Editor-exported AnimatorController/BlendTree data.

TCEditorAPI.convert_animation_export_file

def TCEditorAPI.convert_animation_export_file(self, source_path: str | Path, *, provider: str, folder: str | Path='Assets/Animation/Converted') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1171

Import a Tech Connector Unreal or Unity editor export as native animation assets.

TCEditorAPI.convert_live_unity_animation

def TCEditorAPI.convert_live_unity_animation(self, controller_asset_path: str, *, port: int | None=None, folder: str | Path='Assets/Animation/Converted/Unity') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1178

Export from a running Unity Editor and immediately create native Tech Connector assets.

TCEditorAPI.convert_live_unreal_animation

def TCEditorAPI.convert_live_unreal_animation(self, asset_paths: Sequence[str], *, folder: str | Path='Assets/Animation/Converted/Unreal') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1190

Reflect from a running Unreal Editor and immediately create native Tech Connector assets.

TCEditorAPI.export_animation_interchange

def TCEditorAPI.export_animation_interchange(self, asset_ids: Iterable[str]) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1203

TCEditorAPI.import_animation_interchange

def TCEditorAPI.import_animation_interchange(self, payload: Mapping[str, Any], *, folder: str | Path='Assets/Animation/Converted') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1206

TCEditorAPI.validate_locomotion_controller

def TCEditorAPI.validate_locomotion_controller(self, asset_id: str) -> list[dict[str, Any]]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1211

TCEditorAPI.cook_locomotion_controller

def TCEditorAPI.cook_locomotion_controller(self, asset_id: str, *, platform: str='desktop', quality: str='high') -> DerivedArtifact

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1217

TCEditorAPI.create_starter_character

def TCEditorAPI.create_starter_character(self, name: str='TC_Starter_Mannequin', *, visual_style: str='stylized_pbr', dimensionality: str='3d', folder: str | Path='Assets/Characters/Starter') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1229

Generate the editable TC biped skeleton, mesh, and skin-binding package.

TCEditorAPI.import_asset

def TCEditorAPI.import_asset(self, source_path: str | Path, *, folder: str | Path='Assets', type_id: str='', importer_settings: Mapping[str, Any] | None=None)

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1243

TCEditorAPI.reimport_asset

def TCEditorAPI.reimport_asset(self, asset_id: str)

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1246

Refresh an imported asset from its recorded source without changing its identity.

TCEditorAPI.create_ui_document

def TCEditorAPI.create_ui_document(self, name: str, *, folder: str | Path='Assets/UI', values: Mapping[str, Any] | None=None)

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1250

Create a validated UI document with a responsive widget hierarchy.

TCEditorAPI.update_ui_document

def TCEditorAPI.update_ui_document(self, asset_id: str, values: Mapping[str, Any], *, replace: bool=False) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1256

Update a UI document transactionally; reject invalid hierarchy or references.

TCEditorAPI.validate_ui_document

def TCEditorAPI.validate_ui_document(self, asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1260

Return authored UI errors and desktop/mobile accessibility warnings.

TCEditorAPI.preview_ui_document

def TCEditorAPI.preview_ui_document(self, asset_id: str, *, viewport: tuple[int, int] | None=None) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1266

Evaluate stable widget rectangles at a target viewport size.

TCEditorAPI.cook_ui_document

def TCEditorAPI.cook_ui_document(self, asset_id: str, *, platform: str='desktop', quality: str='high') -> DerivedArtifact

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1270

Store a layout preview artifact; this does not qualify runtime UI rendering.

TCEditorAPI.properties

def TCEditorAPI.properties(self, asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1274

TCEditorAPI.set_properties

def TCEditorAPI.set_properties(self, asset_id: str, values: Mapping[str, Any], *, replace: bool=False) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1295

TCEditorAPI.create_fabric_material

def TCEditorAPI.create_fabric_material(self, name: str, *, preset: str='cotton', folder: str | Path='Assets/Cloth')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1323

TCEditorAPI.create_control_rig

def TCEditorAPI.create_control_rig(self, name: str, *, skeleton_id: str, graph: Mapping[str, Any] | None=None, folder: str | Path='Assets/Animation/Rigs')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1326

TCEditorAPI.create_ik_rig

def TCEditorAPI.create_ik_rig(self, name: str, *, skeleton_id: str, bones: Iterable[Mapping[str, Any] | str]=(), retarget_root: str='', folder: str | Path='Assets/Animation/Rigs')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1339

TCEditorAPI.create_ik_retargeter

def TCEditorAPI.create_ik_retargeter(self, name: str, *, source_ik_rig_id: str, target_ik_rig_id: str, folder: str | Path='Assets/Animation/Retargeting')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1351

TCEditorAPI.auto_setup_ik_rig

def TCEditorAPI.auto_setup_ik_rig(self, asset_id: str, bones: Iterable[Mapping[str, Any] | str]) -> list[dict[str, Any]]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1367

TCEditorAPI.auto_map_ik_retargeter

def TCEditorAPI.auto_map_ik_retargeter(self, asset_id: str) -> list[dict[str, Any]]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1373

TCEditorAPI.validate_rig_asset

def TCEditorAPI.validate_rig_asset(self, asset_id: str) -> list[dict[str, Any]]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1381

TCEditorAPI.cook_rig_asset

def TCEditorAPI.cook_rig_asset(self, asset_id: str, *, platform: str='desktop', quality: str='high') -> DerivedArtifact

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1389

TCEditorAPI.create_skeleton

def TCEditorAPI.create_skeleton(self, name: str, *, bones: Iterable[Mapping[str, Any]], sockets: Iterable[Mapping[str, Any]]=(), retarget_pose: Mapping[str, Any] | None=None, preserve_bones: Iterable[str]=(), folder: str | Path='Assets/Characters/Rig')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1400

TCEditorAPI.create_skin_binding

def TCEditorAPI.create_skin_binding(self, name: str, *, mesh_id: str, skeleton_id: str, dcc_payload: Mapping[str, Any], folder: str | Path='Assets/Characters')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1415

TCEditorAPI.create_skeletal_mesh_asset

def TCEditorAPI.create_skeletal_mesh_asset(self, name: str, *, skeleton_id: str, skin_binding_id: str='', bones: Iterable[Mapping[str, Any] | str]=(), preserve_bones: Iterable[str]=(), lod_count: int=4, folder: str | Path='Assets/Characters')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1441

TCEditorAPI.create_geometry_optimization_profile

def TCEditorAPI.create_geometry_optimization_profile(self, name: str, *, preset: str='character_balanced', source_asset_ids: Iterable[str]=(), folder: str | Path='Assets/Geometry')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1464

TCEditorAPI.create_hair_material

def TCEditorAPI.create_hair_material(self, name: str, *, preset: str='brown_hair', overrides: Mapping[str, Any] | None=None, folder: str | Path='Assets/Grooms/Materials')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1479

TCEditorAPI.create_groom

def TCEditorAPI.create_groom(self, name: str, *, groups: Iterable[Mapping[str, Any]], material_ids: Iterable[str]=(), source_path: str='', physics_asset_id: str='', lod_count: int=5, folder: str | Path='Assets/Grooms')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1486

TCEditorAPI.create_groom_binding

def TCEditorAPI.create_groom_binding(self, name: str, *, groom_id: str, target_skeletal_mesh_id: str, source_skeletal_mesh_id: str='', binding_mode: str='skinning', folder: str | Path='Assets/Grooms/Bindings')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1517

TCEditorAPI.generate_groom_lods

def TCEditorAPI.generate_groom_lods(self, asset_id: str, *, count: int=5, include_cards: bool=True, include_mesh: bool=True) -> list[dict[str, Any]]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1533

TCEditorAPI.project_groom_binding

def TCEditorAPI.project_groom_binding(self, asset_id: str, roots: Sequence[Sequence[float]], vertices: Sequence[Sequence[float]], triangles: Sequence[Sequence[int]]) -> list[dict[str, Any]]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1540

TCEditorAPI.validate_groom

def TCEditorAPI.validate_groom(self, asset_id: str) -> list[dict[str, Any]]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1551

TCEditorAPI.cook_groom

def TCEditorAPI.cook_groom(self, asset_id: str, *, platform: str='desktop', quality: str='high') -> DerivedArtifact

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1559

TCEditorAPI.assign_geometry_optimization_profile

def TCEditorAPI.assign_geometry_optimization_profile(self, skeletal_mesh_id: str, profile_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1572

TCEditorAPI.plan_geometry_optimization

def TCEditorAPI.plan_geometry_optimization(self, asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1585

TCEditorAPI.validate_geometry_optimization

def TCEditorAPI.validate_geometry_optimization(self, asset_id: str) -> list[dict[str, Any]]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1591

TCEditorAPI.cook_geometry_optimization

def TCEditorAPI.cook_geometry_optimization(self, asset_id: str, *, platform: str='desktop', quality: str='high') -> DerivedArtifact

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1597

TCEditorAPI.assign_skin_binding

def TCEditorAPI.assign_skin_binding(self, skeletal_mesh_id: str, skin_binding_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1607

TCEditorAPI.generate_character_lods

def TCEditorAPI.generate_character_lods(self, asset_id: str, bones: Iterable[Mapping[str, Any] | str], *, count: int=4, preserve_bones: Iterable[str]=()) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1617

TCEditorAPI.generate_mesh_lod_geometry

def TCEditorAPI.generate_mesh_lod_geometry(self, asset_id: str, source_path: str | Path, *, custom_lod_sources: Mapping[int, str | Path] | None=None, output_folder: str | Path='Derived/CharacterLODs', include_animation: bool=False, timeout: float=300.0) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1630

TCEditorAPI.validate_character_asset

def TCEditorAPI.validate_character_asset(self, asset_id: str) -> list[dict[str, Any]]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1669

TCEditorAPI.update_character_asset

def TCEditorAPI.update_character_asset(self, asset_id: str, values: Mapping[str, Any], *, replace: bool=False) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1676

TCEditorAPI.cook_character_asset

def TCEditorAPI.cook_character_asset(self, asset_id: str, *, platform: str='desktop', quality: str='high') -> DerivedArtifact

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1701

TCEditorAPI.create_cloth

def TCEditorAPI.create_cloth(self, name: str, *, source_mesh_id: str, skin_binding_id: str, fabric_material_id: str='', vertex_count: int | None=None, fixed_vertices: Iterable[int]=(), transition_vertices: Mapping[int, float] | None=None, folder: str | Path='Assets/Cloth')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1722

TCEditorAPI.auto_setup_cloth

def TCEditorAPI.auto_setup_cloth(self, asset_id: str, vertex_count: int, *, fixed_vertices: Iterable[int]=(), transition_vertices: Mapping[int, float] | None=None, max_distance: float=1.0) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1753

TCEditorAPI.set_cloth_map

def TCEditorAPI.set_cloth_map(self, asset_id: str, map_name: str, values: Sequence[float]) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1771

TCEditorAPI.validate_cloth

def TCEditorAPI.validate_cloth(self, asset_id: str, *, vertex_count: int | None=None) -> list[dict[str, Any]]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1780

TCEditorAPI.cook_cloth

def TCEditorAPI.cook_cloth(self, asset_id: str, *, platform: str='desktop', quality: str='high') -> DerivedArtifact

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1786

TCEditorAPI.create_physics_asset

def TCEditorAPI.create_physics_asset(self, name: str, *, skeleton_id: str, skeletal_mesh_id: str='', preset: str='balanced', folder: str | Path='Assets/Physics')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1799

TCEditorAPI.auto_setup_physics_asset

def TCEditorAPI.auto_setup_physics_asset(self, asset_id: str, joints: Mapping[str, Mapping[str, Any]], *, root_joint: str='', preset: str | None=None, include_leaf_joints: bool=False) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1817

TCEditorAPI.create_physics_constraint

def TCEditorAPI.create_physics_constraint(self, name: str, *, first_body: str, second_body: str, preset: str='weld', settings: Mapping[str, Any] | None=None, folder: str | Path='Assets/Physics')

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1840

TCEditorAPI.validate_physics

def TCEditorAPI.validate_physics(self, asset_id: str) -> list[dict[str, Any]]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1858

TCEditorAPI.cook_physics

def TCEditorAPI.cook_physics(self, asset_id: str, *, platform: str='desktop', quality: str='high') -> DerivedArtifact

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1865

TCEditorAPI.create_runtime_physics_joint

def TCEditorAPI.create_runtime_physics_joint(self, runtime_world: MutableMapping[str, Any], joint_id: str, first: str, second: str, *, joint_type: str='fixed', preset: str='', settings: Mapping[str, Any] | None=None) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1877

TCEditorAPI.edit_runtime_physics_joints

def TCEditorAPI.edit_runtime_physics_joints(self, runtime_world: MutableMapping[str, Any], joint_ids: Iterable[str], changes: Mapping[str, Any]) -> int

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1884

TCEditorAPI.remove_runtime_physics_joint

def TCEditorAPI.remove_runtime_physics_joint(self, runtime_world: MutableMapping[str, Any], joint_id: str) -> bool

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1890

TCEditorAPI.generate_runtime_ragdoll

def TCEditorAPI.generate_runtime_ragdoll(self, rig_graph: Any, runtime_world: dict[str, Any], *, root_joint: str='', density: float=985.0, include_leaf_joints: bool=False) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1893

TCEditorAPI.build_physics_stress_scene

def TCEditorAPI.build_physics_stress_scene(self, scenario: str, *, count: int=1000) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1900

TCEditorAPI.create_runtime_soft_body

def TCEditorAPI.create_runtime_soft_body(self, vertices: Iterable[Sequence[float]], faces: Iterable[Sequence[int]], *, material: str='jello', pinned_vertices: Iterable[int]=(), volume_compliance: float=2e-07) -> Any

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1904

TCEditorAPI.create_ocean_surface

def TCEditorAPI.create_ocean_surface(self, preset: str='open_ocean', *, seed: int=1, wave_count: int=12, controls: Mapping[str, float] | None=None) -> OceanSurface

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1914

TCEditorAPI.sample_ocean_surface

def TCEditorAPI.sample_ocean_surface(self, ocean: OceanSurface, x: float, z: float, *, time_seconds: float | None=None) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1920

TCEditorAPI.generate_ocean_patch

def TCEditorAPI.generate_ocean_patch(self, ocean: OceanSurface, *, center: Sequence[float]=(0.0, 0.0), size: float=20.0, rows: int=32, columns: int=32) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1923

TCEditorAPI.add_ocean_wake

def TCEditorAPI.add_ocean_wake(self, ocean: OceanSurface, position: Sequence[float], velocity: Sequence[float], *, radius: float=1.0, strength: float=0.25, lifetime: float=6.0) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1929

TCEditorAPI.cook

def TCEditorAPI.cook(self, asset_ids: Iterable[str], *, platform: str='desktop', quality: str='high') -> AssetCookReceipt

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1938

TCEditorAPI.capability_contract

def TCEditorAPI.capability_contract(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:1981

TCEditorAPI.capability_report

def TCEditorAPI.capability_report(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:2018

Show asset maturity and declared editor coverage without implying shipping parity.

TCEditorAPI.audit_launch_readiness

def TCEditorAPI.audit_launch_readiness(self, *, production: bool=False) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:2024

TCEditorAPI.qualify_dcc_release

def TCEditorAPI.qualify_dcc_release(self, host: str, *, workspace: str | Path | None=None, session_port: int | None=None, confirm_mutating: bool=False, install_recovery_verified: bool=False, progress_callback: Any | None=None, cancellation_event: Any | None=None) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:2034

Collect all release receipts for one exact live DCC session.

TCEditorAPI.qualify_playable_project

def TCEditorAPI.qualify_playable_project(self, player_executable: str | Path, *, frames: int=120, budgets_ms: Mapping[str, float] | None=None) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:2064

TCEditorAPI.qualify_realtime_fx

def TCEditorAPI.qualify_realtime_fx(self, *, presets: Sequence[str] | None=None, frames: int=120, frame_budget_ms: float=16.667, maximum_particles: int=2048, maximum_preset_seconds: float=8.0) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:2076

TCEditorAPI.qualify_world_production

def TCEditorAPI.qualify_world_production(self, *, maximum_total_seconds: float=30.0) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:2091

TCEditorAPI.qualify_content_production

def TCEditorAPI.qualify_content_production(self, *, maximum_total_seconds: float=30.0) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:2098

TCEditorAPI.qualify_capability_evidence

def TCEditorAPI.qualify_capability_evidence(self, *, timeout_seconds: float=300.0) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/editor_python_api.py:2104

TCEditorAPI._authored_payload

def TCEditorAPI._authored_payload(self, asset_id: str) -> tuple[Any, dict[str, Any]]

class method · internal · tech_connector/game_engine/assets/editor_python_api.py:2110

TCEditorAPI._write_payload

def TCEditorAPI._write_payload(path: Path, payload: Mapping[str, Any]) -> None

class method · internal · tech_connector/game_engine/assets/editor_python_api.py:2123

open_editor_api

def open_editor_api(project_root: str | Path, **options: Any) -> TCEditorAPI

module function · public name · tech_connector/game_engine/assets/editor_python_api.py:2129

tech_connector.game_engine.assets.effect_asset_service

EffectIssue.to_dict

def EffectIssue.to_dict(self) -> dict[str, str]

class method · public name · tech_connector/game_engine/assets/effect_asset_service.py:65

EffectCostEstimate.to_dict

def EffectCostEstimate.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/effect_asset_service.py:81

EffectConversionReceipt.succeeded

def EffectConversionReceipt.succeeded(self) -> bool

class method · public name · tech_connector/game_engine/assets/effect_asset_service.py:94

EffectConversionReceipt.to_dict

def EffectConversionReceipt.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/effect_asset_service.py:97

effect_system_defaults

def effect_system_defaults(*, preset: str='sparks', quality: str='high', seed: int=1) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/effect_asset_service.py:101

normalize_effect_properties

def normalize_effect_properties(properties: Mapping[str, Any]) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/effect_asset_service.py:121

EffectAssetService.__init__

def EffectAssetService.__init__(self, project_root: str | Path, database: AssetDatabase) -> None

class method · internal · tech_connector/game_engine/assets/effect_asset_service.py:141

EffectAssetService.presets

def EffectAssetService.presets(self) -> tuple[str, ...]

class method · public name · tech_connector/game_engine/assets/effect_asset_service.py:146

EffectAssetService.module_library

def EffectAssetService.module_library(self) -> dict[str, dict[str, Any]]

class method · public name · tech_connector/game_engine/assets/effect_asset_service.py:149

EffectAssetService.create

def EffectAssetService.create(self, name: str, *, preset: str='sparks', quality: str='high', seed: int=1, folder: str | Path='Assets/Effects')

class method · public name · tech_connector/game_engine/assets/effect_asset_service.py:152

EffectAssetService.apply_preset

def EffectAssetService.apply_preset(self, asset_id: str, preset: str, *, preserve_parameters: bool=True) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/effect_asset_service.py:158

EffectAssetService.properties

def EffectAssetService.properties(self, asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/effect_asset_service.py:165

EffectAssetService.update

def EffectAssetService.update(self, asset_id: str, values: Mapping[str, Any], *, replace: bool=False) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/effect_asset_service.py:168

EffectAssetService.validate

def EffectAssetService.validate(self, asset_id: str, *, platform: str='desktop', quality: str='high') -> list[EffectIssue]

class method · public name · tech_connector/game_engine/assets/effect_asset_service.py:173

EffectAssetService.estimate

def EffectAssetService.estimate(self, asset_id: str, *, quality: str='high') -> EffectCostEstimate

class method · public name · tech_connector/game_engine/assets/effect_asset_service.py:176

EffectAssetService.cook

def EffectAssetService.cook(self, asset_id: str, *, platform: str='desktop', quality: str='high') -> DerivedArtifact

class method · public name · tech_connector/game_engine/assets/effect_asset_service.py:179

EffectAssetService.convert_unreal

def EffectAssetService.convert_unreal(self, payload: Mapping[str, Any], *, folder: str | Path='Assets/Effects/Converted/Unreal') -> EffectConversionReceipt

class method · public name · tech_connector/game_engine/assets/effect_asset_service.py:184

EffectAssetService.convert_unity

def EffectAssetService.convert_unity(self, payload: Mapping[str, Any], *, folder: str | Path='Assets/Effects/Converted/Unity') -> EffectConversionReceipt

class method · public name · tech_connector/game_engine/assets/effect_asset_service.py:187

EffectAssetService._convert

def EffectAssetService._convert(self, provider: str, payload: Mapping[str, Any], folder: str | Path) -> EffectConversionReceipt

class method · internal · tech_connector/game_engine/assets/effect_asset_service.py:190

EffectAssetService._load

def EffectAssetService._load(self, asset_id: str)

class method · internal · tech_connector/game_engine/assets/effect_asset_service.py:206

EffectAssetService._save

def EffectAssetService._save(self, asset_id: str, properties: Mapping[str, Any]) -> None

class method · internal · tech_connector/game_engine/assets/effect_asset_service.py:214

validate_effect_properties

def validate_effect_properties(properties: Mapping[str, Any], *, platform: str='desktop', quality: str='high') -> list[EffectIssue]

module function · public name · tech_connector/game_engine/assets/effect_asset_service.py:226

estimate_effect_cost

def estimate_effect_cost(properties: Mapping[str, Any], *, quality: str='high') -> EffectCostEstimate

module function · public name · tech_connector/game_engine/assets/effect_asset_service.py:262

compile_effect_payload

def compile_effect_payload(properties: Mapping[str, Any], *, platform: str, quality: str) -> bytes

module function · public name · tech_connector/game_engine/assets/effect_asset_service.py:282

_convert_unreal_effects

def _convert_unreal_effects(payload: Mapping[str, Any], diagnostics: list[EffectIssue]) -> tuple[list[dict[str, Any]], str]

module function · internal · tech_connector/game_engine/assets/effect_asset_service.py:301

_unreal_emitter

def _unreal_emitter(value: Mapping[str, Any], index: int, diagnostics: list[EffectIssue]) -> dict[str, Any]

module function · internal · tech_connector/game_engine/assets/effect_asset_service.py:316

_convert_unity_effects

def _convert_unity_effects(payload: Mapping[str, Any], diagnostics: list[EffectIssue]) -> tuple[list[dict[str, Any]], str]

module function · internal · tech_connector/game_engine/assets/effect_asset_service.py:335

_unity_system

def _unity_system(value: Mapping[str, Any], index: int, diagnostics: list[EffectIssue]) -> dict[str, Any]

module function · internal · tech_connector/game_engine/assets/effect_asset_service.py:347

_normalize_emitter

def _normalize_emitter(value: Mapping[str, Any], index: int) -> dict[str, Any]

module function · internal · tech_connector/game_engine/assets/effect_asset_service.py:368

_default_quality_overrides

def _default_quality_overrides() -> dict[str, Any]

module function · internal · tech_connector/game_engine/assets/effect_asset_service.py:391

_effect_references

def _effect_references(values: Mapping[str, Any]) -> set[tuple[str, str]]

module function · internal · tech_connector/game_engine/assets/effect_asset_service.py:395

_safe_effect_name

def _safe_effect_name(value: str) -> str

module function · internal · tech_connector/game_engine/assets/effect_asset_service.py:408

tech_connector.game_engine.assets.engine_capability_report_service

build_engine_capability_report

def build_engine_capability_report(registry: AssetTypeRegistry, contract: Mapping[str, Any], editor: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/engine_capability_report_service.py:11

Summarize declared capabilities without treating registration as qualification.

tech_connector.game_engine.assets.gameplay_class_service

GameplayClassIssue.to_dict

def GameplayClassIssue.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/gameplay_class_service.py:44

gameplay_class_defaults

def gameplay_class_defaults(*, class_kind: str='actor', parent_class_id: str='') -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/gameplay_class_service.py:48

GameplayClassService.__init__

def GameplayClassService.__init__(self, project_root: str | Path, database: AssetDatabase) -> None

class method · internal · tech_connector/game_engine/assets/gameplay_class_service.py:69

GameplayClassService.create

def GameplayClassService.create(self, name: str, *, class_kind: str='actor', parent_class_id: str='', components: Sequence[Mapping[str, Any]]=(), variables: Sequence[Mapping[str, Any]]=(), folder: str | Path='Assets/Gameplay/Classes')

class method · public name · tech_connector/game_engine/assets/gameplay_class_service.py:74

GameplayClassService.properties

def GameplayClassService.properties(self, asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/gameplay_class_service.py:88

GameplayClassService.update

def GameplayClassService.update(self, asset_id: str, values: Mapping[str, Any], *, replace: bool=False) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/gameplay_class_service.py:94

GameplayClassService.validate

def GameplayClassService.validate(self, asset_id: str) -> list[GameplayClassIssue]

class method · public name · tech_connector/game_engine/assets/gameplay_class_service.py:115

GameplayClassService.resolve

def GameplayClassService.resolve(self, asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/gameplay_class_service.py:136

GameplayClassService.compile

def GameplayClassService.compile(self, asset_id: str, *, platform: str='desktop', quality: str='high') -> DerivedArtifact

class method · public name · tech_connector/game_engine/assets/gameplay_class_service.py:175

GameplayClassService.debug_manifest

def GameplayClassService.debug_manifest(self, asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/gameplay_class_service.py:192

GameplayClassService.debug_context

def GameplayClassService.debug_context(self, asset_id: str, context: Mapping[str, Any] | None=None) -> GraphExecutionContext

class method · public name · tech_connector/game_engine/assets/gameplay_class_service.py:200

GameplayClassService.debug_event

def GameplayClassService.debug_event(self, asset_id: str, context: Mapping[str, Any] | None=None) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/gameplay_class_service.py:212

GameplayClassService._would_create_inheritance_cycle

def GameplayClassService._would_create_inheritance_cycle(self, asset_id: str, parent_id: str) -> bool

class method · internal · tech_connector/game_engine/assets/gameplay_class_service.py:223

GameplayClassService._load

def GameplayClassService._load(self, asset_id: str)

class method · internal · tech_connector/game_engine/assets/gameplay_class_service.py:236

graph_program_from_class

def graph_program_from_class(asset_id: str, values: Mapping[str, Any]) -> EngineGraphProgram

module function · public name · tech_connector/game_engine/assets/gameplay_class_service.py:249

validate_gameplay_class

def validate_gameplay_class(values: Mapping[str, Any]) -> list[GameplayClassIssue]

module function · public name · tech_connector/game_engine/assets/gameplay_class_service.py:280

_asset_references

def _asset_references(value: Any, key: str='') -> list[str]

module function · internal · tech_connector/game_engine/assets/gameplay_class_service.py:308

_unique_issues

def _unique_issues(values: Sequence[GameplayClassIssue]) -> list[GameplayClassIssue]

module function · internal · tech_connector/game_engine/assets/gameplay_class_service.py:321

tech_connector.game_engine.assets.gameplay_foundation_service

GameplayFoundationIssue.to_dict

def GameplayFoundationIssue.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/gameplay_foundation_service.py:41

data_schema_defaults

def data_schema_defaults() -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/gameplay_foundation_service.py:45

enum_defaults

def enum_defaults() -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/gameplay_foundation_service.py:49

data_asset_defaults

def data_asset_defaults() -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/gameplay_foundation_service.py:53

data_table_defaults

def data_table_defaults() -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/gameplay_foundation_service.py:57

component_archetype_defaults

def component_archetype_defaults() -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/gameplay_foundation_service.py:61

character_definition_defaults

def character_definition_defaults() -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/gameplay_foundation_service.py:69

project_settings_defaults

def project_settings_defaults() -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/gameplay_foundation_service.py:79

defaults_for

def defaults_for(type_id: str) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/gameplay_foundation_service.py:93

GameplayFoundationService.__init__

def GameplayFoundationService.__init__(self, project_root: str | Path, database: AssetDatabase) -> None

class method · internal · tech_connector/game_engine/assets/gameplay_foundation_service.py:104

GameplayFoundationService.create_project_settings

def GameplayFoundationService.create_project_settings(self, name: str='ProjectSettings', *, properties: Mapping[str, Any] | None=None, folder: str | Path='Settings')

class method · public name · tech_connector/game_engine/assets/gameplay_foundation_service.py:109

GameplayFoundationService.create_schema

def GameplayFoundationService.create_schema(self, name: str, *, fields: Sequence[Mapping[str, Any]]=(), parent_schema_id: str='', folder: str | Path='Assets/Data/Schemas')

class method · public name · tech_connector/game_engine/assets/gameplay_foundation_service.py:114

GameplayFoundationService.create_struct

def GameplayFoundationService.create_struct(self, name: str, *, fields: Sequence[Mapping[str, Any]]=(), parent_schema_id: str='', folder: str | Path='Assets/Data/Structs')

class method · public name · tech_connector/game_engine/assets/gameplay_foundation_service.py:117

GameplayFoundationService.create_enum

def GameplayFoundationService.create_enum(self, name: str, *, entries: Sequence[Mapping[str, Any] | str]=(), flags: bool=False, folder: str | Path='Assets/Data/Enums')

class method · public name · tech_connector/game_engine/assets/gameplay_foundation_service.py:120

GameplayFoundationService.create_data_asset

def GameplayFoundationService.create_data_asset(self, name: str, *, schema_asset_id: str='', values: Mapping[str, Any] | None=None, folder: str | Path='Assets/Data')

class method · public name · tech_connector/game_engine/assets/gameplay_foundation_service.py:124

GameplayFoundationService.create_data_table

def GameplayFoundationService.create_data_table(self, name: str, *, row_schema_id: str='', rows: Sequence[Mapping[str, Any]]=(), key_field: str='id', folder: str | Path='Assets/Data/Tables')

class method · public name · tech_connector/game_engine/assets/gameplay_foundation_service.py:127

GameplayFoundationService.create_component_archetype

def GameplayFoundationService.create_component_archetype(self, name: str, *, components: Sequence[Mapping[str, Any]]=(), parent_archetype_id: str='', folder: str | Path='Assets/Gameplay/Components')

class method · public name · tech_connector/game_engine/assets/gameplay_foundation_service.py:130

GameplayFoundationService.create_character_definition

def GameplayFoundationService.create_character_definition(self, name: str, *, properties: Mapping[str, Any] | None=None, folder: str | Path='Assets/Gameplay/Characters')

class method · public name · tech_connector/game_engine/assets/gameplay_foundation_service.py:135

GameplayFoundationService.properties

def GameplayFoundationService.properties(self, asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/gameplay_foundation_service.py:138

GameplayFoundationService.update

def GameplayFoundationService.update(self, asset_id: str, values: Mapping[str, Any], *, replace: bool=False) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/gameplay_foundation_service.py:143

GameplayFoundationService.validate

def GameplayFoundationService.validate(self, asset_id: str) -> list[GameplayFoundationIssue]

class method · public name · tech_connector/game_engine/assets/gameplay_foundation_service.py:152

GameplayFoundationService.resolve_schema

def GameplayFoundationService.resolve_schema(self, asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/gameplay_foundation_service.py:177

GameplayFoundationService.cook

def GameplayFoundationService.cook(self, asset_id: str, *, platform: str='desktop', quality: str='high') -> DerivedArtifact

class method · public name · tech_connector/game_engine/assets/gameplay_foundation_service.py:191

GameplayFoundationService.convert_unreal

def GameplayFoundationService.convert_unreal(self, exported_data: Mapping[str, Any], *, folder: str | Path='Assets/Data/Converted/Unreal') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/gameplay_foundation_service.py:199

GameplayFoundationService.convert_unity

def GameplayFoundationService.convert_unity(self, exported_data: Mapping[str, Any], *, folder: str | Path='Assets/Data/Converted/Unity') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/gameplay_foundation_service.py:208

GameplayFoundationService._create

def GameplayFoundationService._create(self, type_id: str, name: str, properties: Mapping[str, Any] | None, folder: str | Path)

class method · internal · tech_connector/game_engine/assets/gameplay_foundation_service.py:217

GameplayFoundationService._require

def GameplayFoundationService._require(self, asset_id: str)

class method · internal · tech_connector/game_engine/assets/gameplay_foundation_service.py:221

GameplayFoundationService._load

def GameplayFoundationService._load(self, asset_id: str)

class method · internal · tech_connector/game_engine/assets/gameplay_foundation_service.py:227

GameplayFoundationService._validate_values

def GameplayFoundationService._validate_values(self, schema_id: str, values: Mapping[str, Any]) -> list[GameplayFoundationIssue]

class method · internal · tech_connector/game_engine/assets/gameplay_foundation_service.py:233

GameplayFoundationService._write

def GameplayFoundationService._write(path: Path, payload: Mapping[str, Any]) -> None

class method · internal · tech_connector/game_engine/assets/gameplay_foundation_service.py:242

validate_foundation_asset

def validate_foundation_asset(type_id: str, values: Mapping[str, Any]) -> list[GameplayFoundationIssue]

module function · public name · tech_connector/game_engine/assets/gameplay_foundation_service.py:246

_references

def _references(type_id: str, values: Mapping[str, Any]) -> list[tuple[str, str]]

module function · internal · tech_connector/game_engine/assets/gameplay_foundation_service.py:285

_expected_references

def _expected_references(type_id: str, values: Mapping[str, Any]) -> list[tuple[str, str, frozenset[str]]]

module function · internal · tech_connector/game_engine/assets/gameplay_foundation_service.py:298

_matches_type

def _matches_type(value: Any, kind: str) -> bool

module function · internal · tech_connector/game_engine/assets/gameplay_foundation_service.py:332

_infer_fields

def _infer_fields(values: Mapping[str, Any]) -> list[dict[str, Any]]

module function · internal · tech_connector/game_engine/assets/gameplay_foundation_service.py:344

tech_connector.game_engine.assets.geometry_optimization_service

_stage

def _stage(stage_id: str, processor: str, *, components: Iterable[str]=(), **settings: Any) -> dict[str, Any]

module function · internal · tech_connector/game_engine/assets/geometry_optimization_service.py:78

geometry_optimization_preset

def geometry_optimization_preset(name: str) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/geometry_optimization_service.py:126

validate_geometry_optimization_profile

def validate_geometry_optimization_profile(properties: Mapping[str, Any]) -> list[GeometryOptimizationIssue]

module function · public name · tech_connector/game_engine/assets/geometry_optimization_service.py:135

plan_geometry_optimization

def plan_geometry_optimization(properties: Mapping[str, Any]) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/geometry_optimization_service.py:185

compile_geometry_optimization_payload

def compile_geometry_optimization_payload(properties: Mapping[str, Any], *, platform: str='desktop', quality: str='high') -> bytes

module function · public name · tech_connector/game_engine/assets/geometry_optimization_service.py:215

tech_connector.game_engine.assets.groom_asset_service

hair_material_preset

def hair_material_preset(name: str) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/groom_asset_service.py:57

groom_group_preset

def groom_group_preset(name: str) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/groom_asset_service.py:64

automatic_groom_lods

def automatic_groom_lods(*, count: int=5, include_cards: bool=True, include_mesh: bool=True) -> list[dict[str, Any]]

module function · public name · tech_connector/game_engine/assets/groom_asset_service.py:71

validate_groom_properties

def validate_groom_properties(properties: Mapping[str, Any]) -> list[GroomIssue]

module function · public name · tech_connector/game_engine/assets/groom_asset_service.py:96

validate_groom_binding_properties

def validate_groom_binding_properties(properties: Mapping[str, Any]) -> list[GroomIssue]

module function · public name · tech_connector/game_engine/assets/groom_asset_service.py:135

validate_hair_material_properties

def validate_hair_material_properties(properties: Mapping[str, Any]) -> list[GroomIssue]

module function · public name · tech_connector/game_engine/assets/groom_asset_service.py:150

_closest_point_triangle

def _closest_point_triangle(point, a, b, c)

module function · internal · tech_connector/game_engine/assets/groom_asset_service.py:159

project_groom_roots

def project_groom_roots(roots: Sequence[Sequence[float]], vertices: Sequence[Sequence[float]], triangles: Sequence[Sequence[int]]) -> list[dict[str, Any]]

module function · public name · tech_connector/game_engine/assets/groom_asset_service.py:185

_compile

def _compile(type_id: str, properties: Mapping[str, Any], validator, *, platform: str, quality: str) -> bytes

module function · internal · tech_connector/game_engine/assets/groom_asset_service.py:206

compile_groom_payload

def compile_groom_payload(properties: Mapping[str, Any], *, platform: str='desktop', quality: str='high') -> bytes

module function · public name · tech_connector/game_engine/assets/groom_asset_service.py:214

compile_groom_binding_payload

def compile_groom_binding_payload(properties: Mapping[str, Any], *, platform: str='desktop', quality: str='high') -> bytes

module function · public name · tech_connector/game_engine/assets/groom_asset_service.py:218

compile_hair_material_payload

def compile_hair_material_payload(properties: Mapping[str, Any], *, platform: str='desktop', quality: str='high') -> bytes

module function · public name · tech_connector/game_engine/assets/groom_asset_service.py:222

tech_connector.game_engine.assets.image_project_asset_service

ImageProjectIssue.to_dict

def ImageProjectIssue.to_dict(self) -> dict[str, str]

class method · public name · tech_connector/game_engine/assets/image_project_asset_service.py:30

ImageProjectAssetService.__init__

def ImageProjectAssetService.__init__(self, project_root: str | Path, database: AssetDatabase) -> None

class method · internal · tech_connector/game_engine/assets/image_project_asset_service.py:34

ImageProjectAssetService.create

def ImageProjectAssetService.create(self, name: str, *, width: int=1024, height: int=1024, layers: Sequence[Mapping[str, Any]]=(), folder: str | Path='Assets/Images')

class method · public name · tech_connector/game_engine/assets/image_project_asset_service.py:38

ImageProjectAssetService.properties

def ImageProjectAssetService.properties(self, asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/image_project_asset_service.py:53

ImageProjectAssetService.update

def ImageProjectAssetService.update(self, asset_id: str, values: Mapping[str, Any]) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/image_project_asset_service.py:55

ImageProjectAssetService.validate

def ImageProjectAssetService.validate(self, asset_id: str) -> list[ImageProjectIssue]

class method · public name · tech_connector/game_engine/assets/image_project_asset_service.py:63

ImageProjectAssetService.flatten

def ImageProjectAssetService.flatten(self, asset_id: str) -> bytes

class method · public name · tech_connector/game_engine/assets/image_project_asset_service.py:77

ImageProjectAssetService.cook

def ImageProjectAssetService.cook(self, asset_id: str, *, platform: str='desktop', quality: str='high') -> DerivedArtifact

class method · public name · tech_connector/game_engine/assets/image_project_asset_service.py:94

ImageProjectAssetService._normalize_layer

def ImageProjectAssetService._normalize_layer(self, value: Mapping[str, Any], width: int, height: int, index: int) -> dict[str, Any]

class method · internal · tech_connector/game_engine/assets/image_project_asset_service.py:98

ImageProjectAssetService._decode_layer

def ImageProjectAssetService._decode_layer(value: Mapping[str, Any]) -> Image.Image

class method · internal · tech_connector/game_engine/assets/image_project_asset_service.py:109

ImageProjectAssetService._load

def ImageProjectAssetService._load(self, asset_id: str)

class method · internal · tech_connector/game_engine/assets/image_project_asset_service.py:116

ImageProjectAssetService._write

def ImageProjectAssetService._write(path: Path, value: Mapping[str, Any]) -> None

class method · internal · tech_connector/game_engine/assets/image_project_asset_service.py:125

tech_connector.game_engine.assets.input_map_service

InputMapDiagnostic.to_dict

def InputMapDiagnostic.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/input_map_service.py:18

InputMapAudit.valid

def InputMapAudit.valid(self) -> bool

class method · public name · tech_connector/game_engine/assets/input_map_service.py:29

InputMapAudit.to_dict

def InputMapAudit.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/input_map_service.py:32

audit_input_map

def audit_input_map(properties: Mapping[str, Any]) -> InputMapAudit

module function · public name · tech_connector/game_engine/assets/input_map_service.py:41

_normalize_contexts

def _normalize_contexts(value: Any) -> list[dict[str, Any]]

module function · internal · tech_connector/game_engine/assets/input_map_service.py:100

_normalize_actions

def _normalize_actions(value: Any) -> dict[str, dict[str, Any]]

module function · internal · tech_connector/game_engine/assets/input_map_service.py:111

tech_connector.game_engine.assets.locomotion_service

LocomotionIssue.to_dict

def LocomotionIssue.to_dict(self) -> dict[str, str]

class method · public name · tech_connector/game_engine/assets/locomotion_service.py:20

locomotion_preset

def locomotion_preset(preset: str='third_person', *, movement_mode: str='') -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/locomotion_service.py:44

validate_locomotion_controller

def validate_locomotion_controller(properties: Mapping[str, Any]) -> list[LocomotionIssue]

module function · public name · tech_connector/game_engine/assets/locomotion_service.py:179

compile_locomotion_payload

def compile_locomotion_payload(properties: Mapping[str, Any], *, platform: str, quality: str) -> bytes

module function · public name · tech_connector/game_engine/assets/locomotion_service.py:219

tech_connector.game_engine.assets.material_asset_service

shader_backend_capabilities

def shader_backend_capabilities() -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/material_asset_service.py:45

Report native shader tools honestly; portable IR remains available everywhere.

MaterialIssue.to_dict

def MaterialIssue.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/material_asset_service.py:69

MaterialResolution.to_dict

def MaterialResolution.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/material_asset_service.py:85

MaterialService.__init__

def MaterialService.__init__(self, project_root: str | Path, database: AssetDatabase) -> None

class method · internal · tech_connector/game_engine/assets/material_asset_service.py:99

MaterialService.create_material

def MaterialService.create_material(self, name: str, *, domain: str='', shading_model: str='', blend_mode: str='', preset: str='default_lit', folder: str | Path='Assets/Materials')

class method · public name · tech_connector/game_engine/assets/material_asset_service.py:104

MaterialService.create_instance

def MaterialService.create_instance(self, name: str, parent_material_id: str, *, overrides: Mapping[str, Any] | None=None, static_switch_overrides: Mapping[str, bool] | None=None, folder: str | Path='Assets/Materials/Instances')

class method · public name · tech_connector/game_engine/assets/material_asset_service.py:117

MaterialService.update_properties

def MaterialService.update_properties(self, asset_id: str, values: Mapping[str, Any], *, replace: bool=False) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/material_asset_service.py:132

MaterialService.apply_preset

def MaterialService.apply_preset(self, asset_id: str, preset: str) -> MaterialResolution

class method · public name · tech_connector/game_engine/assets/material_asset_service.py:142

MaterialService.resolve

def MaterialService.resolve(self, asset_id: str) -> MaterialResolution

class method · public name · tech_connector/game_engine/assets/material_asset_service.py:156

MaterialService.set_instance_overrides

def MaterialService.set_instance_overrides(self, asset_id: str, overrides: Mapping[str, Any], *, replace: bool=False, static_switches: Mapping[str, bool] | None=None) -> MaterialResolution

class method · public name · tech_connector/game_engine/assets/material_asset_service.py:159

MaterialService.revert_instance_overrides

def MaterialService.revert_instance_overrides(self, asset_id: str, names: Iterable[str]=()) -> MaterialResolution

class method · public name · tech_connector/game_engine/assets/material_asset_service.py:176

MaterialService.assign_texture

def MaterialService.assign_texture(self, material_asset_id: str, slot: str, texture_asset_id: str, *, channel: str='rgba', color_space: str='auto', sampler: str='linear_wrap', uv_set: int=0) -> MaterialResolution

class method · public name · tech_connector/game_engine/assets/material_asset_service.py:190

MaterialService.validate

def MaterialService.validate(self, asset_id: str, *, platform: str='desktop') -> tuple[MaterialIssue, ...]

class method · public name · tech_connector/game_engine/assets/material_asset_service.py:213

MaterialService.compile

def MaterialService.compile(self, asset_id: str, *, platform: str='desktop', quality: str='high') -> DerivedArtifact

class method · public name · tech_connector/game_engine/assets/material_asset_service.py:254

MaterialService.rebuild_dependencies

def MaterialService.rebuild_dependencies(self, asset_id: str) -> tuple[tuple[str, str], ...]

class method · public name · tech_connector/game_engine/assets/material_asset_service.py:266

MaterialService._resolve

def MaterialService._resolve(self, asset_id: str, stack: tuple[str, ...]) -> MaterialResolution

class method · internal · tech_connector/game_engine/assets/material_asset_service.py:271

MaterialService._load

def MaterialService._load(self, asset_id: str)

class method · internal · tech_connector/game_engine/assets/material_asset_service.py:301

MaterialService._save

def MaterialService._save(self, asset_id: str, properties: Mapping[str, Any]) -> None

class method · internal · tech_connector/game_engine/assets/material_asset_service.py:313

material_preset

def material_preset(name: str) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/material_asset_service.py:329

analyze_material_graph

def analyze_material_graph(graph: Mapping[str, Any], *, platform: str='desktop') -> tuple[list[MaterialIssue], dict[str, Any]]

module function · public name · tech_connector/game_engine/assets/material_asset_service.py:349

_material_node_opcode

def _material_node_opcode(node: Mapping[str, Any]) -> str

module function · internal · tech_connector/game_engine/assets/material_asset_service.py:403

Accept both current opcode-authored nodes and legacy title-authored graphs.

compile_material_payload

def compile_material_payload(resolution: MaterialResolution, *, platform: str='desktop', quality: str='high') -> bytes

module function · public name · tech_connector/game_engine/assets/material_asset_service.py:415

_normalize_material

def _normalize_material(values: Mapping[str, Any]) -> dict[str, Any]

module function · internal · tech_connector/game_engine/assets/material_asset_service.py:451

_graph_cycle

def _graph_cycle(node_ids: set[str], connections: Iterable[Mapping[str, Any]]) -> bool

module function · internal · tech_connector/game_engine/assets/material_asset_service.py:468

_ordered_nodes

def _ordered_nodes(graph: Mapping[str, Any]) -> list[dict[str, Any]]

module function · internal · tech_connector/game_engine/assets/material_asset_service.py:488

_expected_color_space

def _expected_color_space(slot: str) -> str

module function · internal · tech_connector/game_engine/assets/material_asset_service.py:509

_material_references

def _material_references(value: Any, key: str='') -> set[str]

module function · internal · tech_connector/game_engine/assets/material_asset_service.py:513

_set_dotted

def _set_dotted(target: dict[str, Any], path: str, value: Any) -> None

module function · internal · tech_connector/game_engine/assets/material_asset_service.py:527

_generated_shader_source

def _generated_shader_source(properties: Mapping[str, Any], operations: list[dict[str, Any]], platform: str) -> str

module function · internal · tech_connector/game_engine/assets/material_asset_service.py:540

_fingerprint

def _fingerprint(value: Any) -> str

module function · internal · tech_connector/game_engine/assets/material_asset_service.py:554

_atomic_json_write

def _atomic_json_write(path: Path, payload: Mapping[str, Any]) -> None

module function · internal · tech_connector/game_engine/assets/material_asset_service.py:558

tech_connector.game_engine.assets.mesh_lod_generation_service

CharacterMeshLodRequest.__post_init__

def CharacterMeshLodRequest.__post_init__(self) -> None

class method · internal · tech_connector/game_engine/assets/mesh_lod_generation_service.py:42

CharacterMeshLodRequest.validate

def CharacterMeshLodRequest.validate(self) -> list[str]

class method · public name · tech_connector/game_engine/assets/mesh_lod_generation_service.py:46

CharacterMeshLodRequest.to_dict

def CharacterMeshLodRequest.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/mesh_lod_generation_service.py:63

generate_character_mesh_lods

def generate_character_mesh_lods(request: CharacterMeshLodRequest, *, timeout: float=300.0, cancel_event: threading.Event | None=None, blender_executable: str | os.PathLike[str] | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/mesh_lod_generation_service.py:71

tech_connector.game_engine.assets.motion_matching_service

load_motion_library

def load_motion_library(path: str | Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/motion_matching_service.py:37

select_motion_frame

def select_motion_frame(library: Mapping[str, Any], *, stance: str, desired_velocity: tuple[float, float], current_pose: Mapping[str, Any] | None=None, current_clip: str='', current_frame: int=-1, jump_phase: str='') -> MotionDecision

module function · public name · tech_connector/game_engine/assets/motion_matching_service.py:61

Choose a frame by desired 0.2/0.4s trajectory and four-joint pose. Horizontal velocity uses character-local (right, forward) metres/second. Jump phases are hard constraints, preventing a ground/crawl pose in midair. Clip/frame continuity lo

tech_connector.game_engine.assets.physics_asset_service

PhysicsAssetAutoSetupReceipt.to_dict

def PhysicsAssetAutoSetupReceipt.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/physics_asset_service.py:44

ragdoll_preset

def ragdoll_preset(name: str) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/physics_asset_service.py:48

automatic_physics_asset

def automatic_physics_asset(joints: Mapping[str, Mapping[str, Any]], *, root_joint: str='', preset: str='balanced', include_leaf_joints: bool=False) -> PhysicsAssetAutoSetupReceipt

module function · public name · tech_connector/game_engine/assets/physics_asset_service.py:55

Generate editable bodies and constraints through the runtime ragdoll path.

constraint_from_preset

def constraint_from_preset(preset: str, *, constraint_id: str='Constraint', first_body: str, second_body: str, settings: Mapping[str, Any] | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/physics_asset_service.py:119

validate_physics_asset_properties

def validate_physics_asset_properties(properties: Mapping[str, Any]) -> tuple[PhysicsAuthoringIssue, ...]

module function · public name · tech_connector/game_engine/assets/physics_asset_service.py:134

validate_constraint_properties

def validate_constraint_properties(properties: Mapping[str, Any]) -> tuple[PhysicsAuthoringIssue, ...]

module function · public name · tech_connector/game_engine/assets/physics_asset_service.py:179

compile_physics_asset_payload

def compile_physics_asset_payload(properties: Mapping[str, Any], *, platform: str='desktop', quality: str='high') -> bytes

module function · public name · tech_connector/game_engine/assets/physics_asset_service.py:192

compile_constraint_payload

def compile_constraint_payload(properties: Mapping[str, Any], *, platform: str='desktop', quality: str='high') -> bytes

module function · public name · tech_connector/game_engine/assets/physics_asset_service.py:215

tech_connector.game_engine.assets.prefab_service

PrefabIssue.to_dict

def PrefabIssue.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/prefab_service.py:31

PrefabResolution.to_dict

def PrefabResolution.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/prefab_service.py:45

PrefabInstance.override_state

def PrefabInstance.override_state(self) -> str

class method · public name · tech_connector/game_engine/assets/prefab_service.py:69

PrefabInstance.to_dict

def PrefabInstance.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/prefab_service.py:74

PrefabService.__init__

def PrefabService.__init__(self, project_root: str | Path, database: AssetDatabase) -> None

class method · internal · tech_connector/game_engine/assets/prefab_service.py:91

PrefabService.create_from_entities

def PrefabService.create_from_entities(self, name: str, entities: Iterable[Mapping[str, Any]], *, folder: str | Path='Assets/World', exposed_properties: Mapping[str, Any] | None=None, dependencies: Iterable[str]=())

class method · public name · tech_connector/game_engine/assets/prefab_service.py:96

PrefabService.create_variant

def PrefabService.create_variant(self, name: str, base_prefab_id: str, *, overrides: Mapping[str, Any] | None=None, added_entities: Iterable[Mapping[str, Any]]=(), removed_entity_ids: Iterable[str]=(), exposed_properties: Mapping[str, Any] | None=None, folder: str | Path='Assets/World/Variants')

class method · public name · tech_connector/game_engine/assets/prefab_service.py:114

PrefabService.resolve

def PrefabService.resolve(self, prefab_asset_id: str, *, expand_nested: bool=False) -> PrefabResolution

class method · public name · tech_connector/game_engine/assets/prefab_service.py:151

PrefabService.instantiate

def PrefabService.instantiate(self, prefab_asset_id: str, *, overrides: Mapping[str, Any] | None=None, expand_nested: bool=False) -> PrefabInstance

class method · public name · tech_connector/game_engine/assets/prefab_service.py:154

PrefabService.refresh_instance

def PrefabService.refresh_instance(self, instance: PrefabInstance, *, expand_nested: bool=False) -> PrefabInstance

class method · public name · tech_connector/game_engine/assets/prefab_service.py:169

Hot-reload a source while retaining valid instance overrides.

PrefabService.revert_overrides

def PrefabService.revert_overrides(self, instance: PrefabInstance, paths: Iterable[str] | None=None, *, expand_nested: bool=False) -> PrefabInstance

class method · public name · tech_connector/game_engine/assets/prefab_service.py:185

PrefabService.apply_overrides

def PrefabService.apply_overrides(self, instance: PrefabInstance, paths: Iterable[str] | None=None) -> PrefabInstance

class method · public name · tech_connector/game_engine/assets/prefab_service.py:194

Apply selected overrides to the source or its variant override layer.

PrefabService.override_diff

def PrefabService.override_diff(self, instance: PrefabInstance) -> tuple[dict[str, Any], ...]

class method · public name · tech_connector/game_engine/assets/prefab_service.py:213

PrefabService.validate

def PrefabService.validate(self, prefab_asset_id: str) -> tuple[PrefabIssue, ...]

class method · public name · tech_connector/game_engine/assets/prefab_service.py:224

PrefabService.rebuild_dependencies

def PrefabService.rebuild_dependencies(self, prefab_asset_id: str) -> tuple[tuple[str, str], ...]

class method · public name · tech_connector/game_engine/assets/prefab_service.py:264

PrefabService.cook

def PrefabService.cook(self, prefab_asset_id: str, *, platform: str='desktop', quality: str='high') -> DerivedArtifact

class method · public name · tech_connector/game_engine/assets/prefab_service.py:268

PrefabService._resolve

def PrefabService._resolve(self, asset_id: str, *, expand_nested: bool, stack: tuple[str, ...]) -> PrefabResolution

class method · internal · tech_connector/game_engine/assets/prefab_service.py:281

PrefabService._load

def PrefabService._load(self, prefab_asset_id: str)

class method · internal · tech_connector/game_engine/assets/prefab_service.py:320

PrefabService._save

def PrefabService._save(self, prefab_asset_id: str, properties: Mapping[str, Any], *, extra_dependencies: Iterable[str]=()) -> tuple[tuple[str, str], ...]

class method · internal · tech_connector/game_engine/assets/prefab_service.py:333

compile_prefab_payload

def compile_prefab_payload(prefab: PrefabResolution | Mapping[str, Any], *, platform: str='desktop', quality: str='high') -> bytes

module function · public name · tech_connector/game_engine/assets/prefab_service.py:353

Compile a fully resolved Prefab into deterministic runtime JSON.

_migrate_properties

def _migrate_properties(properties: Mapping[str, Any]) -> dict[str, Any]

module function · internal · tech_connector/game_engine/assets/prefab_service.py:370

_normalize_entities

def _normalize_entities(entities: Iterable[Mapping[str, Any]]) -> list[dict[str, Any]]

module function · internal · tech_connector/game_engine/assets/prefab_service.py:382

_dependency_edges

def _dependency_edges(properties: Mapping[str, Any], extra: Iterable[str]) -> list[tuple[str, str]]

module function · internal · tech_connector/game_engine/assets/prefab_service.py:402

_asset_references

def _asset_references(value: Any) -> set[str]

module function · internal · tech_connector/game_engine/assets/prefab_service.py:418

_path_parts

def _path_parts(path: str) -> list[str]

module function · internal · tech_connector/game_engine/assets/prefab_service.py:433

_entity_index

def _entity_index(entities: list[Any], selector: str) -> int

module function · internal · tech_connector/game_engine/assets/prefab_service.py:437

_get_property_path

def _get_property_path(root: list[dict[str, Any]], path: str) -> Any

module function · internal · tech_connector/game_engine/assets/prefab_service.py:447

_set_property_path

def _set_property_path(root: list[dict[str, Any]], path: str, value: Any) -> None

module function · internal · tech_connector/game_engine/assets/prefab_service.py:462

_fingerprint

def _fingerprint(value: Any) -> str

module function · internal · tech_connector/game_engine/assets/prefab_service.py:483

_atomic_json_write

def _atomic_json_write(path: Path, payload: Mapping[str, Any]) -> None

module function · internal · tech_connector/game_engine/assets/prefab_service.py:488

tech_connector.game_engine.assets.procedural_graph_asset_service

ProceduralGraphIssue.to_dict

def ProceduralGraphIssue.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/procedural_graph_asset_service.py:35

procedural_graph_defaults

def procedural_graph_defaults(name: str='ProceduralGraph') -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/procedural_graph_asset_service.py:38

ProceduralGraphAssetService.__init__

def ProceduralGraphAssetService.__init__(self, project_root: str | Path, database: AssetDatabase, cooker: ProceduralGraphCooker | None=None) -> None

class method · internal · tech_connector/game_engine/assets/procedural_graph_asset_service.py:55

ProceduralGraphAssetService.create

def ProceduralGraphAssetService.create(self, name: str, *, graph: ProceduralGraph | None=None, folder: str | Path='Assets/Procedural')

class method · public name · tech_connector/game_engine/assets/procedural_graph_asset_service.py:59

ProceduralGraphAssetService.properties

def ProceduralGraphAssetService.properties(self, asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/procedural_graph_asset_service.py:65

ProceduralGraphAssetService.graph

def ProceduralGraphAssetService.graph(self, asset_id: str) -> ProceduralGraph

class method · public name · tech_connector/game_engine/assets/procedural_graph_asset_service.py:69

ProceduralGraphAssetService.update

def ProceduralGraphAssetService.update(self, asset_id: str, values: Mapping[str, Any], *, replace: bool=False) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/procedural_graph_asset_service.py:72

ProceduralGraphAssetService.validate

def ProceduralGraphAssetService.validate(self, asset_id: str) -> list[ProceduralGraphIssue]

class method · public name · tech_connector/game_engine/assets/procedural_graph_asset_service.py:82

ProceduralGraphAssetService.cook

def ProceduralGraphAssetService.cook(self, asset_id: str, *, platform: str='desktop', quality: str='high') -> DerivedArtifact

class method · public name · tech_connector/game_engine/assets/procedural_graph_asset_service.py:101

ProceduralGraphAssetService.operation_catalog

def ProceduralGraphAssetService.operation_catalog(self) -> tuple[str, ...]

class method · public name · tech_connector/game_engine/assets/procedural_graph_asset_service.py:132

ProceduralGraphAssetService.diagnostics

def ProceduralGraphAssetService.diagnostics(self, asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/procedural_graph_asset_service.py:134

ProceduralGraphAssetService._load

def ProceduralGraphAssetService._load(self, asset_id: str)

class method · internal · tech_connector/game_engine/assets/procedural_graph_asset_service.py:143

_references

def _references(value: Any) -> set[str]

module function · internal · tech_connector/game_engine/assets/procedural_graph_asset_service.py:151

tech_connector.game_engine.assets.rig_asset_service

automatic_ik_chains

def automatic_ik_chains(bones: Iterable[Mapping[str, Any] | str]) -> list[dict[str, Any]]

module function · public name · tech_connector/game_engine/assets/rig_asset_service.py:25

validate_control_rig_properties

def validate_control_rig_properties(properties: Mapping[str, Any]) -> tuple[RigAssetIssue, ...]

module function · public name · tech_connector/game_engine/assets/rig_asset_service.py:56

validate_ik_rig_properties

def validate_ik_rig_properties(properties: Mapping[str, Any]) -> tuple[RigAssetIssue, ...]

module function · public name · tech_connector/game_engine/assets/rig_asset_service.py:80

validate_ik_retargeter_properties

def validate_ik_retargeter_properties(properties: Mapping[str, Any]) -> tuple[RigAssetIssue, ...]

module function · public name · tech_connector/game_engine/assets/rig_asset_service.py:105

automatic_chain_mapping

def automatic_chain_mapping(source_chains: Iterable[Mapping[str, Any]], target_chains: Iterable[Mapping[str, Any]]) -> list[dict[str, Any]]

module function · public name · tech_connector/game_engine/assets/rig_asset_service.py:124

compile_rig_asset_payload

def compile_rig_asset_payload(type_id: str, properties: Mapping[str, Any], *, platform: str='desktop', quality: str='high') -> bytes

module function · public name · tech_connector/game_engine/assets/rig_asset_service.py:135

_chain_key

def _chain_key(value: Any) -> str

module function · internal · tech_connector/game_engine/assets/rig_asset_service.py:166

tech_connector.game_engine.assets.sequence_asset_service

sequence_defaults

def sequence_defaults(*, duration_frames: int=300, fps: int=30) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/sequence_asset_service.py:58

new_binding

def new_binding(name: str, *, object_id: str='', binding_type: str='possessable', parent_binding_id: str='', component_path: str='', bone_name: str='', socket_name: str='', skeleton_asset_id: str='') -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/sequence_asset_service.py:84

new_sequence_folder

def new_sequence_folder(name: str, *, parent_id: str='') -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/sequence_asset_service.py:98

new_track

def new_track(track_type: str, name: str='', *, binding_id: str='', parent_id: str='') -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/sequence_asset_service.py:105

new_section

def new_section(name: str, start_frame: int, end_frame: int, *, asset_id: str='', row: int=0) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/sequence_asset_service.py:120

new_level_blend_section

def new_level_blend_section(name: str, level_asset_id: str, start_frame: int, end_frame: int, *, ease_in: int=30, ease_out: int=30, blend_mode: str='crossfade') -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/sequence_asset_service.py:135

track_preset

def track_preset(track_type: str, name: str='', *, binding_id: str='') -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/sequence_asset_service.py:153

Create a ready-to-key track with familiar default channels.

add_channel_key

def add_channel_key(section: dict[str, Any], channel_name: str, frame: float, value: Any, *, interpolation: str='linear', in_tangent: float=0.0, out_tangent: float=0.0) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/sequence_asset_service.py:171

transform_channel_keys

def transform_channel_keys(channel: Mapping[str, Any], *, frame_offset: float=0.0, value_offset: float=0.0, frame_scale: float=1.0, value_scale: float=1.0, pivot_frame: float=0.0, pivot_value: float=0.0, snap_interval: float=0.0) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/sequence_asset_service.py:187

Move, scale, and optionally snap all numeric keys in a channel.

validate_sequence

def validate_sequence(values: Mapping[str, Any] | None) -> tuple[SequenceIssue, ...]

module function · public name · tech_connector/game_engine/assets/sequence_asset_service.py:208

evaluate_sequence

def evaluate_sequence(values: Mapping[str, Any], frame: int) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/sequence_asset_service.py:314

evaluate_channel

def evaluate_channel(channel: Mapping[str, Any], frame: float) -> Any

module function · public name · tech_connector/game_engine/assets/sequence_asset_service.py:357

compile_sequence_payload

def compile_sequence_payload(values: Mapping[str, Any], *, platform: str='windows', quality: str='high') -> bytes

module function · public name · tech_connector/game_engine/assets/sequence_asset_service.py:391

build_render_jobs

def build_render_jobs(values: Mapping[str, Any]) -> tuple[dict[str, Any], ...]

module function · public name · tech_connector/game_engine/assets/sequence_asset_service.py:403

Build deterministic camera-cut render jobs or one full-range fallback job.

unreal_level_sequence_to_native

def unreal_level_sequence_to_native(source: Mapping[str, Any]) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/sequence_asset_service.py:429

unity_timeline_to_native

def unity_timeline_to_native(source: Mapping[str, Any]) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/sequence_asset_service.py:442

native_to_unreal_level_sequence

def native_to_unreal_level_sequence(values: Mapping[str, Any]) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/sequence_asset_service.py:461

Return an Unreal-oriented lossless interchange document.

native_to_unity_timeline

def native_to_unity_timeline(values: Mapping[str, Any]) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/sequence_asset_service.py:478

Return a Unity Timeline-oriented interchange document.

SequenceAssetService.__init__

def SequenceAssetService.__init__(self, project_root: str | Path, database: AssetDatabase) -> None

class method · internal · tech_connector/game_engine/assets/sequence_asset_service.py:514

SequenceAssetService.create

def SequenceAssetService.create(self, name: str, *, folder: str | Path='Assets/Cinematics', duration_frames: int=300, fps: int=30)

class method · public name · tech_connector/game_engine/assets/sequence_asset_service.py:519

SequenceAssetService.properties

def SequenceAssetService.properties(self, asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/sequence_asset_service.py:522

SequenceAssetService.update

def SequenceAssetService.update(self, asset_id: str, values: Mapping[str, Any]) -> AssetRecord

class method · public name · tech_connector/game_engine/assets/sequence_asset_service.py:527

SequenceAssetService.validate

def SequenceAssetService.validate(self, asset_id: str) -> tuple[SequenceIssue, ...]

class method · public name · tech_connector/game_engine/assets/sequence_asset_service.py:535

SequenceAssetService.add_binding

def SequenceAssetService.add_binding(self, asset_id: str, name: str, **target: Any) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/sequence_asset_service.py:556

SequenceAssetService.add_folder

def SequenceAssetService.add_folder(self, asset_id: str, name: str, *, parent_id: str='') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/sequence_asset_service.py:560

SequenceAssetService.add_track

def SequenceAssetService.add_track(self, asset_id: str, track_type: str, name: str='', *, binding_id: str='', parent_id: str='') -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/sequence_asset_service.py:564

SequenceAssetService.add_section

def SequenceAssetService.add_section(self, asset_id: str, track_id: str, name: str, start_frame: int, end_frame: int, *, referenced_asset_id: str='', row: int=0) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/sequence_asset_service.py:570

SequenceAssetService.add_key

def SequenceAssetService.add_key(self, asset_id: str, track_id: str, section_id: str, channel_name: str, frame: float, value: Any, *, interpolation: str='linear', in_tangent: float=0.0, out_tangent: float=0.0) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/sequence_asset_service.py:581

SequenceAssetService.transform_keys

def SequenceAssetService.transform_keys(self, asset_id: str, track_id: str, section_id: str, channel_name: str, **transform: float) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/sequence_asset_service.py:593

SequenceAssetService.remove_track

def SequenceAssetService.remove_track(self, asset_id: str, track_id: str) -> bool

class method · public name · tech_connector/game_engine/assets/sequence_asset_service.py:605

SequenceAssetService.remove_section

def SequenceAssetService.remove_section(self, asset_id: str, track_id: str, section_id: str) -> bool

class method · public name · tech_connector/game_engine/assets/sequence_asset_service.py:611

SequenceAssetService.cook

def SequenceAssetService.cook(self, asset_id: str, *, platform: str='windows', quality: str='high')

class method · public name · tech_connector/game_engine/assets/sequence_asset_service.py:617

SequenceAssetService._require

def SequenceAssetService._require(self, asset_id: str) -> AssetRecord

class method · internal · tech_connector/game_engine/assets/sequence_asset_service.py:623

_asset_references

def _asset_references(values: Mapping[str, Any]) -> tuple[str, ...]

module function · internal · tech_connector/game_engine/assets/sequence_asset_service.py:630

_find_track

def _find_track(values: Mapping[str, Any], track_id: str) -> dict[str, Any]

module function · internal · tech_connector/game_engine/assets/sequence_asset_service.py:644

_has_parent_cycle

def _has_parent_cycle(parents: Mapping[str, str]) -> bool

module function · internal · tech_connector/game_engine/assets/sequence_asset_service.py:650

_value_type

def _value_type(value: Any) -> str

module function · internal · tech_connector/game_engine/assets/sequence_asset_service.py:659

_canonical_track_type

def _canonical_track_type(value: str) -> str

module function · internal · tech_connector/game_engine/assets/sequence_asset_service.py:667

tech_connector.game_engine.assets.starter_character_service

StarterCharacterReceipt.to_dict

def StarterCharacterReceipt.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/starter_character_service.py:54

StarterCharacterService.__init__

def StarterCharacterService.__init__(self, project_root: str | Path, database: AssetDatabase, registry: AssetTypeRegistry | None=None) -> None

class method · internal · tech_connector/game_engine/assets/starter_character_service.py:69

StarterCharacterService.create

def StarterCharacterService.create(self, name: str='TC_Starter_Mannequin', *, visual_style: str='stylized_pbr', dimensionality: str='3d', folder: str | Path='Assets/Characters/Starter') -> StarterCharacterReceipt

class method · public name · tech_connector/game_engine/assets/starter_character_service.py:80

StarterCharacterService.attach_to_level

def StarterCharacterService.attach_to_level(self, document: FederatedSceneDocument, receipt: StarterCharacterReceipt) -> dict[str, bytes]

class method · public name · tech_connector/game_engine/assets/starter_character_service.py:278

generate_starter_mannequin_geometry

def generate_starter_mannequin_geometry(rows: list[dict[str, Any]] | None=None) -> StarterCharacterGeometry

module function · public name · tech_connector/game_engine/assets/starter_character_service.py:334

_cached_starter_geometry

def _cached_starter_geometry() -> StarterCharacterGeometry

module function · internal · tech_connector/game_engine/assets/starter_character_service.py:341

_generate_starter_geometry

def _generate_starter_geometry(rows: list[dict[str, Any]]) -> StarterCharacterGeometry

module function · internal · tech_connector/game_engine/assets/starter_character_service.py:345

_skeleton_bones

def _skeleton_bones(rows: list[dict[str, Any]]) -> list[dict[str, Any]]

module function · internal · tech_connector/game_engine/assets/starter_character_service.py:407

_capsule_distance

def _capsule_distance(point: tuple[float, float, float], first: tuple[float, float, float], second: tuple[float, float, float], radii: tuple[float, float, float]) -> float

module function · internal · tech_connector/game_engine/assets/starter_character_service.py:419

_implicit_field

def _implicit_field(point: tuple[float, float, float], primitives: tuple[Any, ...]) -> float

module function · internal · tech_connector/game_engine/assets/starter_character_service.py:438

_implicit_gradient

def _implicit_gradient(point: tuple[float, float, float], primitives: tuple[Any, ...]) -> tuple[float, float, float]

module function · internal · tech_connector/game_engine/assets/starter_character_service.py:442

_march_implicit_humanoid

def _march_implicit_humanoid(primitives: tuple[Any, ...]) -> tuple[tuple[tuple[float, float, float], ...], tuple[tuple[int, int, int], ...]]

module function · internal · tech_connector/game_engine/assets/starter_character_service.py:456

_vertex_normals

def _vertex_normals(vertices: tuple[tuple[float, float, float], ...], triangles: tuple[tuple[int, int, int], ...]) -> tuple[tuple[float, float, float], ...]

module function · internal · tech_connector/game_engine/assets/starter_character_service.py:550

_smooth_influences

def _smooth_influences(vertex: tuple[float, float, float], primitives: tuple[Any, ...], joint_index: dict[str, int]) -> tuple[tuple[int, float], ...]

module function · internal · tech_connector/game_engine/assets/starter_character_service.py:573

_physics_joint_graph

def _physics_joint_graph(rows: list[dict[str, Any]]) -> dict[str, dict[str, Any]]

module function · internal · tech_connector/game_engine/assets/starter_character_service.py:590

_starter_ik_chains

def _starter_ik_chains() -> list[dict[str, Any]]

module function · internal · tech_connector/game_engine/assets/starter_character_service.py:612

_starter_controls

def _starter_controls() -> list[dict[str, Any]]

module function · internal · tech_connector/game_engine/assets/starter_character_service.py:630

_starter_face_morph_targets

def _starter_face_morph_targets(geometry: StarterCharacterGeometry) -> list[dict[str, Any]]

module function · internal · tech_connector/game_engine/assets/starter_character_service.py:645

_world_joint_positions

def _world_joint_positions(rows: list[dict[str, Any]]) -> dict[str, tuple[float, float, float]]

module function · internal · tech_connector/game_engine/assets/starter_character_service.py:693

_author_starter_locomotion_clips

def _author_starter_locomotion_clips(document: FederatedSceneDocument) -> None

module function · internal · tech_connector/game_engine/assets/starter_character_service.py:702

_write_obj

def _write_obj(path: Path, geometry: StarterCharacterGeometry, variant: str) -> None

module function · internal · tech_connector/game_engine/assets/starter_character_service.py:824

_update_properties

def _update_properties(database: AssetDatabase, asset_id: str, values: dict[str, Any]) -> None

module function · internal · tech_connector/game_engine/assets/starter_character_service.py:838

_presentation_variant

def _presentation_variant(visual_style: str, dimensionality: str) -> str

module function · internal · tech_connector/game_engine/assets/starter_character_service.py:850

_bone_importance

def _bone_importance(value: str) -> int

module function · internal · tech_connector/game_engine/assets/starter_character_service.py:858

_safe_name

def _safe_name(value: str) -> str

module function · internal · tech_connector/game_engine/assets/starter_character_service.py:867

tech_connector.game_engine.assets.tc_collision_cook_service

_vector

def _vector(values: Iterable[Any], count: int, label: str) -> tuple[float, ...]

module function · internal · tech_connector/game_engine/assets/tc_collision_cook_service.py:29

_rotate_quaternion

def _rotate_quaternion(point: tuple[float, float, float], rotation: tuple[float, ...]) -> tuple[float, float, float]

module function · internal · tech_connector/game_engine/assets/tc_collision_cook_service.py:36

_validate_convex

def _validate_convex(vertices: list[tuple[float, ...]], triangles: list[tuple[int, ...]]) -> None

module function · internal · tech_connector/game_engine/assets/tc_collision_cook_service.py:50

cook_collision_asset

def cook_collision_asset(path: str | Path, *, kind: str, vertices: Iterable[Iterable[float]]=(), triangles: Iterable[Iterable[int]]=(), children: Iterable[dict[str, Any]]=()) -> CookedCollisionSummary

module function · public name · tech_connector/game_engine/assets/tc_collision_cook_service.py:65

Cook deterministic collision data consumed directly by the native player.

inspect_collision_asset

def inspect_collision_asset(path: str | Path) -> CookedCollisionSummary

module function · public name · tech_connector/game_engine/assets/tc_collision_cook_service.py:132

tech_connector.game_engine.assets.ui_document_asset_service

_number

def _number(value: Any) -> bool

module function · internal · tech_connector/game_engine/assets/ui_document_asset_service.py:18

_pair

def _pair(value: Any, *, minimum: float | None=None, maximum: float | None=None) -> bool

module function · internal · tech_connector/game_engine/assets/ui_document_asset_service.py:22

validate_ui_document

def validate_ui_document(values: Mapping[str, Any]) -> tuple[AssetValidationIssue, ...]

module function · public name · tech_connector/game_engine/assets/ui_document_asset_service.py:30

layout_ui_document

def layout_ui_document(values: Mapping[str, Any], *, viewport: tuple[int, int] | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/ui_document_asset_service.py:92

audit_ui_document_accessibility

def audit_ui_document_accessibility(values: Mapping[str, Any], *, viewport: tuple[int, int] | None=None) -> tuple[AssetValidationIssue, ...]

module function · public name · tech_connector/game_engine/assets/ui_document_asset_service.py:143

Flag button geometry that could make a valid layout hard to operate.

UIDocumentAssetService.__init__

def UIDocumentAssetService.__init__(self, project_root: str | Path, database: AssetDatabase) -> None

class method · internal · tech_connector/game_engine/assets/ui_document_asset_service.py:175

UIDocumentAssetService.create

def UIDocumentAssetService.create(self, name: str, *, folder: str | Path='Assets/UI', values: Mapping[str, Any] | None=None) -> AssetOperationReceipt

class method · public name · tech_connector/game_engine/assets/ui_document_asset_service.py:180

UIDocumentAssetService.properties

def UIDocumentAssetService.properties(self, asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/ui_document_asset_service.py:186

UIDocumentAssetService.update

def UIDocumentAssetService.update(self, asset_id: str, values: Mapping[str, Any], *, replace: bool=False) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/ui_document_asset_service.py:196

UIDocumentAssetService.validate

def UIDocumentAssetService.validate(self, asset_id: str) -> tuple[AssetValidationIssue, ...]

class method · public name · tech_connector/game_engine/assets/ui_document_asset_service.py:214

UIDocumentAssetService.preview

def UIDocumentAssetService.preview(self, asset_id: str, *, viewport: tuple[int, int] | None=None) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/ui_document_asset_service.py:230

UIDocumentAssetService.cook

def UIDocumentAssetService.cook(self, asset_id: str, *, platform: str='desktop', quality: str='high') -> DerivedArtifact

class method · public name · tech_connector/game_engine/assets/ui_document_asset_service.py:233

UIDocumentAssetService._require_record

def UIDocumentAssetService._require_record(self, asset_id: str)

class method · internal · tech_connector/game_engine/assets/ui_document_asset_service.py:245

UIDocumentAssetService._require_valid

def UIDocumentAssetService._require_valid(values: Mapping[str, Any]) -> None

class method · internal · tech_connector/game_engine/assets/ui_document_asset_service.py:252

UIDocumentAssetService._dependency_edges

def UIDocumentAssetService._dependency_edges(self, asset_id: str, values: Mapping[str, Any]) -> list[tuple[str, str]]

class method · internal · tech_connector/game_engine/assets/ui_document_asset_service.py:257

UIDocumentAssetService._set_dependencies

def UIDocumentAssetService._set_dependencies(self, asset_id: str, values: Mapping[str, Any]) -> None

class method · internal · tech_connector/game_engine/assets/ui_document_asset_service.py:270

tech_connector.game_engine.assets.world_asset_service

WorldAssetIssue.to_dict

def WorldAssetIssue.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/world_asset_service.py:47

terrain_defaults

def terrain_defaults() -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/world_asset_service.py:51

foliage_type_defaults

def foliage_type_defaults() -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/world_asset_service.py:67

biome_defaults

def biome_defaults() -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/world_asset_service.py:80

navigation_mesh_defaults

def navigation_mesh_defaults() -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/world_asset_service.py:89

lighting_scenario_defaults

def lighting_scenario_defaults() -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/world_asset_service.py:103

data_layer_defaults

def data_layer_defaults() -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/world_asset_service.py:114

hlod_layer_defaults

def hlod_layer_defaults() -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/world_asset_service.py:123

world_partition_defaults

def world_partition_defaults() -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/world_asset_service.py:133

defaults_for_world_asset

def defaults_for_world_asset(type_id: str) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/world_asset_service.py:154

WorldAssetService.__init__

def WorldAssetService.__init__(self, project_root: str | Path, database: AssetDatabase) -> None

class method · internal · tech_connector/game_engine/assets/world_asset_service.py:162

WorldAssetService.create

def WorldAssetService.create(self, type_id: str, name: str, *, folder: str | Path='Assets/World', properties: Mapping[str, Any] | None=None)

class method · public name · tech_connector/game_engine/assets/world_asset_service.py:167

WorldAssetService.properties

def WorldAssetService.properties(self, asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/world_asset_service.py:175

WorldAssetService.update

def WorldAssetService.update(self, asset_id: str, values: Mapping[str, Any], *, replace: bool=False) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/world_asset_service.py:181

WorldAssetService.validate

def WorldAssetService.validate(self, asset_id: str) -> list[WorldAssetIssue]

class method · public name · tech_connector/game_engine/assets/world_asset_service.py:195

WorldAssetService.build_preview

def WorldAssetService.build_preview(self, asset_id: str, *, maximum_resolution: int=257) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/world_asset_service.py:205

WorldAssetService.compile

def WorldAssetService.compile(self, asset_id: str, *, platform: str='desktop', quality: str='high') -> DerivedArtifact

class method · public name · tech_connector/game_engine/assets/world_asset_service.py:219

WorldAssetService._load

def WorldAssetService._load(self, asset_id: str)

class method · internal · tech_connector/game_engine/assets/world_asset_service.py:243

validate_world_asset

def validate_world_asset(type_id: str, values: Mapping[str, Any]) -> list[WorldAssetIssue]

module function · public name · tech_connector/game_engine/assets/world_asset_service.py:254

compile_world_payload

def compile_world_payload(type_id: str, values: Mapping[str, Any], *, platform: str, quality: str) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/world_asset_service.py:350

apply_terrain_brush

def apply_terrain_brush(values: Mapping[str, Any], *, center: tuple[float, float], radius: float, strength: float, mode: str='raise', layer: str='Base', target_height: float | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/world_asset_service.py:366

Apply a normalized UV-space sculpt or paint stroke to editable terrain samples.

build_terrain_preview

def build_terrain_preview(values: Mapping[str, Any], *, maximum_resolution: int=257) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/world_asset_service.py:415

apply_foliage_brush

def apply_foliage_brush(values: Mapping[str, Any], *, center: tuple[float, float], radius: float, density: float=1.0, erase: bool=False, seed: int=0) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/world_asset_service.py:419

Paint stable manual foliage instances in normalized terrain space.

build_navigation_preview

def build_navigation_preview(values: Mapping[str, Any], *, extent: tuple[float, float]=(10000.0, 10000.0)) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/world_asset_service.py:451

query_navigation_path

def query_navigation_path(values: Mapping[str, Any], *, start: tuple[float, float], goal: tuple[float, float], agent_name: str='', extent: tuple[float, float]=(10000.0, 10000.0)) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/world_asset_service.py:482

Run a deterministic cost-aware path query over the authored preview tiles.

plan_navigation_rebuild

def plan_navigation_rebuild(previous: Mapping[str, Any], current: Mapping[str, Any], *, extent: tuple[float, float]=(10000.0, 10000.0)) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/world_asset_service.py:549

Describe the minimum preview-tile rebuild needed after an authoring change.

_navigation_point

def _navigation_point(value: Any, extent: tuple[float, float]) -> tuple[float, float]

module function · internal · tech_connector/game_engine/assets/world_asset_service.py:578

_navigation_cell

def _navigation_cell(point: tuple[float, float], columns: int, rows: int) -> tuple[int, int]

module function · internal · tech_connector/game_engine/assets/world_asset_service.py:586

build_lighting_preview

def build_lighting_preview(values: Mapping[str, Any]) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/world_asset_service.py:590

build_partition_preview

def build_partition_preview(values: Mapping[str, Any], *, extent: tuple[float, float]=(100000.0, 100000.0)) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/world_asset_service.py:604

build_hlod_preview

def build_hlod_preview(values: Mapping[str, Any], *, source_triangles: int=100000) -> dict[str, Any]

module function · public name · tech_connector/game_engine/assets/world_asset_service.py:625

_build_terrain

def _build_terrain(values: Mapping[str, Any], *, maximum_resolution: int) -> dict[str, Any]

module function · internal · tech_connector/game_engine/assets/world_asset_service.py:636

_editable_terrain

def _editable_terrain(values: Mapping[str, Any]) -> dict[str, Any]

module function · internal · tech_connector/game_engine/assets/world_asset_service.py:665

_build_biome

def _build_biome(values: Mapping[str, Any], terrain: Mapping[str, Any], service: WorldAssetService) -> dict[str, Any]

module function · internal · tech_connector/game_engine/assets/world_asset_service.py:672

_asset_references

def _asset_references(value: Any) -> set[str]

module function · internal · tech_connector/game_engine/assets/world_asset_service.py:705

_unique_issues

def _unique_issues(issues: Sequence[WorldAssetIssue]) -> list[WorldAssetIssue]

module function · internal · tech_connector/game_engine/assets/world_asset_service.py:719

tech_connector.game_engine.assets.world_build_service

WorldBuildReceipt.to_dict

def WorldBuildReceipt.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/assets/world_build_service.py:27

WorldBuildService.__init__

def WorldBuildService.__init__(self, project_root: str | Path, database: AssetDatabase) -> None

class method · internal · tech_connector/game_engine/assets/world_build_service.py:33

WorldBuildService.build

def WorldBuildService.build(self, asset_id: str, *, platform: str='desktop', quality: str='high') -> WorldBuildReceipt

class method · public name · tech_connector/game_engine/assets/world_build_service.py:38

WorldBuildService.build_many

def WorldBuildService.build_many(self, asset_ids: Iterable[str], *, platform: str='desktop', quality: str='high') -> tuple[WorldBuildReceipt, ...]

class method · public name · tech_connector/game_engine/assets/world_build_service.py:66

WorldBuildService._terrain_mesh

def WorldBuildService._terrain_mesh(self, asset_id: str, *, platform: str, quality: str)

class method · internal · tech_connector/game_engine/assets/world_build_service.py:69

WorldBuildService._navigation_mesh

def WorldBuildService._navigation_mesh(self, asset_id: str, *, platform: str, quality: str)

class method · internal · tech_connector/game_engine/assets/world_build_service.py:99

WorldBuildService._lighting

def WorldBuildService._lighting(self, asset_id: str, *, platform: str, quality: str)

class method · internal · tech_connector/game_engine/assets/world_build_service.py:147

WorldBuildService._hlod

def WorldBuildService._hlod(self, asset_id: str, *, platform: str, quality: str)

class method · internal · tech_connector/game_engine/assets/world_build_service.py:173

WorldBuildService._partition

def WorldBuildService._partition(self, asset_id: str, *, platform: str, quality: str)

class method · internal · tech_connector/game_engine/assets/world_build_service.py:197

_heightfield

def _heightfield(payload: Mapping[str, Any]) -> HeightField

module function · internal · tech_connector/game_engine/assets/world_build_service.py:223

_terrain_ids

def _terrain_ids(values: Mapping[str, Any], database: AssetDatabase) -> tuple[str, ...]

module function · internal · tech_connector/game_engine/assets/world_build_service.py:229

_resolution_cap

def _resolution_cap(platform: str, quality: str) -> int

module function · internal · tech_connector/game_engine/assets/world_build_service.py:234

_sample_indices

def _sample_indices(length: int, stride: int) -> list[int]

module function · internal · tech_connector/game_engine/assets/world_build_service.py:240

_terrain_bounds

def _terrain_bounds(field: HeightField) -> list[float]

module function · internal · tech_connector/game_engine/assets/world_build_service.py:246

_normalize

def _normalize(vector: tuple[float, float, float]) -> tuple[float, float, float]

module function · internal · tech_connector/game_engine/assets/world_build_service.py:251

tech_connector.game_engine.authoring.character_intelligence_service

CharacterParameterSpec.clamp

def CharacterParameterSpec.clamp(self, value: float) -> float

class method · public name · tech_connector/game_engine/authoring/character_intelligence_service.py:23

CharacterMemory.active

def CharacterMemory.active(self, now: float) -> bool

class method · public name · tech_connector/game_engine/authoring/character_intelligence_service.py:59

CharacterProfile.__post_init__

def CharacterProfile.__post_init__(self) -> None

class method · internal · tech_connector/game_engine/authoring/character_intelligence_service.py:102

CharacterProfile.set_parameter

def CharacterProfile.set_parameter(self, name: str, value: float, *, override_lock: bool=False) -> float

class method · public name · tech_connector/game_engine/authoring/character_intelligence_service.py:109

CharacterProfile.to_dict

def CharacterProfile.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/character_intelligence_service.py:119

CharacterProfile.from_dict

def CharacterProfile.from_dict(cls, data: dict[str, Any]) -> 'CharacterProfile'

class method · public name · tech_connector/game_engine/authoring/character_intelligence_service.py:126

CharacterState.character_id

def CharacterState.character_id(self) -> str

class method · public name · tech_connector/game_engine/authoring/character_intelligence_service.py:158

CharacterState.to_dict

def CharacterState.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/character_intelligence_service.py:161

CharacterState.from_dict

def CharacterState.from_dict(cls, data: dict[str, Any]) -> 'CharacterState'

class method · public name · tech_connector/game_engine/authoring/character_intelligence_service.py:174

CharacterWorldAsset.to_dict

def CharacterWorldAsset.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/character_intelligence_service.py:213

CharacterWorldAsset.from_dict

def CharacterWorldAsset.from_dict(cls, data: dict[str, Any]) -> 'CharacterWorldAsset'

class method · public name · tech_connector/game_engine/authoring/character_intelligence_service.py:225

attach_character_world

def attach_character_world(scene_document: Any, world: CharacterWorldAsset) -> dict[str, Any]

module function · public name · tech_connector/game_engine/authoring/character_intelligence_service.py:248

_normalized_map

def _normalized_map(values: dict[str, Any]) -> dict[str, float]

module function · internal · tech_connector/game_engine/authoring/character_intelligence_service.py:257

_condition_from_dict

def _condition_from_dict(data: dict[str, Any]) -> FactCondition

module function · internal · tech_connector/game_engine/authoring/character_intelligence_service.py:261

_rule_from_dict

def _rule_from_dict(data: dict[str, Any]) -> CharacterRule

module function · internal · tech_connector/game_engine/authoring/character_intelligence_service.py:265

_objective_from_dict

def _objective_from_dict(data: dict[str, Any]) -> CharacterObjective

module function · internal · tech_connector/game_engine/authoring/character_intelligence_service.py:277

_beat_from_dict

def _beat_from_dict(data: dict[str, Any]) -> NarrativeBeat

module function · internal · tech_connector/game_engine/authoring/character_intelligence_service.py:283

tech_connector.game_engine.authoring.character_rig_manifest_service

character_slug

def character_slug(character_key: str) -> str

module function · public name · tech_connector/game_engine/authoring/character_rig_manifest_service.py:14

character_source_dir

def character_source_dir(artsource_root: str | Path, character_key: str) -> Path

module function · public name · tech_connector/game_engine/authoring/character_rig_manifest_service.py:21

character_rig_scene_path

def character_rig_scene_path(artsource_root: str | Path, character_key: str, *, version: int=1, extension: str='.mb') -> Path

module function · public name · tech_connector/game_engine/authoring/character_rig_manifest_service.py:25

animation_source_paths

def animation_source_paths(artsource_root: str | Path, character_key: str, animation_name: str) -> dict[str, Path]

module function · public name · tech_connector/game_engine/authoring/character_rig_manifest_service.py:38

build_manifest

def build_manifest(*, character_key: str, unreal_skeletal_mesh: str, unreal_skeleton: str, rig_scene: str | Path, mapping_profile: str | Path, rig_adapter: str, rig_namespace: str, target_skeleton_source: str | Path | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/authoring/character_rig_manifest_service.py:51

validate_manifest

def validate_manifest(manifest: dict[str, Any], *, require_files: bool=True) -> dict[str, Any]

module function · public name · tech_connector/game_engine/authoring/character_rig_manifest_service.py:83

save_manifest

def save_manifest(artsource_root: str | Path, manifest: dict[str, Any]) -> Path

module function · public name · tech_connector/game_engine/authoring/character_rig_manifest_service.py:105

load_manifest

def load_manifest(path: str | Path, *, require_files: bool=True) -> dict[str, Any]

module function · public name · tech_connector/game_engine/authoring/character_rig_manifest_service.py:115

discover_manifests

def discover_manifests(artsource_roots: Iterable[str | Path]) -> list[dict[str, Any]]

module function · public name · tech_connector/game_engine/authoring/character_rig_manifest_service.py:125

tech_connector.game_engine.authoring.engine_graph_program_service

_friendly_name

def _friendly_name(value: str) -> str

module function · internal · tech_connector/game_engine/authoring/engine_graph_program_service.py:20

_identifier

def _identifier(value: str, fallback: str='value') -> str

module function · internal · tech_connector/game_engine/authoring/engine_graph_program_service.py:25

GraphPropertyDefinition.to_dict

def GraphPropertyDefinition.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/engine_graph_program_service.py:46

GraphOperationDefinition.to_dict

def GraphOperationDefinition.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/engine_graph_program_service.py:67

GraphAuthoringContext.from_value

def GraphAuthoringContext.from_value(cls, value: 'GraphAuthoringContext | dict[str, Any] | None') -> 'GraphAuthoringContext'

class method · public name · tech_connector/game_engine/authoring/engine_graph_program_service.py:82

GraphInputBinding.from_dict

def GraphInputBinding.from_dict(cls, value: dict[str, Any]) -> 'GraphInputBinding'

class method · public name · tech_connector/game_engine/authoring/engine_graph_program_service.py:105

GraphInputBinding.to_dict

def GraphInputBinding.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/engine_graph_program_service.py:113

EngineGraphNode.from_dict

def EngineGraphNode.from_dict(cls, value: dict[str, Any]) -> 'EngineGraphNode'

class method · public name · tech_connector/game_engine/authoring/engine_graph_program_service.py:129

EngineGraphNode.to_dict

def EngineGraphNode.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/engine_graph_program_service.py:141

EngineGraphProgram.from_dict

def EngineGraphProgram.from_dict(cls, value: dict[str, Any]) -> 'EngineGraphProgram'

class method · public name · tech_connector/game_engine/authoring/engine_graph_program_service.py:165

EngineGraphProgram.to_dict

def EngineGraphProgram.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/engine_graph_program_service.py:176

GraphCodeSyncResult.to_dict

def GraphCodeSyncResult.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/engine_graph_program_service.py:195

register_graph_operation

def register_graph_operation(definition: GraphOperationDefinition, *, replace: bool=False) -> None

module function · public name · tech_connector/game_engine/authoring/engine_graph_program_service.py:207

graph_operation_definition

def graph_operation_definition(operation: str) -> GraphOperationDefinition | None

module function · public name · tech_connector/game_engine/authoring/engine_graph_program_service.py:225

unregister_graph_operation

def unregister_graph_operation(operation: str) -> None

module function · public name · tech_connector/game_engine/authoring/engine_graph_program_service.py:230

available_graph_operations

def available_graph_operations() -> list[dict[str, Any]]

module function · public name · tech_connector/game_engine/authoring/engine_graph_program_service.py:235

find_graph_actions

def find_graph_actions(query: str='', *, context: GraphAuthoringContext | dict[str, Any] | None=None, context_sensitive: bool=True) -> list[dict[str, Any]]

module function · public name · tech_connector/game_engine/authoring/engine_graph_program_service.py:240

Return action-menu rows for either the current context or the global library.

graph_action_availability

def graph_action_availability(definition: GraphOperationDefinition, context: GraphAuthoringContext | dict[str, Any] | None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/authoring/engine_graph_program_service.py:277

graph_node_controls

def graph_node_controls(node: EngineGraphNode) -> list[dict[str, Any]]

module function · public name · tech_connector/game_engine/authoring/engine_graph_program_service.py:313

validate_engine_graph_program

def validate_engine_graph_program(program: EngineGraphProgram) -> list[dict[str, Any]]

module function · public name · tech_connector/game_engine/authoring/engine_graph_program_service.py:331

generate_engine_graph_python

def generate_engine_graph_python(program: EngineGraphProgram) -> str

module function · public name · tech_connector/game_engine/authoring/engine_graph_program_service.py:352

parse_engine_graph_python

def parse_engine_graph_python(code: str, previous: EngineGraphProgram | None=None) -> GraphCodeSyncResult

module function · public name · tech_connector/game_engine/authoring/engine_graph_program_service.py:395

compile_engine_graph_manifest

def compile_engine_graph_manifest(program: EngineGraphProgram) -> dict[str, Any]

module function · public name · tech_connector/game_engine/authoring/engine_graph_program_service.py:477

attach_engine_graph_program

def attach_engine_graph_program(scene: Any, program: EngineGraphProgram, source_code: str='') -> dict[str, Any]

module function · public name · tech_connector/game_engine/authoring/engine_graph_program_service.py:498

Store one canonical graph program and its synchronized code in a TC scene.

engine_graph_programs_from_scene

def engine_graph_programs_from_scene(scene: Any) -> dict[str, EngineGraphProgram]

module function · public name · tech_connector/game_engine/authoring/engine_graph_program_service.py:514

_ordered_nodes

def _ordered_nodes(program: EngineGraphProgram) -> list[EngineGraphNode]

module function · internal · tech_connector/game_engine/authoring/engine_graph_program_service.py:524

_has_data_cycle

def _has_data_cycle(program: EngineGraphProgram) -> bool

module function · internal · tech_connector/game_engine/authoring/engine_graph_program_service.py:566

_comments_by_line

def _comments_by_line(code: str) -> dict[int, str]

module function · internal · tech_connector/game_engine/authoring/engine_graph_program_service.py:587

_program_metadata

def _program_metadata(comments: dict[int, str]) -> dict[str, str]

module function · internal · tech_connector/game_engine/authoring/engine_graph_program_service.py:594

_node_id_for_line

def _node_id_for_line(comments: dict[int, str], line: int) -> str

module function · internal · tech_connector/game_engine/authoring/engine_graph_program_service.py:604

_is_graph_call

def _is_graph_call(call: ast.Call | None) -> bool

module function · internal · tech_connector/game_engine/authoring/engine_graph_program_service.py:614

_literal

def _literal(value: ast.AST) -> Any

module function · internal · tech_connector/game_engine/authoring/engine_graph_program_service.py:620

_unique_variable

def _unique_variable(node_id: str, used: set[str]) -> str

module function · internal · tech_connector/game_engine/authoring/engine_graph_program_service.py:627

_diagnostic

def _diagnostic(severity: str, code: str, message: str, **location: Any) -> dict[str, Any]

module function · internal · tech_connector/game_engine/authoring/engine_graph_program_service.py:637

_native_operation_contract

def _native_operation_contract(operation: str) -> dict[str, Any]

module function · internal · tech_connector/game_engine/authoring/engine_graph_program_service.py:641

_canonical_input_name

def _canonical_input_name(definition: GraphOperationDefinition | None, input_name: str) -> str

module function · internal · tech_connector/game_engine/authoring/engine_graph_program_service.py:655

_validate_node_inputs

def _validate_node_inputs(node: EngineGraphNode) -> list[dict[str, Any]]

module function · internal · tech_connector/game_engine/authoring/engine_graph_program_service.py:669

_literal_property_issue

def _literal_property_issue(spec: GraphPropertyDefinition, value: Any) -> str

module function · internal · tech_connector/game_engine/authoring/engine_graph_program_service.py:712

_types_compatible

def _types_compatible(produced: str, accepted: str) -> bool

module function · internal · tech_connector/game_engine/authoring/engine_graph_program_service.py:750

_list_words

def _list_words(values: Iterable[str]) -> str

module function · internal · tech_connector/game_engine/authoring/engine_graph_program_service.py:759

_action_search_score

def _action_search_score(definition: GraphOperationDefinition, terms: list[str], available: bool) -> int

module function · internal · tech_connector/game_engine/authoring/engine_graph_program_service.py:766

_property

def _property(key: str, display_name: str, description: str, value_type: str='Any', default: Any=None, **kwargs: Any) -> GraphPropertyDefinition

module function · internal · tech_connector/game_engine/authoring/engine_graph_program_service.py:782

tech_connector.game_engine.authoring.game_experience_service

ExperienceAxes.normalized

def ExperienceAxes.normalized(self) -> 'ExperienceAxes'

class method · public name · tech_connector/game_engine/authoring/game_experience_service.py:26

GameExperienceProfile.to_dict

def GameExperienceProfile.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/game_experience_service.py:77

GameExperienceProfile.from_dict

def GameExperienceProfile.from_dict(cls, data: dict[str, Any]) -> 'GameExperienceProfile'

class method · public name · tech_connector/game_engine/authoring/game_experience_service.py:95

create_game_experience_profile

def create_game_experience_profile(profile_id: str, game_types: Iterable[str], *, axis_overrides: dict[str, float] | None=None, simulation_overrides: dict[str, Any] | None=None) -> GameExperienceProfile

module function · public name · tech_connector/game_engine/authoring/game_experience_service.py:174

validate_game_experience

def validate_game_experience(profile: GameExperienceProfile) -> dict[str, Any]

module function · public name · tech_connector/game_engine/authoring/game_experience_service.py:220

build_gameplay_runtime_budget

def build_gameplay_runtime_budget(profile: GameExperienceProfile, *, target: str='desktop') -> dict[str, Any]

module function · public name · tech_connector/game_engine/authoring/game_experience_service.py:240

available_game_types

def available_game_types() -> tuple[str, ...]

module function · public name · tech_connector/game_engine/authoring/game_experience_service.py:259

attach_game_experience

def attach_game_experience(scene_document: Any, profile: GameExperienceProfile) -> dict[str, Any]

module function · public name · tech_connector/game_engine/authoring/game_experience_service.py:263

_learning_objective

def _learning_objective(data: dict[str, Any]) -> LearningObjective

module function · internal · tech_connector/game_engine/authoring/game_experience_service.py:272

_gameplay_module

def _gameplay_module(data: dict[str, Any]) -> GameplayModule

module function · internal · tech_connector/game_engine/authoring/game_experience_service.py:279

_clamp01

def _clamp01(value: float) -> float

module function · internal · tech_connector/game_engine/authoring/game_experience_service.py:286

tech_connector.game_engine.authoring.game_template_service

GameTemplateVariant.qualified_id

def GameTemplateVariant.qualified_id(self) -> str

class method · public name · tech_connector/game_engine/authoring/game_template_service.py:62

GameTemplateVariant.to_dict

def GameTemplateVariant.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/game_template_service.py:65

GameQualityProfile.to_dict

def GameQualityProfile.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/game_template_service.py:79

GameTemplateReceipt.ready_to_play

def GameTemplateReceipt.ready_to_play(self) -> bool

class method · public name · tech_connector/game_engine/authoring/game_template_service.py:108

GameTemplateReceipt.to_dict

def GameTemplateReceipt.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/game_template_service.py:111

available_game_templates

def available_game_templates() -> tuple[dict[str, Any], ...]

module function · public name · tech_connector/game_engine/authoring/game_template_service.py:161

Return the user-facing catalog with explicit maturity per variant.

available_game_quality_profiles

def available_game_quality_profiles() -> tuple[dict[str, Any], ...]

module function · public name · tech_connector/game_engine/authoring/game_template_service.py:167

Return stable quality choices shared by the New Game UI and Python API.

resolve_game_quality_profile

def resolve_game_quality_profile(profile_id: str, visual_style: str='') -> GameQualityProfile

module function · public name · tech_connector/game_engine/authoring/game_template_service.py:173

resolve_game_template

def resolve_game_template(template_id: str, variant_id: str='') -> GameTemplateVariant

module function · public name · tech_connector/game_engine/authoring/game_template_service.py:183

GameTemplateService.__init__

def GameTemplateService.__init__(self, project_root: str | Path, database: AssetDatabase, registry: AssetTypeRegistry | None=None) -> None

class method · internal · tech_connector/game_engine/authoring/game_template_service.py:200

GameTemplateService.create_project

def GameTemplateService.create_project(self, *, template_id: str='playable_sandbox', variant_id: str='', visual_style: str='', quality_profile: str='', project_name: str='StarterGame', platform: str='windows', root_folder: str | Path='Assets') -> GameTemplateReceipt

class method · public name · tech_connector/game_engine/authoring/game_template_service.py:212

GameTemplateService.validate_project

def GameTemplateService.validate_project(self, ruleset_asset_id: str, build_profile_asset_id: str='') -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/game_template_service.py:368

GameTemplateService._author_level

def GameTemplateService._author_level(self, level_asset_id: str, recipe: GameTemplateVariant, visual_style: str, player_prefab_id: str, input_map_id: str, locomotion_controller_id: str, physics_scene_id: str, character: StarterCharacterReceipt, quality: GameQualityProfile) -> None

class method · internal · tech_connector/game_engine/authoring/game_template_service.py:541

GameTemplateService._properties

def GameTemplateService._properties(self, asset_id: str, expected_type: str) -> dict[str, Any]

class method · internal · tech_connector/game_engine/authoring/game_template_service.py:605

GameTemplateService._rollback

def GameTemplateService._rollback(self, created_asset_ids: list[str]) -> None

class method · internal · tech_connector/game_engine/authoring/game_template_service.py:614

_input_properties

def _input_properties(recipe: GameTemplateVariant) -> dict[str, Any]

module function · internal · tech_connector/game_engine/authoring/game_template_service.py:626

_physics_properties

def _physics_properties() -> dict[str, Any]

module function · internal · tech_connector/game_engine/authoring/game_template_service.py:660

_player_entity

def _player_entity(recipe: GameTemplateVariant, locomotion_controller_id: str='', character: StarterCharacterReceipt | None=None) -> dict[str, Any]

module function · internal · tech_connector/game_engine/authoring/game_template_service.py:673

_runtime_world

def _runtime_world(recipe: GameTemplateVariant, visual_style: str, locomotion_controller_id: str, character: StarterCharacterReceipt, quality: GameQualityProfile) -> dict[str, Any]

module function · internal · tech_connector/game_engine/authoring/game_template_service.py:705

_quality_for_style

def _quality_for_style(visual_style: str) -> str

module function · internal · tech_connector/game_engine/authoring/game_template_service.py:807

_locomotion_preset_id

def _locomotion_preset_id(recipe: GameTemplateVariant) -> str

module function · internal · tech_connector/game_engine/authoring/game_template_service.py:818

_safe_prefix

def _safe_prefix(value: str) -> str

module function · internal · tech_connector/game_engine/authoring/game_template_service.py:828

_issue

def _issue(severity: str, code: str, message: str) -> dict[str, str]

module function · internal · tech_connector/game_engine/authoring/game_template_service.py:836

tech_connector.game_engine.authoring.level_actor_authoring_service

LevelActorAuthoringService.__init__

def LevelActorAuthoringService.__init__(self, project_root: str | Path, database: AssetDatabase) -> None

class method · internal · tech_connector/game_engine/authoring/level_actor_authoring_service.py:20

LevelActorAuthoringService.actors

def LevelActorAuthoringService.actors(self, level_asset_id: str) -> tuple[dict[str, Any], ...]

class method · public name · tech_connector/game_engine/authoring/level_actor_authoring_service.py:24

LevelActorAuthoringService.set_render_mesh

def LevelActorAuthoringService.set_render_mesh(self, level_asset_id: str, actor_name: str, mesh_asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/level_actor_authoring_service.py:28

Bind an imported OBJ mesh to one named actor in a saved Level.

LevelActorAuthoringService.transform

def LevelActorAuthoringService.transform(self, level_asset_id: str, actor_ids: Iterable[str], *, translation: Iterable[float]=(0.0, 0.0, 0.0), rotation: Iterable[float]=(0.0, 0.0, 0.0), scale_multiplier: Iterable[float]=(1.0, 1.0, 1.0)) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/level_actor_authoring_service.py:55

LevelActorAuthoringService.set_visibility

def LevelActorAuthoringService.set_visibility(self, level_asset_id: str, actor_ids: Iterable[str], visible: bool) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/level_actor_authoring_service.py:71

LevelActorAuthoringService.isolate

def LevelActorAuthoringService.isolate(self, level_asset_id: str, actor_ids: Iterable[str]) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/level_actor_authoring_service.py:74

LevelActorAuthoringService.show_all

def LevelActorAuthoringService.show_all(self, level_asset_id: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/level_actor_authoring_service.py:82

LevelActorAuthoringService.set_locked

def LevelActorAuthoringService.set_locked(self, level_asset_id: str, actor_ids: Iterable[str], locked: bool) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/level_actor_authoring_service.py:88

LevelActorAuthoringService.duplicate

def LevelActorAuthoringService.duplicate(self, level_asset_id: str, actor_ids: Iterable[str]) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/level_actor_authoring_service.py:91

Duplicate unlocked actors while giving actors and components fresh identities.

LevelActorAuthoringService.delete

def LevelActorAuthoringService.delete(self, level_asset_id: str, actor_ids: Iterable[str]) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/level_actor_authoring_service.py:120

Delete unlocked actors and detach surviving children from deleted parents.

LevelActorAuthoringService.move_to_folder

def LevelActorAuthoringService.move_to_folder(self, level_asset_id: str, actor_ids: Iterable[str], folder: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/level_actor_authoring_service.py:142

LevelActorAuthoringService.parent

def LevelActorAuthoringService.parent(self, level_asset_id: str, actor_ids: Iterable[str], parent_actor_id: str='') -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/level_actor_authoring_service.py:151

LevelActorAuthoringService.reorder_component

def LevelActorAuthoringService.reorder_component(self, level_asset_id: str, actor_id: str, component_id: str, new_index: int) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/level_actor_authoring_service.py:163

LevelActorAuthoringService.save_camera_bookmark

def LevelActorAuthoringService.save_camera_bookmark(self, level_asset_id: str, slot: int, camera: dict[str, Any]) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/level_actor_authoring_service.py:172

LevelActorAuthoringService._edit

def LevelActorAuthoringService._edit(self, level_asset_id: str, actor_ids: Iterable[str], operation: str, mutation: Callable[[dict[str, Any], list[dict[str, Any]]], None], *, skip_locked: bool=False) -> dict[str, Any]

class method · internal · tech_connector/game_engine/authoring/level_actor_authoring_service.py:180

LevelActorAuthoringService._load

def LevelActorAuthoringService._load(self, level_asset_id: str)

class method · internal · tech_connector/game_engine/authoring/level_actor_authoring_service.py:199

_vector

def _vector(values: Iterable[float] | None, default: float) -> list[float]

module function · internal · tech_connector/game_engine/authoring/level_actor_authoring_service.py:207

tech_connector.game_engine.authoring.mechanical_rig_service

MechanicalRigResult.to_dict

def MechanicalRigResult.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/mechanical_rig_service.py:23

create_mechanical_rig

def create_mechanical_rig(graph: Any, *, mode: str, driver: str, driven: str, driver_axis: str='y', driven_axis: str='y', ratio: float | None=None, module: str='mechanical', bidirectional_aim: bool=False) -> MechanicalRigResult

module function · public name · tech_connector/game_engine/authoring/mechanical_rig_service.py:27

_axis

def _axis(value: str) -> str

module function · internal · tech_connector/game_engine/authoring/mechanical_rig_service.py:102

_axis_vector

def _axis_vector(axis: str) -> list[float]

module function · internal · tech_connector/game_engine/authoring/mechanical_rig_service.py:109

_unique_id

def _unique_id(existing: dict[str, Any], base: str) -> str

module function · internal · tech_connector/game_engine/authoring/mechanical_rig_service.py:113

tech_connector.game_engine.authoring.presentation_profile_service

PresentationProfile.to_dict

def PresentationProfile.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/presentation_profile_service.py:80

PresentationProfile.from_dict

def PresentationProfile.from_dict(cls, data: dict[str, Any]) -> 'PresentationProfile'

class method · public name · tech_connector/game_engine/authoring/presentation_profile_service.py:101

create_presentation_profile

def create_presentation_profile(profile_id: str, visual_style: str, *, dimensionality: str='3d', overrides: dict[str, Any] | None=None) -> PresentationProfile

module function · public name · tech_connector/game_engine/authoring/presentation_profile_service.py:214

compile_presentation_plan

def compile_presentation_plan(profile: PresentationProfile, *, target: str='desktop', viewport_size: tuple[int, int]=(1920, 1080)) -> dict[str, Any]

module function · public name · tech_connector/game_engine/authoring/presentation_profile_service.py:268

validate_presentation_profile

def validate_presentation_profile(profile: PresentationProfile, game_experience: Any=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/authoring/presentation_profile_service.py:324

available_visual_styles

def available_visual_styles() -> tuple[str, ...]

module function · public name · tech_connector/game_engine/authoring/presentation_profile_service.py:352

presentation_controls

def presentation_controls(profile: PresentationProfile) -> list[dict[str, Any]]

module function · public name · tech_connector/game_engine/authoring/presentation_profile_service.py:356

Return friendly controls; renderer vocabulary stays out of the default UX.

presentation_summary

def presentation_summary(profile: PresentationProfile) -> dict[str, Any]

module function · public name · tech_connector/game_engine/authoring/presentation_profile_service.py:446

update_presentation_control

def update_presentation_control(profile: PresentationProfile, key: str, value: Any) -> PresentationProfile

module function · public name · tech_connector/game_engine/authoring/presentation_profile_service.py:461

_asset_representations

def _asset_representations(profile: PresentationProfile) -> dict[str, str]

module function · internal · tech_connector/game_engine/authoring/presentation_profile_service.py:511

_apply_overrides

def _apply_overrides(profile: PresentationProfile, overrides: dict[str, Any]) -> None

module function · internal · tech_connector/game_engine/authoring/presentation_profile_service.py:522

_clamp01

def _clamp01(value: Any) -> float

module function · internal · tech_connector/game_engine/authoring/presentation_profile_service.py:535

_plain_description

def _plain_description(profile: PresentationProfile) -> str

module function · internal · tech_connector/game_engine/authoring/presentation_profile_service.py:539

tech_connector.game_engine.authoring.procedural_biome_service

_random

def _random(*parts: Any) -> float

module function · internal · tech_connector/game_engine/authoring/procedural_biome_service.py:18

_smooth

def _smooth(value: float) -> float

module function · internal · tech_connector/game_engine/authoring/procedural_biome_service.py:23

_value_noise

def _value_noise(x: float, z: float, seed: int) -> float

module function · internal · tech_connector/game_engine/authoring/procedural_biome_service.py:27

generate_noise_heightfield

def generate_noise_heightfield(width: int, depth: int, *, cell_size: float=1.0, seed: int=0, amplitude: float=10.0, frequency: float=0.04, octaves: int=5, lacunarity: float=2.0, gain: float=0.5, origin: tuple[float, float, float]=(0.0, 0.0, 0.0)) -> HeightField

module function · public name · tech_connector/game_engine/authoring/procedural_biome_service.py:39

thermal_erode_heightfield

def thermal_erode_heightfield(heightfield: HeightField, *, iterations: int=8, talus: float=0.6, strength: float=0.35) -> HeightField

module function · public name · tech_connector/game_engine/authoring/procedural_biome_service.py:86

Apply deterministic mass-preserving thermal erosion to terrain heights.

hydraulic_erode_heightfield

def hydraulic_erode_heightfield(heightfield: HeightField, *, iterations: int=32, rainfall: float=0.02, evaporation: float=0.08, flow_rate: float=0.55, sediment_capacity: float=1.5, erosion_rate: float=0.12, deposition_rate: float=0.18, river_threshold: float=0.35) -> HeightField

module function · public name · tech_connector/game_engine/authoring/procedural_biome_service.py:126

Erode terrain with deterministic water and preserve reusable flow fields.

BiomeSpecies.accepts

def BiomeSpecies.accepts(self, *, elevation: float, slope: float, moisture: float, temperature: float) -> bool

class method · public name · tech_connector/game_engine/authoring/procedural_biome_service.py:254

BiomeDefinition.to_dict

def BiomeDefinition.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/procedural_biome_service.py:273

BiomeDefinition.from_dict

def BiomeDefinition.from_dict(cls, data: dict[str, Any]) -> 'BiomeDefinition'

class method · public name · tech_connector/game_engine/authoring/procedural_biome_service.py:277

scatter_biome

def scatter_biome(heightfield: HeightField, biome: BiomeDefinition) -> ProceduralPayload

module function · public name · tech_connector/game_engine/authoring/procedural_biome_service.py:288

tech_connector.game_engine.authoring.procedural_generation_service

_vec3

def _vec3(value: Any, default: Vec3=(0.0, 0.0, 0.0)) -> Vec3

module function · internal · tech_connector/game_engine/authoring/procedural_generation_service.py:20

_digest

def _digest(value: Any) -> str

module function · internal · tech_connector/game_engine/authoring/procedural_generation_service.py:28

_unit_random

def _unit_random(*parts: Any) -> float

module function · internal · tech_connector/game_engine/authoring/procedural_generation_service.py:33

ProceduralPoint.to_dict

def ProceduralPoint.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/procedural_generation_service.py:52

replace_procedural_point

def replace_procedural_point(point: ProceduralPoint, *, position: Vec3 | None=None, rotation: Vec3 | None=None, scale: Vec3 | None=None, attributes: dict[str, Any] | None=None, density: float | None=None, steepness: float | None=None) -> ProceduralPoint

module function · public name · tech_connector/game_engine/authoring/procedural_generation_service.py:56

Copy a point without dropping native PCG-compatible spatial properties.

ProceduralInstance.to_dict

def ProceduralInstance.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/procedural_generation_service.py:91

ProceduralPayload.to_dict

def ProceduralPayload.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/procedural_generation_service.py:102

ProceduralPayload.fingerprint

def ProceduralPayload.fingerprint(self) -> str

class method · public name · tech_connector/game_engine/authoring/procedural_generation_service.py:111

ProceduralNode.to_dict

def ProceduralNode.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/procedural_generation_service.py:126

ProceduralGraph.add_node

def ProceduralGraph.add_node(self, node_id: str, operation: str, *, inputs: Iterable[str]=(), parameters: dict[str, Any] | None=None, label: str='') -> ProceduralNode

class method · public name · tech_connector/game_engine/authoring/procedural_generation_service.py:139

ProceduralGraph.connect

def ProceduralGraph.connect(self, source_node: str, destination_node: str) -> None

class method · public name · tech_connector/game_engine/authoring/procedural_generation_service.py:164

ProceduralGraph.validate

def ProceduralGraph.validate(self) -> list[str]

class method · public name · tech_connector/game_engine/authoring/procedural_generation_service.py:170

ProceduralGraph.to_dict

def ProceduralGraph.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/procedural_generation_service.py:186

ProceduralGraph.from_dict

def ProceduralGraph.from_dict(cls, data: dict[str, Any]) -> 'ProceduralGraph'

class method · public name · tech_connector/game_engine/authoring/procedural_generation_service.py:198

ProceduralCookResult.to_dict

def ProceduralCookResult.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/procedural_generation_service.py:245

_topological_order

def _topological_order(graph: ProceduralGraph) -> list[str]

module function · internal · tech_connector/game_engine/authoring/procedural_generation_service.py:255

_source_points

def _source_points(inputs: list[ProceduralPayload]) -> list[ProceduralPoint]

module function · internal · tech_connector/game_engine/authoring/procedural_generation_service.py:278

_source_instances

def _source_instances(inputs: list[ProceduralPayload]) -> list[ProceduralInstance]

module function · internal · tech_connector/game_engine/authoring/procedural_generation_service.py:282

_grid_points

def _grid_points(node: ProceduralNode, _inputs: list[ProceduralPayload], seed: int) -> ProceduralPayload

module function · internal · tech_connector/game_engine/authoring/procedural_generation_service.py:286

_scatter_bounds

def _scatter_bounds(node: ProceduralNode, _inputs: list[ProceduralPayload], seed: int) -> ProceduralPayload

module function · internal · tech_connector/game_engine/authoring/procedural_generation_service.py:313

_spline_sample

def _spline_sample(node: ProceduralNode, _inputs: list[ProceduralPayload], _seed: int) -> ProceduralPayload

module function · internal · tech_connector/game_engine/authoring/procedural_generation_service.py:337

_transform_points

def _transform_points(node: ProceduralNode, inputs: list[ProceduralPayload], _seed: int) -> ProceduralPayload

module function · internal · tech_connector/game_engine/authoring/procedural_generation_service.py:365

_repeat_transform

def _repeat_transform(node: ProceduralNode, inputs: list[ProceduralPayload], _seed: int) -> ProceduralPayload

module function · internal · tech_connector/game_engine/authoring/procedural_generation_service.py:381

_noise_attribute

def _noise_attribute(node: ProceduralNode, inputs: list[ProceduralPayload], seed: int) -> ProceduralPayload

module function · internal · tech_connector/game_engine/authoring/procedural_generation_service.py:407

_filter_attribute

def _filter_attribute(node: ProceduralNode, inputs: list[ProceduralPayload], _seed: int) -> ProceduralPayload

module function · internal · tech_connector/game_engine/authoring/procedural_generation_service.py:423

_select_asset

def _select_asset(node: ProceduralNode, inputs: list[ProceduralPayload], seed: int) -> ProceduralPayload

module function · internal · tech_connector/game_engine/authoring/procedural_generation_service.py:446

_instance_on_points

def _instance_on_points(node: ProceduralNode, inputs: list[ProceduralPayload], _seed: int) -> ProceduralPayload

module function · internal · tech_connector/game_engine/authoring/procedural_generation_service.py:474

_heightfield_parameter

def _heightfield_parameter(node: ProceduralNode)

module function · internal · tech_connector/game_engine/authoring/procedural_generation_service.py:494

_project_heightfield

def _project_heightfield(node: ProceduralNode, inputs: list[ProceduralPayload], _seed: int) -> ProceduralPayload

module function · internal · tech_connector/game_engine/authoring/procedural_generation_service.py:505

_filter_slope

def _filter_slope(node: ProceduralNode, inputs: list[ProceduralPayload], _seed: int) -> ProceduralPayload

module function · internal · tech_connector/game_engine/authoring/procedural_generation_service.py:516

_filter_heightfield_mask

def _filter_heightfield_mask(node: ProceduralNode, inputs: list[ProceduralPayload], _seed: int) -> ProceduralPayload

module function · internal · tech_connector/game_engine/authoring/procedural_generation_service.py:528

_filter_polygon

def _filter_polygon(node: ProceduralNode, inputs: list[ProceduralPayload], _seed: int) -> ProceduralPayload

module function · internal · tech_connector/game_engine/authoring/procedural_generation_service.py:541

_point_neighborhood

def _point_neighborhood(node: ProceduralNode, inputs: list[ProceduralPayload], _seed: int) -> ProceduralPayload

module function · internal · tech_connector/game_engine/authoring/procedural_generation_service.py:552

_biome_scatter

def _biome_scatter(node: ProceduralNode, inputs: list[ProceduralPayload], seed: int) -> ProceduralPayload

module function · internal · tech_connector/game_engine/authoring/procedural_generation_service.py:561

_hydraulic_erosion

def _hydraulic_erosion(node: ProceduralNode, inputs: list[ProceduralPayload], _seed: int) -> ProceduralPayload

module function · internal · tech_connector/game_engine/authoring/procedural_generation_service.py:575

_shape_grammar_spline

def _shape_grammar_spline(node: ProceduralNode, _inputs: list[ProceduralPayload], seed: int) -> ProceduralPayload

module function · internal · tech_connector/game_engine/authoring/procedural_generation_service.py:601

_procedural_mesh

def _procedural_mesh(node: ProceduralNode, inputs: list[ProceduralPayload], _seed: int) -> ProceduralPayload

module function · internal · tech_connector/game_engine/authoring/procedural_generation_service.py:617

_advanced_geometry

def _advanced_geometry(node: ProceduralNode, inputs: list[ProceduralPayload], _seed: int) -> ProceduralPayload

module function · internal · tech_connector/game_engine/authoring/procedural_generation_service.py:623

_merge

def _merge(_node: ProceduralNode, inputs: list[ProceduralPayload], _seed: int) -> ProceduralPayload

module function · internal · tech_connector/game_engine/authoring/procedural_generation_service.py:629

_passthrough

def _passthrough(_node: ProceduralNode, inputs: list[ProceduralPayload], _seed: int) -> ProceduralPayload

module function · internal · tech_connector/game_engine/authoring/procedural_generation_service.py:642

ProceduralGraphCooker.__init__

def ProceduralGraphCooker.__init__(self) -> None

class method · internal · tech_connector/game_engine/authoring/procedural_generation_service.py:698

ProceduralGraphCooker.clear

def ProceduralGraphCooker.clear(self, graph_id: str='') -> None

class method · public name · tech_connector/game_engine/authoring/procedural_generation_service.py:702

ProceduralGraphCooker.invalidate_nodes

def ProceduralGraphCooker.invalidate_nodes(self, graph: ProceduralGraph, node_ids: Iterable[str], *, include_downstream: bool=True) -> tuple[str, ...]

class method · public name · tech_connector/game_engine/authoring/procedural_generation_service.py:710

Invalidate edited nodes and, by default, only their dependent downstream branch.

ProceduralGraphCooker.cook

def ProceduralGraphCooker.cook(self, graph: ProceduralGraph, *, output_node: str='') -> ProceduralCookResult

class method · public name · tech_connector/game_engine/authoring/procedural_generation_service.py:728

ProceduralBuildQueue.__init__

def ProceduralBuildQueue.__init__(self, cooker: ProceduralGraphCooker | None=None, *, workers: int=2) -> None

class method · internal · tech_connector/game_engine/authoring/procedural_generation_service.py:787

ProceduralBuildQueue.submit

def ProceduralBuildQueue.submit(self, graph: ProceduralGraph, *, output_node: str='') -> Future[ProceduralCookResult]

class method · public name · tech_connector/game_engine/authoring/procedural_generation_service.py:793

ProceduralBuildQueue.shutdown

def ProceduralBuildQueue.shutdown(self, *, wait: bool=True) -> None

class method · public name · tech_connector/game_engine/authoring/procedural_generation_service.py:811

create_scatter_graph

def create_scatter_graph(*, assets: Iterable[str | dict[str, Any]], count: int=100, bounds_min: Vec3=(-10.0, 0.0, -10.0), bounds_max: Vec3=(10.0, 0.0, 10.0), seed: int=0, density: float=1.0) -> ProceduralGraph

module function · public name · tech_connector/game_engine/authoring/procedural_generation_service.py:815

Create a useful editable scatter graph instead of a baked one-off result.

attach_procedural_graph

def attach_procedural_graph(scene: Any, graph: ProceduralGraph, result: ProceduralCookResult | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/authoring/procedural_generation_service.py:849

Attach editable graph intent and an optional cooked receipt to a TC scene.

tech_connector.game_engine.authoring.procedural_geometry_advanced_service

GeometryField.validate

def GeometryField.validate(self, element_count: int) -> None

class method · public name · tech_connector/game_engine/authoring/procedural_geometry_advanced_service.py:26

GeometryField.to_dict

def GeometryField.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/procedural_geometry_advanced_service.py:34

mesh_edges

def mesh_edges(mesh: MeshTopology) -> tuple[tuple[int, int], ...]

module function · public name · tech_connector/game_engine/authoring/procedural_geometry_advanced_service.py:38

domain_size

def domain_size(mesh: MeshTopology, domain: str) -> int

module function · public name · tech_connector/game_engine/authoring/procedural_geometry_advanced_service.py:43

_first_mesh

def _first_mesh(inputs: list[ProceduralPayload]) -> tuple[str, dict[str, Any], MeshTopology]

module function · internal · tech_connector/game_engine/authoring/procedural_geometry_advanced_service.py:50

_face_normal

def _face_normal(mesh: MeshTopology, face: tuple[int, ...]) -> tuple[float, float, float]

module function · internal · tech_connector/game_engine/authoring/procedural_geometry_advanced_service.py:58

_curve_points

def _curve_points(node_id: str, operation: str, parameters: dict[str, Any]) -> ProceduralPayload

module function · internal · tech_connector/game_engine/authoring/procedural_geometry_advanced_service.py:66

_curve_to_mesh

def _curve_to_mesh(node_id: str, parameters: dict[str, Any], inputs: list[ProceduralPayload]) -> ProceduralPayload

module function · internal · tech_connector/game_engine/authoring/procedural_geometry_advanced_service.py:83

_set_field

def _set_field(node_id: str, parameters: dict[str, Any], inputs: list[ProceduralPayload]) -> ProceduralPayload

module function · internal · tech_connector/game_engine/authoring/procedural_geometry_advanced_service.py:110

_field_math

def _field_math(node_id: str, parameters: dict[str, Any], inputs: list[ProceduralPayload]) -> ProceduralPayload

module function · internal · tech_connector/game_engine/authoring/procedural_geometry_advanced_service.py:124

_normals

def _normals(node_id: str, parameters: dict[str, Any], inputs: list[ProceduralPayload]) -> ProceduralPayload

module function · internal · tech_connector/game_engine/authoring/procedural_geometry_advanced_service.py:142

_generate_uv

def _generate_uv(node_id: str, parameters: dict[str, Any], inputs: list[ProceduralPayload]) -> ProceduralPayload

module function · internal · tech_connector/game_engine/authoring/procedural_geometry_advanced_service.py:157

_map_field_domain

def _map_field_domain(node_id: str, parameters: dict[str, Any], inputs: list[ProceduralPayload]) -> ProceduralPayload

module function · internal · tech_connector/game_engine/authoring/procedural_geometry_advanced_service.py:168

_smooth_or_displace

def _smooth_or_displace(node_id: str, operation: str, parameters: dict[str, Any], inputs: list[ProceduralPayload]) -> ProceduralPayload

module function · internal · tech_connector/game_engine/authoring/procedural_geometry_advanced_service.py:192

_voxel_remesh

def _voxel_remesh(node_id: str, parameters: dict[str, Any], inputs: list[ProceduralPayload]) -> ProceduralPayload

module function · internal · tech_connector/game_engine/authoring/procedural_geometry_advanced_service.py:217

_mesh_to_volume

def _mesh_to_volume(node_id: str, parameters: dict[str, Any], inputs: list[ProceduralPayload]) -> ProceduralPayload

module function · internal · tech_connector/game_engine/authoring/procedural_geometry_advanced_service.py:234

_volume_to_mesh

def _volume_to_mesh(node_id: str, parameters: dict[str, Any], inputs: list[ProceduralPayload]) -> ProceduralPayload

module function · internal · tech_connector/game_engine/authoring/procedural_geometry_advanced_service.py:250

_boolean

def _boolean(node_id: str, parameters: dict[str, Any], inputs: list[ProceduralPayload]) -> ProceduralPayload

module function · internal · tech_connector/game_engine/authoring/procedural_geometry_advanced_service.py:261

evaluate_advanced_geometry_node

def evaluate_advanced_geometry_node(operation: str, node_id: str, parameters: dict[str, Any], inputs: list[ProceduralPayload]) -> ProceduralPayload

module function · public name · tech_connector/game_engine/authoring/procedural_geometry_advanced_service.py:281

tech_connector.game_engine.authoring.procedural_graph_tooling_service

ProceduralNodeGroup.to_dict

def ProceduralNodeGroup.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/procedural_graph_tooling_service.py:31

ProceduralNodeGroup.from_dict

def ProceduralNodeGroup.from_dict(cls, data: Mapping[str, Any]) -> 'ProceduralNodeGroup'

class method · public name · tech_connector/game_engine/authoring/procedural_graph_tooling_service.py:37

instantiate_node_group

def instantiate_node_group(parent: ProceduralGraph, group: ProceduralNodeGroup, *, prefix: str, input_bindings: Mapping[str, str] | None=None, parameter_overrides: Mapping[str, Any] | None=None) -> dict[str, str]

module function · public name · tech_connector/game_engine/authoring/procedural_graph_tooling_service.py:46

Inline a reusable group while retaining stable names and dependency edges.

_ordered_nodes

def _ordered_nodes(graph: ProceduralGraph) -> list[str]

module function · internal · tech_connector/game_engine/authoring/procedural_graph_tooling_service.py:67

ProceduralExecutionPlan.to_dict

def ProceduralExecutionPlan.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/procedural_graph_tooling_service.py:98

build_procedural_execution_plan

def build_procedural_execution_plan(graph: ProceduralGraph, *, backend: str='auto') -> ProceduralExecutionPlan

module function · public name · tech_connector/game_engine/authoring/procedural_graph_tooling_service.py:101

_node_cost

def _node_cost(operation: str) -> float

module function · internal · tech_connector/game_engine/authoring/procedural_graph_tooling_service.py:122

ProceduralSimulationSession.reset

def ProceduralSimulationSession.reset(self) -> None

class method · public name · tech_connector/game_engine/authoring/procedural_graph_tooling_service.py:138

ProceduralSimulationSession.step

def ProceduralSimulationSession.step(self, result: ProceduralCookResult, *, delta_time: float=1.0 / 60.0, gravity: tuple[float, float, float]=(0.0, -9.81, 0.0), damping: float=0.02) -> ProceduralPayload

class method · public name · tech_connector/game_engine/authoring/procedural_graph_tooling_service.py:141

tech_connector.game_engine.authoring.procedural_layout_service

_random

def _random(*parts: Any) -> float

module function · internal · tech_connector/game_engine/authoring/procedural_layout_service.py:20

SplinePath.__post_init__

def SplinePath.__post_init__(self) -> None

class method · internal · tech_connector/game_engine/authoring/procedural_layout_service.py:30

SplinePath.segments

def SplinePath.segments(self) -> tuple[tuple[Vec3, Vec3], ...]

class method · public name · tech_connector/game_engine/authoring/procedural_layout_service.py:35

SplinePath.length

def SplinePath.length(self) -> float

class method · public name · tech_connector/game_engine/authoring/procedural_layout_service.py:42

SplinePath.sample

def SplinePath.sample(self, distance: float) -> tuple[Vec3, Vec3, int]

class method · public name · tech_connector/game_engine/authoring/procedural_layout_service.py:45

GrammarModule.__post_init__

def GrammarModule.__post_init__(self) -> None

class method · internal · tech_connector/game_engine/authoring/procedural_layout_service.py:68

ShapeGrammar.to_dict

def ShapeGrammar.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/procedural_layout_service.py:83

ShapeGrammar.from_dict

def ShapeGrammar.from_dict(cls, data: dict[str, Any]) -> 'ShapeGrammar'

class method · public name · tech_connector/game_engine/authoring/procedural_layout_service.py:87

expand_shape_grammar

def expand_shape_grammar(grammar: ShapeGrammar) -> tuple[str, ...]

module function · public name · tech_connector/game_engine/authoring/procedural_layout_service.py:102

_choose_module

def _choose_module(grammar: ShapeGrammar, symbol: str, occurrence: int) -> GrammarModule

module function · internal · tech_connector/game_engine/authoring/procedural_layout_service.py:127

place_shape_grammar_on_spline

def place_shape_grammar_on_spline(path: SplinePath, grammar: ShapeGrammar) -> ProceduralPayload

module function · public name · tech_connector/game_engine/authoring/procedural_layout_service.py:141

create_road_layout

def create_road_layout(path: SplinePath, *, segment_asset: str, segment_length: float, width: float=7.0, lanes: int=2, seed: int=0) -> ProceduralPayload

module function · public name · tech_connector/game_engine/authoring/procedural_layout_service.py:220

tech_connector.game_engine.authoring.procedural_mesh_service

mesh_to_data

def mesh_to_data(mesh: MeshTopology) -> dict[str, Any]

module function · public name · tech_connector/game_engine/authoring/procedural_mesh_service.py:15

mesh_from_data

def mesh_from_data(data: dict[str, Any]) -> MeshTopology

module function · public name · tech_connector/game_engine/authoring/procedural_mesh_service.py:23

create_cube_mesh

def create_cube_mesh(size: tuple[float, float, float]=(1.0, 1.0, 1.0)) -> MeshTopology

module function · public name · tech_connector/game_engine/authoring/procedural_mesh_service.py:27

create_grid_mesh

def create_grid_mesh(width: float=1.0, depth: float=1.0, segments_x: int=1, segments_z: int=1) -> MeshTopology

module function · public name · tech_connector/game_engine/authoring/procedural_mesh_service.py:40

create_cylinder_mesh

def create_cylinder_mesh(radius: float=0.5, depth: float=1.0, segments: int=32) -> MeshTopology

module function · public name · tech_connector/game_engine/authoring/procedural_mesh_service.py:58

create_uv_sphere_mesh

def create_uv_sphere_mesh(radius: float=0.5, segments: int=32, rings: int=16) -> MeshTopology

module function · public name · tech_connector/game_engine/authoring/procedural_mesh_service.py:68

join_meshes

def join_meshes(meshes: list[MeshTopology]) -> MeshTopology

module function · public name · tech_connector/game_engine/authoring/procedural_mesh_service.py:87

subdivide_mesh

def subdivide_mesh(mesh: MeshTopology, levels: int=1) -> MeshTopology

module function · public name · tech_connector/game_engine/authoring/procedural_mesh_service.py:97

transform_mesh

def transform_mesh(mesh: MeshTopology, *, translation: tuple[float, float, float]=(0.0, 0.0, 0.0), scale: tuple[float, float, float]=(1.0, 1.0, 1.0)) -> MeshTopology

module function · public name · tech_connector/game_engine/authoring/procedural_mesh_service.py:116

_input_mesh

def _input_mesh(inputs: list[ProceduralPayload], requested: str='') -> tuple[str, MeshTopology]

module function · internal · tech_connector/game_engine/authoring/procedural_mesh_service.py:131

evaluate_mesh_node

def evaluate_mesh_node(operation: str, node_id: str, parameters: dict[str, Any], inputs: list[ProceduralPayload]) -> ProceduralPayload

module function · public name · tech_connector/game_engine/authoring/procedural_mesh_service.py:141

tech_connector.game_engine.authoring.procedural_spatial_service

HeightField.__post_init__

def HeightField.__post_init__(self) -> None

class method · internal · tech_connector/game_engine/authoring/procedural_spatial_service.py:29

HeightField.to_dict

def HeightField.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/procedural_spatial_service.py:38

HeightField.from_dict

def HeightField.from_dict(cls, data: dict[str, Any]) -> 'HeightField'

class method · public name · tech_connector/game_engine/authoring/procedural_spatial_service.py:42

HeightField._sample_values

def HeightField._sample_values(self, values: tuple[float, ...], x: float, z: float) -> float

class method · internal · tech_connector/game_engine/authoring/procedural_spatial_service.py:55

HeightField.sample_height

def HeightField.sample_height(self, x: float, z: float) -> float

class method · public name · tech_connector/game_engine/authoring/procedural_spatial_service.py:71

HeightField.sample_attribute

def HeightField.sample_attribute(self, name: str, x: float, z: float, default: float=0.0) -> float

class method · public name · tech_connector/game_engine/authoring/procedural_spatial_service.py:74

HeightField.sample_normal

def HeightField.sample_normal(self, x: float, z: float) -> Vec3

class method · public name · tech_connector/game_engine/authoring/procedural_spatial_service.py:78

HeightField.sample_slope_degrees

def HeightField.sample_slope_degrees(self, x: float, z: float) -> float

class method · public name · tech_connector/game_engine/authoring/procedural_spatial_service.py:86

PolygonMask2D.__post_init__

def PolygonMask2D.__post_init__(self) -> None

class method · internal · tech_connector/game_engine/authoring/procedural_spatial_service.py:96

PolygonMask2D._contains

def PolygonMask2D._contains(polygon: tuple[Vec2, ...], point: Vec2) -> bool

class method · internal · tech_connector/game_engine/authoring/procedural_spatial_service.py:103

PolygonMask2D.contains

def PolygonMask2D.contains(self, x: float, z: float) -> bool

class method · public name · tech_connector/game_engine/authoring/procedural_spatial_service.py:118

project_points_to_heightfield

def project_points_to_heightfield(payload: ProceduralPayload, heightfield: HeightField, *, offset: float=0.0) -> ProceduralPayload

module function · public name · tech_connector/game_engine/authoring/procedural_spatial_service.py:129

filter_points_by_slope

def filter_points_by_slope(payload: ProceduralPayload, heightfield: HeightField, *, minimum: float=0.0, maximum: float=90.0) -> ProceduralPayload

module function · public name · tech_connector/game_engine/authoring/procedural_spatial_service.py:151

filter_points_by_heightfield_mask

def filter_points_by_heightfield_mask(payload: ProceduralPayload, heightfield: HeightField, attribute: str, *, minimum: float=0.0, maximum: float=1.0) -> ProceduralPayload

module function · public name · tech_connector/game_engine/authoring/procedural_spatial_service.py:168

filter_points_by_polygon

def filter_points_by_polygon(payload: ProceduralPayload, mask: PolygonMask2D) -> ProceduralPayload

module function · public name · tech_connector/game_engine/authoring/procedural_spatial_service.py:186

annotate_point_neighborhoods

def annotate_point_neighborhoods(payload: ProceduralPayload, radius: float) -> ProceduralPayload

module function · public name · tech_connector/game_engine/authoring/procedural_spatial_service.py:193

Add neighbor count and nearest distance using a deterministic spatial hash.

create_heightfield

def create_heightfield(rows: Iterable[Iterable[float]], *, cell_size: float=1.0, origin: Vec3=(0.0, 0.0, 0.0), attributes: dict[str, Iterable[Iterable[float]]] | None=None) -> HeightField

module function · public name · tech_connector/game_engine/authoring/procedural_spatial_service.py:228

tech_connector.game_engine.authoring.procedural_task_graph_service

_digest

def _digest(value: Any) -> str

module function · internal · tech_connector/game_engine/authoring/procedural_task_graph_service.py:18

ProceduralWorkItem.fingerprint

def ProceduralWorkItem.fingerprint(self) -> str

class method · public name · tech_connector/game_engine/authoring/procedural_task_graph_service.py:33

ProceduralTaskNode.to_dict

def ProceduralTaskNode.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/procedural_task_graph_service.py:47

ProceduralTaskGraph.add_node

def ProceduralTaskGraph.add_node(self, node_id: str, processor: str='passthrough', *, inputs: Iterable[str]=(), parameters: dict[str, Any] | None=None, fan_out: int=1, partition_by: Iterable[str]=()) -> ProceduralTaskNode

class method · public name · tech_connector/game_engine/authoring/procedural_task_graph_service.py:57

ProceduralTaskGraph.validate

def ProceduralTaskGraph.validate(self) -> list[str]

class method · public name · tech_connector/game_engine/authoring/procedural_task_graph_service.py:81

ProceduralTaskGraph.to_dict

def ProceduralTaskGraph.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/procedural_task_graph_service.py:93

ProceduralTaskGraph.from_dict

def ProceduralTaskGraph.from_dict(cls, data: dict[str, Any]) -> 'ProceduralTaskGraph'

class method · public name · tech_connector/game_engine/authoring/procedural_task_graph_service.py:102

ProceduralTaskCookResult.cache_hits

def ProceduralTaskCookResult.cache_hits(self) -> int

class method · public name · tech_connector/game_engine/authoring/procedural_task_graph_service.py:141

_task_order

def _task_order(graph: ProceduralTaskGraph) -> list[str]

module function · internal · tech_connector/game_engine/authoring/procedural_task_graph_service.py:145

wedge_parameters

def wedge_parameters(values: dict[str, Iterable[Any]]) -> list[dict[str, Any]]

module function · public name · tech_connector/game_engine/authoring/procedural_task_graph_service.py:168

_passthrough

def _passthrough(attributes: dict[str, Any], parameters: dict[str, Any]) -> dict[str, Any]

module function · internal · tech_connector/game_engine/authoring/procedural_task_graph_service.py:174

ProceduralTaskCooker.__init__

def ProceduralTaskCooker.__init__(self, *, max_workers: int=1) -> None

class method · internal · tech_connector/game_engine/authoring/procedural_task_graph_service.py:181

ProceduralTaskCooker.register_processor

def ProceduralTaskCooker.register_processor(self, name: str, processor: TaskProcessor) -> None

class method · public name · tech_connector/game_engine/authoring/procedural_task_graph_service.py:186

ProceduralTaskCooker.clear

def ProceduralTaskCooker.clear(self, graph_id: str='') -> None

class method · public name · tech_connector/game_engine/authoring/procedural_task_graph_service.py:191

ProceduralTaskCooker._partition

def ProceduralTaskCooker._partition(node: ProceduralTaskNode, parents: list[ProceduralWorkItem]) -> list[tuple[dict[str, Any], tuple[str, ...]]]

class method · internal · tech_connector/game_engine/authoring/procedural_task_graph_service.py:199

ProceduralTaskCooker._expand

def ProceduralTaskCooker._expand(node: ProceduralTaskNode, parents: list[ProceduralWorkItem]) -> list[tuple[dict[str, Any], tuple[str, ...]]]

class method · internal · tech_connector/game_engine/authoring/procedural_task_graph_service.py:215

ProceduralTaskCooker.cook

def ProceduralTaskCooker.cook(self, graph: ProceduralTaskGraph, *, initial_attributes: dict[str, Any] | None=None) -> ProceduralTaskCookResult

class method · public name · tech_connector/game_engine/authoring/procedural_task_graph_service.py:230

tech_connector.game_engine.authoring.procedural_workspace_service

ProceduralWorkspaceState.to_dict

def ProceduralWorkspaceState.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/procedural_workspace_service.py:24

ProceduralWorkspaceState.from_dict

def ProceduralWorkspaceState.from_dict(cls, data: dict[str, Any]) -> 'ProceduralWorkspaceState'

class method · public name · tech_connector/game_engine/authoring/procedural_workspace_service.py:35

tech_connector.game_engine.authoring.quadruped_leg_rig_service

QuadrupedLegRigResult.to_dict

def QuadrupedLegRigResult.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/quadruped_leg_rig_service.py:26

create_quadruped_leg_rig

def create_quadruped_leg_rig(graph: Any, *, joint_chain: Sequence[str], module: str='quadruped_leg', foot_control: str='', pole_control: str='', pole_distance: float=5.0, gait_phase: float=0.0, stride_scale: float=1.0) -> QuadrupedLegRigResult

module function · public name · tech_connector/game_engine/authoring/quadruped_leg_rig_service.py:30

tech_connector.game_engine.authoring.rig_evaluation_service

RigEvaluationResult.ok

def RigEvaluationResult.ok(self) -> bool

class method · public name · tech_connector/game_engine/authoring/rig_evaluation_service.py:64

RigEvaluationResult.to_dict

def RigEvaluationResult.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/rig_evaluation_service.py:67

rig_runtime_capabilities

def rig_runtime_capabilities(graph: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/authoring/rig_evaluation_service.py:81

Describe what can be evaluated locally without implying parity for unsupported nodes.

evaluate_rig_graph

def evaluate_rig_graph(graph: Any) -> RigEvaluationResult

module function · public name · tech_connector/game_engine/authoring/rig_evaluation_service.py:144

Evaluate the acyclic local DG and transform DAG with explicit unsupported-node reporting.

calculate_constraint_offset_matrix

def calculate_constraint_offset_matrix(current_world_matrix: list[float], constrained_world_matrix: list[float]) -> list[float]

module function · public name · tech_connector/game_engine/authoring/rig_evaluation_service.py:218

Return the row-vector world offset that preserves the current pose.

_evaluate_node

def _evaluate_node(node_type: str, attributes: dict[str, Any]) -> None

module function · internal · tech_connector/game_engine/authoring/rig_evaluation_service.py:230

_sample_animation_curve

def _sample_animation_curve(keys: list[dict[str, Any]], input_value: float) -> float

module function · internal · tech_connector/game_engine/authoring/rig_evaluation_service.py:331

Evaluate the portable linear/stepped subset of Maya time and driven-key curves.

_evaluate_constraints

def _evaluate_constraints(constraints: dict[str, dict[str, Any]], nodes: dict[str, dict[str, Any]], result: RigEvaluationResult) -> None

module function · internal · tech_connector/game_engine/authoring/rig_evaluation_service.py:354

_solve_surface_attachment_constraint

def _solve_surface_attachment_constraint(kind: str, constraint: dict[str, Any], nodes: dict[str, dict[str, Any]], result: RigEvaluationResult) -> None

module function · internal · tech_connector/game_engine/authoring/rig_evaluation_service.py:440

_solve_aim_constraint

def _solve_aim_constraint(current: Any, blended_source: Any, settings: dict[str, Any])

module function · internal · tech_connector/game_engine/authoring/rig_evaluation_service.py:473

_apply_constraint_axes

def _apply_constraint_axes(current: Any, constrained: Any, kind: str, axes: Any)

module function · internal · tech_connector/game_engine/authoring/rig_evaluation_service.py:500

_evaluate_pose_readers

def _evaluate_pose_readers(nodes: dict[str, dict[str, Any]], result: RigEvaluationResult) -> None

module function · internal · tech_connector/game_engine/authoring/rig_evaluation_service.py:532

_solve_spine_stretch

def _solve_spine_stretch(constraint: dict[str, Any], nodes: dict[str, dict[str, Any]], result: RigEvaluationResult) -> None

module function · internal · tech_connector/game_engine/authoring/rig_evaluation_service.py:555

Apply extension-only spine length while leaving the zero blend untouched.

_solve_rotate_plane_chain_ik

def _solve_rotate_plane_chain_ik(constraint: dict[str, Any], nodes: dict[str, dict[str, Any]], result: RigEvaluationResult) -> None

module function · internal · tech_connector/game_engine/authoring/rig_evaluation_service.py:612

Solve a three-or-more-joint chain in the plane selected by its pole.

_solve_two_bone_ik

def _solve_two_bone_ik(constraint: dict[str, Any], nodes: dict[str, dict[str, Any]], result: RigEvaluationResult) -> None

module function · internal · tech_connector/game_engine/authoring/rig_evaluation_service.py:707

_solve_surface_or_path_constraint

def _solve_surface_or_path_constraint(kind: str, constraint: dict[str, Any], nodes: dict[str, dict[str, Any]], result: RigEvaluationResult) -> None

module function · internal · tech_connector/game_engine/authoring/rig_evaluation_service.py:812

_sample_motion_path

def _sample_motion_path(control_points: Any, parameter: float, *, closed: bool) -> tuple[Any, Any]

module function · internal · tech_connector/game_engine/authoring/rig_evaluation_service.py:852

_sample_ribbon

def _sample_ribbon(control_grid: Any, u: float, v: float) -> tuple[Any, Any, Any]

module function · internal · tech_connector/game_engine/authoring/rig_evaluation_service.py:874

_aim_bone_world_matrix

def _aim_bone_world_matrix(current_world: Any, current_direction: Any, desired_direction: Any, desired_normal: Any)

module function · internal · tech_connector/game_engine/authoring/rig_evaluation_service.py:905

_rebuild_world_matrices

def _rebuild_world_matrices(nodes: dict[str, dict[str, Any]], result: RigEvaluationResult) -> None

module function · internal · tech_connector/game_engine/authoring/rig_evaluation_service.py:930

_local_matrix

def _local_matrix(attributes: dict[str, Any], fallback: Any=None)

module function · internal · tech_connector/game_engine/authoring/rig_evaluation_service.py:949

_blend_matrices

def _blend_matrices(matrices: list[Any], weights: Any)

module function · internal · tech_connector/game_engine/authoring/rig_evaluation_service.py:960

_decompose_matrix

def _decompose_matrix(matrix: Any)

module function · internal · tech_connector/game_engine/authoring/rig_evaluation_service.py:974

_compose_matrix

def _compose_matrix(translation: Any, quaternion: Any, scale: Any)

module function · internal · tech_connector/game_engine/authoring/rig_evaluation_service.py:988

_quaternion_from_euler

def _quaternion_from_euler(rotation_degrees: Any, order: Any='xyz')

module function · internal · tech_connector/game_engine/authoring/rig_evaluation_service.py:996

_euler_from_quaternion_xyz

def _euler_from_quaternion_xyz(quaternion: Any) -> list[float]

module function · internal · tech_connector/game_engine/authoring/rig_evaluation_service.py:1011

_quaternion_multiply

def _quaternion_multiply(first: Any, second: Any)

module function · internal · tech_connector/game_engine/authoring/rig_evaluation_service.py:1024

_column_matrix_from_quaternion

def _column_matrix_from_quaternion(quaternion: Any)

module function · internal · tech_connector/game_engine/authoring/rig_evaluation_service.py:1035

_quaternion_from_column_matrix

def _quaternion_from_column_matrix(matrix: Any)

module function · internal · tech_connector/game_engine/authoring/rig_evaluation_service.py:1044

_vector

def _vector(attributes: dict[str, Any], name: str, default: Any) -> list[float]

module function · internal · tech_connector/game_engine/authoring/rig_evaluation_service.py:1064

_set_vector

def _set_vector(attributes: dict[str, Any], name: str, values: Any) -> None

module function · internal · tech_connector/game_engine/authoring/rig_evaluation_service.py:1077

_matrix

def _matrix(value: Any)

module function · internal · tech_connector/game_engine/authoring/rig_evaluation_service.py:1084

_graph_mapping

def _graph_mapping(graph: Any, name: str) -> dict[str, dict[str, Any]]

module function · internal · tech_connector/game_engine/authoring/rig_evaluation_service.py:1092

_local_node_supported

def _local_node_supported(node_id: str, node: dict[str, Any], constraints: dict[str, dict[str, Any]]) -> bool

module function · internal · tech_connector/game_engine/authoring/rig_evaluation_service.py:1103

_contract_node_type

def _contract_node_type(node: dict[str, Any]) -> str

module function · internal · tech_connector/game_engine/authoring/rig_evaluation_service.py:1123

Return the neutral evaluator contract behind a TC-native node class.

tech_connector.game_engine.authoring.rig_topology_contract

stable_connection_id

def stable_connection_id(source_node: str, source_attribute: str, target_node: str, target_attribute: str) -> str

module function · public name · tech_connector/game_engine/authoring/rig_topology_contract.py:12

normalize_rig_topology

def normalize_rig_topology(packet: dict[str, Any], provider_id: str='') -> dict[str, Any]

module function · public name · tech_connector/game_engine/authoring/rig_topology_contract.py:22

Normalize a DCC rig packet while preserving provider-specific node data.

validate_rig_topology

def validate_rig_topology(packet: dict[str, Any]) -> list[str]

module function · public name · tech_connector/game_engine/authoring/rig_topology_contract.py:79

Return bounded structural errors without rejecting valid DCC feedback graphs.

dependency_evaluation_order

def dependency_evaluation_order(packet: dict[str, Any]) -> tuple[list[str], list[str]]

module function · public name · tech_connector/game_engine/authoring/rig_topology_contract.py:140

Topologically order the acyclic portion and report feedback-cycle nodes.

tech_connector.game_engine.authoring.rigging_workspace_service

twist_driver_contract

def twist_driver_contract(start: str, *, parent: str='', module: str='', overrides: dict[str, Any] | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/authoring/rigging_workspace_service.py:115

Return portable constraint settings for a limb twist endpoint driver. Maya authors the reference behavior, while other DCC adapters translate these values into native constraints, custom properties, or solver recipe metadata. Upper-leg name

thumb_rig_contract

def thumb_rig_contract(definition: 'CharacterDefinition | dict[str, Any]') -> list[dict[str, Any]]

module function · public name · tech_connector/game_engine/authoring/rigging_workspace_service.py:162

Return the Maya-compatible thumb-control contract for every mapped side.

CharacterDefinition.to_dict

def CharacterDefinition.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/rigging_workspace_service.py:219

CharacterDefinition.from_dict

def CharacterDefinition.from_dict(cls, value: dict[str, Any]) -> 'CharacterDefinition'

class method · public name · tech_connector/game_engine/authoring/rigging_workspace_service.py:226

CharacterDefinitionValidation.to_dict

def CharacterDefinitionValidation.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/rigging_workspace_service.py:253

RiggingOperationResult.to_dict

def RiggingOperationResult.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/rigging_workspace_service.py:269

RiggingHostAdapter.host_id

def RiggingHostAdapter.host_id(self) -> str

class method · public name · tech_connector/game_engine/authoring/rigging_workspace_service.py:277

RiggingHostAdapter.capabilities

def RiggingHostAdapter.capabilities(self) -> dict[str, str]

class method · public name · tech_connector/game_engine/authoring/rigging_workspace_service.py:279

RiggingHostAdapter.scene_joints

def RiggingHostAdapter.scene_joints(self) -> list[dict[str, Any]]

class method · public name · tech_connector/game_engine/authoring/rigging_workspace_service.py:281

RiggingHostAdapter.selection

def RiggingHostAdapter.selection(self) -> list[str]

class method · public name · tech_connector/game_engine/authoring/rigging_workspace_service.py:283

RiggingHostAdapter.execute

def RiggingHostAdapter.execute(self, capability: str, payload: dict[str, Any]) -> RiggingOperationResult

class method · public name · tech_connector/game_engine/authoring/rigging_workspace_service.py:285

list_rigging_capabilities

def list_rigging_capabilities(category: str='') -> list[dict[str, Any]]

module function · public name · tech_connector/game_engine/authoring/rigging_workspace_service.py:288

validate_operation_payload

def validate_operation_payload(capability: str, payload: dict[str, Any]) -> list[str]

module function · public name · tech_connector/game_engine/authoring/rigging_workspace_service.py:297

validate_character_definition

def validate_character_definition(definition: CharacterDefinition | dict[str, Any], joints: Iterable[dict[str, Any]]=()) -> CharacterDefinitionValidation

module function · public name · tech_connector/game_engine/authoring/rigging_workspace_service.py:305

auto_map_character

def auto_map_character(joints: Iterable[dict[str, Any]], *, name: str='Character', source_provider: str='tech_connector', source_root: str='') -> CharacterDefinition

module function · public name · tech_connector/game_engine/authoring/rigging_workspace_service.py:340

Infer semantic slots from names, sides, and hierarchy without a DCC API.

mirror_character_slots

def mirror_character_slots(definition: CharacterDefinition, source_side: str='left') -> CharacterDefinition

module function · public name · tech_connector/game_engine/authoring/rigging_workspace_service.py:384

RiggingWorkspaceController.__init__

def RiggingWorkspaceController.__init__(self, adapter: RiggingHostAdapter)

class method · internal · tech_connector/game_engine/authoring/rigging_workspace_service.py:400

RiggingWorkspaceController.host_id

def RiggingWorkspaceController.host_id(self) -> str

class method · public name · tech_connector/game_engine/authoring/rigging_workspace_service.py:404

RiggingWorkspaceController.capability_status

def RiggingWorkspaceController.capability_status(self) -> dict[str, str]

class method · public name · tech_connector/game_engine/authoring/rigging_workspace_service.py:407

RiggingWorkspaceController.run

def RiggingWorkspaceController.run(self, capability: str, **payload: Any) -> RiggingOperationResult

class method · public name · tech_connector/game_engine/authoring/rigging_workspace_service.py:411

_validate_required_hierarchy

def _validate_required_hierarchy(slots: dict[str, str], joints: list[dict[str, Any]]) -> list[str]

module function · internal · tech_connector/game_engine/authoring/rigging_workspace_service.py:426

_is_ancestor

def _is_ancestor(ancestor: str, descendant: str, parent_by_id: dict[str, str]) -> bool

module function · internal · tech_connector/game_engine/authoring/rigging_workspace_service.py:450

_normalized_joint_name

def _normalized_joint_name(value: str) -> str

module function · internal · tech_connector/game_engine/authoring/rigging_workspace_service.py:461

_slot_name_score

def _slot_name_score(slot: str, name: str, depth: int) -> int

module function · internal · tech_connector/game_engine/authoring/rigging_workspace_service.py:466

_mirror_node_name

def _mirror_node_name(value: str) -> str

module function · internal · tech_connector/game_engine/authoring/rigging_workspace_service.py:528

tech_connector.game_engine.authoring.surface_attachment_service

SurfaceAttachment.to_dict

def SurfaceAttachment.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/surface_attachment_service.py:27

create_surface_attachment

def create_surface_attachment(mesh_id: str, vertices: Sequence[Sequence[float]], faces: Sequence[Sequence[int]], *, face_index: int, barycentric: Sequence[float]=(1.0 / 3.0, 1.0 / 3.0, 1.0 / 3.0), triangle_offset: int=0, topology_fingerprint: str='') -> SurfaceAttachment

module function · public name · tech_connector/game_engine/authoring/surface_attachment_service.py:39

update_surface_attachment

def update_surface_attachment(attachment: SurfaceAttachment | dict[str, Any], vertices: Sequence[Sequence[float]]) -> SurfaceAttachment

module function · public name · tech_connector/game_engine/authoring/surface_attachment_service.py:86

_normalized_barycentric

def _normalized_barycentric(values: Sequence[float]) -> tuple[float, float, float]

module function · internal · tech_connector/game_engine/authoring/surface_attachment_service.py:105

_point3

def _point3(value: Sequence[float]) -> tuple[float, float, float]

module function · internal · tech_connector/game_engine/authoring/surface_attachment_service.py:115

_subtract

def _subtract(a: Sequence[float], b: Sequence[float]) -> tuple[float, float, float]

module function · internal · tech_connector/game_engine/authoring/surface_attachment_service.py:124

_cross

def _cross(a: Sequence[float], b: Sequence[float]) -> tuple[float, float, float]

module function · internal · tech_connector/game_engine/authoring/surface_attachment_service.py:128

_normalize

def _normalize(value: Sequence[float], message: str) -> tuple[float, float, float]

module function · internal · tech_connector/game_engine/authoring/surface_attachment_service.py:132

tech_connector.game_engine.authoring.tc_animation_take_service

create_take

def create_take(graph: Any, name: str, *, start_frame: int=1, end_frame: int=120, frame_rate: float=24.0, timecode_start: str='00:00:00:00') -> str

module function · public name · tech_connector/game_engine/authoring/tc_animation_take_service.py:9

add_animation_layer

def add_animation_layer(graph: Any, take_id: str, name: str, *, weight: float=1.0, additive: bool=True) -> str

module function · public name · tech_connector/game_engine/authoring/tc_animation_take_service.py:44

set_keyframe

def set_keyframe(graph: Any, take_id: str, node_id: str, attribute: str, frame: int, value: float, *, layer: str='', interpolation: str='auto') -> dict[str, Any]

module function · public name · tech_connector/game_engine/authoring/tc_animation_take_service.py:71

evaluate_curve

def evaluate_curve(graph: Any, take_id: str, node_id: str, attribute: str, frame: float) -> float | None

module function · public name · tech_connector/game_engine/authoring/tc_animation_take_service.py:109

_sample_keys

def _sample_keys(keys: list[dict[str, Any]], frame: float) -> float | None

module function · internal · tech_connector/game_engine/authoring/tc_animation_take_service.py:131

_key_index

def _key_index(keys: list[dict[str, Any]], frame: float) -> int

module function · internal · tech_connector/game_engine/authoring/tc_animation_take_service.py:151

Return the first key index at or after ``frame`` without allocating a frame list.

_take

def _take(graph: Any, take_id: str) -> dict[str, Any]

module function · internal · tech_connector/game_engine/authoring/tc_animation_take_service.py:163

tech_connector.game_engine.authoring.tc_mesh_modeling_service

MeshTopology.from_data

def MeshTopology.from_data(cls, vertices: Iterable[Sequence[float]], faces: Iterable[Sequence[int]]) -> 'MeshTopology'

class method · public name · tech_connector/game_engine/authoring/tc_mesh_modeling_service.py:20

MeshTopology.validate

def MeshTopology.validate(self) -> None

class method · public name · tech_connector/game_engine/authoring/tc_mesh_modeling_service.py:28

split_edge_loop

def split_edge_loop(topology: MeshTopology, edge: Sequence[int], *, divisions: int=1) -> MeshEditResult

module function · public name · tech_connector/game_engine/authoring/tc_mesh_modeling_service.py:51

Insert evenly spaced cuts through the complete quad ring containing ``edge``.

bevel_edges

def bevel_edges(topology: MeshTopology, edges: Iterable[Sequence[int]], *, width: float=0.1) -> MeshEditResult

module function · public name · tech_connector/game_engine/authoring/tc_mesh_modeling_service.py:140

Chamfer vertex-disjoint boundary or manifold edges with filled end caps.

extrude_faces

def extrude_faces(topology: MeshTopology, face_indices: Iterable[int], *, distance: float=0.1) -> MeshEditResult

module function · public name · tech_connector/game_engine/authoring/tc_mesh_modeling_service.py:250

delete_faces

def delete_faces(topology: MeshTopology, face_indices: Iterable[int]) -> MeshEditResult

module function · public name · tech_connector/game_engine/authoring/tc_mesh_modeling_service.py:304

triangulate_faces

def triangulate_faces(topology: MeshTopology, face_indices: Iterable[int] | None=None) -> MeshEditResult

module function · public name · tech_connector/game_engine/authoring/tc_mesh_modeling_service.py:316

merge_vertices

def merge_vertices(topology: MeshTopology, vertex_indices: Iterable[int], *, threshold: float=1e-05) -> MeshEditResult

module function · public name · tech_connector/game_engine/authoring/tc_mesh_modeling_service.py:339

bridge_edge_loops

def bridge_edge_loops(topology: MeshTopology, first_loop: Sequence[int], second_loop: Sequence[int]) -> MeshEditResult

module function · public name · tech_connector/game_engine/authoring/tc_mesh_modeling_service.py:372

_face_selection

def _face_selection(topology: MeshTopology, values: Iterable[int]) -> set[int]

module function · internal · tech_connector/game_engine/authoring/tc_mesh_modeling_service.py:394

_edge

def _edge(topology: MeshTopology, value: Sequence[int]) -> tuple[int, int]

module function · internal · tech_connector/game_engine/authoring/tc_mesh_modeling_service.py:401

_edge_key

def _edge_key(first: int, second: int) -> tuple[int, int]

module function · internal · tech_connector/game_engine/authoring/tc_mesh_modeling_service.py:410

_directed_cut_vertices

def _directed_cut_vertices(first: int, second: int, cut_vertices: dict[tuple[int, int], tuple[int, ...]]) -> tuple[int, ...]

module function · internal · tech_connector/game_engine/authoring/tc_mesh_modeling_service.py:414

_split_quad_by_ring

def _split_quad_by_ring(face: Polygon, ring: set[tuple[int, int]], cut_vertices: dict[tuple[int, int], tuple[int, ...]]) -> list[Polygon] | None

module function · internal · tech_connector/game_engine/authoring/tc_mesh_modeling_service.py:423

_face_normal

def _face_normal(topology: MeshTopology, face: Polygon) -> Point3

module function · internal · tech_connector/game_engine/authoring/tc_mesh_modeling_service.py:446

_subtract

def _subtract(first: Point3, second: Point3) -> Point3

module function · internal · tech_connector/game_engine/authoring/tc_mesh_modeling_service.py:457

_add

def _add(first: Point3, second: Point3) -> Point3

module function · internal · tech_connector/game_engine/authoring/tc_mesh_modeling_service.py:461

_scale

def _scale(value: Point3, amount: float) -> Point3

module function · internal · tech_connector/game_engine/authoring/tc_mesh_modeling_service.py:465

_dot

def _dot(first: Point3, second: Point3) -> float

module function · internal · tech_connector/game_engine/authoring/tc_mesh_modeling_service.py:469

_lerp

def _lerp(first: Point3, second: Point3, amount: float) -> Point3

module function · internal · tech_connector/game_engine/authoring/tc_mesh_modeling_service.py:473

_face_center

def _face_center(topology: MeshTopology, face: Polygon) -> Point3

module function · internal · tech_connector/game_engine/authoring/tc_mesh_modeling_service.py:477

_cross

def _cross(first: Point3, second: Point3) -> Point3

module function · internal · tech_connector/game_engine/authoring/tc_mesh_modeling_service.py:481

_length

def _length(value: Point3) -> float

module function · internal · tech_connector/game_engine/authoring/tc_mesh_modeling_service.py:489

_normalize

def _normalize(value: Point3) -> Point3

module function · internal · tech_connector/game_engine/authoring/tc_mesh_modeling_service.py:493

_sum_points

def _sum_points(values: Iterable[Point3]) -> Point3

module function · internal · tech_connector/game_engine/authoring/tc_mesh_modeling_service.py:500

_remove_adjacent_duplicates

def _remove_adjacent_duplicates(face: Polygon) -> Polygon

module function · internal · tech_connector/game_engine/authoring/tc_mesh_modeling_service.py:508

_compact_vertices

def _compact_vertices(vertices: list[Point3], faces: list[Polygon]) -> tuple[list[Point3], list[Polygon], list[int]]

module function · internal · tech_connector/game_engine/authoring/tc_mesh_modeling_service.py:518

tech_connector.game_engine.authoring.tc_physics_joint_editor_service

PhysicsJointEditorModel.joints

def PhysicsJointEditorModel.joints(self) -> list[dict[str, Any]]

class method · public name · tech_connector/game_engine/authoring/tc_physics_joint_editor_service.py:27

PhysicsJointEditorModel._snapshot

def PhysicsJointEditorModel._snapshot(self) -> list[dict[str, Any]]

class method · internal · tech_connector/game_engine/authoring/tc_physics_joint_editor_service.py:33

PhysicsJointEditorModel._commit

def PhysicsJointEditorModel._commit(self) -> None

class method · internal · tech_connector/game_engine/authoring/tc_physics_joint_editor_service.py:36

PhysicsJointEditorModel._restore

def PhysicsJointEditorModel._restore(self, snapshot: list[dict[str, Any]]) -> None

class method · internal · tech_connector/game_engine/authoring/tc_physics_joint_editor_service.py:41

PhysicsJointEditorModel.undo

def PhysicsJointEditorModel.undo(self) -> bool

class method · public name · tech_connector/game_engine/authoring/tc_physics_joint_editor_service.py:46

PhysicsJointEditorModel.redo

def PhysicsJointEditorModel.redo(self) -> bool

class method · public name · tech_connector/game_engine/authoring/tc_physics_joint_editor_service.py:53

PhysicsJointEditorModel.create

def PhysicsJointEditorModel.create(self, joint_id: str, first: str, second: str, *, preset: str='weld', settings: dict[str, Any] | None=None) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/tc_physics_joint_editor_service.py:60

PhysicsJointEditorModel.remove_selected

def PhysicsJointEditorModel.remove_selected(self) -> int

class method · public name · tech_connector/game_engine/authoring/tc_physics_joint_editor_service.py:66

PhysicsJointEditorModel.duplicate_selected

def PhysicsJointEditorModel.duplicate_selected(self, suffix: str=' Copy') -> list[dict[str, Any]]

class method · public name · tech_connector/game_engine/authoring/tc_physics_joint_editor_service.py:75

PhysicsJointEditorModel.edit_selected

def PhysicsJointEditorModel.edit_selected(self, changes: dict[str, Any]) -> int

class method · public name · tech_connector/game_engine/authoring/tc_physics_joint_editor_service.py:96

PhysicsJointEditorModel.begin_interaction

def PhysicsJointEditorModel.begin_interaction(self) -> None

class method · public name · tech_connector/game_engine/authoring/tc_physics_joint_editor_service.py:111

Start a continuous viewport edit that becomes one undo operation.

PhysicsJointEditorModel.preview_selected

def PhysicsJointEditorModel.preview_selected(self, changes: dict[str, Any]) -> int

class method · public name · tech_connector/game_engine/authoring/tc_physics_joint_editor_service.py:116

PhysicsJointEditorModel.end_interaction

def PhysicsJointEditorModel.end_interaction(self, commit: bool=True) -> bool

class method · public name · tech_connector/game_engine/authoring/tc_physics_joint_editor_service.py:130

PhysicsJointEditorModel.set_anchor

def PhysicsJointEditorModel.set_anchor(self, joint_id: str, body: str, local_position: Iterable[float]) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/tc_physics_joint_editor_service.py:145

PhysicsJointEditorModel.visual_guides

def PhysicsJointEditorModel.visual_guides(self, entity_positions: dict[str, Iterable[float]], segments: int=32) -> list[dict[str, Any]]

class method · public name · tech_connector/game_engine/authoring/tc_physics_joint_editor_service.py:151

Build bounded anchor, limit-arc, axis, and motor-preview geometry.

tech_connector.game_engine.authoring.tc_physics_joint_service

_finite_vector

def _finite_vector(value: Any, label: str) -> list[float]

module function · internal · tech_connector/game_engine/authoring/tc_physics_joint_service.py:50

validate_physics_joint

def validate_physics_joint(joint: Mapping[str, Any]) -> dict[str, Any]

module function · public name · tech_connector/game_engine/authoring/tc_physics_joint_service.py:59

Return a normalized joint dictionary or raise a user-facing contract error.

create_physics_joint

def create_physics_joint(runtime_world: MutableMapping[str, Any], joint_id: str, first: str, second: str, *, joint_type: str='fixed', preset: str='', settings: Mapping[str, Any] | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/authoring/tc_physics_joint_service.py:102

Create or replace an engine physics joint without touching the rig skeleton.

remove_physics_joint

def remove_physics_joint(runtime_world: MutableMapping[str, Any], joint_id: str) -> bool

module function · public name · tech_connector/game_engine/authoring/tc_physics_joint_service.py:149

tech_connector.game_engine.authoring.tc_ragdoll_service

PhysicalAnimationState.step

def PhysicalAnimationState.step(self, dt: float) -> float

class method · public name · tech_connector/game_engine/authoring/tc_ragdoll_service.py:17

PhysicalAnimationState.muscle_strength

def PhysicalAnimationState.muscle_strength(self, joint_id: str) -> float

class method · public name · tech_connector/game_engine/authoring/tc_ragdoll_service.py:23

generate_ragdoll

def generate_ragdoll(rig_graph: Any, runtime_world: dict[str, Any], *, root_joint: str='', density: float=985.0, include_leaf_joints: bool=False) -> dict[str, Any]

module function · public name · tech_connector/game_engine/authoring/tc_ragdoll_service.py:27

Generate editable rigid bodies and cone/hinge constraints from a TC skeleton.

blend_physical_animation

def blend_physical_animation(animated_pose: Mapping[str, Mapping[str, Any]], physics_pose: Mapping[str, Mapping[str, Any]], state: PhysicalAnimationState) -> dict[str, dict[str, Any]]

module function · public name · tech_connector/game_engine/authoring/tc_ragdoll_service.py:101

request_animation_recovery

def request_animation_recovery(state: PhysicalAnimationState, *, upright_error_degrees: float, speed: float) -> bool

module function · public name · tech_connector/game_engine/authoring/tc_ragdoll_service.py:118

_blend_value

def _blend_value(first: Any, second: Any, amount: float) -> Any

module function · internal · tech_connector/game_engine/authoring/tc_ragdoll_service.py:124

_descendants

def _descendants(children: dict[str, list[str]], root: str) -> set[str]

module function · internal · tech_connector/game_engine/authoring/tc_ragdoll_service.py:132

_joint_world_positions

def _joint_world_positions(joints: dict[str, dict[str, Any]]) -> dict[str, tuple[float, float, float]]

module function · internal · tech_connector/game_engine/authoring/tc_ragdoll_service.py:145

tech_connector.game_engine.authoring.tc_rig_template_service

load_tc_rig_template

def load_tc_rig_template(path: str | Path=DEFAULT_TC_BIPED_TEMPLATE) -> dict[str, Any]

module function · public name · tech_connector/game_engine/authoring/tc_rig_template_service.py:29

expanded_tc_rig_template_joints

def expanded_tc_rig_template_joints(path: str | Path=DEFAULT_TC_BIPED_TEMPLATE) -> list[dict[str, Any]]

module function · public name · tech_connector/game_engine/authoring/tc_rig_template_service.py:40

Return the complete authored hierarchy, including generated finger chains.

instantiate_tc_rig_template

def instantiate_tc_rig_template(graph: 'EditableRigGraph', *, template_path: str | Path=DEFAULT_TC_BIPED_TEMPLATE, namespace: str='') -> dict[str, Any]

module function · public name · tech_connector/game_engine/authoring/tc_rig_template_service.py:50

_expanded_joint_rows

def _expanded_joint_rows(template: dict[str, Any]) -> list[dict[str, Any]]

module function · internal · tech_connector/game_engine/authoring/tc_rig_template_service.py:117

_validate_rows

def _validate_rows(rows: list[dict[str, Any]]) -> None

module function · internal · tech_connector/game_engine/authoring/tc_rig_template_service.py:156

_translation_matrix

def _translation_matrix(values) -> list[float]

module function · internal · tech_connector/game_engine/authoring/tc_rig_template_service.py:176

_namespace_prefix

def _namespace_prefix(namespace: str) -> str

module function · internal · tech_connector/game_engine/authoring/tc_rig_template_service.py:182

tech_connector.game_engine.authoring.world_intelligence_service

WorldIntelligenceAsset.to_dict

def WorldIntelligenceAsset.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/authoring/world_intelligence_service.py:139

WorldIntelligenceAsset.from_dict

def WorldIntelligenceAsset.from_dict(cls, data: dict[str, Any]) -> 'WorldIntelligenceAsset'

class method · public name · tech_connector/game_engine/authoring/world_intelligence_service.py:188

_sensor_from_dict

def _sensor_from_dict(data: dict[str, Any]) -> PerceptionSensor

module function · internal · tech_connector/game_engine/authoring/world_intelligence_service.py:221

_navigation_from_dict

def _navigation_from_dict(data: dict[str, Any]) -> NavigationGraph

module function · internal · tech_connector/game_engine/authoring/world_intelligence_service.py:228

_smart_object_from_dict

def _smart_object_from_dict(data: dict[str, Any]) -> SmartObjectDefinition

module function · internal · tech_connector/game_engine/authoring/world_intelligence_service.py:255

_behavior_graph_from_dict

def _behavior_graph_from_dict(data: dict[str, Any]) -> BehaviorGraph

module function · internal · tech_connector/game_engine/authoring/world_intelligence_service.py:274

_dialogue_set_from_dict

def _dialogue_set_from_dict(data: dict[str, Any]) -> DialogueSet

module function · internal · tech_connector/game_engine/authoring/world_intelligence_service.py:294

_authority_from_dict

def _authority_from_dict(data: dict[str, Any]) -> AuthorityPolicy

module function · internal · tech_connector/game_engine/authoring/world_intelligence_service.py:315

tech_connector.game_engine.deformation.blend_shape

BlendShapeFrame.validated

def BlendShapeFrame.validated(self, vertex_count: int) -> 'BlendShapeFrame'

class method · public name · tech_connector/game_engine/deformation/blend_shape.py:24

BlendShapeCorrectiveDriver.validated

def BlendShapeCorrectiveDriver.validated(self) -> 'BlendShapeCorrectiveDriver'

class method · public name · tech_connector/game_engine/deformation/blend_shape.py:39

BlendShapeTarget.validated

def BlendShapeTarget.validated(self, vertex_count: int) -> 'BlendShapeTarget'

class method · public name · tech_connector/game_engine/deformation/blend_shape.py:59

evaluate_blend_shape

def evaluate_blend_shape(upstream_positions: Sequence[Sequence[float]], targets: Sequence[BlendShapeTarget | Mapping[str, Any]], *, weights: Mapping[str, float] | None=None, driver_values: Mapping[str, float] | None=None, frame: float | None=None, telemetry: BlendShapeTelemetry | None=None) -> list[Vec3]

module function · public name · tech_connector/game_engine/deformation/blend_shape.py:87

resolve_blend_shape_weight

def resolve_blend_shape_weight(target: BlendShapeTarget, weights: Mapping[str, float], driver_values: Mapping[str, float], frame: float | None) -> float

module function · public name · tech_connector/game_engine/deformation/blend_shape.py:123

resolve_blend_shape_deltas

def resolve_blend_shape_deltas(target: BlendShapeTarget, weight: float) -> SparseDeltas

module function · public name · tech_connector/game_engine/deformation/blend_shape.py:136

Resolve the already-weighted sparse delta field at an arbitrary in-between weight.

attach_blend_shape_deformer

def attach_blend_shape_deformer(rig_graph: Any, mesh_id: str, vertex_count: int, targets: Sequence[BlendShapeTarget], *, deformer_id: str | None=None) -> str

module function · public name · tech_connector/game_engine/deformation/blend_shape.py:155

set_blend_shape_weights

def set_blend_shape_weights(rig_graph: Any, deformer_id: str, weights: Mapping[str, float], *, driver_values: Mapping[str, float] | None=None, frame: float | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/deformation/blend_shape.py:170

blend_shape_target_to_dict

def blend_shape_target_to_dict(target: BlendShapeTarget) -> dict[str, Any]

module function · public name · tech_connector/game_engine/deformation/blend_shape.py:186

blend_shape_target_from_dict

def blend_shape_target_from_dict(data: Mapping[str, Any]) -> BlendShapeTarget

module function · public name · tech_connector/game_engine/deformation/blend_shape.py:198

blend_shape_export_contract

def blend_shape_export_contract(destination: str='portable') -> dict[str, Any]

module function · public name · tech_connector/game_engine/deformation/blend_shape.py:212

build_blend_shape_destination_manifest

def build_blend_shape_destination_manifest(targets: Sequence[BlendShapeTarget], vertex_count: int, destination: str, *, deformer_id: str='blend_shape') -> dict[str, Any]

module function · public name · tech_connector/game_engine/deformation/blend_shape.py:241

Build a deterministic host mapping plus a lossless TC sidecar for readback.

blend_shape_targets_from_destination_manifest

def blend_shape_targets_from_destination_manifest(manifest: Mapping[str, Any], *, expected_destination: str='') -> tuple[BlendShapeTarget, ...]

module function · public name · tech_connector/game_engine/deformation/blend_shape.py:286

blend_shape_payload

def blend_shape_payload(targets: Sequence[BlendShapeTarget], vertex_count: int) -> dict[str, Any]

module function · public name · tech_connector/game_engine/deformation/blend_shape.py:303

blend_shape_targets_from_payload

def blend_shape_targets_from_payload(payload: Mapping[str, Any], *, expected_vertex_count: int | None=None) -> tuple[BlendShapeTarget, ...]

module function · public name · tech_connector/game_engine/deformation/blend_shape.py:310

blend_shape_target_from_positions

def blend_shape_target_from_positions(target_id: str, name: str, base_positions: Sequence[Sequence[float]], target_positions: Sequence[Sequence[float]], *, weight: float=1.0, epsilon: float=1e-08, mask: DeformationWeightMap | None=None) -> BlendShapeTarget

module function · public name · tech_connector/game_engine/deformation/blend_shape.py:326

_validated_deltas

def _validated_deltas(deltas: Mapping[int, Sequence[float]], vertex_count: int) -> SparseDeltas

module function · internal · tech_connector/game_engine/deformation/blend_shape.py:347

_scaled

def _scaled(deltas, scale)

module function · internal · tech_connector/game_engine/deformation/blend_shape.py:359

_lerp_sparse

def _lerp_sparse(first, second, amount)

module function · internal · tech_connector/game_engine/deformation/blend_shape.py:360

_sample_keys

def _sample_keys(keys, frame)

module function · internal · tech_connector/game_engine/deformation/blend_shape.py:364

tech_connector.game_engine.deformation.collision_projection

project_character_point

def project_character_point(position: Sequence[float], velocity: Sequence[float], *, radius: float, friction: float, restitution: float, colliders: Sequence[Mapping[str, Any]], previous_position: Sequence[float] | None=None) -> tuple[Vec3, Vec3, int]

module function · public name · tech_connector/game_engine/deformation/collision_projection.py:12

Project a dynamic point against planes, spheres, capsules, and boxes. Sphere tests include a swept segment check so fast secondary motion cannot silently tunnel through a body collider between substeps.

collision_velocity

def collision_velocity(velocity: Sequence[float], normal: Sequence[float], friction: float, restitution: float) -> Vec3

module function · public name · tech_connector/game_engine/deformation/collision_projection.py:82

_swept_sphere

def _swept_sphere(start: Vec3, end: Vec3, center: Vec3, radius: float) -> Vec3 | None

module function · internal · tech_connector/game_engine/deformation/collision_projection.py:91

_closest_segment_point

def _closest_segment_point(point: Vec3, start: Vec3, end: Vec3) -> Vec3

module function · internal · tech_connector/game_engine/deformation/collision_projection.py:105

_capsule_fallback_normal

def _capsule_fallback_normal(start: Vec3, end: Vec3) -> Vec3

module function · internal · tech_connector/game_engine/deformation/collision_projection.py:112

_vec3

def _vec3(value: Sequence[float]) -> Vec3

module function · internal · tech_connector/game_engine/deformation/collision_projection.py:118

_add

def _add(a: Vec3, b: Vec3) -> Vec3

module function · internal · tech_connector/game_engine/deformation/collision_projection.py:123

_subtract

def _subtract(a: Vec3, b: Vec3) -> Vec3

module function · internal · tech_connector/game_engine/deformation/collision_projection.py:124

_scale

def _scale(value: Vec3, amount: float) -> Vec3

module function · internal · tech_connector/game_engine/deformation/collision_projection.py:125

_dot

def _dot(a: Vec3, b: Vec3) -> float

module function · internal · tech_connector/game_engine/deformation/collision_projection.py:126

_cross

def _cross(a: Vec3, b: Vec3) -> Vec3

module function · internal · tech_connector/game_engine/deformation/collision_projection.py:127

_length

def _length(value: Vec3) -> float

module function · internal · tech_connector/game_engine/deformation/collision_projection.py:128

_normalize

def _normalize(value: Vec3, fallback: Vec3) -> Vec3

module function · internal · tech_connector/game_engine/deformation/collision_projection.py:129

tech_connector.game_engine.deformation.deformation_contract

normalize_deformation_binding

def normalize_deformation_binding(packet: dict[str, Any], provider_id: str='') -> dict[str, Any]

module function · public name · tech_connector/game_engine/deformation/deformation_contract.py:23

Promote a provider binding packet without copying its packed buffers.

normalize_deformation_frame

def normalize_deformation_frame(packet: dict[str, Any], provider_id: str='') -> dict[str, Any]

module function · public name · tech_connector/game_engine/deformation/deformation_contract.py:39

Promote a provider joint-pose packet without copying matrix buffers.

validate_deformation_binding

def validate_deformation_binding(packet: dict[str, Any]) -> list[str]

module function · public name · tech_connector/game_engine/deformation/deformation_contract.py:54

Return bounded structural errors for a static skeletal binding.

validate_deformation_frame

def validate_deformation_frame(packet: dict[str, Any]) -> list[str]

module function · public name · tech_connector/game_engine/deformation/deformation_contract.py:139

Return bounded structural errors for a per-frame joint pose.

deformation_frame_has_joint_poses

def deformation_frame_has_joint_poses(packet: dict[str, Any]) -> bool

module function · public name · tech_connector/game_engine/deformation/deformation_contract.py:166

reconstruct_linear_blend_positions

def reconstruct_linear_blend_positions(binding: dict[str, Any], frame: dict[str, Any], mesh_native_id: str)

module function · public name · tech_connector/game_engine/deformation/deformation_contract.py:170

Evaluate one exact sparse LBS mesh using Maya-compatible row matrices.

build_fixed_width_skinning_buffers

def build_fixed_width_skinning_buffers(mesh: dict[str, Any], joint_count: int, *, influence_width: int) -> dict[str, Any]

module function · public name · tech_connector/game_engine/deformation/deformation_contract.py:242

Pack sparse influences without making the fixed-width cache authoritative.

build_top4_skinning_buffers

def build_top4_skinning_buffers(mesh: dict[str, Any], joint_count: int) -> dict[str, Any]

module function · public name · tech_connector/game_engine/deformation/deformation_contract.py:365

Build an optional four-influence cache for Qt's built-in skin path.

build_top8_skinning_buffers

def build_top8_skinning_buffers(mesh: dict[str, Any], joint_count: int) -> dict[str, Any]

module function · public name · tech_connector/game_engine/deformation/deformation_contract.py:370

Build an eight-influence cache for the custom high-fidelity GPU path.

select_lossless_gpu_influence_width

def select_lossless_gpu_influence_width(mesh: dict[str, Any], *, top4_parity_accepted: bool, top8_parity_accepted: bool) -> int

module function · public name · tech_connector/game_engine/deformation/deformation_contract.py:375

Select only a fixed-width cache that retains every authoritative influence.

reconstruct_fixed_width_linear_blend_positions

def reconstruct_fixed_width_linear_blend_positions(binding: dict[str, Any], frame: dict[str, Any], mesh_native_id: str, *, influence_width: int, joint_indices_key: str, weights_key: str)

module function · public name · tech_connector/game_engine/deformation/deformation_contract.py:400

Evaluate the exact fixed-width buffers intended for a GPU skin path.

reconstruct_top4_linear_blend_positions

def reconstruct_top4_linear_blend_positions(binding: dict[str, Any], frame: dict[str, Any], mesh_native_id: str)

module function · public name · tech_connector/game_engine/deformation/deformation_contract.py:463

reconstruct_top8_linear_blend_positions

def reconstruct_top8_linear_blend_positions(binding: dict[str, Any], frame: dict[str, Any], mesh_native_id: str)

module function · public name · tech_connector/game_engine/deformation/deformation_contract.py:478

deformation_parity_metrics

def deformation_parity_metrics(reconstructed: Any, evaluated: Any, *, relative_rms_tolerance: float=5e-05, relative_max_tolerance: float=0.0002, absolute_tolerance: float=0.0001) -> dict[str, float | bool]

module function · public name · tech_connector/game_engine/deformation/deformation_contract.py:493

Measure reconstruction error and decide whether point streaming can be skipped.

_available

def _available(buffer: Any, offset: int) -> int

module function · internal · tech_connector/game_engine/deformation/deformation_contract.py:527

_object_space_skin_matrices

def _object_space_skin_matrices(mesh: dict[str, Any], frame: dict[str, Any], inverse_bind: Any, joint_matrices: Any)

module function · internal · tech_connector/game_engine/deformation/deformation_contract.py:534

Build provider-local skin matrices, including a DCC's geometry bind space when supplied.

_float_view

def _float_view(buffer: Any, offset: int, count: int)

module function · internal · tech_connector/game_engine/deformation/deformation_contract.py:552

_uint_view

def _uint_view(buffer: Any, offset: int, count: int)

module function · internal · tech_connector/game_engine/deformation/deformation_contract.py:559

tech_connector.game_engine.deformation.deformation_interchange_service

build_deformation_transfer_plan

def build_deformation_transfer_plan(rig_graph: Any, mesh_id: str, destination: str, *, prefer_editable: bool=True, frame_rate: float=24.0, frame_count: int=0) -> dict[str, Any]

module function · public name · tech_connector/game_engine/deformation/deformation_interchange_service.py:43

Choose a target path without claiming live-host qualification.

qualify_deformation_point_cache

def qualify_deformation_point_cache(frames: Sequence[Sequence[Sequence[float]]], *, expected_vertex_count: int | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/deformation/deformation_interchange_service.py:88

Validate constant topology, finite samples, and deterministic cache identity.

_sha

def _sha(value: Any) -> str

module function · internal · tech_connector/game_engine/deformation/deformation_interchange_service.py:121

tech_connector.game_engine.deformation.deformation_stack

DeformationStackTelemetry.to_dict

def DeformationStackTelemetry.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/deformation/deformation_stack.py:56

DeformationStackRuntime.reset

def DeformationStackRuntime.reset(self, deformer_id: str='') -> None

class method · public name · tech_connector/game_engine/deformation/deformation_stack.py:85

DeformationStackRuntime.evaluate_gpu

def DeformationStackRuntime.evaluate_gpu(self, rig_graph: Any, mesh_id: str, upstream_positions: Sequence[Sequence[float]], dt: float, *, provider_id: str='cupy_cuda', target_ms: float=4.0, edges: Sequence[Sequence[int]]=(), normals: Sequence[Sequence[float]]=(), colliders: Sequence[Mapping[str, Any]]=(), resident_output: bool=False) -> tuple[Any, DeformationStackTelemetry]

class method · public name · tech_connector/game_engine/deformation/deformation_stack.py:98

Evaluate the ordered blend-shape/muscle/jiggle/flesh stack without inter-deformer readback.

DeformationStackRuntime.evaluate

def DeformationStackRuntime.evaluate(self, rig_graph: Any, mesh_id: str, upstream_positions: Sequence[Sequence[float]], dt: float, *, edges: Sequence[Sequence[int]]=(), normals: Sequence[Sequence[float]]=(), colliders: Sequence[Mapping[str, Any]]=()) -> tuple[list[Vec3], DeformationStackTelemetry]

class method · public name · tech_connector/game_engine/deformation/deformation_stack.py:151

Evaluate supported deformers in graph order after canonical skinning.

_vec3

def _vec3(value: Sequence[float]) -> Vec3

module function · internal · tech_connector/game_engine/deformation/deformation_stack.py:243

tech_connector.game_engine.deformation.flesh

FleshDeformerSettings.validated

def FleshDeformerSettings.validated(self) -> 'FleshDeformerSettings'

class method · public name · tech_connector/game_engine/deformation/flesh.py:34

FleshRuntimeState.reset

def FleshRuntimeState.reset(self, target_positions: Sequence[Sequence[float]]) -> None

class method · public name · tech_connector/game_engine/deformation/flesh.py:53

evaluate_flesh

def evaluate_flesh(target_positions: Sequence[Sequence[float]], influence_map: DeformationWeightMap, state: FleshRuntimeState, settings: FleshDeformerSettings, dt: float, *, edges: Sequence[Sequence[int]]=(), normals: Sequence[Sequence[float]]=(), colliders: Sequence[Mapping[str, Any]]=()) -> list[Vec3]

module function · public name · tech_connector/game_engine/deformation/flesh.py:60

Simulate skinned vertices as damped soft tissue with projected collision response.

attach_flesh_deformer

def attach_flesh_deformer(rig_graph: Any, skin_id: str, mesh_id: str, influence_map: DeformationWeightMap, *, settings: FleshDeformerSettings | None=None, deformer_id: str | None=None) -> str

module function · public name · tech_connector/game_engine/deformation/flesh.py:137

Enable fleshy behavior after a skin while leaving canonical weights untouched.

_evaluate_flesh_numpy

def _evaluate_flesh_numpy(targets: list[Vec3], influence_map: DeformationWeightMap, state: FleshRuntimeState, settings: FleshDeformerSettings, dt: float, normals: Sequence[Sequence[float]], colliders: Sequence[Mapping[str, Any]]) -> list[Vec3]

module function · internal · tech_connector/game_engine/deformation/flesh.py:175

_numpy_collision_velocity

def _numpy_collision_velocity(velocity, normal, friction: float, restitution: float)

module function · internal · tech_connector/game_engine/deformation/flesh.py:281

flesh_export_contract

def flesh_export_contract(destination: str) -> dict[str, Any]

module function · public name · tech_connector/game_engine/deformation/flesh.py:293

_solve_colliders

def _solve_colliders(position: Vec3, velocity: Vec3, settings: FleshDeformerSettings, colliders: Sequence[Mapping[str, Any]], *, previous_position: Sequence[float] | None=None) -> tuple[Vec3, Vec3, int]

module function · internal · tech_connector/game_engine/deformation/flesh.py:317

_adjacency

def _adjacency(vertex_count: int, edges: Sequence[Sequence[int]]) -> list[list[int]]

module function · internal · tech_connector/game_engine/deformation/flesh.py:332

_vec3

def _vec3(value: Sequence[float]) -> Vec3

module function · internal · tech_connector/game_engine/deformation/flesh.py:344

_add

def _add(first: Vec3, second: Vec3) -> Vec3

module function · internal · tech_connector/game_engine/deformation/flesh.py:349

_subtract

def _subtract(first: Vec3, second: Vec3) -> Vec3

module function · internal · tech_connector/game_engine/deformation/flesh.py:353

_scale

def _scale(value: Vec3, amount: float) -> Vec3

module function · internal · tech_connector/game_engine/deformation/flesh.py:357

_dot

def _dot(first: Vec3, second: Vec3) -> float

module function · internal · tech_connector/game_engine/deformation/flesh.py:361

_length

def _length(value: Vec3) -> float

module function · internal · tech_connector/game_engine/deformation/flesh.py:365

_normalize

def _normalize(value: Vec3, fallback: Vec3) -> Vec3

module function · internal · tech_connector/game_engine/deformation/flesh.py:369

tech_connector.game_engine.deformation.gpu_skinning_contract

_float_view

def _float_view(source: Any, offset: int, count: int)

module function · internal · tech_connector/game_engine/deformation/gpu_skinning_contract.py:32

fixed_width_render_influence_texels

def fixed_width_render_influence_texels(mesh: dict[str, Any], source_vertex_indices: list[int] | tuple[int, ...] | Any, *, palette_offset: int=0) -> Any

module function · public name · tech_connector/game_engine/deformation/gpu_skinning_contract.py:43

Expand a lossless 4/8 cache into four RGBA32F texels per render vertex.

sparse_render_influence_texels

def sparse_render_influence_texels(mesh: dict[str, Any], source_vertex_indices: list[int] | tuple[int, ...] | Any, *, palette_offset: int=0, max_influences: int=MAX_GPU_SPARSE_INFLUENCES) -> tuple[Any, Any, int]

module function · public name · tech_connector/game_engine/deformation/gpu_skinning_contract.py:77

Pack authoritative sparse weights as two (joint, weight) pairs per RGBA32F texel.

select_exact_gpu_skinning_mode

def select_exact_gpu_skinning_mode(mesh: dict[str, Any], *, exact_parity_accepted: bool, top4_parity_accepted: bool, top8_parity_accepted: bool, sparse_limit: int=MAX_GPU_SPARSE_INFLUENCES) -> tuple[str, int]

module function · public name · tech_connector/game_engine/deformation/gpu_skinning_contract.py:130

Choose a lossless fixed or sparse GPU representation without discarding weights.

provider_to_viewer_row_matrix

def provider_to_viewer_row_matrix(provider_id: str, *, up_axis: str | None, unit_linear: str | None, scene_center: tuple[float, float, float], scene_scale: float) -> Any

module function · public name · tech_connector/game_engine/deformation/gpu_skinning_contract.py:152

Return a row-vector matrix from provider world space to viewer-local space.

build_skin_matrix_palette

def build_skin_matrix_palette(binding: dict[str, Any], frame: dict[str, Any], mesh_specs: list[GpuSkinMeshSpec], *, scene_center: tuple[float, float, float], scene_scale: float) -> Any

module function · public name · tech_connector/game_engine/deformation/gpu_skinning_contract.py:177

Build shader matrices whose column-vector result matches the exact CPU row contract.

emulate_gpu_skin_positions

def emulate_gpu_skin_positions(bind_positions: Any, influence_texels: Any, matrix_palette: Any) -> Any

module function · public name · tech_connector/game_engine/deformation/gpu_skinning_contract.py:250

CPU emulation of the custom shader, used for parity tests and calibration.

emulate_sparse_gpu_skin_positions

def emulate_sparse_gpu_skin_positions(bind_positions: Any, influence_metadata: Any, influence_texels: Any, matrix_palette: Any) -> Any

module function · public name · tech_connector/game_engine/deformation/gpu_skinning_contract.py:272

CPU emulation of the sparse shader path for exact regression tests.

tech_connector.game_engine.deformation.jiggle

JiggleDeformerSettings.validated

def JiggleDeformerSettings.validated(self) -> 'JiggleDeformerSettings'

class method · public name · tech_connector/game_engine/deformation/jiggle.py:36

JiggleRuntimeState.reset

def JiggleRuntimeState.reset(self, target_positions: Sequence[Sequence[float]]) -> None

class method · public name · tech_connector/game_engine/deformation/jiggle.py:66

evaluate_jiggle

def evaluate_jiggle(target_positions: Sequence[Sequence[float]], influence_map: DeformationWeightMap, state: JiggleRuntimeState, settings: JiggleDeformerSettings, dt: float, *, colliders: Sequence[Mapping[str, Any]]=()) -> list[Vec3]

module function · public name · tech_connector/game_engine/deformation/jiggle.py:76

Follow upstream animation with inertial lag, stable limits, and collision response.

attach_jiggle_deformer

def attach_jiggle_deformer(rig_graph: Any, source_id: str, mesh_id: str, influence_map: DeformationWeightMap, *, settings: JiggleDeformerSettings | None=None, deformer_id: str | None=None) -> str

module function · public name · tech_connector/game_engine/deformation/jiggle.py:138

Insert portable secondary motion after a skin cluster or graph deformer.

secondary_motion_export_contract

def secondary_motion_export_contract(destination: str) -> dict[str, Any]

module function · public name · tech_connector/game_engine/deformation/jiggle.py:164

_evaluate_numpy

def _evaluate_numpy(targets, influence_map, state, settings, frame_dt)

module function · internal · tech_connector/game_engine/deformation/jiggle.py:183

_solve_colliders

def _solve_colliders(position, velocity, settings, colliders, *, previous_position=None)

module function · internal · tech_connector/game_engine/deformation/jiggle.py:226

_vec3

def _vec3(value)

module function · internal · tech_connector/game_engine/deformation/jiggle.py:234

_add

def _add(a, b)

module function · internal · tech_connector/game_engine/deformation/jiggle.py:239

_subtract

def _subtract(a, b)

module function · internal · tech_connector/game_engine/deformation/jiggle.py:240

_scale

def _scale(value, amount)

module function · internal · tech_connector/game_engine/deformation/jiggle.py:241

_multiply

def _multiply(a, b)

module function · internal · tech_connector/game_engine/deformation/jiggle.py:242

_dot

def _dot(a, b)

module function · internal · tech_connector/game_engine/deformation/jiggle.py:243

_length

def _length(value)

module function · internal · tech_connector/game_engine/deformation/jiggle.py:244

_normalize

def _normalize(value, fallback)

module function · internal · tech_connector/game_engine/deformation/jiggle.py:245

_limit

def _limit(value, maximum)

module function · internal · tech_connector/game_engine/deformation/jiggle.py:248

tech_connector.game_engine.deformation.muscle

MuscleDeformerSettings.validated

def MuscleDeformerSettings.validated(self) -> 'MuscleDeformerSettings'

class method · public name · tech_connector/game_engine/deformation/muscle.py:29

PoseSpaceTissueDriver.validated

def PoseSpaceTissueDriver.validated(self) -> 'PoseSpaceTissueDriver'

class method · public name · tech_connector/game_engine/deformation/muscle.py:53

MuscleRuntimeState.reset

def MuscleRuntimeState.reset(self, targets: np.ndarray) -> None

class method · public name · tech_connector/game_engine/deformation/muscle.py:73

evaluate_muscle

def evaluate_muscle(target_positions: Sequence[Sequence[float]], activation_map: DeformationWeightMap, state: MuscleRuntimeState, settings: MuscleDeformerSettings, dt: float, *, activation: float | Sequence[float]=1.0, normals: Sequence[Sequence[float]]=(), pose_drivers: Sequence[PoseSpaceTissueDriver | Mapping[str, Any]]=(), pose_values: Mapping[str, float] | None=None, pose_maps: Mapping[str, DeformationWeightMap | Mapping[str, Any]] | None=None) -> list[Vec3]

module function · public name · tech_connector/game_engine/deformation/muscle.py:80

Evaluate fiber contraction and volume-like bulging with stable inertia.

attach_muscle_deformer

def attach_muscle_deformer(rig_graph: Any, skin_id: str, mesh_id: str, activation_map: DeformationWeightMap, *, settings: MuscleDeformerSettings | None=None, pose_drivers: Sequence[PoseSpaceTissueDriver]=(), pose_maps: Mapping[str, DeformationWeightMap] | None=None, deformer_id: str | None=None) -> str

module function · public name · tech_connector/game_engine/deformation/muscle.py:147

set_muscle_activation

def set_muscle_activation(rig_graph: Any, deformer_id: str, activation: float, *, pose_values: Mapping[str, float] | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/deformation/muscle.py:184

muscle_export_contract

def muscle_export_contract(destination: str='portable') -> dict[str, Any]

module function · public name · tech_connector/game_engine/deformation/muscle.py:197

_activation

def _activation(count, activation_map, activation, pose_drivers, pose_values, pose_maps)

module function · internal · tech_connector/game_engine/deformation/muscle.py:215

_normals

def _normals(target, normals)

module function · internal · tech_connector/game_engine/deformation/muscle.py:244

_telemetry

def _telemetry(state, activation)

module function · internal · tech_connector/game_engine/deformation/muscle.py:258

_length

def _length(value)

module function · internal · tech_connector/game_engine/deformation/muscle.py:265

_normalize

def _normalize(value)

module function · internal · tech_connector/game_engine/deformation/muscle.py:266

tech_connector.game_engine.deformation.secondary_motion

SecondaryMotionPreset.to_dict

def SecondaryMotionPreset.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/deformation/secondary_motion.py:22

secondary_motion_preset

def secondary_motion_preset(preset_id: str) -> SecondaryMotionPreset

module function · public name · tech_connector/game_engine/deformation/secondary_motion.py:96

attach_secondary_motion_preset

def attach_secondary_motion_preset(rig_graph: Any, skin_id: str, mesh_id: str, influence_map: DeformationWeightMap, preset_id: str) -> list[str]

module function · public name · tech_connector/game_engine/deformation/secondary_motion.py:103

Attach an editable preset stack while retaining authoritative skin weights.

tech_connector.game_engine.deformation.skinning_tool_service

SkinInfluence.to_dict

def SkinInfluence.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:58

SkinVertexWeights.normalized

def SkinVertexWeights.normalized(self, *, max_influences: int=4, threshold: float=0.0) -> SkinVertexWeights

class method · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:67

SkinVertexWeights.to_dict

def SkinVertexWeights.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:73

SkinClusterState.influence_names

def SkinClusterState.influence_names(self) -> tuple[str, ...]

class method · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:87

SkinClusterState.vertex_count

def SkinClusterState.vertex_count(self) -> int

class method · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:91

SkinClusterState.with_vertex_weights

def SkinClusterState.with_vertex_weights(self, vertex_weights: Iterable[SkinVertexWeights]) -> SkinClusterState

class method · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:94

SkinClusterState.to_dict

def SkinClusterState.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:101

SkinningOperationResult.to_dict

def SkinningOperationResult.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:114

SkinWeightImportResult.to_dict

def SkinWeightImportResult.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:125

_clean_weight

def _clean_weight(value: Any) -> float

module function · internal · tech_connector/game_engine/deformation/skinning_tool_service.py:129

normalize_skin_weights

def normalize_skin_weights(weights: Mapping[str, Any], *, max_influences: int=4, threshold: float=0.0) -> dict[str, float]

module function · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:139

prune_skin_weights

def prune_skin_weights(weights: Mapping[str, Any], *, threshold: float=0.001, max_influences: int=4) -> dict[str, float]

module function · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:161

mirror_influence_name

def mirror_influence_name(name: str) -> str

module function · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:170

bind_skin_from_distance

def bind_skin_from_distance(*, mesh_id: str, vertices: Sequence[Sequence[float]], influences: Sequence[SkinInfluence | Mapping[str, Any] | str], max_influences: int=4, falloff: float=2.0) -> SkinClusterState

module function · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:191

available_skin_bind_methods

def available_skin_bind_methods() -> list[dict[str, Any]]

module function · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:224

bind_skin

def bind_skin(*, mesh_id: str, vertices: Sequence[Sequence[float]], influences: Sequence[SkinInfluence | Mapping[str, Any] | str], bind_method: str='heat', max_influences: int=4, falloff: float=2.0) -> SkinningOperationResult

module function · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:228

auto_skin_cluster

def auto_skin_cluster(*, mesh_id: str, vertices: Sequence[Sequence[float]], influences: Sequence[SkinInfluence | Mapping[str, Any] | str], bind_method: str='auto', max_influences: int=4, falloff: float=2.0, prune_threshold: float=0.001, smooth_iterations: int=1) -> SkinningOperationResult

module function · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:264

influences_from_rig_graph

def influences_from_rig_graph(rig_graph: Any, *, joint_ids: Sequence[str] | None=None) -> tuple[SkinInfluence, ...]

module function · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:300

apply_skin_cluster_to_rig_graph

def apply_skin_cluster_to_rig_graph(rig_graph: Any, cluster: SkinClusterState, *, skin_id: str | None=None, replace_existing: bool=True) -> str

module function · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:326

auto_skin_rig_graph

def auto_skin_rig_graph(rig_graph: Any, *, mesh_id: str, vertices: Sequence[Sequence[float]], joint_ids: Sequence[str] | None=None, bind_method: str='auto', max_influences: int=4, falloff: float=2.0, prune_threshold: float=0.001, smooth_iterations: int=1, skin_id: str | None=None) -> SkinningOperationResult

module function · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:364

paint_skin_weight

def paint_skin_weight(cluster: SkinClusterState, *, vertex_indices: Iterable[int], influence: str, value: float, mode: str='replace', strength: float=1.0) -> SkinningOperationResult

module function · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:403

smooth_skin_weights

def smooth_skin_weights(cluster: SkinClusterState, *, vertex_indices: Iterable[int] | None=None, iterations: int=1, strength: float=0.5) -> SkinningOperationResult

module function · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:450

spatial_smooth_skin_weights

def spatial_smooth_skin_weights(cluster: SkinClusterState, *, positions: Sequence[Sequence[float]], normals: Sequence[Sequence[float]] | None=None, center: Sequence[float] | None=None, radius: float=1.0, strength: float=0.5, iterations: int=1, target_indices: Iterable[int] | None=None, normal_angle: float=120.0, max_neighbors: int=96, hardness: float=0.5) -> SkinningOperationResult

module function · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:487

Apply the shared topology-independent smoothing kernel to a skin.

normalize_skin_cluster

def normalize_skin_cluster(cluster: SkinClusterState) -> SkinningOperationResult

module function · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:527

prune_skin_cluster

def prune_skin_cluster(cluster: SkinClusterState, *, threshold: float=0.001, max_influences: int | None=None) -> SkinningOperationResult

module function · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:543

add_skin_influence

def add_skin_influence(cluster: SkinClusterState, influence: SkinInfluence) -> SkinningOperationResult

module function · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:565

remove_skin_influence

def remove_skin_influence(cluster: SkinClusterState, influence_name: str, *, fallback_influence: str='') -> SkinningOperationResult

module function · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:573

mirror_skin_weights

def mirror_skin_weights(cluster: SkinClusterState) -> SkinningOperationResult

module function · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:609

copy_skin_weights

def copy_skin_weights(source: SkinClusterState, *, target_mesh_id: str, target_vertex_count: int | None=None) -> SkinClusterState

module function · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:634

transfer_skin_weights

def transfer_skin_weights(source: SkinClusterState, *, target_mesh_id: str, target_vertex_count: int | None=None, strategy: str='index') -> SkinningOperationResult

module function · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:655

export_skin_weights_payload

def export_skin_weights_payload(cluster: SkinClusterState, *, vertex_positions: Sequence[Sequence[float]] | None=None, faces: Sequence[Sequence[int]] | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:673

export_skin_weights_json

def export_skin_weights_json(cluster: SkinClusterState, *, vertex_positions: Sequence[Sequence[float]] | None=None, faces: Sequence[Sequence[int]] | None=None, indent: int=2) -> str

module function · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:720

import_skin_weights_payload

def import_skin_weights_payload(payload: Mapping[str, Any]) -> SkinClusterState

module function · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:734

skin_topology_identity

def skin_topology_identity(vertex_positions: Sequence[Sequence[float]], faces: Sequence[Sequence[int]]=()) -> dict[str, Any]

module function · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:756

save_skin_weights_file

def save_skin_weights_file(path: str | os.PathLike[str], cluster: SkinClusterState, *, vertex_positions: Sequence[Sequence[float]] | None=None, faces: Sequence[Sequence[int]] | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:774

load_skin_weights_file

def load_skin_weights_file(path: str | os.PathLike[str], *, target_mesh_id: str='', expected_vertex_count: int | None=None, expected_topology_fingerprint: str='', available_influences: Iterable[str] | None=None, influence_map: Mapping[str, str] | None=None, allow_partial: bool=False) -> SkinWeightImportResult

module function · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:814

skin_cluster_from_rig_graph

def skin_cluster_from_rig_graph(rig_graph: Any, skin_id: str) -> SkinClusterState

module function · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:909

_stable_sha256

def _stable_sha256(value: Any) -> str

module function · internal · tech_connector/game_engine/deformation/skinning_tool_service.py:951

normalize_bind_method

def normalize_bind_method(bind_method: str) -> str

module function · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:956

skin_cluster_summary

def skin_cluster_summary(cluster: SkinClusterState) -> dict[str, Any]

module function · public name · tech_connector/game_engine/deformation/skinning_tool_service.py:972

_coerce_influence

def _coerce_influence(value: SkinInfluence | Mapping[str, Any] | str) -> SkinInfluence

module function · internal · tech_connector/game_engine/deformation/skinning_tool_service.py:984

_coerce_position

def _coerce_position(value: Any) -> tuple[float, float, float]

module function · internal · tech_connector/game_engine/deformation/skinning_tool_service.py:997

_matrix_translation

def _matrix_translation(value: Any) -> tuple[float, float, float]

module function · internal · tech_connector/game_engine/deformation/skinning_tool_service.py:1004

tech_connector.game_engine.deformation.spatial_skin_smoothing_service

_dot

def _dot(a: Sequence[float], b: Sequence[float]) -> float

module function · internal · tech_connector/game_engine/deformation/spatial_skin_smoothing_service.py:10

_distance_squared

def _distance_squared(a: Sequence[float], b: Sequence[float]) -> float

module function · internal · tech_connector/game_engine/deformation/spatial_skin_smoothing_service.py:14

estimate_spatial_smoothing_radius

def estimate_spatial_smoothing_radius(positions: Sequence[Sequence[float]], *, sample_weights: Sequence[float] | None=None) -> float

module function · public name · tech_connector/game_engine/deformation/spatial_skin_smoothing_service.py:18

Choose a scale-aware radius for a whole-surface smoothing pass. ``sample_weights`` should contain the world-space surface area represented by each vertex. Using both typical and sparse-region areas keeps the radius useful on production mesh

detect_weight_outlier_indices

def detect_weight_outlier_indices(weight_rows: Sequence[Mapping[str, float]], topology_neighbors: Sequence[Iterable[int]], *, minimum_difference: float=0.06, consensus_ratio: float=1.0) -> tuple[int, ...]

module function · public name · tech_connector/game_engine/deformation/spatial_skin_smoothing_service.py:71

Find isolated weight spikes suitable for a Weight-Hammer-like repair. A vertex is selected only when it differs from the average of at least three connected neighbors substantially more than those neighbors differ from one another. Linear a

detect_deformation_ripple_indices

def detect_deformation_ripple_indices(bind_positions: Sequence[Sequence[float]], posed_positions: Sequence[Sequence[float]], topology_neighbors: Sequence[Iterable[int]], *, minimum_edge_fraction: float=0.015, curvature_ratio: float=0.55) -> tuple[int, ...]

module function · public name · tech_connector/game_engine/deformation/spatial_skin_smoothing_service.py:128

Detect high-frequency posed ripples absent from the input surface. The signal is the Laplacian of skinning displacement, not mesh curvature, so folds already present before deformation are ignored. Smooth bends have a near-linear displaceme

spatial_smooth_weight_rows

def spatial_smooth_weight_rows(positions: Sequence[Sequence[float]], weight_rows: Sequence[Mapping[str, float]], *, radius: float, strength: float=0.5, iterations: int=1, target_indices: Iterable[int] | None=None, center: Sequence[float] | None=None, normals: Sequence[Sequence[float]] | None=None, normal_angle: float=120.0, max_neighbors: int=96, max_influences: int=8, locked_influences: Iterable[str]=(), hardness: float=0.5, sample_weights: Sequence[float] | None=None, cross_region_share: float=0.45, topology_neighbors: Sequence[Iterable[int]] | None=None, topology_share: float=0.0) -> tuple[list[dict[str, float]], tuple[int, ...]]

module function · public name · tech_connector/game_engine/deformation/spatial_skin_smoothing_service.py:190

Diffuse weights through geometric neighborhoods without using edges. When ``center`` is supplied, only vertices inside the brush sphere change and strength falls off toward its edge. The complete influence field is diffused before a single

tech_connector.game_engine.deformation.tc_deformation_gpu_service

GpuSecondaryMotionState.memory_bytes

def GpuSecondaryMotionState.memory_bytes(self) -> int

class method · public name · tech_connector/game_engine/deformation/tc_deformation_gpu_service.py:39

GpuBlendShapeState.memory_bytes

def GpuBlendShapeState.memory_bytes(self) -> int

class method · public name · tech_connector/game_engine/deformation/tc_deformation_gpu_service.py:54

DeformationLodController.resolved_substeps

def DeformationLodController.resolved_substeps(self, authored: int) -> int

class method · public name · tech_connector/game_engine/deformation/tc_deformation_gpu_service.py:72

DeformationLodController.update

def DeformationLodController.update(self, elapsed_ms: float) -> None

class method · public name · tech_connector/game_engine/deformation/tc_deformation_gpu_service.py:75

evaluate_gpu_deformation_stack

def evaluate_gpu_deformation_stack(rig_graph: Any, mesh_id: str, upstream_positions: Sequence[Sequence[float]], dt: float, *, provider_id: str, states: dict[str, GpuSecondaryMotionState], lod: DeformationLodController, edges: Sequence[Sequence[int]]=(), normals: Sequence[Sequence[float]]=(), colliders: Sequence[Mapping[str, Any]]=(), resident_output: bool=False) -> tuple[Any, dict[str, Any]]

module function · public name · tech_connector/game_engine/deformation/tc_deformation_gpu_service.py:85

_state

def _state(xp, states, identifier, provider_id, kind, count)

module function · internal · tech_connector/game_engine/deformation/tc_deformation_gpu_service.py:203

_blend_state

def _blend_state(states, identifier, provider_id, count)

module function · internal · tech_connector/game_engine/deformation/tc_deformation_gpu_service.py:213

_blend_shape

def _blend_shape(xp, source, state, settings)

module function · internal · tech_connector/game_engine/deformation/tc_deformation_gpu_service.py:223

_blend_contributions

def _blend_contributions(frames, weight)

module function · internal · tech_connector/game_engine/deformation/tc_deformation_gpu_service.py:274

_muscle

def _muscle(xp, target, activation_map, state, settings, dt, normals, authored, substeps, *, readback)

module function · internal · tech_connector/game_engine/deformation/tc_deformation_gpu_service.py:292

_muscle_metrics

def _muscle_metrics(xp, activation, state, readback)

module function · internal · tech_connector/game_engine/deformation/tc_deformation_gpu_service.py:379

_jiggle

def _jiggle(xp, target, influence, state, settings, dt, colliders, substeps, *, readback)

module function · internal · tech_connector/game_engine/deformation/tc_deformation_gpu_service.py:392

_flesh

def _flesh(xp, target, influence, state, settings, dt, edges, normals, colliders, substeps, *, readback)

module function · internal · tech_connector/game_engine/deformation/tc_deformation_gpu_service.py:438

_limit_offsets

def _limit_offsets(xp, state, target, maximum, target_velocity, *, axes=None)

module function · internal · tech_connector/game_engine/deformation/tc_deformation_gpu_service.py:488

_collide

def _collide(xp, position, velocity, previous, radius, friction, restitution, colliders, readback)

module function · internal · tech_connector/game_engine/deformation/tc_deformation_gpu_service.py:501

_host

def _host(xp, value)

module function · internal · tech_connector/game_engine/deformation/tc_deformation_gpu_service.py:559

_scalar

def _scalar(xp, value)

module function · internal · tech_connector/game_engine/deformation/tc_deformation_gpu_service.py:563

tech_connector.game_engine.deformation.weight_map

DeformationWeightMap.create

def DeformationWeightMap.create(cls, name: str, vertex_count: int, *, default_value: float=0.0) -> 'DeformationWeightMap'

class method · public name · tech_connector/game_engine/deformation/weight_map.py:24

DeformationWeightMap.paint

def DeformationWeightMap.paint(self, vertices: Sequence[Sequence[float]], center: Sequence[float], radius: float, *, value: float=1.0, strength: float=1.0, hardness: float=0.5, mode: str='replace') -> list[int]

class method · public name · tech_connector/game_engine/deformation/weight_map.py:28

DeformationWeightMap.smooth

def DeformationWeightMap.smooth(self, adjacency: Sequence[Iterable[int]], *, iterations: int=1, strength: float=0.5) -> None

class method · public name · tech_connector/game_engine/deformation/weight_map.py:75

DeformationWeightMap.invert

def DeformationWeightMap.invert(self) -> None

class method · public name · tech_connector/game_engine/deformation/weight_map.py:89

DeformationWeightMap.to_dict

def DeformationWeightMap.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/deformation/weight_map.py:94

DeformationWeightMap.from_dict

def DeformationWeightMap.from_dict(cls, data: dict[str, Any]) -> 'DeformationWeightMap'

class method · public name · tech_connector/game_engine/deformation/weight_map.py:111

SimulationMeshBindingEntry.__post_init__

def SimulationMeshBindingEntry.__post_init__(self) -> None

class method · internal · tech_connector/game_engine/deformation/weight_map.py:133

sample_simulation_mesh

def sample_simulation_mesh(simulation_positions: Sequence[Sequence[float]], binding: SimulationMeshBinding) -> list[Vec3]

module function · public name · tech_connector/game_engine/deformation/weight_map.py:148

blend_deformation

def blend_deformation(upstream_positions: Sequence[Sequence[float]], deformed_positions: Sequence[Sequence[float]], influence_map: DeformationWeightMap) -> list[Vec3]

module function · public name · tech_connector/game_engine/deformation/weight_map.py:164

attach_deformation_map

def attach_deformation_map(rig_graph: Any, source_id: str, influence_map: DeformationWeightMap) -> str

module function · public name · tech_connector/game_engine/deformation/weight_map.py:177

Attach an output blend map to any skin cluster or ordered deformer.

_vec3

def _vec3(value: Sequence[float]) -> Vec3

module function · internal · tech_connector/game_engine/deformation/weight_map.py:198

_clamp

def _clamp(value: Any) -> float

module function · internal · tech_connector/game_engine/deformation/weight_map.py:204

_smoothstep

def _smoothstep(value: float) -> float

module function · internal · tech_connector/game_engine/deformation/weight_map.py:208

tech_connector.game_engine.integration.active_viewer_command_service

_cleanup_stale_viewer_refs

def _cleanup_stale_viewer_refs() -> None

module function · internal · tech_connector/game_engine/integration/active_viewer_command_service.py:13

_release_viewer_ref

def _release_viewer_ref(dead_ref: weakref.ReferenceType) -> None

module function · internal · tech_connector/game_engine/integration/active_viewer_command_service.py:20

register_active_viewer

def register_active_viewer(viewer: Any) -> None

module function · public name · tech_connector/game_engine/integration/active_viewer_command_service.py:26

unregister_active_viewer

def unregister_active_viewer(viewer: Any) -> None

module function · public name · tech_connector/game_engine/integration/active_viewer_command_service.py:37

active_viewer

def active_viewer() -> Any | None

module function · public name · tech_connector/game_engine/integration/active_viewer_command_service.py:45

execute_active_viewer_command

def execute_active_viewer_command(command: str, **payload: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/active_viewer_command_service.py:50

tech_connector.game_engine.integration.adaptive_scene_command_service

SceneCommandTarget.provider_base

def SceneCommandTarget.provider_base(self) -> str

class method · public name · tech_connector/game_engine/integration/adaptive_scene_command_service.py:26

SceneCommandTarget.to_dict

def SceneCommandTarget.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/integration/adaptive_scene_command_service.py:29

AdaptiveSceneCommand.to_dict

def AdaptiveSceneCommand.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/integration/adaptive_scene_command_service.py:45

SceneCommandRoute.to_dict

def SceneCommandRoute.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/integration/adaptive_scene_command_service.py:70

target_from_scene_proxy

def target_from_scene_proxy(proxy: dict[str, Any] | Any, *, component_type: str='object', components: list[str] | tuple[str, ...] | None=None) -> SceneCommandTarget

module function · public name · tech_connector/game_engine/integration/adaptive_scene_command_service.py:1053

_maya_component_expr

def _maya_component_expr(target: SceneCommandTarget) -> str

module function · internal · tech_connector/game_engine/integration/adaptive_scene_command_service.py:1077

_maya_route

def _maya_route(command: AdaptiveSceneCommand, target: SceneCommandTarget, payload: dict[str, Any]) -> SceneCommandRoute

module function · internal · tech_connector/game_engine/integration/adaptive_scene_command_service.py:1087

_blender_route

def _blender_route(command: AdaptiveSceneCommand, target: SceneCommandTarget, payload: dict[str, Any]) -> SceneCommandRoute

module function · internal · tech_connector/game_engine/integration/adaptive_scene_command_service.py:1289

_tc_route

def _tc_route(command: AdaptiveSceneCommand, target: SceneCommandTarget, payload: dict[str, Any]) -> SceneCommandRoute

module function · internal · tech_connector/game_engine/integration/adaptive_scene_command_service.py:1322

resolve_adaptive_scene_command

def resolve_adaptive_scene_command(command_key: str, target: SceneCommandTarget | dict[str, Any], payload: dict[str, Any] | None=None) -> SceneCommandRoute

module function · public name · tech_connector/game_engine/integration/adaptive_scene_command_service.py:1338

list_adaptive_scene_commands

def list_adaptive_scene_commands() -> list[dict[str, Any]]

module function · public name · tech_connector/game_engine/integration/adaptive_scene_command_service.py:1428

tech_connector.game_engine.integration.blender_build_motion_library

_place_crawl_contact

def _place_crawl_contact(armature, upper_name: str, lower_name: str, hand_name: str, floor_height: float) -> None

module function · internal · tech_connector/game_engine/integration/blender_build_motion_library.py:48

Use a small CCD pass to put a crawling limb near the support plane.

_lower_crawl_shoulders

def _lower_crawl_shoulders(armature) -> None

module function · internal · tech_connector/game_engine/integration/blender_build_motion_library.py:71

sha256

def sha256(path: Path) -> str

module function · public name · tech_connector/game_engine/integration/blender_build_motion_library.py:81

build

def build(source_dir: Path, target_path: Path, output_dir: Path) -> dict

module function · public name · tech_connector/game_engine/integration/blender_build_motion_library.py:89

tech_connector.game_engine.integration.blender_fbx_extract

_matrix_values

def _matrix_values(matrix)

module function · internal · tech_connector/game_engine/integration/blender_fbx_extract.py:17

_material_payload

def _material_payload(material)

module function · internal · tech_connector/game_engine/integration/blender_fbx_extract.py:21

_json_value

def _json_value(value)

module function · internal · tech_connector/game_engine/integration/blender_fbx_extract.py:102

_copy_shader_input

def _copy_shader_input(node, payload, target, names)

module function · internal · tech_connector/game_engine/integration/blender_fbx_extract.py:117

_image_texture_channel

def _image_texture_channel(node)

module function · internal · tech_connector/game_engine/integration/blender_fbx_extract.py:128

_armature_has_animation

def _armature_has_animation(obj, *, file_has_actions: bool=False) -> bool

module function · internal · tech_connector/game_engine/integration/blender_fbx_extract.py:157

_animation_frame_range

def _animation_frame_range(scene, actions)

module function · internal · tech_connector/game_engine/integration/blender_fbx_extract.py:171

_append_armature_pose_caches

def _append_armature_pose_caches(scene, armature_objects, armatures, floats, *, frame_start, frame_end, file_has_actions)

module function · internal · tech_connector/game_engine/integration/blender_fbx_extract.py:187

_clear_factory_scene

def _clear_factory_scene(bpy) -> None

module function · internal · tech_connector/game_engine/integration/blender_fbx_extract.py:250

_import_source_scene

def _import_source_scene(bpy, input_path: str)

module function · internal · tech_connector/game_engine/integration/blender_fbx_extract.py:255

extract

def extract(input_path: str, manifest_path: str, float_path: str, uint_path: str) -> None

module function · public name · tech_connector/game_engine/integration/blender_fbx_extract.py:274

main

def main() -> None

module function · public name · tech_connector/game_engine/integration/blender_fbx_extract.py:458

tech_connector.game_engine.integration.blender_fbx_reimport_fixture

main

def main() -> None

module function · public name · tech_connector/game_engine/integration/blender_fbx_reimport_fixture.py:13

tech_connector.game_engine.integration.blender_mesh_lod_generate

_triangle_count

def _triangle_count(mesh) -> int

module function · internal · tech_connector/game_engine/integration/blender_mesh_lod_generate.py:11

_mesh_inventory

def _mesh_inventory(bpy)

module function · internal · tech_connector/game_engine/integration/blender_mesh_lod_generate.py:15

_generate

def _generate(request_path: str, result_path: str) -> None

module function · internal · tech_connector/game_engine/integration/blender_mesh_lod_generate.py:29

main

def main() -> None

module function · public name · tech_connector/game_engine/integration/blender_mesh_lod_generate.py:99

tech_connector.game_engine.integration.blender_preview_retarget

main

def main() -> None

module function · public name · tech_connector/game_engine/integration/blender_preview_retarget.py:12

tech_connector.game_engine.integration.blender_retarget_walk

_bone_local

def _bone_local(matrix: Matrix, parent: Matrix | None) -> Matrix

module function · internal · tech_connector/game_engine/integration/blender_retarget_walk.py:57

_rotation_only

def _rotation_only(matrix: Matrix) -> Matrix

module function · internal · tech_connector/game_engine/integration/blender_retarget_walk.py:61

_armature

def _armature(objects: set[str]) -> bpy.types.Object

module function · internal · tech_connector/game_engine/integration/blender_retarget_walk.py:65

_sha256

def _sha256(path: Path) -> str

module function · internal · tech_connector/game_engine/integration/blender_retarget_walk.py:72

retarget_walk

def retarget_walk(source_path: Path, target_path: Path, output_path: Path, report_path: Path) -> dict

module function · public name · tech_connector/game_engine/integration/blender_retarget_walk.py:80

tech_connector.game_engine.integration.blender_usd_compose

_value_type

def _value_type(Sdf, name)

module function · internal · tech_connector/game_engine/integration/blender_usd_compose.py:11

_coerce_value

def _coerce_value(Gf, value, type_name)

module function · internal · tech_connector/game_engine/integration/blender_usd_compose.py:29

compose

def compose(request_path: str, result_path: str) -> None

module function · public name · tech_connector/game_engine/integration/blender_usd_compose.py:49

main

def main() -> None

module function · public name · tech_connector/game_engine/integration/blender_usd_compose.py:177

tech_connector.game_engine.integration.build_skm_motion_demo

_write_skin_mesh

def _write_skin_mesh(path: Path, native, binding: dict) -> None

module function · internal · tech_connector/game_engine/integration/build_skm_motion_demo.py:46

_validate_skin_influences

def _validate_skin_influences(binding: dict) -> dict

module function · internal · tech_connector/game_engine/integration/build_skm_motion_demo.py:75

Preserve the source skin weights on the native 32-influence GPU path.

_validate_motion_skeleton

def _validate_motion_skeleton(reference: dict, candidate: dict, role: str) -> None

module function · internal · tech_connector/game_engine/integration/build_skm_motion_demo.py:97

Every clip must use the rendered mesh's joint hierarchy and bind pose.

build_demo

def build_demo(base_scene: Path, report_path: Path, output_dir: Path) -> dict

module function · public name · tech_connector/game_engine/integration/build_skm_motion_demo.py:112

tech_connector.game_engine.integration.capability_maturity_service

CapabilityEvidence.to_dict

def CapabilityEvidence.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/integration/capability_maturity_service.py:28

CapabilityMaturityAssessment.to_dict

def CapabilityMaturityAssessment.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/integration/capability_maturity_service.py:42

register_capability_evidence

def register_capability_evidence(evidence: CapabilityEvidence) -> None

module function · public name · tech_connector/game_engine/integration/capability_maturity_service.py:709

assess_capability

def assess_capability(command: Any, evidence: CapabilityEvidence | None=None) -> CapabilityMaturityAssessment

module function · public name · tech_connector/game_engine/integration/capability_maturity_service.py:713

audit_capability_maturity

def audit_capability_maturity(commands: Iterable[Any]) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/capability_maturity_service.py:788

tech_connector.game_engine.integration.capability_qualification_service

capability_test_files

def capability_test_files(source_root: str | Path) -> tuple[Path, ...]

module function · public name · tech_connector/game_engine/integration/capability_qualification_service.py:24

qualify_capability_evidence

def qualify_capability_evidence(source_root: str | Path, output_root: str | Path, *, timeout_seconds: float=300.0) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/capability_qualification_service.py:36

validate_capability_qualification

def validate_capability_qualification(source_root: str | Path, receipt: Mapping[str, Any] | None, *, max_age_seconds: float=DEFAULT_MAX_AGE_SECONDS, source_fingerprint: str | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/capability_qualification_service.py:77

load_capability_qualification

def load_capability_qualification(path: str | Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/capability_qualification_service.py:97

_timestamp

def _timestamp(value: Any) -> float

module function · internal · tech_connector/game_engine/integration/capability_qualification_service.py:105

tech_connector.game_engine.integration.content_browser_qualification_service

ContentBrowserQualificationReceipt.to_dict

def ContentBrowserQualificationReceipt.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/integration/content_browser_qualification_service.py:28

qualify_content_browser_scale

def qualify_content_browser_scale(lifecycle: ContentBrowserLifecycleService, *, sample_count: int=50000, query_budget_ms: float=750.0, inventory_budget_ms: float=2000.0) -> ContentBrowserQualificationReceipt

module function · public name · tech_connector/game_engine/integration/content_browser_qualification_service.py:32

Exercise compiled search over a large deterministic inventory and record evidence.

tech_connector.game_engine.integration.content_production_qualification_service

qualify_content_production

def qualify_content_production(source_root: str | Path, output_root: str | Path, *, maximum_total_seconds: float=30.0) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/content_production_qualification_service.py:27

validate_content_production_qualification

def validate_content_production_qualification(source_root: str | Path, receipt: Mapping[str, Any] | None, *, max_age_seconds: float=DEFAULT_MAX_AGE_SECONDS, source_fingerprint: str | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/content_production_qualification_service.py:320

load_content_production_qualification

def load_content_production_qualification(path: str | Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/content_production_qualification_service.py:341

_timestamp

def _timestamp(value: Any) -> float

module function · internal · tech_connector/game_engine/integration/content_production_qualification_service.py:349

tech_connector.game_engine.integration.context_call_registry

_dedent

def _dedent(source: str) -> str

module function · internal · tech_connector/game_engine/integration/context_call_registry.py:37

register_context_call

def register_context_call(call: ContextCall) -> None

module function · public name · tech_connector/game_engine/integration/context_call_registry.py:319

Register or replace a context call at runtime.

normalize_dcc_name

def normalize_dcc_name(dcc: str) -> str

module function · public name · tech_connector/game_engine/integration/context_call_registry.py:324

get_context_call

def get_context_call(dcc: str, key: str) -> ContextCall | None

module function · public name · tech_connector/game_engine/integration/context_call_registry.py:333

list_context_calls

def list_context_calls(dcc: str | None=None) -> list[dict[str, Any]]

module function · public name · tech_connector/game_engine/integration/context_call_registry.py:349

_parse_jsonish

def _parse_jsonish(value: Any) -> Any

module function · internal · tech_connector/game_engine/integration/context_call_registry.py:370

_first_json_line

def _first_json_line(text: str) -> Any

module function · internal · tech_connector/game_engine/integration/context_call_registry.py:382

_normalize_bridge_response

def _normalize_bridge_response(response: Any) -> dict[str, Any]

module function · internal · tech_connector/game_engine/integration/context_call_registry.py:393

Normalize bridge responses from old/new Unreal/Maya/Blender callers.

_format_code_template

def _format_code_template(source: str, kwargs: Mapping[str, Any] | None=None) -> str

module function · internal · tech_connector/game_engine/integration/context_call_registry.py:456

execute_context_call

def execute_context_call(dcc: str, key: str, bridge: Any, *, args: list[Any] | None=None, kwargs: dict[str, Any] | None=None, timeout: float | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/context_call_registry.py:467

Execute a registered context call through a DCC bridge. The bridge may expose `safe_call`, `call`, or `execute_python`. The result is always normalized into `{ok, data, error, ...}`.

execute_python_context_json

def execute_python_context_json(dcc: str, bridge: Any, source: str, *, timeout: float=12.0) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/context_call_registry.py:545

Execute a vetted/ad-hoc Python snippet and normalize JSON stdout/result. This is used by existing Unreal context builders while the registry gains more named function coverage. It still routes through the same normalization layer as registe

tech_connector.game_engine.integration.dcc_bridge_setup

install_blender_startup_bridge

def install_blender_startup_bridge(all_versions=True) -> DCCSetupResult

module function · public name · tech_connector/game_engine/integration/dcc_bridge_setup.py:35

blender_script_editor_snippet

def blender_script_editor_snippet(repo_root=None) -> str

module function · public name · tech_connector/game_engine/integration/dcc_bridge_setup.py:76

install_substance_painter_bridge

def install_substance_painter_bridge() -> DCCSetupResult

module function · public name · tech_connector/game_engine/integration/dcc_bridge_setup.py:103

substance_painter_script_editor_snippet

def substance_painter_script_editor_snippet(repo_root=None) -> str

module function · public name · tech_connector/game_engine/integration/dcc_bridge_setup.py:126

install_3dsmax_startup_bridge

def install_3dsmax_startup_bridge() -> DCCSetupResult

module function · public name · tech_connector/game_engine/integration/dcc_bridge_setup.py:151

max_script_editor_snippet

def max_script_editor_snippet(repo_root=None) -> str

module function · public name · tech_connector/game_engine/integration/dcc_bridge_setup.py:177

install_gimp_bridge

def install_gimp_bridge() -> DCCSetupResult

module function · public name · tech_connector/game_engine/integration/dcc_bridge_setup.py:191

Installs the Tech Connector Python-Fu plugin for the current user. :return: Result describing the installation outcome.

install_photoshop_uxp_bridge

def install_photoshop_uxp_bridge() -> DCCSetupResult

module function · public name · tech_connector/game_engine/integration/dcc_bridge_setup.py:216

Installs the Tech Connector UXP plugin for the current user. :return: Result describing the installation outcome.

_roaming_app_data_dir

def _roaming_app_data_dir() -> Path

module function · internal · tech_connector/game_engine/integration/dcc_bridge_setup.py:241

Gets the current user's roaming application-data directory. :return: Platform-appropriate roaming application-data directory.

auto_reconnect_dcc_bridges

def auto_reconnect_dcc_bridges(bridge_factories: dict[str, Any] | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/dcc_bridge_setup.py:254

Preflight check across all 2D and 3D DCC bridges, auto-reconnecting active sockets.

tech_connector.game_engine.integration.dcc_capability_audit_service

DccHostAudit.to_dict

def DccHostAudit.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/integration/dcc_capability_audit_service.py:52

audit_dcc_capabilities

def audit_dcc_capabilities(hosts: tuple[str, ...]=AUDITED_HOSTS) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/dcc_capability_audit_service.py:56

audit_dcc_host

def audit_dcc_host(host: str) -> DccHostAudit

module function · public name · tech_connector/game_engine/integration/dcc_capability_audit_service.py:81

_audit_tc_native

def _audit_tc_native() -> DccHostAudit

module function · internal · tech_connector/game_engine/integration/dcc_capability_audit_service.py:109

_bridged_rigging_evidence

def _bridged_rigging_evidence(host: str) -> DccDepartmentEvidence | None

module function · internal · tech_connector/game_engine/integration/dcc_capability_audit_service.py:128

_operation_departments

def _operation_departments(registry: dict[str, Any], *, host: str='') -> dict[str, DccDepartmentEvidence]

module function · internal · tech_connector/game_engine/integration/dcc_capability_audit_service.py:168

_callable_contract_exists

def _callable_contract_exists(function: str, *, host: str='') -> bool

module function · internal · tech_connector/game_engine/integration/dcc_capability_audit_service.py:207

_workspace_python_source

def _workspace_python_source(module_name: str) -> Path | None

module function · internal · tech_connector/game_engine/integration/dcc_capability_audit_service.py:243

_assigned_names

def _assigned_names(node: ast.Assign | ast.AnnAssign) -> set[str]

module function · internal · tech_connector/game_engine/integration/dcc_capability_audit_service.py:252

_imported_names

def _imported_names(node: ast.Import | ast.ImportFrom) -> set[str]

module function · internal · tech_connector/game_engine/integration/dcc_capability_audit_service.py:261

_department_for_operation

def _department_for_operation(operation: str) -> str

module function · internal · tech_connector/game_engine/integration/dcc_capability_audit_service.py:268

_workspace_root

def _workspace_root() -> Path

module function · internal · tech_connector/game_engine/integration/dcc_capability_audit_service.py:285

tech_connector.game_engine.integration.dcc_execution_service

CapabilityCheckResult.to_dict

def CapabilityCheckResult.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/integration/dcc_execution_service.py:33

DccExecutionRequest.to_dict

def DccExecutionRequest.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/integration/dcc_execution_service.py:61

DccDispatchResult.to_dict

def DccDispatchResult.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/integration/dcc_execution_service.py:84

DccExecutionAdapter.check_capabilities

def DccExecutionAdapter.check_capabilities(self, request: DccExecutionRequest, context: RequestContext) -> CapabilityCheckResult

class method · public name · tech_connector/game_engine/integration/dcc_execution_service.py:91

DccExecutionAdapter.preview

def DccExecutionAdapter.preview(self, request: DccExecutionRequest, context: RequestContext) -> DccDispatchResult

class method · public name · tech_connector/game_engine/integration/dcc_execution_service.py:92

DccExecutionAdapter.query

def DccExecutionAdapter.query(self, request: DccExecutionRequest, context: RequestContext) -> DccDispatchResult

class method · public name · tech_connector/game_engine/integration/dcc_execution_service.py:93

DccExecutionAdapter.execute

def DccExecutionAdapter.execute(self, request: DccExecutionRequest, context: RequestContext) -> DccDispatchResult

class method · public name · tech_connector/game_engine/integration/dcc_execution_service.py:94

_window

def _window(context: RequestContext)

module function · internal · tech_connector/game_engine/integration/dcc_execution_service.py:97

_method

def _method(window: Any, name: str)

module function · internal · tech_connector/game_engine/integration/dcc_execution_service.py:101

_maya_direct_bridge_available

def _maya_direct_bridge_available() -> bool

module function · internal · tech_connector/game_engine/integration/dcc_execution_service.py:106

_maya_direct_bridge_sessions

def _maya_direct_bridge_sessions() -> list[dict[str, Any]]

module function · internal · tech_connector/game_engine/integration/dcc_execution_service.py:115

_format_maya_session_choices

def _format_maya_session_choices(sessions: list[dict[str, Any]]) -> str

module function · internal · tech_connector/game_engine/integration/dcc_execution_service.py:126

_normalise_path_fragment

def _normalise_path_fragment(value: Any) -> str

module function · internal · tech_connector/game_engine/integration/dcc_execution_service.py:138

_session_match_terms

def _session_match_terms(value: Any) -> set[str]

module function · internal · tech_connector/game_engine/integration/dcc_execution_service.py:143

_maya_port_for_prompted_session

def _maya_port_for_prompted_session(text: str, sessions: list[dict[str, Any]]) -> int | None

module function · internal · tech_connector/game_engine/integration/dcc_execution_service.py:152

_prompt_mentions_maya_session

def _prompt_mentions_maya_session(text: str) -> bool

module function · internal · tech_connector/game_engine/integration/dcc_execution_service.py:198

_unreal_direct_bridge_available

def _unreal_direct_bridge_available() -> bool

module function · internal · tech_connector/game_engine/integration/dcc_execution_service.py:210

_extract_json_payload

def _extract_json_payload(raw: Any) -> dict[str, Any]

module function · internal · tech_connector/game_engine/integration/dcc_execution_service.py:221

_as_name_list

def _as_name_list(value: Any) -> list[str]

module function · internal · tech_connector/game_engine/integration/dcc_execution_service.py:250

_node_from_plug

def _node_from_plug(value: Any) -> str

module function · internal · tech_connector/game_engine/integration/dcc_execution_service.py:267

_maya_operation_target_names

def _maya_operation_target_names(operation_key: str, params: dict[str, Any]) -> list[str]

module function · internal · tech_connector/game_engine/integration/dcc_execution_service.py:272

Return existing Maya scene objects that should be verified before mutation.

_guess_callable_name

def _guess_callable_name(prompt: str) -> str

module function · internal · tech_connector/game_engine/integration/dcc_execution_service.py:296

_signature_for_callable

def _signature_for_callable(callable_name: str, context: RequestContext) -> dict[str, Any]

module function · internal · tech_connector/game_engine/integration/dcc_execution_service.py:307

_required_args_from_signature

def _required_args_from_signature(signature: str) -> list[str]

module function · internal · tech_connector/game_engine/integration/dcc_execution_service.py:348

build_dcc_execution_request

def build_dcc_execution_request(decision: dict, context: RequestContext) -> DccExecutionRequest

module function · public name · tech_connector/game_engine/integration/dcc_execution_service.py:366

WindowDccExecutionAdapter.check_capabilities

def WindowDccExecutionAdapter.check_capabilities(self, request: DccExecutionRequest, context: RequestContext) -> CapabilityCheckResult

class method · public name · tech_connector/game_engine/integration/dcc_execution_service.py:530

WindowDccExecutionAdapter.preview

def WindowDccExecutionAdapter.preview(self, request: DccExecutionRequest, context: RequestContext) -> DccDispatchResult

class method · public name · tech_connector/game_engine/integration/dcc_execution_service.py:546

WindowDccExecutionAdapter.query

def WindowDccExecutionAdapter.query(self, request: DccExecutionRequest, context: RequestContext) -> DccDispatchResult

class method · public name · tech_connector/game_engine/integration/dcc_execution_service.py:566

WindowDccExecutionAdapter.execute

def WindowDccExecutionAdapter.execute(self, request: DccExecutionRequest, context: RequestContext) -> DccDispatchResult

class method · public name · tech_connector/game_engine/integration/dcc_execution_service.py:587

WindowDccExecutionAdapter._query_method_name

def WindowDccExecutionAdapter._query_method_name(self, request: DccExecutionRequest) -> str

class method · internal · tech_connector/game_engine/integration/dcc_execution_service.py:608

MayaExecutionAdapter._execute_maya_code

def MayaExecutionAdapter._execute_maya_code(self, bridge: Any, code: str, request: DccExecutionRequest, timeout: float) -> tuple[bool, Any]

class method · internal · tech_connector/game_engine/integration/dcc_execution_service.py:618

MayaExecutionAdapter.check_capabilities

def MayaExecutionAdapter.check_capabilities(self, request: DccExecutionRequest, context: RequestContext) -> CapabilityCheckResult

class method · public name · tech_connector/game_engine/integration/dcc_execution_service.py:633

MayaExecutionAdapter.query

def MayaExecutionAdapter.query(self, request: DccExecutionRequest, context: RequestContext) -> DccDispatchResult

class method · public name · tech_connector/game_engine/integration/dcc_execution_service.py:678

MayaExecutionAdapter.execute

def MayaExecutionAdapter.execute(self, request: DccExecutionRequest, context: RequestContext) -> DccDispatchResult

class method · public name · tech_connector/game_engine/integration/dcc_execution_service.py:695

MayaExecutionAdapter._execute_known_maya_operation

def MayaExecutionAdapter._execute_known_maya_operation(self, operation_key: str, request: DccExecutionRequest, context: RequestContext) -> DccDispatchResult | None

class method · internal · tech_connector/game_engine/integration/dcc_execution_service.py:718

MayaExecutionAdapter._preflight_maya_object_targets

def MayaExecutionAdapter._preflight_maya_object_targets(self, operation_key: str, params: dict[str, Any], request: DccExecutionRequest, bridge: Any) -> DccDispatchResult | None

class method · internal · tech_connector/game_engine/integration/dcc_execution_service.py:809

MayaExecutionAdapter._query_maya_joints

def MayaExecutionAdapter._query_maya_joints(self, request: DccExecutionRequest, context: RequestContext) -> DccDispatchResult

class method · internal · tech_connector/game_engine/integration/dcc_execution_service.py:870

MayaExecutionAdapter._query_maya_ls

def MayaExecutionAdapter._query_maya_ls(self, request: DccExecutionRequest, context: RequestContext) -> DccDispatchResult

class method · internal · tech_connector/game_engine/integration/dcc_execution_service.py:904

MayaExecutionAdapter._query_maya_selection_direct

def MayaExecutionAdapter._query_maya_selection_direct(self, request: DccExecutionRequest) -> DccDispatchResult

class method · internal · tech_connector/game_engine/integration/dcc_execution_service.py:1008

MayaExecutionAdapter._query_maya_scene_direct

def MayaExecutionAdapter._query_maya_scene_direct(self, request: DccExecutionRequest) -> DccDispatchResult

class method · internal · tech_connector/game_engine/integration/dcc_execution_service.py:1012

BlenderExecutionAdapter.execute

def BlenderExecutionAdapter.execute(self, request: DccExecutionRequest, context: RequestContext) -> DccDispatchResult

class method · public name · tech_connector/game_engine/integration/dcc_execution_service.py:1064

BlenderExecutionAdapter._execute_known_blender_operation

def BlenderExecutionAdapter._execute_known_blender_operation(self, operation_key: str, request: DccExecutionRequest, context: RequestContext) -> DccDispatchResult | None

class method · internal · tech_connector/game_engine/integration/dcc_execution_service.py:1087

UnrealExecutionAdapter.check_capabilities

def UnrealExecutionAdapter.check_capabilities(self, request: DccExecutionRequest, context: RequestContext) -> CapabilityCheckResult

class method · public name · tech_connector/game_engine/integration/dcc_execution_service.py:1153

UnrealExecutionAdapter.query

def UnrealExecutionAdapter.query(self, request: DccExecutionRequest, context: RequestContext) -> DccDispatchResult

class method · public name · tech_connector/game_engine/integration/dcc_execution_service.py:1172

UnrealExecutionAdapter.preview

def UnrealExecutionAdapter.preview(self, request: DccExecutionRequest, context: RequestContext) -> DccDispatchResult

class method · public name · tech_connector/game_engine/integration/dcc_execution_service.py:1204

UnrealExecutionAdapter._execute_project_inspection_query

def UnrealExecutionAdapter._execute_project_inspection_query(self, request: DccExecutionRequest, context: RequestContext) -> DccDispatchResult | None

class method · internal · tech_connector/game_engine/integration/dcc_execution_service.py:1211

UnrealExecutionAdapter._execute_query_preset

def UnrealExecutionAdapter._execute_query_preset(self, request: DccExecutionRequest, context: RequestContext) -> DccDispatchResult | None

class method · internal · tech_connector/game_engine/integration/dcc_execution_service.py:1240

UnrealExecutionAdapter.execute

def UnrealExecutionAdapter.execute(self, request: DccExecutionRequest, context: RequestContext) -> DccDispatchResult

class method · public name · tech_connector/game_engine/integration/dcc_execution_service.py:1270

UnrealExecutionAdapter._execute_unreal_graph_request

def UnrealExecutionAdapter._execute_unreal_graph_request(self, request: DccExecutionRequest, context: RequestContext) -> DccDispatchResult | None

class method · internal · tech_connector/game_engine/integration/dcc_execution_service.py:1302

UnrealExecutionAdapter._execute_known_unreal_operation

def UnrealExecutionAdapter._execute_known_unreal_operation(self, operation_key: str, request: DccExecutionRequest, context: RequestContext) -> DccDispatchResult | None

class method · internal · tech_connector/game_engine/integration/dcc_execution_service.py:1473

UnrealExecutionAdapter._unreal_bridge

def UnrealExecutionAdapter._unreal_bridge(self) -> Any | None

class method · internal · tech_connector/game_engine/integration/dcc_execution_service.py:1566

UnrealExecutionAdapter._run_unreal_python

def UnrealExecutionAdapter._run_unreal_python(self, source: str, request: DccExecutionRequest) -> tuple[bool, Any]

class method · internal · tech_connector/game_engine/integration/dcc_execution_service.py:1574

UnrealExecutionAdapter._query_unreal_selection_direct

def UnrealExecutionAdapter._query_unreal_selection_direct(self, request: DccExecutionRequest) -> DccDispatchResult

class method · internal · tech_connector/game_engine/integration/dcc_execution_service.py:1586

UnrealExecutionAdapter._execute_unreal_project_snapshot_direct

def UnrealExecutionAdapter._execute_unreal_project_snapshot_direct(self, request: DccExecutionRequest) -> DccDispatchResult

class method · internal · tech_connector/game_engine/integration/dcc_execution_service.py:1626

UnrealExecutionAdapter._execute_known_unreal_operation_direct

def UnrealExecutionAdapter._execute_known_unreal_operation_direct(self, operation_key: str, request: DccExecutionRequest) -> DccDispatchResult | None

class method · internal · tech_connector/game_engine/integration/dcc_execution_service.py:1677

UnrealExecutionAdapter._execute_unreal_python_callable

def UnrealExecutionAdapter._execute_unreal_python_callable(self, request: DccExecutionRequest, context: RequestContext) -> DccDispatchResult | None

class method · internal · tech_connector/game_engine/integration/dcc_execution_service.py:1755

SubstancePainterExecutionAdapter.execute

def SubstancePainterExecutionAdapter.execute(self, request: DccExecutionRequest, context: RequestContext) -> DccDispatchResult

class method · public name · tech_connector/game_engine/integration/dcc_execution_service.py:1813

SubstancePainterExecutionAdapter._execute_known_painter_operation

def SubstancePainterExecutionAdapter._execute_known_painter_operation(self, operation_key: str, request: DccExecutionRequest, context: RequestContext) -> DccDispatchResult | None

class method · internal · tech_connector/game_engine/integration/dcc_execution_service.py:1836

MotionBuilderExecutionAdapter.execute

def MotionBuilderExecutionAdapter.execute(self, request: DccExecutionRequest, context: RequestContext) -> DccDispatchResult

class method · public name · tech_connector/game_engine/integration/dcc_execution_service.py:1896

MotionBuilderExecutionAdapter._execute_known_mobu_operation

def MotionBuilderExecutionAdapter._execute_known_mobu_operation(self, operation_key: str, request: DccExecutionRequest, context: RequestContext) -> DccDispatchResult | None

class method · internal · tech_connector/game_engine/integration/dcc_execution_service.py:1919

UnityExecutionAdapter.execute

def UnityExecutionAdapter.execute(self, request: DccExecutionRequest, context: RequestContext) -> DccDispatchResult

class method · public name · tech_connector/game_engine/integration/dcc_execution_service.py:1979

UnityExecutionAdapter._execute_known_unity_operation

def UnityExecutionAdapter._execute_known_unity_operation(self, operation_key: str, request: DccExecutionRequest, context: RequestContext) -> DccDispatchResult | None

class method · internal · tech_connector/game_engine/integration/dcc_execution_service.py:2002

default_dcc_execution_adapters

def default_dcc_execution_adapters() -> dict[str, DccExecutionAdapter]

module function · public name · tech_connector/game_engine/integration/dcc_execution_service.py:2064

_format_unreal_user_message

def _format_unreal_user_message(raw: Any) -> str

module function · internal · tech_connector/game_engine/integration/dcc_execution_service.py:2112

_is_unreal_project_inspection_prompt

def _is_unreal_project_inspection_prompt(prompt: str) -> bool

module function · internal · tech_connector/game_engine/integration/dcc_execution_service.py:2152

_format_unreal_project_inspection_report

def _format_unreal_project_inspection_report(raw: Any, *, prompt: str, ok: bool) -> str

module function · internal · tech_connector/game_engine/integration/dcc_execution_service.py:2163

_coerce_dict

def _coerce_dict(raw: Any) -> dict[str, Any]

module function · internal · tech_connector/game_engine/integration/dcc_execution_service.py:2223

_inspection_terms_found

def _inspection_terms_found(data: dict[str, Any], prompt: str) -> list[str]

module function · internal · tech_connector/game_engine/integration/dcc_execution_service.py:2237

_format_unreal_operation_report

def _format_unreal_operation_report(raw: Any, *, operation: str, ok: bool, request: dict[str, Any], detail_text: str) -> str

module function · internal · tech_connector/game_engine/integration/dcc_execution_service.py:2248

SubstanceBridgeService.__init__

def SubstanceBridgeService.__init__(self, host: str='127.0.0.1', port: int=6004)

class method · internal · tech_connector/game_engine/integration/dcc_execution_service.py:2266

SubstanceBridgeService.execute_substance_script

def SubstanceBridgeService.execute_substance_script(self, script_code: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/integration/dcc_execution_service.py:2270

SubstanceBridgeService.apply_color_palette_swatches

def SubstanceBridgeService.apply_color_palette_swatches(self, swatches: list[dict[str, str]]) -> dict[str, Any]

class method · public name · tech_connector/game_engine/integration/dcc_execution_service.py:2286

SubstanceBridgeService.export_textures_to_unreal

def SubstanceBridgeService.export_textures_to_unreal(self, export_preset: str='Unreal Engine 5 (Packed)', output_path: str='') -> dict[str, Any]

class method · public name · tech_connector/game_engine/integration/dcc_execution_service.py:2290

PhotoshopBridgeService.__init__

def PhotoshopBridgeService.__init__(self, host: str='127.0.0.1', port: int=8042)

class method · internal · tech_connector/game_engine/integration/dcc_execution_service.py:2298

PhotoshopBridgeService.execute_jsx

def PhotoshopBridgeService.execute_jsx(self, jsx_script: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/integration/dcc_execution_service.py:2302

PhotoshopBridgeService.import_swatches_palette

def PhotoshopBridgeService.import_swatches_palette(self, hex_colors: list[str]) -> dict[str, Any]

class method · public name · tech_connector/game_engine/integration/dcc_execution_service.py:2305

GimpBridgeService.__init__

def GimpBridgeService.__init__(self, host: str='127.0.0.1', port: int=10008)

class method · internal · tech_connector/game_engine/integration/dcc_execution_service.py:2313

GimpBridgeService.execute_python_fu

def GimpBridgeService.execute_python_fu(self, script_code: str) -> dict[str, Any]

class method · public name · tech_connector/game_engine/integration/dcc_execution_service.py:2317

GimpBridgeService.convert_image_format_batch

def GimpBridgeService.convert_image_format_batch(self, input_files: list[str], target_format: str='tga') -> dict[str, Any]

class method · public name · tech_connector/game_engine/integration/dcc_execution_service.py:2320

tech_connector.game_engine.integration.dcc_host_qualification_service

DccHostQualificationReceipt.to_dict

def DccHostQualificationReceipt.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/integration/dcc_host_qualification_service.py:72

probe_dcc_host

def probe_dcc_host(host: str, *, bridge: Any | None=None, requested_ports: tuple[int, ...]=(), timeout: float=3.0, max_sessions: int=16, install_recovery_verified: bool=False, identity_latency_budget_ms: float=1000.0, identity_latency_samples: int=3) -> DccHostQualificationReceipt

module function · public name · tech_connector/game_engine/integration/dcc_host_qualification_service.py:146

validate_host_qualification_receipt

def validate_host_qualification_receipt(host: str, receipt: DccHostQualificationReceipt | dict[str, Any] | None, *, now: datetime | None=None, max_age_seconds: float=DEFAULT_QUALIFICATION_MAX_AGE_SECONDS, bridge: Any | None=None, require_live_sessions: bool=True, live_timeout: float=1.0) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/dcc_host_qualification_service.py:401

_qualification_session_identity

def _qualification_session_identity(row: dict[str, Any]) -> str

module function · internal · tech_connector/game_engine/integration/dcc_host_qualification_service.py:503

_json_value

def _json_value(value: Any) -> Any

module function · internal · tech_connector/game_engine/integration/dcc_host_qualification_service.py:507

qualification_ledger

def qualification_ledger(path: str | Path | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/dcc_host_qualification_service.py:517

store_qualification_receipt

def store_qualification_receipt(receipt: DccHostQualificationReceipt, path: str | Path | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/dcc_host_qualification_service.py:538

bridge_for_host

def bridge_for_host(host: str) -> Any

module function · public name · tech_connector/game_engine/integration/dcc_host_qualification_service.py:563

tech_connector.game_engine.integration.dcc_operation_service

dcc_operation_registry

def dcc_operation_registry(host: str) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/dcc_operation_service.py:966

Return the authoritative operation registry for a supported host.

registered_dcc_operation

def registered_dcc_operation(host: str, operation: str) -> Any | None

module function · public name · tech_connector/game_engine/integration/dcc_operation_service.py:993

Resolve an operation only when it exists in an authoritative registry.

resolve_registered_dcc_operation_key

def resolve_registered_dcc_operation_key(host: str, operation: str) -> str

module function · public name · tech_connector/game_engine/integration/dcc_operation_service.py:998

Return an exact registry key for an exact or unique leaf-name match. Planner models sometimes shorten a known key such as ``scene.move`` to ``move``. A unique registry leaf is safe to canonicalize; ambiguous or unknown names remain unresolv

build_dcc_capability_gap_plan

def build_dcc_capability_gap_plan(host: str, requested_operation: str, *, original_request: str='') -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/dcc_operation_service.py:1016

Describe the required acquisition path for an unregistered DCC call.

detect_dcc_host

def detect_dcc_host(text: str) -> str

module function · public name · tech_connector/game_engine/integration/dcc_operation_service.py:1188

is_dcc_prototype_request

def is_dcc_prototype_request(text: str, host: str='') -> bool

module function · public name · tech_connector/game_engine/integration/dcc_operation_service.py:1196

is_dcc_debug_request

def is_dcc_debug_request(text: str, host: str='') -> bool

module function · public name · tech_connector/game_engine/integration/dcc_operation_service.py:1213

infer_dcc_template

def infer_dcc_template(text: str) -> str

module function · public name · tech_connector/game_engine/integration/dcc_operation_service.py:1222

build_dcc_prototype_params

def build_dcc_prototype_params(host: str, text: str, context: str='') -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/dcc_operation_service.py:1237

attach_operation_context

def attach_operation_context(params: dict[str, Any], *, previous_work_context: str='', research_mode: dict[str, Any] | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/dcc_operation_service.py:1270

Attach optional shared planning context to a DCC operation payload.

build_dcc_debug_params

def build_dcc_debug_params(host: str, text: str, context: str='') -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/dcc_operation_service.py:1285

dcc_operation_function

def dcc_operation_function(host: str, mode: str) -> str

module function · public name · tech_connector/game_engine/integration/dcc_operation_service.py:1309

is_painter_multi_operation_prompt

def is_painter_multi_operation_prompt(prompt: str) -> bool

module function · public name · tech_connector/game_engine/integration/dcc_operation_service.py:1315

Recognize an ordered Painter authoring request before single-op routing.

is_blender_process_export_prompt

def is_blender_process_export_prompt(prompt: str) -> bool

module function · public name · tech_connector/game_engine/integration/dcc_operation_service.py:1326

Recognize a scene-preparation plus FBX-export request in Blender.

dcc_prompt_to_operation

def dcc_prompt_to_operation(host: str, text: str, *, decision: dict[str, Any] | None=None, problem_formulation: dict[str, Any] | None=None) -> str | None

module function · public name · tech_connector/game_engine/integration/dcc_operation_service.py:1337

Resolve an explicit DCC operation only after problem formulation. Source-code questions such as "what file creates rig" must never become a live rig-creation operation merely because they contain the words "create rig".

build_dcc_operation_params

def build_dcc_operation_params(host: str, operation: str, text: str) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/dcc_operation_service.py:1594

_strip_quotes

def _strip_quotes(value: str) -> str

module function · internal · tech_connector/game_engine/integration/dcc_operation_service.py:1823

_split_maya_names

def _split_maya_names(raw: str) -> list[str]

module function · internal · tech_connector/game_engine/integration/dcc_operation_service.py:1827

_extract_maya_plugs

def _extract_maya_plugs(text: str) -> list[str]

module function · internal · tech_connector/game_engine/integration/dcc_operation_service.py:1854

_extract_json_tail

def _extract_json_tail(text: str) -> dict[str, Any]

module function · internal · tech_connector/game_engine/integration/dcc_operation_service.py:1858

_labeled_maya_file

def _labeled_maya_file(text: str, label: str, suffixes: str) -> str | None

module function · internal · tech_connector/game_engine/integration/dcc_operation_service.py:1870

Extract only a file explicitly paired with a role; never guess by path order.

_maya_file_as_role

def _maya_file_as_role(text: str, label: str, suffixes: str) -> str | None

module function · internal · tech_connector/game_engine/integration/dcc_operation_service.py:1883

Accept an explicit `path.fbx as target/source HIK` role, if unambiguous.

_parse_scalar

def _parse_scalar(value: str) -> Any

module function · internal · tech_connector/game_engine/integration/dcc_operation_service.py:1895

_extract_arg_list

def _extract_arg_list(text: str) -> list[Any]

module function · internal · tech_connector/game_engine/integration/dcc_operation_service.py:1906

_extract_kwargs

def _extract_kwargs(text: str) -> dict[str, Any]

module function · internal · tech_connector/game_engine/integration/dcc_operation_service.py:1918

_extract_function_path

def _extract_function_path(text: str) -> str

module function · internal · tech_connector/game_engine/integration/dcc_operation_service.py:1934

_extract_color

def _extract_color(text: str) -> Any

module function · internal · tech_connector/game_engine/integration/dcc_operation_service.py:1953

_word_in_text

def _word_in_text(text: str, word: str) -> bool

module function · internal · tech_connector/game_engine/integration/dcc_operation_service.py:1983

_build_maya_operation_params

def _build_maya_operation_params(operation: str, text: str) -> dict[str, Any]

module function · internal · tech_connector/game_engine/integration/dcc_operation_service.py:1987

maya_operation_code

def maya_operation_code(operation: str, params: dict[str, Any]) -> str

module function · public name · tech_connector/game_engine/integration/dcc_operation_service.py:2228

Generate reviewed Maya Python for built-in Tech Connector Maya operations.

_build_blender_operation_params

def _build_blender_operation_params(operation: str, text: str) -> dict[str, Any]

module function · internal · tech_connector/game_engine/integration/dcc_operation_service.py:2702

_split_blender_names

def _split_blender_names(raw: str) -> list[str]

module function · internal · tech_connector/game_engine/integration/dcc_operation_service.py:2756

_extract_blender_function_path

def _extract_blender_function_path(text: str) -> str

module function · internal · tech_connector/game_engine/integration/dcc_operation_service.py:2780

blender_operation_code

def blender_operation_code(operation: str, params: dict[str, Any]) -> str

module function · public name · tech_connector/game_engine/integration/dcc_operation_service.py:2785

Generate reviewed Blender Python for built-in Tech Connector Blender operations.

tech_connector.game_engine.integration.dcc_production_workflow_service

DccWorkflowReceipt.to_dict

def DccWorkflowReceipt.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/integration/dcc_production_workflow_service.py:85

_step

def _step(operation: str, label: str, params: dict[str, Any] | None=None, **kwargs: Any) -> DccWorkflowStep

module function · internal · tech_connector/game_engine/integration/dcc_production_workflow_service.py:89

validate_workflow_catalog

def validate_workflow_catalog() -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/dcc_production_workflow_service.py:351

plan_dcc_workflow

def plan_dcc_workflow(workflow_key: str, *, workspace: str | Path, step_inputs: dict[str, dict[str, Any]] | None=None, session_port: int | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/dcc_production_workflow_service.py:392

execute_dcc_workflow

def execute_dcc_workflow(workflow_key: str, *, workspace: str | Path, step_inputs: dict[str, dict[str, Any]] | None=None, session_port: int | None=None, confirm_mutating: bool=False, delegated_step_receipts: dict[str, dict[str, Any]] | None=None, executor: Callable[[str, str, str, dict[str, Any], int | None], Any] | None=None, cancel_token: Any=None, progress_callback: Callable[[dict[str, Any]], None] | None=None) -> DccWorkflowReceipt

module function · public name · tech_connector/game_engine/integration/dcc_production_workflow_service.py:441

validate_workflow_receipt

def validate_workflow_receipt(workflow_key: str, receipt: DccWorkflowReceipt | dict[str, Any] | None, *, now: datetime | None=None, max_age_seconds: float=DEFAULT_WORKFLOW_RECEIPT_MAX_AGE_SECONDS, bridge: Any | None=None, check_artifacts: bool=True) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/dcc_production_workflow_service.py:679

workflow_receipt_ledger

def workflow_receipt_ledger(path: str | Path | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/dcc_production_workflow_service.py:787

Load the durable workflow receipt ledger without trusting malformed rows.

store_workflow_receipt

def store_workflow_receipt(receipt: DccWorkflowReceipt | dict[str, Any], path: str | Path | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/dcc_production_workflow_service.py:811

Atomically retain the latest receipt for a workflow for launch audits.

_workflow_json_value

def _workflow_json_value(value: Any) -> Any

module function · internal · tech_connector/game_engine/integration/dcc_production_workflow_service.py:843

resolve_workflow_session_port

def resolve_workflow_session_port(host: str, requested_port: int | None=None) -> int | None

module function · public name · tech_connector/game_engine/integration/dcc_production_workflow_service.py:853

attach_workflow_receipt_to_scene

def attach_workflow_receipt_to_scene(document: FederatedSceneDocument, receipt: DccWorkflowReceipt | dict[str, Any], *, source_path: str='', session_key: str='', executable_hint: str='') -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/dcc_production_workflow_service.py:869

_execute_step

def _execute_step(host: str, operation: str, callable_name: str, params: dict[str, Any], session_port: int | None) -> Any

module function · internal · tech_connector/game_engine/integration/dcc_production_workflow_service.py:920

_resolve_workspace_tokens

def _resolve_workspace_tokens(value: Any, workspace: str) -> Any

module function · internal · tech_connector/game_engine/integration/dcc_production_workflow_service.py:926

_normalize_execution_result

def _normalize_execution_result(raw: Any) -> tuple[bool, dict[str, Any]]

module function · internal · tech_connector/game_engine/integration/dcc_production_workflow_service.py:939

tech_connector.game_engine.integration.dcc_receipt_integrity_service

stable_receipt_digest

def stable_receipt_digest(value: Any) -> str

module function · public name · tech_connector/game_engine/integration/dcc_receipt_integrity_service.py:17

receipt_environment_fingerprint

def receipt_environment_fingerprint() -> str

module function · public name · tech_connector/game_engine/integration/dcc_receipt_integrity_service.py:22

bridge_implementation_fingerprint

def bridge_implementation_fingerprint(bridge: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/dcc_receipt_integrity_service.py:30

safe_source_fingerprint

def safe_source_fingerprint(path: str) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/dcc_receipt_integrity_service.py:41

parse_receipt_datetime

def parse_receipt_datetime(value: Any) -> datetime | None

module function · public name · tech_connector/game_engine/integration/dcc_receipt_integrity_service.py:50

tech_connector.game_engine.integration.dcc_release_qualification_runner

qualify_dcc_release_host

def qualify_dcc_release_host(host: str, *, workspace: str | Path, session_port: int | None=None, confirm_mutating: bool=False, install_recovery_verified: bool=False, bridge: Any | None=None, progress_callback: Callable[[dict[str, Any]], None] | None=None, cancellation_event: threading.Event | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/dcc_release_qualification_runner.py:35

Collect every release receipt for one host against one pinned session. Host identity and source parity are read-only. Production workflows run only when ``confirm_mutating`` is explicit, and every stage retains its normal signed/fingerprint

_cancelled_result

def _cancelled_result(host: str, events: list[dict[str, Any]], message: str) -> dict[str, Any]

module function · internal · tech_connector/game_engine/integration/dcc_release_qualification_runner.py:176

tech_connector.game_engine.integration.dcc_release_readiness_service

audit_dcc_release_readiness

def audit_dcc_release_readiness(*, qualification_receipts: dict[str, Any] | None=None, workflow_receipts: dict[str, Any] | None=None, source_parity_receipts: dict[str, Any] | None=None, source_parity_max_age_seconds: float=DEFAULT_SOURCE_PARITY_MAX_AGE_SECONDS, verify_live_source_sessions: bool=True, qualification_max_age_seconds: float=DEFAULT_QUALIFICATION_MAX_AGE_SECONDS, verify_live_host_sessions: bool=True, workflow_receipt_max_age_seconds: float=DEFAULT_WORKFLOW_RECEIPT_MAX_AGE_SECONDS) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/dcc_release_readiness_service.py:32

_workflow_receipt

def _workflow_receipt(value: Any) -> dict[str, Any]

module function · internal · tech_connector/game_engine/integration/dcc_release_readiness_service.py:213

_nested_receipt

def _nested_receipt(value: Any) -> dict[str, Any]

module function · internal · tech_connector/game_engine/integration/dcc_release_readiness_service.py:219

tech_connector.game_engine.integration.dcc_scene_restoration_service

normalize_restore_policy

def normalize_restore_policy(value: str | None) -> str

module function · public name · tech_connector/game_engine/integration/dcc_scene_restoration_service.py:35

discover_dcc_executable

def discover_dcc_executable(provider: str, executable_hint: str='') -> str

module function · public name · tech_connector/game_engine/integration/dcc_scene_restoration_service.py:40

dcc_launch_command

def dcc_launch_command(provider: str, executable_path: str, source_path: str) -> list[str]

module function · public name · tech_connector/game_engine/integration/dcc_scene_restoration_service.py:81

launch_dcc_source

def launch_dcc_source(source: dict[str, Any], *, popen: Callable[..., subprocess.Popen[Any]]=subprocess.Popen) -> DccRestoreLaunch

module function · public name · tech_connector/game_engine/integration/dcc_scene_restoration_service.py:102

wait_for_launched_session

def wait_for_launched_session(launch: DccRestoreLaunch, discover_sessions: Callable[[], list[dict[str, Any]]], *, cancel_event: threading.Event | None=None, timeout: float=60.0, poll_seconds: float=0.5) -> dict[str, Any] | None

module function · public name · tech_connector/game_engine/integration/dcc_scene_restoration_service.py:127

dcc_session_state_restore_code

def dcc_session_state_restore_code(provider: str, state: dict[str, Any]) -> str

module function · public name · tech_connector/game_engine/integration/dcc_scene_restoration_service.py:160

Build bounded host-local code for portable camera/frame restoration.

restore_scene_sources

def restore_scene_sources(sources: list[dict[str, Any]], *, policy: str, discover_sessions: Callable[[], list[dict[str, Any]]], open_source: Callable[[str, str], tuple[bool, str]], capture_snapshot: Callable[[str], tuple[bool, Any]] | None=None, apply_session_state: Callable[[str, dict[str, Any]], tuple[bool, str]] | None=None, launch_source: Callable[[dict[str, Any]], DccRestoreLaunch]=launch_dcc_source, cancel_event: threading.Event | None=None, launch_timeout: float=60.0) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/dcc_scene_restoration_service.py:289

Reattach exact sessions, safely reuse idle sessions, or launch a separate DCC.

tech_connector.game_engine.integration.dcc_smart_search_service

SmartSearchCandidate.continues

def SmartSearchCandidate.continues(self) -> bool

class method · public name · tech_connector/game_engine/integration/dcc_smart_search_service.py:69

Whether insertion should immediately continue hierarchical completion.

SmartSearchCandidate.display

def SmartSearchCandidate.display(self) -> str

class method · public name · tech_connector/game_engine/integration/dcc_smart_search_service.py:74

_normalized_package_dirs

def _normalized_package_dirs(package_dirs: Sequence[Path] | None) -> dict[str, Path]

module function · internal · tech_connector/game_engine/integration/dcc_smart_search_service.py:80

_host_for_name

def _host_for_name(value: str) -> str

module function · internal · tech_connector/game_engine/integration/dcc_smart_search_service.py:87

_matches

def _matches(query: str, *values: str) -> bool

module function · internal · tech_connector/game_engine/integration/dcc_smart_search_service.py:100

_tool_path_matches

def _tool_path_matches(query: str, *values: str) -> bool

module function · internal · tech_connector/game_engine/integration/dcc_smart_search_service.py:107

_same_tool_reference

def _same_tool_reference(left: str, right: str) -> bool

module function · internal · tech_connector/game_engine/integration/dcc_smart_search_service.py:122

_query_allows_private_symbols

def _query_allows_private_symbols(query: str) -> bool

module function · internal · tech_connector/game_engine/integration/dcc_smart_search_service.py:128

_module_for_file

def _module_for_file(package: str, rel_path: str, module: str) -> str

module function · internal · tech_connector/game_engine/integration/dcc_smart_search_service.py:132

_select_symbol_source_columns

def _select_symbol_source_columns(connection: sqlite3.Connection) -> str

module function · internal · tech_connector/game_engine/integration/dcc_smart_search_service.py:145

_class_base_text

def _class_base_text(source: str) -> str

module function · internal · tech_connector/game_engine/integration/dcc_smart_search_service.py:155

_package_class_type_candidates

def _package_class_type_candidates(packages: Sequence[str], type_query: str, *, db_path: Path, limit: int, scoped: bool) -> list[SmartSearchCandidate]

module function · internal · tech_connector/game_engine/integration/dcc_smart_search_service.py:160

Read indexed classes whose base/type text matches ``type_query``.

_package_function_candidates

def _package_function_candidates(package: str, query: str, *, db_path: Path, limit: int) -> list[SmartSearchCandidate]

module function · internal · tech_connector/game_engine/integration/dcc_smart_search_service.py:235

Read package callables from the persistent project index without rescanning.

_application_candidates

def _application_candidates(host: str, query: str, *, package_dirs: dict[str, Path], db_path: Path, limit: int) -> list[SmartSearchCandidate]

module function · internal · tech_connector/game_engine/integration/dcc_smart_search_service.py:336

_app_context_for_name

def _app_context_for_name(value: str)

module function · internal · tech_connector/game_engine/integration/dcc_smart_search_service.py:391

Resolve non-DCC applications through the shared application registry.

_connection_detail

def _connection_detail(app_id: str, settings: dict[str, Any] | None) -> tuple[bool | None, str]

module function · internal · tech_connector/game_engine/integration/dcc_smart_search_service.py:402

Return a sanitized connection summary without ever exposing credentials.

_safe_reference_segment

def _safe_reference_segment(value: str) -> str

module function · internal · tech_connector/game_engine/integration/dcc_smart_search_service.py:425

_connected_application_candidates

def _connected_application_candidates(context: Any, query: str, *, settings: dict[str, Any] | None, limit: int) -> list[SmartSearchCandidate]

module function · internal · tech_connector/game_engine/integration/dcc_smart_search_service.py:431

Build target completions for messaging, ops, and installed integrations.

_connected_application_roots

def _connected_application_roots(query: str, *, settings: dict[str, Any] | None) -> list[SmartSearchCandidate]

module function · internal · tech_connector/game_engine/integration/dcc_smart_search_service.py:531

_global_package_function_candidates

def _global_package_function_candidates(query: str, *, package_dirs: dict[str, Path], db_path: Path, limit: int) -> list[SmartSearchCandidate]

module function · internal · tech_connector/game_engine/integration/dcc_smart_search_service.py:569

smart_search_suggestions

def smart_search_suggestions(query: str, *, active_hosts: Iterable[str]=(), package_dirs: Sequence[Path] | None=None, db_path: Path | None=None, limit: int=20, settings: dict[str, Any] | None=None) -> list[SmartSearchCandidate]

module function · public name · tech_connector/game_engine/integration/dcc_smart_search_service.py:610

Return hierarchical suggestions for text following ``@``. ``Application.`` searches registered host operations and associated indexed tools. ``package.`` searches indexed Python modules/functions beneath that package. Slash package referenc

active_hosts_from_context

def active_hosts_from_context(context: str) -> tuple[str, ...]

module function · public name · tech_connector/game_engine/integration/dcc_smart_search_service.py:754

Extract active hosts from the command router's cached context string.

smart_search_context_block

def smart_search_context_block(text: str, *, db_path: Path | None=None, settings: dict[str, Any] | None=None) -> str

module function · public name · tech_connector/game_engine/integration/dcc_smart_search_service.py:761

Resolve selected Smart Search references into deterministic prompt evidence.

tech_connector.game_engine.integration.dcc_source_parity_qualification_service

qualify_dcc_source_parity

def qualify_dcc_source_parity(host: str, port: int, *, bridge: Any | None=None, timeout: float=5.0, latency_budget_ms: float=5000.0, object_limit: int=24) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/dcc_source_parity_qualification_service.py:42

Prove a bounded snapshot is exact-session, role-appropriate, and non-mutating.

validate_source_parity_receipt

def validate_source_parity_receipt(host: str, receipt: dict[str, Any] | None, *, now: datetime | None=None, max_age_seconds: float=DEFAULT_SOURCE_PARITY_MAX_AGE_SECONDS, bridge: Any | None=None, check_source: bool=True, require_live_session: bool=True, live_timeout: float=1.0) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/dcc_source_parity_qualification_service.py:203

Validate receipt integrity, freshness, environment, bridge, and source revision.

qualify_available_dcc_sources

def qualify_available_dcc_sources(*, hosts: list[str] | tuple[str, ...] | None=None, session_ports: dict[str, int] | None=None, bridge_factory=None, timeout: float=5.0, latency_budget_ms: float=5000.0, object_limit: int=24, persist: bool=False, ledger_path: str | Path | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/dcc_source_parity_qualification_service.py:344

Qualify available exact sessions without guessing among multiple endpoints.

source_parity_ledger

def source_parity_ledger(path: str | Path | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/dcc_source_parity_qualification_service.py:420

store_source_parity_receipt

def store_source_parity_receipt(receipt: dict[str, Any], path: str | Path | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/dcc_source_parity_qualification_service.py:442

_snapshot_result

def _snapshot_result(result: Any) -> tuple[bool, Any]

module function · internal · tech_connector/game_engine/integration/dcc_source_parity_qualification_service.py:472

_provider_key

def _provider_key(value: Any) -> str

module function · internal · tech_connector/game_engine/integration/dcc_source_parity_qualification_service.py:480

_session_identity

def _session_identity(row: dict[str, Any]) -> str

module function · internal · tech_connector/game_engine/integration/dcc_source_parity_qualification_service.py:485

_scene_identity

def _scene_identity(row: dict[str, Any]) -> str

module function · internal · tech_connector/game_engine/integration/dcc_source_parity_qualification_service.py:491

_snapshot_matches_session

def _snapshot_matches_session(snapshot: dict[str, Any], session: dict[str, Any]) -> bool

module function · internal · tech_connector/game_engine/integration/dcc_source_parity_qualification_service.py:499

_observer_state

def _observer_state(row: dict[str, Any]) -> dict[str, Any]

module function · internal · tech_connector/game_engine/integration/dcc_source_parity_qualification_service.py:515

_changed_observer_state

def _changed_observer_state(before: dict[str, Any], after: dict[str, Any]) -> dict[str, dict[str, Any]]

module function · internal · tech_connector/game_engine/integration/dcc_source_parity_qualification_service.py:519

_role_evidence

def _role_evidence(host: str, snapshot: dict[str, Any], profile: dict[str, Any]) -> dict[str, Any]

module function · internal · tech_connector/game_engine/integration/dcc_source_parity_qualification_service.py:527

tech_connector.game_engine.integration.dcc_viewport_stream

window_description_states

def window_description_states(description: str) -> list[tuple[int, bool]]

module function · public name · tech_connector/game_engine/integration/dcc_viewport_stream.py:32

Return matching top-level Win32 window PIDs/states in enumeration order.

window_description_is_enabled

def window_description_is_enabled(description: str) -> bool | None

module function · public name · tech_connector/game_engine/integration/dcc_viewport_stream.py:61

window_description_score

def window_description_score(description: str, provider: str, scene: str='') -> int

module function · public name · tech_connector/game_engine/integration/dcc_viewport_stream.py:66

Rank a capturable app window against one bridge session.

estimate_viewport_crop

def estimate_viewport_crop(image: QImage, provider: str) -> QRectF | None

module function · public name · tech_connector/game_engine/integration/dcc_viewport_stream.py:87

Detect the central DCC viewport from strong dock/panel separator edges.

DccViewportStream.__init__

def DccViewportStream.__init__(self, parent: QObject | None=None, *, max_fps: float=30.0)

class method · internal · tech_connector/game_engine/integration/dcc_viewport_stream.py:148

DccViewportStream.active

def DccViewportStream.active(self) -> bool

class method · public name · tech_connector/game_engine/integration/dcc_viewport_stream.py:170

DccViewportStream.matching_window

def DccViewportStream.matching_window(provider: str, scene: str='', process_id: int=0) -> QCapturableWindow | None

class method · public name · tech_connector/game_engine/integration/dcc_viewport_stream.py:174

DccViewportStream.start

def DccViewportStream.start(self, provider: str, *, scene: str='', crop_rect: QRectF | None=None, process_id: int=0) -> bool

class method · public name · tech_connector/game_engine/integration/dcc_viewport_stream.py:201

DccViewportStream.stop

def DccViewportStream.stop(self) -> None

class method · public name · tech_connector/game_engine/integration/dcc_viewport_stream.py:238

DccViewportStream._verify_capture_started

def DccViewportStream._verify_capture_started(self, generation: int) -> None

class method · internal · tech_connector/game_engine/integration/dcc_viewport_stream.py:246

DccViewportStream._schedule_retry

def DccViewportStream._schedule_retry(self, generation: int) -> None

class method · internal · tech_connector/game_engine/integration/dcc_viewport_stream.py:255

DccViewportStream._retry_start

def DccViewportStream._retry_start(self, generation: int) -> None

class method · internal · tech_connector/game_engine/integration/dcc_viewport_stream.py:258

DccViewportStream._on_capture_error

def DccViewportStream._on_capture_error(self, *_args) -> None

class method · internal · tech_connector/game_engine/integration/dcc_viewport_stream.py:267

DccViewportStream._on_video_frame

def DccViewportStream._on_video_frame(self, frame: QVideoFrame) -> None

class method · internal · tech_connector/game_engine/integration/dcc_viewport_stream.py:272

tech_connector.game_engine.integration.developer_prompt_demo_qualification_service

_operation_sequence

def _operation_sequence(plan: dict[str, Any]) -> list[str]

module function · internal · tech_connector/game_engine/integration/developer_prompt_demo_qualification_service.py:257

_ordered_subsequence

def _ordered_subsequence(expected: tuple[str, ...], actual: list[str]) -> bool

module function · internal · tech_connector/game_engine/integration/developer_prompt_demo_qualification_service.py:265

_load_runtime_evidence

def _load_runtime_evidence(paths: tuple[str | Path, ...]) -> dict[str, dict[str, Any]]

module function · internal · tech_connector/game_engine/integration/developer_prompt_demo_qualification_service.py:273

Accept only complete, artifact-backed reports for matching demo cases.

qualify_developer_demo_prompts

def qualify_developer_demo_prompts(project_root: str | Path, *, output_path: str | Path | None=None, cases: tuple[DeveloperPromptCase, ...]=DEVELOPER_PROMPT_CASES, runtime_evidence_paths: tuple[str | Path, ...]=()) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/developer_prompt_demo_qualification_service.py:467

tech_connector.game_engine.integration.dynamic_pipeline_compiler_service

extract_explicit_operation_mentions

def extract_explicit_operation_mentions(prompt: str, hosts: list[str] | None=None) -> tuple[list[dict[str, Any]], list[str]]

module function · public name · tech_connector/game_engine/integration/dynamic_pipeline_compiler_service.py:43

Resolve every explicitly named operation/callable and report unresolved names.

_merge_explicit_contracts

def _merge_explicit_contracts(selected: list[OperationContract], mentions: list[dict[str, Any]], hosts: list[str]) -> list[OperationContract]

module function · internal · tech_connector/game_engine/integration/dynamic_pipeline_compiler_service.py:131

extract_ordered_hosts

def extract_ordered_hosts(prompt: str) -> list[str]

module function · public name · tech_connector/game_engine/integration/dynamic_pipeline_compiler_service.py:183

infer_pipeline_format

def infer_pipeline_format(prompt: str) -> str

module function · public name · tech_connector/game_engine/integration/dynamic_pipeline_compiler_service.py:215

infer_pipeline_subject

def infer_pipeline_subject(prompt: str) -> str

module function · public name · tech_connector/game_engine/integration/dynamic_pipeline_compiler_service.py:226

is_dynamic_transfer_request

def is_dynamic_transfer_request(prompt: str) -> bool

module function · public name · tech_connector/game_engine/integration/dynamic_pipeline_compiler_service.py:245

compile_delegated_painter_pipeline

def compile_delegated_painter_pipeline(prompt: str) -> dict[str, Any] | None

module function · public name · tech_connector/game_engine/integration/dynamic_pipeline_compiler_service.py:259

Fail closed for a single-host Painter workflow with a manual layer step. The registered smart-material callable deliberately does not mutate the layer stack. Generic symbol discovery must not turn its return dictionary into a fictional prod

_score_contract

def _score_contract(contract: OperationContract, prompt: str, subject: str) -> tuple[int, str]

module function · internal · tech_connector/game_engine/integration/dynamic_pipeline_compiler_service.py:386

_requested_post_import_contracts

def _requested_post_import_contracts(prompt: str, *, host: str, subject: str) -> list[OperationContract]

module function · internal · tech_connector/game_engine/integration/dynamic_pipeline_compiler_service.py:411

_operation_acquisition_gap

def _operation_acquisition_gap(contract: OperationContract, prompt: str) -> dict[str, Any]

module function · internal · tech_connector/game_engine/integration/dynamic_pipeline_compiler_service.py:495

_select_contract

def _select_contract(host: str, role: str, format_name: str, subject: str, prompt: str) -> OperationContract | None

module function · internal · tech_connector/game_engine/integration/dynamic_pipeline_compiler_service.py:599

_path_artifact

def _path_artifact(format_name: str) -> str

module function · internal · tech_connector/game_engine/integration/dynamic_pipeline_compiler_service.py:618

_artifact_compatible

def _artifact_compatible(required: str, available: str, format_name: str) -> bool

module function · internal · tech_connector/game_engine/integration/dynamic_pipeline_compiler_service.py:627

_best_available_artifact

def _best_available_artifact(required: str, available: dict[str, str], format_name: str) -> str

module function · internal · tech_connector/game_engine/integration/dynamic_pipeline_compiler_service.py:639

_input_parameter

def _input_parameter(contract: OperationContract, artifact: str, role: str) -> str

module function · internal · tech_connector/game_engine/integration/dynamic_pipeline_compiler_service.py:669

infer_dcc_export_scope

def infer_dcc_export_scope(prompt: str, *, host: str, subject: str) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/dynamic_pipeline_compiler_service.py:710

Describe the host objects a DCC stage should resolve at execution time.

_output_parameter

def _output_parameter(contract: OperationContract) -> str

module function · internal · tech_connector/game_engine/integration/dynamic_pipeline_compiler_service.py:757

_safe_stage_name

def _safe_stage_name(index: int, contract: OperationContract) -> str

module function · internal · tech_connector/game_engine/integration/dynamic_pipeline_compiler_service.py:764

_explicit_transfer_paths

def _explicit_transfer_paths(prompt: str, format_name: str) -> list[str]

module function · internal · tech_connector/game_engine/integration/dynamic_pipeline_compiler_service.py:769

_named_static_meshes

def _named_static_meshes(prompt: str) -> list[str]

module function · internal · tech_connector/game_engine/integration/dynamic_pipeline_compiler_service.py:786

Parse an exact 2–5 item named-mesh list without guessing asset identities.

_requested_motionbuilder_steps

def _requested_motionbuilder_steps(prompt: str) -> list[str]

module function · internal · tech_connector/game_engine/integration/dynamic_pipeline_compiler_service.py:825

_explicit_engine_project_root

def _explicit_engine_project_root(prompt: str) -> str

module function · internal · tech_connector/game_engine/integration/dynamic_pipeline_compiler_service.py:835

Read an explicitly named engine project without confusing it with an FBX path.

_unreal_package_paths

def _unreal_package_paths(prompt: str) -> list[str]

module function · internal · tech_connector/game_engine/integration/dynamic_pipeline_compiler_service.py:855

_unreal_path_params

def _unreal_path_params(prompt: str) -> tuple[str, str]

module function · internal · tech_connector/game_engine/integration/dynamic_pipeline_compiler_service.py:862

_apply_prompt_parameters

def _apply_prompt_parameters(contract: OperationContract, params: dict[str, Any], prompt: str) -> None

module function · internal · tech_connector/game_engine/integration/dynamic_pipeline_compiler_service.py:885

_host_clause

def _host_clause(prompt: str, host: str) -> str

module function · internal · tech_connector/game_engine/integration/dynamic_pipeline_compiler_service.py:959

Return text from a named host until the next named package.

_maya_intermediate_mesh_move

def _maya_intermediate_mesh_move(prompt: str, hosts: list[str]) -> tuple[bool, list[float] | None]

module function · internal · tech_connector/game_engine/integration/dynamic_pipeline_compiler_service.py:972

Recognize one bounded mesh translation in the intermediate Maya clause.

_context_sensitive_parameter

def _context_sensitive_parameter(name: str) -> bool

module function · internal · tech_connector/game_engine/integration/dynamic_pipeline_compiler_service.py:999

_required_setting

def _required_setting(required_inputs: list[dict[str, str]], *, action_id: str, contract: OperationContract, parameter: str) -> None

module function · internal · tech_connector/game_engine/integration/dynamic_pipeline_compiler_service.py:1024

compile_dynamic_pipeline

def compile_dynamic_pipeline(prompt: str, *, project_root: str | None=None, allow_single_host: bool=False, use_default_settings: bool=True, custom_settings: dict[str, Any] | None=None, requirement_manifest: dict[str, Any] | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/dynamic_pipeline_compiler_service.py:1046

tech_connector.game_engine.integration.full_resolution_probe

pacing_windows

def pacing_windows(profile: Path, *, warmup_frames: int, window_frames: int=300) -> list[dict]

module function · public name · tech_connector/game_engine/integration/full_resolution_probe.py:18

Expose sustained pacing regressions that an all-run percentile can hide.

add_stress_props

def add_stress_props(rows: list[str], count: int) -> list[str]

module function · public name · tech_connector/game_engine/integration/full_resolution_probe.py:40

Add render-only cubes to an isolated packaged scene, retaining its DCC character.

run_probe

def run_probe(package: Path, output: Path, *, width: int=1920, height: int=1080, frames: int=360, warmup_frames: int=60, player_executable: Path | None=None, route: str='input', stress_actors: int=0) -> dict

module function · public name · tech_connector/game_engine/integration/full_resolution_probe.py:63

main

def main() -> int

module function · public name · tech_connector/game_engine/integration/full_resolution_probe.py:190

tech_connector.game_engine.integration.fx_qualification_service

qualify_realtime_fx

def qualify_realtime_fx(source_root: str | Path, output_root: str | Path, *, presets: Sequence[str]=DEFAULT_PRESETS, frames: int=120, frame_budget_ms: float=16.667, maximum_particles: int=2048, maximum_preset_seconds: float=8.0) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/fx_qualification_service.py:25

validate_realtime_fx_qualification

def validate_realtime_fx_qualification(source_root: str | Path, receipt: Mapping[str, Any] | None, *, max_age_seconds: float=DEFAULT_MAX_AGE_SECONDS, require_gpu_backend: bool=False, require_production_backend: bool=False, source_fingerprint: str | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/fx_qualification_service.py:182

load_realtime_fx_qualification

def load_realtime_fx_qualification(path: str | Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/fx_qualification_service.py:214

_world_digest

def _world_digest(world: Any) -> str

module function · internal · tech_connector/game_engine/integration/fx_qualification_service.py:222

_percentile

def _percentile(values: Sequence[float], fraction: float) -> float

module function · internal · tech_connector/game_engine/integration/fx_qualification_service.py:230

_timestamp

def _timestamp(value: Any) -> float

module function · internal · tech_connector/game_engine/integration/fx_qualification_service.py:235

tech_connector.game_engine.integration.host_thread_policy_service

build_host_thread_policy

def build_host_thread_policy(prompt: str, understanding: dict[str, Any] | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/host_thread_policy_service.py:19

tech_connector.game_engine.integration.installer_launchers

_glob_paths

def _glob_paths(patterns: Iterable[str]) -> list[Path]

module function · internal · tech_connector/game_engine/integration/installer_launchers.py:26

_version_from_path

def _version_from_path(path: Path, pattern: str) -> str

module function · internal · tech_connector/game_engine/integration/installer_launchers.py:33

discover_first_run_dcc_installers

def discover_first_run_dcc_installers(tools_root: Path | None=None, app_root: Path | None=None) -> list[DCCInstallerLauncher]

module function · public name · tech_connector/game_engine/integration/installer_launchers.py:38

Return installer launchers for installed DCC apps with available scripts.

run_installer_launcher

def run_installer_launcher(launcher: DCCInstallerLauncher, popen: Callable[..., subprocess.Popen]=subprocess.Popen) -> None

module function · public name · tech_connector/game_engine/integration/installer_launchers.py:102

Start a launcher .bat without blocking the UI.

pending_first_time_dcc_installers

def pending_first_time_dcc_installers(settings: dict) -> list[DCCInstallerLauncher]

module function · public name · tech_connector/game_engine/integration/installer_launchers.py:126

Return discovered installers that have not been accepted/run before.

run_first_time_dcc_installers

def run_first_time_dcc_installers(settings: dict, save_settings: Callable[[], None], launchers: Iterable[DCCInstallerLauncher] | None=None) -> list[DCCInstallerLauncher]

module function · public name · tech_connector/game_engine/integration/installer_launchers.py:136

Run each discovered installer once, tracked in dcc_bridge_setup_seen.

tech_connector.game_engine.integration.launch_readiness_service

LaunchGate.to_dict

def LaunchGate.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/integration/launch_readiness_service.py:78

audit_launch_readiness

def audit_launch_readiness(source_root: str | Path, *, editor_api: Any | None=None, qualification_receipts: Mapping[str, Any] | None=None, workflow_receipts: Mapping[str, Any] | None=None, source_parity_receipts: Mapping[str, Any] | None=None, production: bool=False) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/launch_readiness_service.py:84

tech_connector.game_engine.integration.maya_version_qualification_service

qualify_maya_versions

def qualify_maya_versions(source_root: str | Path, output_root: str | Path, *, autodesk_root: str | Path | None=None, declared_versions: Sequence[int]=DECLARED_VERSIONS, timeout_seconds: float=120.0) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/maya_version_qualification_service.py:38

_qualify_installed_version

def _qualify_installed_version(source: Path, run_root: Path, version: int, mayapy: Path, timeout_seconds: float) -> dict[str, Any]

module function · internal · tech_connector/game_engine/integration/maya_version_qualification_service.py:102

_smoke_script

def _smoke_script() -> str

module function · internal · tech_connector/game_engine/integration/maya_version_qualification_service.py:162

_run

def _run(command: list[str], cwd: Path, environment: Mapping[str, str], timeout_seconds: float) -> dict[str, Any]

module function · internal · tech_connector/game_engine/integration/maya_version_qualification_service.py:189

_maya_source_files

def _maya_source_files(source: Path) -> tuple[Path, ...]

module function · internal · tech_connector/game_engine/integration/maya_version_qualification_service.py:204

_source_digest

def _source_digest(files: Sequence[Path], source: Path) -> str

module function · internal · tech_connector/game_engine/integration/maya_version_qualification_service.py:211

validate_maya_version_qualification

def validate_maya_version_qualification(source_root: str | Path, receipt: Mapping[str, Any] | None, *, max_age_seconds: float=DEFAULT_MAX_AGE_SECONDS, source_fingerprint: str | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/maya_version_qualification_service.py:219

load_maya_version_qualification

def load_maya_version_qualification(path: str | Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/maya_version_qualification_service.py:247

_timestamp

def _timestamp(value: Any) -> float

module function · internal · tech_connector/game_engine/integration/maya_version_qualification_service.py:255

tech_connector.game_engine.integration.object_resolver

ObjectHandle.to_dict

def ObjectHandle.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/integration/object_resolver.py:33

ResolverSpec.to_dict

def ResolverSpec.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/integration/object_resolver.py:49

OperationContract.to_dict

def OperationContract.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/integration/object_resolver.py:68

normalize_query

def normalize_query(value: Any) -> str

module function · public name · tech_connector/game_engine/integration/object_resolver.py:78

handle_from_mapping

def handle_from_mapping(dcc: str, kind: str, data: dict[str, Any], *, source: str='') -> ObjectHandle

module function · public name · tech_connector/game_engine/integration/object_resolver.py:92

tech_connector.game_engine.integration.operation_contract_service

OperationContract.executable

def OperationContract.executable(self) -> bool

class method · public name · tech_connector/game_engine/integration/operation_contract_service.py:55

OperationContract.to_dict

def OperationContract.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/integration/operation_contract_service.py:63

_normalize_registered

def _normalize_registered(host: str, key: str, operation: Any) -> OperationContract

module function · internal · tech_connector/game_engine/integration/operation_contract_service.py:430

registered_operation_contract

def registered_operation_contract(host: str, key: str) -> OperationContract | None

module function · public name · tech_connector/game_engine/integration/operation_contract_service.py:500

Resolve one canonical host operation without building the full inventory.

_normalize_unreal_inventory

def _normalize_unreal_inventory(section: str, key: str, row: dict[str, Any]) -> OperationContract

module function · internal · tech_connector/game_engine/integration/operation_contract_service.py:506

build_operation_contract_inventory

def build_operation_contract_inventory(project_root: str | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/operation_contract_service.py:543

_non_unreal_host_contracts

def _non_unreal_host_contracts(host: str) -> tuple[OperationContract, ...]

module function · internal · tech_connector/game_engine/integration/operation_contract_service.py:592

Read a named DCC registry without scanning Unreal's Python surface.

operation_contracts

def operation_contracts(*, host: str='', role: str='', format: str='', subject: str='', project_root: str | None=None) -> list[OperationContract]

module function · public name · tech_connector/game_engine/integration/operation_contract_service.py:609

resolve_operation_contract

def resolve_operation_contract(query: str, *, host: str='', project_root: str | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/operation_contract_service.py:636

transfer_contracts

def transfer_contracts() -> list[OperationContract]

module function · public name · tech_connector/game_engine/integration/operation_contract_service.py:691

tech_connector.game_engine.integration.operation_evidence_service

_receipt_path

def _receipt_path() -> Path

module function · internal · tech_connector/game_engine/integration/operation_evidence_service.py:11

_load

def _load() -> dict[str, Any]

module function · internal · tech_connector/game_engine/integration/operation_evidence_service.py:20

operation_validation_receipt

def operation_validation_receipt(operation: str) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/operation_evidence_service.py:33

record_operation_validation

def record_operation_validation(operation: str, *, callable_path: str, evidence: dict[str, Any]) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/operation_evidence_service.py:38

tech_connector.game_engine.integration.pipeline_execution_preflight_service

_typed_actions

def _typed_actions(graph: dict[str, Any]) -> list[dict[str, Any]]

module function · internal · tech_connector/game_engine/integration/pipeline_execution_preflight_service.py:25

_output_references

def _output_references(value: Any) -> list[dict[str, str]]

module function · internal · tech_connector/game_engine/integration/pipeline_execution_preflight_service.py:34

_pipeline_context_specs

def _pipeline_context_specs(value: Any) -> list[dict[str, Any]]

module function · internal · tech_connector/game_engine/integration/pipeline_execution_preflight_service.py:51

Find live host inputs without treating typed output links as inputs.

_dependency_ancestors

def _dependency_ancestors(action_id: str, action_by_id: dict[str, dict[str, Any]]) -> set[str]

module function · internal · tech_connector/game_engine/integration/pipeline_execution_preflight_service.py:62

_upstream_context_producer

def _upstream_context_producer(action_id: str, host: str, spec: dict[str, Any], action_by_id: dict[str, dict[str, Any]]) -> str | None

module function · internal · tech_connector/game_engine/integration/pipeline_execution_preflight_service.py:83

Find a dependent same-host stage that creates the requested live context.

_local_callable_status

def _local_callable_status(callable_name: str) -> tuple[bool, str]

module function · internal · tech_connector/game_engine/integration/pipeline_execution_preflight_service.py:116

_session_identity

def _session_identity(row: dict[str, Any], host: str='') -> str

module function · internal · tech_connector/game_engine/integration/pipeline_execution_preflight_service.py:130

_callable_requires_remote_probe

def _callable_requires_remote_probe(host: str, callable_name: str) -> bool

module function · internal · tech_connector/game_engine/integration/pipeline_execution_preflight_service.py:152

_callable_probe_source

def _callable_probe_source(callable_names: list[str], sys_paths: list[str]) -> str

module function · internal · tech_connector/game_engine/integration/pipeline_execution_preflight_service.py:162

_decode_callable_probe

def _decode_callable_probe(response: Any) -> dict[str, Any]

module function · internal · tech_connector/game_engine/integration/pipeline_execution_preflight_service.py:190

_probe_host_callables

def _probe_host_callables(host: str, callable_names: list[str], *, port: int, timeout_seconds: float, bridge_factory: Callable[[str], Any]) -> dict[str, Any]

module function · internal · tech_connector/game_engine/integration/pipeline_execution_preflight_service.py:233

_probe_host_session

def _probe_host_session(host: str, *, requested_port: int | None, timeout_seconds: float, bridge_factory: Callable[[str], Any]) -> dict[str, Any]

module function · internal · tech_connector/game_engine/integration/pipeline_execution_preflight_service.py:293

preflight_pipeline_execution

def preflight_pipeline_execution(plan: dict[str, Any], *, session_ports: dict[str, int] | None=None, require_live_sessions: bool=False, timeout_seconds: float=1.0, bridge_factory: Callable[[str], Any] | None=None, verify_host_callables: bool=True, verify_live_context: bool=True, live_context_reader: Callable[[str, dict[str, Any], int], Any] | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/pipeline_execution_preflight_service.py:379

Validate function coverage, typed handoffs, local callables, and live sessions.

resolve_pipeline_session_ports

def resolve_pipeline_session_ports(hosts: list[str] | tuple[str, ...], *, session_ports: dict[str, int] | None=None, callables_by_host: dict[str, list[str]] | None=None, timeout_seconds: float=1.0, bridge_factory: Callable[[str], Any] | None=None) -> dict[str, int]

module function · public name · tech_connector/game_engine/integration/pipeline_execution_preflight_service.py:660

Resolve and identity-check exactly one session for every external host.

tech_connector.game_engine.integration.pipeline_operation_runtime_service

_cancelled

def _cancelled(token: Any) -> bool

module function · internal · tech_connector/game_engine/integration/pipeline_operation_runtime_service.py:22

_emit

def _emit(callback: Callable[[dict[str, Any]], None] | None, event: dict[str, Any]) -> None

module function · internal · tech_connector/game_engine/integration/pipeline_operation_runtime_service.py:32

_event

def _event(event_type: str, *, execution_id: str, host: str, operation: str, callable_name: str, attempt: int, maximum_attempts: int, timeout_seconds: float, started_at: float, message: str='') -> dict[str, Any]

module function · internal · tech_connector/game_engine/integration/pipeline_operation_runtime_service.py:42

_transient_failure

def _transient_failure(error: Exception) -> bool

module function · internal · tech_connector/game_engine/integration/pipeline_operation_runtime_service.py:63

_wait_for_retry

def _wait_for_retry(seconds: float, cancel_token: Any) -> None

module function · internal · tech_connector/game_engine/integration/pipeline_operation_runtime_service.py:72

_unwrap

def _unwrap(response: Any) -> dict[str, Any]

module function · internal · tech_connector/game_engine/integration/pipeline_operation_runtime_service.py:82

_canonicalize_export_result

def _canonicalize_export_result(operation: str, result: dict[str, Any]) -> dict[str, Any]

module function · internal · tech_connector/game_engine/integration/pipeline_operation_runtime_service.py:119

Expose the typed FBX handoff key without discarding host-native path fields.

_raise_for_failed_result

def _raise_for_failed_result(host: str, operation: str, result: dict[str, Any]) -> None

module function · internal · tech_connector/game_engine/integration/pipeline_operation_runtime_service.py:133

Treat a host's structured failure as a failed pipeline stage.

_resolve_pipeline_workspace_tokens

def _resolve_pipeline_workspace_tokens(value: Any) -> Any

module function · internal · tech_connector/game_engine/integration/pipeline_operation_runtime_service.py:152

Bind generated intermediate paths before dispatching work to a DCC.

_read_dcc_export_scope

def _read_dcc_export_scope(host: str, spec: dict[str, Any], *, session_port: int | None, timeout_seconds: float, bridge: Any=None) -> list[str]

module function · internal · tech_connector/game_engine/integration/pipeline_operation_runtime_service.py:169

resolve_pipeline_context_params

def resolve_pipeline_context_params(params: dict[str, Any] | None, *, host: str, session_port: int | None=None, timeout_seconds: float=120.0, context_reader: Callable[[dict[str, Any]], Any] | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/pipeline_operation_runtime_service.py:358

Resolve typed live-context markers immediately before host dispatch.

_execute_pipeline_operation_once

def _execute_pipeline_operation_once(host: str, operation: str, callable_name: str, params: dict[str, Any] | None=None, *, session_port: int | None=None, timeout_seconds: float=120.0) -> dict[str, Any]

module function · internal · tech_connector/game_engine/integration/pipeline_operation_runtime_service.py:406

execute_pipeline_operation

def execute_pipeline_operation(host: str, operation: str, callable_name: str, params: dict[str, Any] | None=None, *, session_port: int | None=None, timeout_seconds: float=120.0, cancel_token: Any=None, progress_callback: Callable[[dict[str, Any]], None] | None=None, telemetry_sink: Callable[[dict[str, Any]], None] | None=None, retry_attempts: int=0, retry_backoff_seconds: float=0.25, retry_safe: bool=False, execution_id: str='') -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/pipeline_operation_runtime_service.py:567

Execute one host operation with bounded, observable lifecycle behavior. Retries are deliberately opt-in twice: callers must request attempts and assert ``retry_safe`` so mutating DCC operations are never duplicated by accident. Existing cal

tech_connector.game_engine.integration.pipeline_requirement_coverage_service

_tokens

def _tokens(value: str) -> set[str]

module function · internal · tech_connector/game_engine/integration/pipeline_requirement_coverage_service.py:34

_stage_evidence

def _stage_evidence(stage: dict[str, Any]) -> str

module function · internal · tech_connector/game_engine/integration/pipeline_requirement_coverage_service.py:42

build_pipeline_requirement_manifest

def build_pipeline_requirement_manifest(prompt: str) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/pipeline_requirement_coverage_service.py:56

build_pipeline_requirement_ledger

def build_pipeline_requirement_ledger(prompt: str, stages: list[dict[str, Any]], *, requirement_manifest: dict[str, Any] | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/pipeline_requirement_coverage_service.py:86

verify_pipeline_requirement_ledger

def verify_pipeline_requirement_ledger(prompt: str, stages: list[dict[str, Any]], *, requirement_manifest: dict[str, Any] | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/pipeline_requirement_coverage_service.py:162

tech_connector.game_engine.integration.playable_project_qualification_service

qualify_playable_project

def qualify_playable_project(source_root: str | Path, output_root: str | Path, player_executable: str | Path, *, frames: int=120, budgets_ms: Mapping[str, float] | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/playable_project_qualification_service.py:28

Generate, package, and execute every production template through the native player.

validate_playable_project_qualification

def validate_playable_project_qualification(source_root: str | Path, receipt: Mapping[str, Any] | None, *, max_age_seconds: float=DEFAULT_MAX_AGE_SECONDS, source_fingerprint: str | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/playable_project_qualification_service.py:139

load_playable_project_qualification

def load_playable_project_qualification(path: str | Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/playable_project_qualification_service.py:170

playable_project_source_fingerprint

def playable_project_source_fingerprint(source_root: str | Path) -> str

module function · public name · tech_connector/game_engine/integration/playable_project_qualification_service.py:178

_file_hash

def _file_hash(path: Path) -> str

module function · internal · tech_connector/game_engine/integration/playable_project_qualification_service.py:192

_timestamp

def _timestamp(value: Any) -> float

module function · internal · tech_connector/game_engine/integration/playable_project_qualification_service.py:200

tech_connector.game_engine.integration.procedural_native_serializer_service

ProceduralNativeDocument.lossless

def ProceduralNativeDocument.lossless(self) -> bool

class method · public name · tech_connector/game_engine/integration/procedural_native_serializer_service.py:27

ProceduralNativeDocument.to_dict

def ProceduralNativeDocument.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/integration/procedural_native_serializer_service.py:28

serialize_native_procedural_graph

def serialize_native_procedural_graph(graph: ProceduralGraph, target: str) -> ProceduralNativeDocument

module function · public name · tech_connector/game_engine/integration/procedural_native_serializer_service.py:40

deserialize_native_procedural_graph

def deserialize_native_procedural_graph(document: Mapping[str, Any]) -> ProceduralGraph

module function · public name · tech_connector/game_engine/integration/procedural_native_serializer_service.py:60

write_native_procedural_graph

def write_native_procedural_graph(graph: ProceduralGraph, target: str, path: str | Path) -> Path

module function · public name · tech_connector/game_engine/integration/procedural_native_serializer_service.py:82

_order

def _order(graph: ProceduralGraph) -> list[str]

module function · internal · tech_connector/game_engine/integration/procedural_native_serializer_service.py:89

tech_connector.game_engine.integration.procedural_transfer_service

procedural_target_capabilities

def procedural_target_capabilities(target: str) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/procedural_transfer_service.py:149

build_procedural_transfer_manifest

def build_procedural_transfer_manifest(graph: ProceduralGraph, result: ProceduralCookResult, target: str) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/procedural_transfer_service.py:164

tech_connector.game_engine.integration.release_regression_qualification_service

qualify_release_regression

def qualify_release_regression(source_root: str | Path, output_root: str | Path, *, timeout_seconds: float=900.0) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/release_regression_qualification_service.py:26

validate_release_regression_qualification

def validate_release_regression_qualification(source_root: str | Path, receipt: Mapping[str, Any] | None, *, max_age_seconds: float=DEFAULT_MAX_AGE_SECONDS, source_fingerprint: str | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/release_regression_qualification_service.py:98

load_release_regression_qualification

def load_release_regression_qualification(path: str | Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/release_regression_qualification_service.py:135

_timestamp

def _timestamp(value: Any) -> float

module function · internal · tech_connector/game_engine/integration/release_regression_qualification_service.py:146

tech_connector.game_engine.integration.rigging_host_adapter_service

PythonHostRiggingAdapter.__init__

def PythonHostRiggingAdapter.__init__(self, host_id: str, executor: Executor, backend_module: str, statuses: dict[str, str])

class method · internal · tech_connector/game_engine/integration/rigging_host_adapter_service.py:47

PythonHostRiggingAdapter.host_id

def PythonHostRiggingAdapter.host_id(self) -> str

class method · public name · tech_connector/game_engine/integration/rigging_host_adapter_service.py:54

PythonHostRiggingAdapter.capabilities

def PythonHostRiggingAdapter.capabilities(self) -> dict[str, str]

class method · public name · tech_connector/game_engine/integration/rigging_host_adapter_service.py:57

PythonHostRiggingAdapter.scene_joints

def PythonHostRiggingAdapter.scene_joints(self) -> list[dict[str, Any]]

class method · public name · tech_connector/game_engine/integration/rigging_host_adapter_service.py:60

PythonHostRiggingAdapter.selection

def PythonHostRiggingAdapter.selection(self) -> list[str]

class method · public name · tech_connector/game_engine/integration/rigging_host_adapter_service.py:64

PythonHostRiggingAdapter.execute

def PythonHostRiggingAdapter.execute(self, capability: str, payload: dict[str, Any]) -> RiggingOperationResult

class method · public name · tech_connector/game_engine/integration/rigging_host_adapter_service.py:68

PythonHostRiggingAdapter._call

def PythonHostRiggingAdapter._call(self, function_name: str, payload: dict[str, Any], *, capability: str='host.query') -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/rigging_host_adapter_service.py:71

maya_rigging_adapter

def maya_rigging_adapter(*, embedded: bool=False) -> PythonHostRiggingAdapter

module function · public name · tech_connector/game_engine/integration/rigging_host_adapter_service.py:125

motionbuilder_rigging_adapter

def motionbuilder_rigging_adapter(*, embedded: bool=False) -> PythonHostRiggingAdapter

module function · public name · tech_connector/game_engine/integration/rigging_host_adapter_service.py:146

blender_rigging_adapter

def blender_rigging_adapter(*, embedded: bool=False) -> PythonHostRiggingAdapter

module function · public name · tech_connector/game_engine/integration/rigging_host_adapter_service.py:169

max_rigging_adapter

def max_rigging_adapter(*, embedded: bool=False) -> PythonHostRiggingAdapter

module function · public name · tech_connector/game_engine/integration/rigging_host_adapter_service.py:190

houdini_rigging_adapter

def houdini_rigging_adapter(*, embedded: bool=False) -> PythonHostRiggingAdapter

module function · public name · tech_connector/game_engine/integration/rigging_host_adapter_service.py:211

create_rigging_adapter

def create_rigging_adapter(host: str, *, graph=None, embedded: bool=False, selected_ids=None)

module function · public name · tech_connector/game_engine/integration/rigging_host_adapter_service.py:232

_json_default

def _json_default(value: Any)

module function · internal · tech_connector/game_engine/integration/rigging_host_adapter_service.py:249

tech_connector.game_engine.integration.run_dcc_stress_soak

_sha256

def _sha256(path: Path) -> str

module function · internal · tech_connector/game_engine/integration/run_dcc_stress_soak.py:20

stress_entity_rows

def stress_entity_rows(dcc_scene: Path, stress_scene: Path) -> tuple[list[str], int]

module function · public name · tech_connector/game_engine/integration/run_dcc_stress_soak.py:24

Select complete prop triples only when their assets exist in the DCC scene.

run

def run(package_source: Path, stress_scene: Path, player: Path, output: Path, frames: int=3600, unsynced: bool=False, render_scale: float | None=None, window_width: int=1280, window_height: int=720) -> dict

module function · public name · tech_connector/game_engine/integration/run_dcc_stress_soak.py:50

tech_connector.game_engine.integration.scene_snapshot_provider

parse_scene_snapshot_output

def parse_scene_snapshot_output(raw: str, provider_id: str) -> tuple[bool, dict[str, Any] | str]

module function · public name · tech_connector/game_engine/integration/scene_snapshot_provider.py:9

Parse a provider JSON snapshot response.

blender_scene_snapshot_code

def blender_scene_snapshot_code(*, selected_only: bool=False, include_geometry: bool=True, include_materials: bool=True, limit: int=500, max_vertices_per_object: int=50000, max_faces_per_object: int=50000, binary_path: str='') -> str

module function · public name · tech_connector/game_engine/integration/scene_snapshot_provider.py:22

motionbuilder_scene_snapshot_code

def motionbuilder_scene_snapshot_code(*, selected_only: bool=False, limit: int=500) -> str

module function · public name · tech_connector/game_engine/integration/scene_snapshot_provider.py:377

houdini_scene_snapshot_code

def houdini_scene_snapshot_code(*, selected_only: bool=False, include_geometry: bool=True, include_materials: bool=True, limit: int=500, max_vertices_per_object: int=50000, max_faces_per_object: int=50000) -> str

module function · public name · tech_connector/game_engine/integration/scene_snapshot_provider.py:471

unity_scene_snapshot_code

def unity_scene_snapshot_code(*, selected_only: bool=False, limit: int=500) -> str

module function · public name · tech_connector/game_engine/integration/scene_snapshot_provider.py:739

substance_painter_scene_snapshot_code

def substance_painter_scene_snapshot_code(*, include_materials: bool=True, limit: int=500) -> str

module function · public name · tech_connector/game_engine/integration/scene_snapshot_provider.py:746

Return defensive project lookdev introspection for Painter's evolving API.

unreal_scene_snapshot_code

def unreal_scene_snapshot_code(*, selected_only: bool=False, include_materials: bool=True, limit: int=500) -> str

module function · public name · tech_connector/game_engine/integration/scene_snapshot_provider.py:852

max_scene_snapshot_code

def max_scene_snapshot_code(*, selected_only: bool=False, include_materials: bool=True, limit: int=500) -> str

module function · public name · tech_connector/game_engine/integration/scene_snapshot_provider.py:1168

tech_connector.game_engine.integration.shaded_frame_provider

parse_shaded_frame_output

def parse_shaded_frame_output(raw: str, provider_id: str) -> tuple[bool, dict[str, Any] | str]

module function · public name · tech_connector/game_engine/integration/shaded_frame_provider.py:16

blender_shaded_frame_code

def blender_shaded_frame_code(output_path: str, *, width: int=960, height: int=540, frame: int | None=None) -> str

module function · public name · tech_connector/game_engine/integration/shaded_frame_provider.py:37

maya_shaded_frame_code

def maya_shaded_frame_code(output_path: str, *, width: int=960, height: int=540, frame: int | None=None) -> str

module function · public name · tech_connector/game_engine/integration/shaded_frame_provider.py:93

motionbuilder_shaded_frame_code

def motionbuilder_shaded_frame_code(output_path: str, *, width: int=960, height: int=540, frame: int | None=None) -> str

module function · public name · tech_connector/game_engine/integration/shaded_frame_provider.py:163

unreal_shaded_frame_code

def unreal_shaded_frame_code(output_path: str, *, width: int=960, height: int=540, frame: int | None=None, drive_viewport_camera: bool=False) -> str

module function · public name · tech_connector/game_engine/integration/shaded_frame_provider.py:206

tech_connector.game_engine.integration.skinned_crowd_probe

author_crowd_manifest

def author_crowd_manifest(source: Path, destination: Path | None, count: int, *, crowd_shadows: bool=True, shadow_casters: int | None=None, unique_rigs: int=0, source_actor: str='Player') -> str

module function · public name · tech_connector/game_engine/integration/skinned_crowd_probe.py:23

author_unicode_mesh_source

def author_unicode_mesh_source(scene: Path) -> dict[str, str]

module function · public name · tech_connector/game_engine/integration/skinned_crowd_probe.py:108

Relocate the rendered Player OBJ within a copied package for a path probe.

crowd_draw_coverage

def crowd_draw_coverage(steady: dict, count: int, shadow_casters: int, *, unsynced: bool=False, unique_rigs: int=0, cpu_skinning: bool=False, base_skin_sets: int=1) -> bool

module function · public name · tech_connector/game_engine/integration/skinned_crowd_probe.py:132

crowd_visual_coverage

def crowd_visual_coverage(screenshot: Path, *, static_dcc_scene: bool=False) -> dict

module function · public name · tech_connector/game_engine/integration/skinned_crowd_probe.py:155

Require the fixture's lit floor in the lower half, not just draw calls/HUD. A malformed skin palette can submit every draw while a giant blue mesh hides the whole scene. This is a coarse fixture-specific smoke check, not a substitute for im

classify_probe

def classify_probe(*, draw_coverage: bool, visual_coverage: bool, budget_pass: bool, shadow_casters: int, count: int, unsynced: bool, unique_rigs: int=0, cpu_skinning: bool=False, unicode_mesh_source: bool=False, source_actor: str='Player') -> str

module function · public name · tech_connector/game_engine/integration/skinned_crowd_probe.py:201

run_probe

def run_probe(package: Path, player: Path, output: Path, *, count: int, frames: int, crowd_shadows: bool=True, shadow_casters: int | None=None, unsynced: bool=False, unique_rigs: int=0, cpu_skinning: bool=False, unicode_mesh_source: bool=False, visual_reference: Path | None=None, source_actor: str='Player') -> dict

module function · public name · tech_connector/game_engine/integration/skinned_crowd_probe.py:216

scene_id_from_manifest

def scene_id_from_manifest(path: Path) -> str

module function · public name · tech_connector/game_engine/integration/skinned_crowd_probe.py:316

main

def main() -> int

module function · public name · tech_connector/game_engine/integration/skinned_crowd_probe.py:321

tech_connector.game_engine.integration.tc_hik_ui_host

_body_map

def _body_map() -> dict[str, dict[str, Any]]

module function · internal · tech_connector/game_engine/integration/tc_hik_ui_host.py:34

_face_map

def _face_map() -> dict[str, Any]

module function · internal · tech_connector/game_engine/integration/tc_hik_ui_host.py:38

TCHikHostContext.__init__

def TCHikHostContext.__init__(self, graph: EditableRigGraph, *, selection_provider: Callable[[], list[str]] | None=None, undo_callback: Callable[[str], None] | None=None, refresh_callback: Callable[[], None] | None=None)

class method · internal · tech_connector/game_engine/integration/tc_hik_ui_host.py:57

TCHikHostContext.selection

def TCHikHostContext.selection(self) -> list[str]

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:84

TCHikHostContext.changed

def TCHikHostContext.changed(self) -> None

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:95

TCHikHostContext.checkpoint

def TCHikHostContext.checkpoint(self, label: str) -> None

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:99

bind_tc_hik_host

def bind_tc_hik_host(graph: EditableRigGraph, *, selection_provider: Callable[[], list[str]] | None=None, undo_callback: Callable[[str], None] | None=None, refresh_callback: Callable[[], None] | None=None) -> TCHikHostContext

module function · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:107

_ctx

def _ctx() -> TCHikHostContext

module function · internal · tech_connector/game_engine/integration/tc_hik_ui_host.py:124

_node_name

def _node_name(value: str) -> str

module function · internal · tech_connector/game_engine/integration/tc_hik_ui_host.py:130

TCCmdsFacade.about

def TCCmdsFacade.about(self, **_kwargs)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:135

TCCmdsFacade.file

def TCCmdsFacade.file(self, **_kwargs)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:138

TCCmdsFacade.commandPort

def TCCmdsFacade.commandPort(self, *_args, **kwargs)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:141

TCCmdsFacade.ls

def TCCmdsFacade.ls(self, *patterns, **kwargs)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:144

TCCmdsFacade.objExists

def TCCmdsFacade.objExists(self, value)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:161

TCCmdsFacade.objectType

def TCCmdsFacade.objectType(self, value)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:165

TCCmdsFacade.nodeType

def TCCmdsFacade.nodeType(self, value)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:168

TCCmdsFacade.listRelatives

def TCCmdsFacade.listRelatives(self, value, **kwargs)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:175

TCCmdsFacade.listConnections

def TCCmdsFacade.listConnections(self, value, **_kwargs)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:207

TCCmdsFacade.connectionInfo

def TCCmdsFacade.connectionInfo(self, value, **_kwargs)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:219

TCCmdsFacade.select

def TCCmdsFacade.select(self, value=None, **kwargs)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:226

TCCmdsFacade.warning

def TCCmdsFacade.warning(self, message)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:238

TCCmdsFacade.confirmDialog

def TCCmdsFacade.confirmDialog(self, **kwargs)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:241

TCCmdsFacade.undoInfo

def TCCmdsFacade.undoInfo(self, **kwargs)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:245

TCCmdsFacade.xform

def TCCmdsFacade.xform(self, value, **kwargs)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:254

TCCmdsFacade.setAttr

def TCCmdsFacade.setAttr(self, plug, *values, **_kwargs)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:270

TCCmdsFacade.attributeQuery

def TCCmdsFacade.attributeQuery(self, attribute, **kwargs)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:275

TCCmdsFacade._constraint_targets

def TCCmdsFacade._constraint_targets(self, value)

class method · internal · tech_connector/game_engine/integration/tc_hik_ui_host.py:283

TCCmdsFacade.orientConstraint

def TCCmdsFacade.orientConstraint(self, value, **kwargs)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:286

TCSetupHikFacade.populate_default_face_map_from_scene

def TCSetupHikFacade.populate_default_face_map_from_scene(self, value=None)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:298

TCSetupHikFacade.guess_joint_map_from_root

def TCSetupHikFacade.guess_joint_map_from_root(self, root_joint, base_joint_map=None)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:301

TCSetupHikFacade.set_t_pose

def TCSetupHikFacade.set_t_pose(self, joint_map=None)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:308

TCSetupHikFacade.setup_hik_character

def TCSetupHikFacade.setup_hik_character(self, character_name, joint_map, fbx_export_path='', namespace='')

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:317

_definition_from_maps

def _definition_from_maps(body_map: dict[str, Any], face_map: dict[str, Any]) -> CharacterDefinition

module function · internal · tech_connector/game_engine/integration/tc_hik_ui_host.py:326

TCCreateRigFacade.hik_map_to_rig_args

def TCCreateRigFacade.hik_map_to_rig_args(self, body_map, face_map)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:353

TCCreateRigFacade._build

def TCCreateRigFacade._build(self, module, body_map, face_map=None, **options)

class method · internal · tech_connector/game_engine/integration/tc_hik_ui_host.py:359

TCCreateRigFacade.rig_arm_module

def TCCreateRigFacade.rig_arm_module(self, side, body_map, parent_ctrl=None)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:368

TCCreateRigFacade.rig_leg_module

def TCCreateRigFacade.rig_leg_module(self, side, body_map, parent_ctrl=None)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:371

TCCreateRigFacade.rig_clavicle_module

def TCCreateRigFacade.rig_clavicle_module(self, side, body_map, parent_ctrl=None)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:374

TCCreateRigFacade.rig_root_module

def TCCreateRigFacade.rig_root_module(self, body_map, parent_ctrl=None)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:386

TCCreateRigFacade.rig_pelvis_module

def TCCreateRigFacade.rig_pelvis_module(self, body_map, parent_ctrl=None)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:387

TCCreateRigFacade.rig_spine_module

def TCCreateRigFacade.rig_spine_module(self, body_map, parent_ctrl=None)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:388

TCCreateRigFacade.rig_neck_module

def TCCreateRigFacade.rig_neck_module(self, body_map, parent_ctrl=None)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:389

TCCreateRigFacade.rig_head_module

def TCCreateRigFacade.rig_head_module(self, body_map, face_map=None, parent_ctrl=None)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:390

TCCreateRigFacade._face

def TCCreateRigFacade._face(self, module, face_map, parent=None, side='')

class method · internal · tech_connector/game_engine/integration/tc_hik_ui_host.py:392

TCCreateRigFacade.rig_brows_module

def TCCreateRigFacade.rig_brows_module(self, side, face_map, parent_ctrl=None)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:425

TCCreateRigFacade.rig_eyes_module

def TCCreateRigFacade.rig_eyes_module(self, face_map, parent_ctrl=None)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:426

TCCreateRigFacade.rig_eyelids_module

def TCCreateRigFacade.rig_eyelids_module(self, side, face_map, parent_ctrl=None)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:427

TCCreateRigFacade.rig_mouth_module

def TCCreateRigFacade.rig_mouth_module(self, face_map, parent_ctrl=None, jaw_ctrl=None)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:428

TCCreateRigFacade.rig_tongue_module

def TCCreateRigFacade.rig_tongue_module(self, face_map, parent_ctrl=None)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:429

TCCreateRigFacade.rig_teeth_module

def TCCreateRigFacade.rig_teeth_module(self, face_map, parent_ctrl=None, jaw_ctrl=None)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:430

TCCreateRigFacade.rig_other_face_module

def TCCreateRigFacade.rig_other_face_module(self, face_map, parent_ctrl=None, jaw_ctrl=None, jaw_joint=None)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:431

TCCreateRigFacade.create_joint_controls

def TCCreateRigFacade.create_joint_controls(self, joint_list=None, control_shape='circle', root_parent=None, **_kwargs)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:433

TCCreateRigFacade.create_space_switch

def TCCreateRigFacade.create_space_switch(self, driven, targets, attr_name='space', constraint_type='parent', **_kwargs)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:445

TCCreateRigFacade.create_joints_along_curve

def TCCreateRigFacade.create_joints_along_curve(self, curve, joint_count=5, keep_attached=True, name_prefix=None, **_kwargs)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:453

TCCreateRigFacade.setup_surface_rig_with_drivers

def TCCreateRigFacade.setup_surface_rig_with_drivers(self, joint_list=None, joint_chain=None, **kwargs)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:466

TCCreateRigFacade.dynamic_module_spec

def TCCreateRigFacade.dynamic_module_spec(self, joints, parent=None, **settings)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:484

TCCreateRigFacade.get_dynamic_rig_modules

def TCCreateRigFacade.get_dynamic_rig_modules(self)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:489

TCCreateRigFacade.register_dynamic_rig_module

def TCCreateRigFacade.register_dynamic_rig_module(self, module_id, module_type, build_spec, build_now=True)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:493

TCCreateRigFacade._build_dynamic_rig_module

def TCCreateRigFacade._build_dynamic_rig_module(self, record)

class method · internal · tech_connector/game_engine/integration/tc_hik_ui_host.py:518

TCCreateRigFacade.inspect_dynamic_rig_module

def TCCreateRigFacade.inspect_dynamic_rig_module(self, record)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:556

TCCreateRigFacade.get_external_rig_systems

def TCCreateRigFacade.get_external_rig_systems(self, discover_live=True)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:565

TCCreateRigFacade._ensure_space_switch

def TCCreateRigFacade._ensure_space_switch(self, driven, targets, mode, module)

class method · internal · tech_connector/game_engine/integration/tc_hik_ui_host.py:569

TCCreateRigFacade.create_arm_space_switches

def TCCreateRigFacade.create_arm_space_switches(self, side, body_joint_map=None)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:589

TCCreateRigFacade.create_leg_space_switches

def TCCreateRigFacade.create_leg_space_switches(self, side, body_joint_map=None)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:600

TCCreateRigFacade.delete_unused_scaffold_nodes

def TCCreateRigFacade.delete_unused_scaffold_nodes(self)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:609

TCCreateRigFacade.store_all_control_cv_positions

def TCCreateRigFacade.store_all_control_cv_positions(self)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:610

TCCreateRigFacade.restore_all_control_cv_positions

def TCCreateRigFacade.restore_all_control_cv_positions(self)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:619

TCCreateRigFacade.get_module_controls

def TCCreateRigFacade.get_module_controls(self, module)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:630

TCCreateRigFacade.save_module_metadata

def TCCreateRigFacade.save_module_metadata(self, module, data)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:635

TCCreateRigFacade.load_module_metadata

def TCCreateRigFacade.load_module_metadata(self, module)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:639

TCCreateRigFacade.get_all_module_metadata

def TCCreateRigFacade.get_all_module_metadata(self)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:640

TCCreateRigFacade.clear_module_metadata

def TCCreateRigFacade.clear_module_metadata(self, module)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:641

TCCreateRigFacade.store_rig_connections

def TCCreateRigFacade.store_rig_connections(self, controls, module)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:643

TCCreateRigFacade.restore_rig_connections

def TCCreateRigFacade.restore_rig_connections(self, module)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:648

TCCreateRigFacade._remove

def TCCreateRigFacade._remove(self, module)

class method · internal · tech_connector/game_engine/integration/tc_hik_ui_host.py:653

TCCreateRigFacade.remove_arm_module

def TCCreateRigFacade.remove_arm_module(self, side, _body)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:659

TCCreateRigFacade.remove_leg_module

def TCCreateRigFacade.remove_leg_module(self, side, _body)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:660

TCCreateRigFacade.remove_clavicle_module

def TCCreateRigFacade.remove_clavicle_module(self, side, _body)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:661

TCCreateRigFacade.remove_root_module

def TCCreateRigFacade.remove_root_module(self, _body)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:662

TCCreateRigFacade.remove_pelvis_module

def TCCreateRigFacade.remove_pelvis_module(self, _body)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:663

TCCreateRigFacade.remove_spine_module

def TCCreateRigFacade.remove_spine_module(self, _body)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:664

TCCreateRigFacade.remove_neck_module

def TCCreateRigFacade.remove_neck_module(self, _body)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:665

TCCreateRigFacade.remove_head_module

def TCCreateRigFacade.remove_head_module(self, _body)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:666

TCCreateRigFacade.remove_brows_module

def TCCreateRigFacade.remove_brows_module(self, side, _face)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:667

TCCreateRigFacade.remove_eyes_module

def TCCreateRigFacade.remove_eyes_module(self, _face)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:668

TCCreateRigFacade.remove_eyelids_module

def TCCreateRigFacade.remove_eyelids_module(self, side, _face)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:669

TCCreateRigFacade.remove_mouth_module

def TCCreateRigFacade.remove_mouth_module(self, _face)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:670

TCCreateRigFacade.remove_tongue_module

def TCCreateRigFacade.remove_tongue_module(self, _face)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:671

TCCreateRigFacade.remove_teeth_module

def TCCreateRigFacade.remove_teeth_module(self, _face)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:672

TCCreateRigFacade.remove_other_face_module

def TCCreateRigFacade.remove_other_face_module(self, _face)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:673

TCCreateRigFacade.remove_full_rig

def TCCreateRigFacade.remove_full_rig(self, _body, _face=None)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:675

TCRigTemplateFacade.load_biped_rig_template

def TCRigTemplateFacade.load_biped_rig_template(self, template_path=None, namespace='', reference=False, **_kwargs)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:689

TCSkinningUtilsFacade._safe_name

def TCSkinningUtilsFacade._safe_name(value)

class method · internal · tech_connector/game_engine/integration/tc_hik_ui_host.py:718

TCSkinningUtilsFacade.export_skin_weights

def TCSkinningUtilsFacade.export_skin_weights(self, meshes, export_dir='C:/temp/weights')

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:721

TCSkinningUtilsFacade.import_skin_weights

def TCSkinningUtilsFacade.import_skin_weights(self, meshes=None, export_dir='C:/temp/weights')

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:736

TCSkinningUtilsFacade.transfer_skin_weights_from_selection

def TCSkinningUtilsFacade.transfer_skin_weights_from_selection(self)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:759

TCJointsFacade.find_skinned_or_top_joints

def TCJointsFacade.find_skinned_or_top_joints(self, namespace='')

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:783

TCDagFacade.disable_evaluation

def TCDagFacade.disable_evaluation(self)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:788

TCDagFacade.enable_evaluation

def TCDagFacade.enable_evaluation(self)

class method · public name · tech_connector/game_engine/integration/tc_hik_ui_host.py:789

tech_connector.game_engine.integration.tc_rigging_host_adapter

_stable_ribbon_grid

def _stable_ribbon_grid(positions: list[list[float]], *, width: float, up_vector: tuple[float, float, float]) -> list[list[list[float]]]

module function · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:31

_sample_polyline_by_length

def _sample_polyline_by_length(points: list[list[float]], count: int, *, closed: bool=False) -> tuple[list[list[float]], list[float]]

module function · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:99

Sample a portable curve polyline at equal arc-length intervals.

TCRiggingHostAdapter.__init__

def TCRiggingHostAdapter.__init__(self, graph: EditableRigGraph | None=None, selected_ids: list[str] | tuple[str, ...] | None=None)

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:143

TCRiggingHostAdapter.host_id

def TCRiggingHostAdapter.host_id(self) -> str

class method · public name · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:149

TCRiggingHostAdapter.capabilities

def TCRiggingHostAdapter.capabilities(self) -> dict[str, str]

class method · public name · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:152

TCRiggingHostAdapter.scene_joints

def TCRiggingHostAdapter.scene_joints(self) -> list[dict[str, Any]]

class method · public name · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:155

TCRiggingHostAdapter.selection

def TCRiggingHostAdapter.selection(self) -> list[str]

class method · public name · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:167

TCRiggingHostAdapter.execute

def TCRiggingHostAdapter.execute(self, capability: str, payload: dict[str, Any]) -> RiggingOperationResult

class method · public name · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:170

TCRiggingHostAdapter._ok

def TCRiggingHostAdapter._ok(self, capability: str, message: str, **kwargs: Any) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:182

TCRiggingHostAdapter._definition

def TCRiggingHostAdapter._definition(self, value: Any) -> CharacterDefinition

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:185

TCRiggingHostAdapter._op_definition_auto_map

def TCRiggingHostAdapter._op_definition_auto_map(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:195

TCRiggingHostAdapter._op_definition_assign_slot

def TCRiggingHostAdapter._op_definition_assign_slot(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:209

TCRiggingHostAdapter._op_definition_clear_slot

def TCRiggingHostAdapter._op_definition_clear_slot(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:218

TCRiggingHostAdapter._op_definition_mirror_slots

def TCRiggingHostAdapter._op_definition_mirror_slots(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:223

TCRiggingHostAdapter._op_definition_validate

def TCRiggingHostAdapter._op_definition_validate(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:230

TCRiggingHostAdapter._op_definition_set_reference_pose

def TCRiggingHostAdapter._op_definition_set_reference_pose(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:238

TCRiggingHostAdapter._op_definition_import

def TCRiggingHostAdapter._op_definition_import(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:250

TCRiggingHostAdapter._op_definition_export

def TCRiggingHostAdapter._op_definition_export(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:255

TCRiggingHostAdapter._op_retarget_create_definition

def TCRiggingHostAdapter._op_retarget_create_definition(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:259

TCRiggingHostAdapter._op_retarget_validate_definition

def TCRiggingHostAdapter._op_retarget_validate_definition(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:279

TCRiggingHostAdapter._op_rig_create_control

def TCRiggingHostAdapter._op_rig_create_control(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:285

TCRiggingHostAdapter._op_rig_edit_control_shape

def TCRiggingHostAdapter._op_rig_edit_control_shape(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:313

TCRiggingHostAdapter._op_rig_create_constraint

def TCRiggingHostAdapter._op_rig_create_constraint(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:325

TCRiggingHostAdapter._op_rig_create_ik_fk_limb

def TCRiggingHostAdapter._op_rig_create_ik_fk_limb(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:361

TCRiggingHostAdapter._op_rig_set_ik_fk_blend

def TCRiggingHostAdapter._op_rig_set_ik_fk_blend(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:449

TCRiggingHostAdapter._op_rig_create_space_switch

def TCRiggingHostAdapter._op_rig_create_space_switch(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:464

TCRiggingHostAdapter._op_rig_set_space

def TCRiggingHostAdapter._op_rig_set_space(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:476

TCRiggingHostAdapter._op_rig_create_motion_path

def TCRiggingHostAdapter._op_rig_create_motion_path(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:491

TCRiggingHostAdapter._op_rig_create_curve_joints

def TCRiggingHostAdapter._op_rig_create_curve_joints(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:502

TCRiggingHostAdapter._op_rig_create_ribbon

def TCRiggingHostAdapter._op_rig_create_ribbon(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:550

TCRiggingHostAdapter._op_rig_create_twist

def TCRiggingHostAdapter._op_rig_create_twist(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:583

TCRiggingHostAdapter._op_skin_surface_spatial_smooth_brush

def TCRiggingHostAdapter._op_skin_surface_spatial_smooth_brush(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:647

TCRiggingHostAdapter._op_rig_create_reverse_foot

def TCRiggingHostAdapter._op_rig_create_reverse_foot(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:666

TCRiggingHostAdapter._op_rig_create_mesh_attachment

def TCRiggingHostAdapter._op_rig_create_mesh_attachment(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:681

TCRiggingHostAdapter._op_rig_create_pose_reader

def TCRiggingHostAdapter._op_rig_create_pose_reader(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:689

TCRiggingHostAdapter._apply_joint_world_matrices

def TCRiggingHostAdapter._apply_joint_world_matrices(self, targets: dict[str, list[float]]) -> list[str]

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:697

Write world matrices back as hierarchy-correct local matrices.

TCRiggingHostAdapter._apply_face_joint_placement_rules

def TCRiggingHostAdapter._apply_face_joint_placement_rules(self, mesh_id: str='') -> dict[str, Any]

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:724

Apply portable brow, eyelid-tip, and centered-nose channel rules.

TCRiggingHostAdapter._delete_auto_joint_guides

def TCRiggingHostAdapter._delete_auto_joint_guides(self) -> list[str]

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:884

Remove TC-native temporary guide nodes and their graph edges.

TCRiggingHostAdapter._op_rig_place_joints

def TCRiggingHostAdapter._op_rig_place_joints(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:922

Place TC graph joints from explicit points or mesh bounds.

TCRiggingHostAdapter._op_rig_set_t_pose

def TCRiggingHostAdapter._op_rig_set_t_pose(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:985

Set a TC graph biped to a deterministic world-axis T-pose.

TCRiggingHostAdapter._op_rig_build_full

def TCRiggingHostAdapter._op_rig_build_full(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:1099

TCRiggingHostAdapter._op_rig_build_module

def TCRiggingHostAdapter._op_rig_build_module(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:1127

TCRiggingHostAdapter._op_rig_remove_module

def TCRiggingHostAdapter._op_rig_remove_module(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:1131

TCRiggingHostAdapter._op_rig_rebuild_module

def TCRiggingHostAdapter._op_rig_rebuild_module(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:1136

TCRiggingHostAdapter._op_rig_create_face_module

def TCRiggingHostAdapter._op_rig_create_face_module(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:1144

TCRiggingHostAdapter._op_rig_store_connections

def TCRiggingHostAdapter._op_rig_store_connections(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:1148

TCRiggingHostAdapter._op_rig_restore_connections

def TCRiggingHostAdapter._op_rig_restore_connections(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:1158

TCRiggingHostAdapter._op_retarget_solve_pose

def TCRiggingHostAdapter._op_retarget_solve_pose(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:1168

TCRiggingHostAdapter._op_retarget_preview

def TCRiggingHostAdapter._op_retarget_preview(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:1191

TCRiggingHostAdapter._op_retarget_bake

def TCRiggingHostAdapter._op_retarget_bake(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:1197

TCRiggingHostAdapter._op_retarget_transfer_take

def TCRiggingHostAdapter._op_retarget_transfer_take(self, payload: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:1214

TCRiggingHostAdapter._build_thumb_rigs

def TCRiggingHostAdapter._build_thumb_rigs(self, definition: CharacterDefinition, blend: float) -> list[str]

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:1222

Build the shared Maya-compatible four-joint thumb contract in TC.

TCRiggingHostAdapter._build_module

def TCRiggingHostAdapter._build_module(self, module: str, definition: CharacterDefinition, options: dict[str, Any]) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:1403

TCRiggingHostAdapter._build_nose_module

def TCRiggingHostAdapter._build_nose_module(self, definition: CharacterDefinition) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:1550

TCRiggingHostAdapter._build_face_module

def TCRiggingHostAdapter._build_face_module(self, module: str, definition: CharacterDefinition) -> RiggingOperationResult

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:1597

TCRiggingHostAdapter._remove_module

def TCRiggingHostAdapter._remove_module(self, module: str) -> list[str]

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:1683

TCRiggingHostAdapter._joint_depth

def TCRiggingHostAdapter._joint_depth(self, joint_id: str) -> int

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:1708

TCRiggingHostAdapter._joint_world_matrix

def TCRiggingHostAdapter._joint_world_matrix(self, joint_id: str) -> list[float]

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:1717

TCRiggingHostAdapter._node_world_matrix

def TCRiggingHostAdapter._node_world_matrix(self, node_id: str) -> list[float]

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:1727

TCRiggingHostAdapter._pole_matrix

def TCRiggingHostAdapter._pole_matrix(self, start: str, mid: str, end: str) -> list[float]

class method · internal · tech_connector/game_engine/integration/tc_rigging_host_adapter.py:1737

tech_connector.game_engine.integration.tech_connector_pipeline_adapter

import_interchange_asset

def import_interchange_asset(source_file: str | list[str] | tuple[str, ...], project_root: str, *, folder: str='Assets', type_id: str='', importer_settings: dict[str, Any] | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/tech_connector_pipeline_adapter.py:13

Import one interchange artifact into a Tech Connector engine project.

tech_connector.game_engine.integration.third_person_acceptance_service

release_target_assessment

def release_target_assessment(technical_pass: bool, host_system: str) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:47

Keep a successful Windows demo from implicitly qualifying release targets.

host_hardware_receipt

def host_hardware_receipt(graphics_adapter: dict[str, Any]) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:78

Describe this diagnostic host without treating one machine as a device matrix.

_percentile

def _percentile(values: list[float], fraction: float) -> float

module function · internal · tech_connector/game_engine/integration/third_person_acceptance_service.py:126

memory_trend

def memory_trend(frame_rows: list[dict[str, Any]]) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:133

Report sparse process-memory samples without claiming leak qualification.

steady_profile

def steady_profile(profile_path: str | Path, *, warmup_frames: int) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:153

compare_gpu_probe_workload

def compare_gpu_probe_workload(vsynced: dict[str, Any], unsynced: dict[str, Any]) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:287

Require the work-only probe to exercise the same renderer, scene and input route.

measure_unsynced_gpu_work

def measure_unsynced_gpu_work(package: Path, *, frames: int, warmup_frames: int) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:319

Measure render work separately from the vsynced gameplay/pacing run.

check_capture_write_failure

def check_capture_write_failure(package: Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:342

A failed screenshot destination must fail the packaged player cleanly.

_hash

def _hash(path: Path) -> str

module function · internal · tech_connector/game_engine/integration/third_person_acceptance_service.py:363

qualification_input_receipt

def qualification_input_receipt(value: str | Path | None, *, package: bool=False) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:371

Identify external qualification inputs without treating a package path as evidence.

qualification_inputs

def qualification_inputs(dcc_fbx: str | Path | None, motion_demo_package: str | Path | None, motion_report: str | Path | None, motion_visual_baseline: str | Path | None, motion_previous_package: str | Path | None, player_executable: str | Path | None=None) -> dict[str, dict[str, Any]]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:412

qualification_inputs_stable

def qualification_inputs_stable(initial: dict[str, dict[str, Any]], final: dict[str, dict[str, Any]]) -> bool

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:428

compare_bmp_baseline

def compare_bmp_baseline(reference: Path, actual: Path, *, channel_tolerance: int=20, max_changed_fraction: float=0.002, dynamic_rect: tuple[int, int, int, int] | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:435

Compare static pixels and, optionally, dynamic blue actor/gold obstacle landmarks.

check_visual_landmarks

def check_visual_landmarks(screenshot: Path, *, button_x: float=0.16, button_y: float=0.14, panel_y: float=0.04) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:519

Probe stable HUD pixels in the actual captured D3D11 back buffer.

check_ui_image_pixels

def check_ui_image_pixels(screenshot: Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:553

Check that the authored image rect contains actual texture detail, not a flat placeholder.

_nudge_first_obj_vertex

def _nudge_first_obj_vertex(source: Path) -> None

module function · internal · tech_connector/game_engine/integration/third_person_acceptance_service.py:583

reimport_player_mesh

def reimport_player_mesh(api: TCEditorAPI, level_asset_id: str, run: Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:597

Route a topology-preserving character mesh change through the public API.

check_skeletal_fbx_reimport

def check_skeletal_fbx_reimport(api: TCEditorAPI, source_path: str | Path, run: Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:635

Qualify a real skinning source and a topology-preserving FBX revision.

probe_packaged_skeletal_fbx

def probe_packaged_skeletal_fbx(level_source: Path, imported_fbx: Path, run: Path, player: Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:701

Package the imported mesh and sparse skin as an additional rendered actor.

check_dcc_narrow_control_card

def check_dcc_narrow_control_card(package: Path, wide_screenshot: Path, manifest_rows: list[str], ui_offset: tuple[int, int]) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:791

Exercise the real imported-character card at a narrow PC viewport.

check_dcc_motion_phase_visibility

def check_dcc_motion_phase_visibility(package: Path, reference_card: Path, ui_offset: tuple[int, int]) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:835

Capture each major motion phase and require an in-frame character and HUD.

verify_motion_source_receipt

def verify_motion_source_receipt(report_path: Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:878

Fail closed if a packaged demo is paired with stale or unreceipted FBXs.

qualify_dcc_motion_player

def qualify_dcc_motion_player(package_source: str | Path, motion_report: str | Path, run: Path, player_executable: Path, source_fbx: str | Path | None=None, visual_baseline: str | Path | None=None, previous_package: str | Path | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:888

Run the packaged SKM_Test Player, not just a side-by-side rig probe.

check_dcc_save_roundtrip

def check_dcc_save_roundtrip(package: Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:1011

Prove the imported character's save survives a packaged process exit.

check_dcc_legacy_unbound_migration

def check_dcc_legacy_unbound_migration(package: Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:1087

Migrate a real pre-scene-ID character save while preserving its bytes.

check_dcc_content_upgrade

def check_dcc_content_upgrade(package: Path, save_dir: Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:1177

Load the character's progress after a compatible authored content update.

check_dcc_binary_upgrade

def check_dcc_binary_upgrade(old_package: Path, new_package: Path, run: Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:1269

Load and rotate a save made by the prior player binary using the new binary.

binary_upgrade_satisfied

def binary_upgrade_satisfied(receipt: dict[str, Any], *, required: bool) -> bool

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:1331

Never silently skip an explicitly requested prior-binary qualification.

check_dcc_user_scoped_save

def check_dcc_user_scoped_save(package: Path, upgrade: dict[str, Any]) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:1337

Use the real Windows default save path across character install roots.

check_dcc_default_legacy_save_migration

def check_dcc_default_legacy_save_migration(package: Path, upgrade: dict[str, Any]) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:1374

Migrate a pre-scene-ID default Windows save into scene-ID user storage.

check_user_profiles_across_install

def check_user_profiles_across_install(package: Path, upgrade: dict[str, Any]) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:1434

Keep a scene's rebinding and mute preference across install paths.

author_audio_cue

def author_audio_cue(api: TCEditorAPI, level_asset_id: str, run: Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:1515

Add overlapping mono and stereo PCM cues to the begin-play graph.

author_runtime_ui

def author_runtime_ui(api: TCEditorAPI, level_asset_id: str) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:1577

Bind an authored UI Document to the packaged game's runtime scene.

author_synthetic_stress_fixture

def author_synthetic_stress_fixture(api: TCEditorAPI, level_asset_id: str, count: int) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:1659

Add render-only props to expose draw-call scale on one hardware path.

check_packaged_audio

def check_packaged_audio(profile_path: Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:1690

check_unicode_packaged_audio

def check_unicode_packaged_audio(package: Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:1713

Play a packaged PCM cue through a Unicode asset path on real D3D11/XAudio2.

assess_audio_restart_events

def assess_audio_restart_events(events: list[dict[str, Any]]) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:1798

Validate ordering as well as success of an intentional output restart.

check_packaged_audio_restart

def check_packaged_audio_restart(package: Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:1831

Exercise software-requested XAudio2 teardown/recreation in the D3D11 player.

check_windowed_scene_failure

def check_windowed_scene_failure(package: Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:1859

A finite graphical test must exit on bad input without a modal dialog.

check_unicode_scene_default_paths

def check_unicode_scene_default_paths(package: Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:1891

Exercise the normal user profile/save path setup with a Unicode scene filename.

check_windowed_skin_failure

def check_windowed_skin_failure(package: Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:1922

A missing Player skin must fail the frame, never present a rest mesh.

_first_packaged_asset

def _first_packaged_asset(manifest: Path, package: Path) -> Path

module function · internal · tech_connector/game_engine/integration/third_person_acceptance_service.py:1964

check_asset_recovery

def check_asset_recovery(manifest: Path, package: Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:1975

Corrupt one generated package asset, demand rejection, then restore it.

check_packaged_gameplay

def check_packaged_gameplay(package: Path, *, frames: int) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:1997

Prove movement, clip transitions, and native save/load in a packaged player.

packaged_save_path

def packaged_save_path(package: Path) -> Path

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:2062

Resolve the authored save slot for either packaged third-person variant.

check_keyboard_ui_navigation

def check_keyboard_ui_navigation(package: Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:2074

Exercise windowed keyboard focus, Save/Load activation, and Escape dismissal.

check_focus_loss_rebind

def check_focus_loss_rebind(package: Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:2109

Ensure window focus loss cancels UI focus and a pending controller rebind.

check_gamepad_ui_navigation

def check_gamepad_ui_navigation(package: Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:2138

Exercise focus, highlighted selection, and activation through Xbox input mapping.

check_gamepad_load_repeatability

def check_gamepad_load_repeatability(package: Path, *, attempts: int=20) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:2326

Require repeated independent load-UI frames, not one successful process.

check_gamepad_rebind_ui

def check_gamepad_rebind_ui(package: Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:2373

Exercise Jump capture and cross-process persistence with simulated input.

check_live_debug_step

def check_live_debug_step(package: Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:2606

Exercise a real D3D11 pause, snapshot, one-tick step, and resume.

check_window_minimize_restore

def check_window_minimize_restore(package: Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:2714

Exercise a real window minimize/restore without advancing simulation while hidden.

check_runtime_ui_cache

def check_runtime_ui_cache(package: Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:2755

Guard against decoding a static UI image on every content redraw.

check_runtime_ui_resize

def check_runtime_ui_resize(package: Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:2792

Check both-edge layout and clickable UI at two real D3D11 window sizes.

check_runtime_ui_scale

def check_runtime_ui_scale(package: Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:2843

Verify that manual HUD scaling also scales the live mouse hit targets.

check_runtime_ui_safe_area

def check_runtime_ui_safe_area(package: Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:2950

Exercise a platform-style UI inset in the actual renderer and mouse path.

check_runtime_ui_narrow

def check_runtime_ui_narrow(package: Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:3000

Require the optional right HUD to disappear without losing Save interaction.

check_runtime_ui_short

def check_runtime_ui_short(package: Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:3037

Verify the lowest gameplay control remains clickable in a short D3D11 window.

check_audio_mute_ui

def check_audio_mute_ui(package: Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:3080

Exercise reversible mute, persistence, and failed-profile rollback.

check_user_scoped_save_load

def check_user_scoped_save_load(package: Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:3290

Exercise F5/F6 using a writable location outside packaged Content.

check_cross_install_save_upgrade

def check_cross_install_save_upgrade(package: Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:3566

Rehearse a compatible content update across separate install roots.

qualify_third_person

def qualify_third_person(output_root: str | Path, player_executable: str | Path, *, variant_id: str='exploration', frames: int=DEFAULT_FRAMES, warmup_frames: int=DEFAULT_WARMUP_FRAMES, frame_budget_ms: float=16.667, gpu_budget_ms: float=16.667, stress_actors: int=0, dcc_fbx: str | Path | None=None, motion_demo_package: str | Path | None=None, motion_report: str | Path | None=None, motion_visual_baseline: str | Path | None=None, motion_previous_package: str | Path | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:3688

Create, cook, package, run, stress, and recover a third-person template.

main

def main() -> int

module function · public name · tech_connector/game_engine/integration/third_person_acceptance_service.py:4137

tech_connector.game_engine.integration.three_d_app_provider_manifest

build_3d_app_provider_manifest

def build_3d_app_provider_manifest(*, app_id: str, display_name: str, executable_path: str, api_docs: list[str] | str, aliases: list[str] | None=None, version: str='', api_bootstrap: dict[str, Any] | None=None, bridge: dict[str, Any] | None=None, internal_tools: list[dict[str, Any]] | None=None, scene_snapshot: dict[str, Any] | None=None, smart_menu: dict[str, Any] | None=None, icon_path: str='', validation: dict[str, Any] | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/three_d_app_provider_manifest.py:23

Build a progressive 3D app provider manifest. Only app identity, executable path, and API docs are required. Everything else upgrades the provider from launchable/docs-aware into connected, inspectable, viewport-capable, and smart-menu capa

validate_3d_app_provider_manifest

def validate_3d_app_provider_manifest(manifest: dict[str, Any]) -> ProviderValidationResult

module function · public name · tech_connector/game_engine/integration/three_d_app_provider_manifest.py:79

Validate a provider manifest and report progressive feature level.

provider_menu_contributions

def provider_menu_contributions(manifest: dict[str, Any]) -> list[dict[str, Any]]

module function · public name · tech_connector/game_engine/integration/three_d_app_provider_manifest.py:157

Return smart-menu contributions declared by a provider.

_provider_level

def _provider_level(enabled: list[str]) -> str

module function · internal · tech_connector/game_engine/integration/three_d_app_provider_manifest.py:182

_looks_like_api_doc

def _looks_like_api_doc(value: str) -> bool

module function · internal · tech_connector/game_engine/integration/three_d_app_provider_manifest.py:195

_slug

def _slug(text: str) -> str

module function · internal · tech_connector/game_engine/integration/three_d_app_provider_manifest.py:206

tech_connector.game_engine.integration.transfer_template_service

TransferTemplate.to_dict

def TransferTemplate.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/integration/transfer_template_service.py:36

_template

def _template(contract: OperationContract, format_name: str='') -> TransferTemplate

module function · internal · tech_connector/game_engine/integration/transfer_template_service.py:40

_all_templates

def _all_templates() -> tuple[TransferTemplate, ...]

module function · internal · tech_connector/game_engine/integration/transfer_template_service.py:58

extract_host_sequence

def extract_host_sequence(prompt: str) -> list[str]

module function · public name · tech_connector/game_engine/integration/transfer_template_service.py:71

infer_transfer_format

def infer_transfer_format(prompt: str) -> str

module function · public name · tech_connector/game_engine/integration/transfer_template_service.py:75

infer_transfer_subject

def infer_transfer_subject(prompt: str) -> str

module function · public name · tech_connector/game_engine/integration/transfer_template_service.py:79

templates_for

def templates_for(host: str, *, role: str | None=None, format: str | None=None, subject: str='asset') -> list[TransferTemplate]

module function · public name · tech_connector/game_engine/integration/transfer_template_service.py:83

plan_transfer_permutation

def plan_transfer_permutation(prompt: str) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/transfer_template_service.py:104

tech_connector.game_engine.integration.transferability_matrix_service

NativeDccFeature.to_dict

def NativeDccFeature.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/integration/transferability_matrix_service.py:40

HostTransferSupport.to_dict

def HostTransferSupport.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/integration/transferability_matrix_service.py:54

FeatureTransferReport.to_dict

def FeatureTransferReport.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/integration/transferability_matrix_service.py:67

list_native_dcc_features

def list_native_dcc_features() -> list[dict[str, Any]]

module function · public name · tech_connector/game_engine/integration/transferability_matrix_service.py:576

_contract_matches_feature

def _contract_matches_feature(contract: OperationContract, feature: NativeDccFeature) -> bool

module function · internal · tech_connector/game_engine/integration/transferability_matrix_service.py:580

_contracts_by_role_for_host

def _contracts_by_role_for_host(feature: NativeDccFeature, host: str, *, project_root: str | None=None) -> dict[str, list[OperationContract]]

module function · internal · tech_connector/game_engine/integration/transferability_matrix_service.py:589

analyze_feature_transferability

def analyze_feature_transferability(feature_key: str, *, project_root: str | None=None) -> FeatureTransferReport

module function · public name · tech_connector/game_engine/integration/transferability_matrix_service.py:604

build_dcc_transferability_matrix

def build_dcc_transferability_matrix(*, project_root: str | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/transferability_matrix_service.py:704

infer_native_feature_keys

def infer_native_feature_keys(text: str) -> list[str]

module function · public name · tech_connector/game_engine/integration/transferability_matrix_service.py:735

build_cross_dcc_chat_context

def build_cross_dcc_chat_context(prompt: str='', *, project_root: str | None=None, max_hosts_per_feature: int=4) -> str

module function · public name · tech_connector/game_engine/integration/transferability_matrix_service.py:769

Return a compact routing hint for chat and pipeline planning prompts.

department_transfer_summary

def department_transfer_summary(department: str='', *, project_root: str | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/transferability_matrix_service.py:813

tech_connector.game_engine.integration.verify_skm_motion_demo

grounded_ankle_local_motion

def grounded_ankle_local_motion(clips: dict) -> dict

module function · public name · tech_connector/game_engine/integration/verify_skm_motion_demo.py:21

Report low-ankle local motion; root travel is needed to measure foot slide.

low_ankle_world_drift

def low_ankle_world_drift(frames: list[dict]) -> dict

module function · public name · tech_connector/game_engine/integration/verify_skm_motion_demo.py:54

Measure rendered-bone drift near its lowest sampled height, not true contact.

reverse_motion_observed

def reverse_motion_observed(frames: list[dict]) -> bool

module function · public name · tech_connector/game_engine/integration/verify_skm_motion_demo.py:121

reverse_canopy_contact_observed

def reverse_canopy_contact_observed(frames: list[dict]) -> bool

module function · public name · tech_connector/game_engine/integration/verify_skm_motion_demo.py:135

verify

def verify(profile_path: Path, motion_report_path: Path | None=None, *, require_reverse_motion: bool=False, require_reverse_canopy_contact: bool=False) -> dict

module function · public name · tech_connector/game_engine/integration/verify_skm_motion_demo.py:146

tech_connector.game_engine.integration.verify_skm_ui_capture

blue_character_bounds

def blue_character_bounds(path: Path, box: tuple[int, int, int, int]) -> dict[str, object]

module function · public name · tech_connector/game_engine/integration/verify_skm_ui_capture.py:20

Locate the demo's blue skinned actor inside its central gameplay region.

_text_mask

def _text_mask(path: Path, box: tuple[int, int, int, int]) -> tuple[int, str]

module function · internal · tech_connector/game_engine/integration/verify_skm_ui_capture.py:48

verify_control_card

def verify_control_card(screenshots: list[Path], *, offset: tuple[int, int]=(0, 0)) -> dict[str, object]

module function · public name · tech_connector/game_engine/integration/verify_skm_ui_capture.py:69

main

def main() -> None

module function · public name · tech_connector/game_engine/integration/verify_skm_ui_capture.py:98

tech_connector.game_engine.integration.verify_third_person_soak

_p95

def _p95(values: list[float]) -> float

module function · internal · tech_connector/game_engine/integration/verify_third_person_soak.py:14

verify_soak

def verify_soak(profile_path: Path, *, warmup: int=60, min_draw_calls: int=260, scope: str='same-device synthetic 256-prop D3D11 soak', require_motion_search: bool=False, require_mixed_motion: bool=False, require_unsynced_gpu_samples: bool=False, require_vsynced_pacing: bool=False) -> dict

module function · public name · tech_connector/game_engine/integration/verify_third_person_soak.py:19

tech_connector.game_engine.integration.viewer_commands

commands

def commands() -> list[dict[str, Any]]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:22

target

def target(provider: str='tech_connector', native_id: str='', *, source_key: str='', object_type: str='mesh', component_type: str='object', components: list[str] | tuple[str, ...] | None=None, metadata: dict[str, Any] | None=None) -> SceneCommandTarget

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:26

target_from_proxy

def target_from_proxy(proxy: dict[str, Any], *, component_type: str='object', components: list[str] | tuple[str, ...] | None=None) -> SceneCommandTarget

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:47

route

def route(command: str, command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:56

execute_active

def execute_active(command: str, **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:60

Execute an undoable command in the currently open Scene Viewer.

convert_to_tc

def convert_to_tc(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:67

convert_selection_to_tc

def convert_selection_to_tc(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:71

compose_usd

def compose_usd(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:75

inspect_usd_composition

def inspect_usd_composition(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:79

set_usd_variant

def set_usd_variant(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:83

set_usd_payload

def set_usd_payload(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:87

set_usd_override

def set_usd_override(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:91

split_edge_loop

def split_edge_loop(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:95

bevel_edges

def bevel_edges(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:99

extrude_faces

def extrude_faces(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:103

delete_faces

def delete_faces(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:107

triangulate_faces

def triangulate_faces(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:111

merge_vertices

def merge_vertices(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:115

bridge_edge_loops

def bridge_edge_loops(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:119

parent_constraint

def parent_constraint(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:123

create_joint

def create_joint(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:127

create_ik_handle

def create_ik_handle(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:131

create_ribbon_ik

def create_ribbon_ik(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:135

create_motion_path_ik

def create_motion_path_ik(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:139

create_quadruped_leg_ik

def create_quadruped_leg_ik(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:143

create_mechanical_ik

def create_mechanical_ik(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:147

constrain_to_mesh

def constrain_to_mesh(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:151

constrain_to_normal

def constrain_to_normal(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:155

create_pose_reader

def create_pose_reader(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:159

create_space_switch

def create_space_switch(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:163

bind_skin

def bind_skin(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:167

auto_skin

def auto_skin(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:171

paint_weights

def paint_weights(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:175

normalize_weights

def normalize_weights(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:179

prune_weights

def prune_weights(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:183

smooth_weights

def smooth_weights(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:187

mirror_weights

def mirror_weights(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:191

copy_weights

def copy_weights(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:195

transfer_weights

def transfer_weights(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:199

add_influence

def add_influence(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:203

remove_influence

def remove_influence(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:207

export_weights

def export_weights(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:211

import_weights

def import_weights(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:215

set_keyframe

def set_keyframe(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:219

create_take

def create_take(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:223

add_animation_layer

def add_animation_layer(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:227

create_cloth

def create_cloth(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:231

create_fluid

def create_fluid(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:235

create_volume

def create_volume(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:239

create_effect

def create_effect(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:243

set_effect_parameter

def set_effect_parameter(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:247

bake_effect

def bake_effect(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:251

renderer_stats

def renderer_stats(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:255

configure_renderer_budget

def configure_renderer_budget(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:259

create_deformable_surface

def create_deformable_surface(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:263

apply_footprint

def apply_footprint(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:267

apply_projectile

def apply_projectile(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:271

create_soft_body

def create_soft_body(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:275

create_reformable_dough

def create_reformable_dough(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:279

create_breakable_solid

def create_breakable_solid(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:283

fill_geometry_fluid

def fill_geometry_fluid(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:287

add_curve_flow

def add_curve_flow(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:291

step_simulation

def step_simulation(command_target: SceneCommandTarget | dict[str, Any], **kwargs: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/viewer_commands.py:295

tech_connector.game_engine.integration.world_production_qualification_service

qualify_world_production

def qualify_world_production(source_root: str | Path, output_root: str | Path, *, maximum_total_seconds: float=30.0) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/world_production_qualification_service.py:23

validate_world_production_qualification

def validate_world_production_qualification(source_root: str | Path, receipt: Mapping[str, Any] | None, *, max_age_seconds: float=DEFAULT_MAX_AGE_SECONDS, source_fingerprint: str | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/world_production_qualification_service.py:113

load_world_production_qualification

def load_world_production_qualification(path: str | Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/integration/world_production_qualification_service.py:134

_timestamp

def _timestamp(value: Any) -> float

module function · internal · tech_connector/game_engine/integration/world_production_qualification_service.py:142

tech_connector.game_engine.rendering.lighting_profile_service

_environment_profile

def _environment_profile(profile_id: str, display_name: str, description: str, *, sky: tuple[float, float, float], ground: tuple[float, float, float], sun_color: tuple[float, float, float], sun_direction: tuple[float, float, float], sun_intensity: float, exposure: float=1.0, indirect: float=1.0, atmosphere: bool=False, lighting_model: str='physically_based', global_illumination: str='probe', angular_radius: float=0.5) -> LightingProfile

module function · internal · tech_connector/game_engine/rendering/lighting_profile_service.py:66

Build a complete renderer-safe preset with consistent contract fields.

lighting_profiles

def lighting_profiles() -> tuple[LightingProfile, ...]

module function · public name · tech_connector/game_engine/rendering/lighting_profile_service.py:129

Return profiles in stable user-facing order.

lighting_profile_category

def lighting_profile_category(profile_id: str) -> str

module function · public name · tech_connector/game_engine/rendering/lighting_profile_service.py:152

Return the stable user-facing category for a lighting profile.

lighting_profile_groups

def lighting_profile_groups() -> tuple[tuple[str, tuple[LightingProfile, ...]], ...]

module function · public name · tech_connector/game_engine/rendering/lighting_profile_service.py:158

Return all presets in practical UI groups while preserving profile order within each group.

lighting_profile

def lighting_profile(profile_id: str | None) -> LightingProfile

module function · public name · tech_connector/game_engine/rendering/lighting_profile_service.py:169

Resolve a profile id, defaulting to natural daylight.

resolve_lighting_settings

def resolve_lighting_settings(settings: Mapping[str, Any] | None) -> tuple[dict[str, Any], dict[str, Any]]

module function · public name · tech_connector/game_engine/rendering/lighting_profile_service.py:178

Apply profile defaults while preserving every explicit scene override.

tech_connector.game_engine.rendering.material_contract

PortableTextureBinding.to_dict

def PortableTextureBinding.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/rendering/material_contract.py:148

PortableMaterial.to_dict

def PortableMaterial.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/rendering/material_contract.py:166

PortableLookdevState.to_dict

def PortableLookdevState.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/rendering/material_contract.py:183

portable_material_runtime_capabilities

def portable_material_runtime_capabilities() -> dict[str, Any]

module function · public name · tech_connector/game_engine/rendering/material_contract.py:195

provider_lookdev_capture_profile

def provider_lookdev_capture_profile(provider: str) -> dict[str, Any]

module function · public name · tech_connector/game_engine/rendering/material_contract.py:217

normalize_portable_material

def normalize_portable_material(payload: dict[str, Any] | None, *, source_provider: str='', source_path: str='', material_id: str='') -> PortableMaterial

module function · public name · tech_connector/game_engine/rendering/material_contract.py:236

lookdev_state_from_snapshot

def lookdev_state_from_snapshot(snapshot: dict[str, Any] | None, *, source_provider: str='', source_path: str='') -> PortableLookdevState

module function · public name · tech_connector/game_engine/rendering/material_contract.py:323

Extract scene-level materials, assignments, and dependency evidence.

normalize_portable_lookdev_state

def normalize_portable_lookdev_state(payload: dict[str, Any] | None, *, source_provider: str='', source_path: str='') -> PortableLookdevState

module function · public name · tech_connector/game_engine/rendering/material_contract.py:538

Normalize a saved lookdev state while retaining archive storage metadata.

embed_portable_lookdev_textures

def embed_portable_lookdev_textures(state: PortableLookdevState | dict[str, Any], *, source_id: str, max_file_bytes: int=64 * 1024 * 1024, max_total_bytes: int=256 * 1024 * 1024) -> tuple[dict[str, Any], dict[str, bytes]]

module function · public name · tech_connector/game_engine/rendering/material_contract.py:579

Embed bounded texture dependencies and keep oversized assets explicit.

resolve_embedded_lookdev_textures

def resolve_embedded_lookdev_textures(snapshot: dict[str, Any], state: PortableLookdevState | dict[str, Any], blobs: dict[str, bytes], *, cache_root: str | Path) -> tuple[dict[str, Any], dict[str, Any]]

module function · public name · tech_connector/game_engine/rendering/material_contract.py:634

Materialize verified archive textures and redirect cached host payloads.

_stable_id

def _stable_id(*parts: str) -> str

module function · internal · tech_connector/game_engine/rendering/material_contract.py:715

_nonnegative_int

def _nonnegative_int(value: Any, default: int) -> int

module function · internal · tech_connector/game_engine/rendering/material_contract.py:720

_append_unique

def _append_unique(values: list[str], value: str) -> None

module function · internal · tech_connector/game_engine/rendering/material_contract.py:727

_compact_index_ranges

def _compact_index_ranges(values: list[Any] | tuple[Any, ...]) -> list[list[int]]

module function · internal · tech_connector/game_engine/rendering/material_contract.py:732

_coverage_status

def _coverage_status(observed: int, expected: int, *, enabled: bool) -> str

module function · internal · tech_connector/game_engine/rendering/material_contract.py:756

_texture_asset_record

def _texture_asset_record(path: str, source_path: str) -> dict[str, Any]

module function · internal · tech_connector/game_engine/rendering/material_contract.py:766

canonical_texture_channel

def canonical_texture_channel(channel: str) -> str

module function · public name · tech_connector/game_engine/rendering/material_contract.py:805

viewer_material_approximation

def viewer_material_approximation(material: PortableMaterial) -> dict[str, Any]

module function · public name · tech_connector/game_engine/rendering/material_contract.py:811

_texture_binding

def _texture_binding(channel: str, source_channel: str, raw_binding: Any, *, source_path: str) -> PortableTextureBinding | None

module function · internal · tech_connector/game_engine/rendering/material_contract.py:841

_number

def _number(value: Any, default: float) -> float

module function · internal · tech_connector/game_engine/rendering/material_contract.py:916

_unit

def _unit(value: Any, default: float) -> float

module function · internal · tech_connector/game_engine/rendering/material_contract.py:924

_vector

def _vector(value: Any, size: int, default: tuple[float, ...]) -> tuple[float, ...]

module function · internal · tech_connector/game_engine/rendering/material_contract.py:928

tech_connector.game_engine.rendering.media_texture_service

MediaTextureSource.__post_init__

def MediaTextureSource.__post_init__(self) -> None

class method · internal · tech_connector/game_engine/rendering/media_texture_service.py:37

MediaTextureSource.animated

def MediaTextureSource.animated(self) -> bool

class method · public name · tech_connector/game_engine/rendering/media_texture_service.py:54

MediaTextureSource.to_dict

def MediaTextureSource.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/rendering/media_texture_service.py:57

infer_media_source_type

def infer_media_source_type(path: str, *, declared_type: str='') -> str

module function · public name · tech_connector/game_engine/rendering/media_texture_service.py:61

normalize_media_texture_source

def normalize_media_texture_source(payload: str | dict[str, Any] | MediaTextureSource, *, source_path: str='') -> MediaTextureSource

module function · public name · tech_connector/game_engine/rendering/media_texture_service.py:81

media_texture_runtime_capabilities

def media_texture_runtime_capabilities() -> dict[str, Any]

module function · public name · tech_connector/game_engine/rendering/media_texture_service.py:122

qualify_media_texture_source

def qualify_media_texture_source(source: MediaTextureSource | dict[str, Any]) -> dict[str, Any]

module function · public name · tech_connector/game_engine/rendering/media_texture_service.py:136

plan_media_texture_residency

def plan_media_texture_residency(sources: dict[str, MediaTextureSource | dict[str, Any]], *, maximum_video_decoders: int=4, maximum_animated_sources: int=8) -> dict[str, Any]

module function · public name · tech_connector/game_engine/rendering/media_texture_service.py:175

Bound concurrent decoders while preserving deterministic slot priority.

tech_connector.game_engine.rendering.procedural_shader_service

shader_node_catalog

def shader_node_catalog() -> dict[str, dict[str, Any]]

module function · public name · tech_connector/game_engine/rendering/procedural_shader_service.py:72

normalize_procedural_shader_graph

def normalize_procedural_shader_graph(payload: dict[str, Any]) -> dict[str, Any]

module function · public name · tech_connector/game_engine/rendering/procedural_shader_service.py:83

validate_procedural_shader_graph

def validate_procedural_shader_graph(payload: dict[str, Any], *, maximum_cost: int=512) -> dict[str, Any]

module function · public name · tech_connector/game_engine/rendering/procedural_shader_service.py:110

compile_procedural_shader_graph

def compile_procedural_shader_graph(payload: dict[str, Any], *, target: str='glsl') -> dict[str, Any]

module function · public name · tech_connector/game_engine/rendering/procedural_shader_service.py:158

lower_qt_quick3d_shader

def lower_qt_quick3d_shader(payload: dict[str, Any], *, cache_root: str | Path | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/rendering/procedural_shader_service.py:190

Lower a supported graph into a live Qt Quick 3D CustomMaterial fragment shader.

render_procedural_preview

def render_procedural_preview(payload: dict[str, Any], *, width: int=256, height: int=256, time_seconds: float=0.0) -> tuple[np.ndarray, dict[str, Any]]

module function · public name · tech_connector/game_engine/rendering/procedural_shader_service.py:234

procedural_shader_presets

def procedural_shader_presets() -> dict[str, dict[str, Any]]

module function · public name · tech_connector/game_engine/rendering/procedural_shader_service.py:326

_reference_id

def _reference_id(value: Any) -> str

module function · internal · tech_connector/game_engine/rendering/procedural_shader_service.py:342

_find_cycle

def _find_cycle(dependencies: dict[str, set[str]]) -> list[str]

module function · internal · tech_connector/game_engine/rendering/procedural_shader_service.py:348

_first_node_of_type

def _first_node_of_type(nodes: dict[str, dict[str, Any]], kind: str) -> str

module function · internal · tech_connector/game_engine/rendering/procedural_shader_service.py:364

_full

def _full(shape: tuple[int, int], value: Any) -> np.ndarray

module function · internal · tech_connector/game_engine/rendering/procedural_shader_service.py:368

_resolve_preview_value

def _resolve_preview_value(value: Any, evaluate: Any, shape: tuple[int, int]) -> np.ndarray

module function · internal · tech_connector/game_engine/rendering/procedural_shader_service.py:373

_hash2

def _hash2(x: np.ndarray, y: np.ndarray, seed: int) -> np.ndarray

module function · internal · tech_connector/game_engine/rendering/procedural_shader_service.py:378

_value_noise

def _value_noise(p: np.ndarray, seed: int=0) -> np.ndarray

module function · internal · tech_connector/game_engine/rendering/procedural_shader_service.py:382

_gradient_noise

def _gradient_noise(p: np.ndarray, seed: int=0) -> np.ndarray

module function · internal · tech_connector/game_engine/rendering/procedural_shader_service.py:390

_fractal

def _fractal(p: np.ndarray, params: dict[str, Any], kind: str) -> np.ndarray

module function · internal · tech_connector/game_engine/rendering/procedural_shader_service.py:402

_voronoi

def _voronoi(p: np.ndarray, seed: int=0) -> np.ndarray

module function · internal · tech_connector/game_engine/rendering/procedural_shader_service.py:413

_evaluate_ramp

def _evaluate_ramp(value: np.ndarray, points: Any) -> np.ndarray

module function · internal · tech_connector/game_engine/rendering/procedural_shader_service.py:423

_mix

def _mix(a: np.ndarray, b: np.ndarray, factor: np.ndarray) -> np.ndarray

module function · internal · tech_connector/game_engine/rendering/procedural_shader_service.py:435

_as_rgba

def _as_rgba(value: np.ndarray) -> np.ndarray

module function · internal · tech_connector/game_engine/rendering/procedural_shader_service.py:440

_compile_code

def _compile_code(graph: dict[str, Any], target: str) -> str

module function · internal · tech_connector/game_engine/rendering/procedural_shader_service.py:447

_compile_materialx

def _compile_materialx(graph: dict[str, Any]) -> str

module function · internal · tech_connector/game_engine/rendering/procedural_shader_service.py:459

_compile_qt_quick3d_fragment

def _compile_qt_quick3d_fragment(graph: dict[str, Any]) -> str

module function · internal · tech_connector/game_engine/rendering/procedural_shader_service.py:464

_qt_var

def _qt_var(node_id: str) -> str

module function · internal · tech_connector/game_engine/rendering/procedural_shader_service.py:517

_qt_float

def _qt_float(value: Any, default: float=0.0) -> str

module function · internal · tech_connector/game_engine/rendering/procedural_shader_service.py:521

_qt_vec

def _qt_vec(value: Any, size: int=4) -> str

module function · internal · tech_connector/game_engine/rendering/procedural_shader_service.py:528

_qt_input

def _qt_input(value: Any, default: str='vec4(0.0)') -> str

module function · internal · tech_connector/game_engine/rendering/procedural_shader_service.py:535

_qt_node_statements

def _qt_node_statements(node: dict[str, Any]) -> list[str]

module function · internal · tech_connector/game_engine/rendering/procedural_shader_service.py:545

_qt_ramp_function

def _qt_ramp_function(node: dict[str, Any]) -> str

module function · internal · tech_connector/game_engine/rendering/procedural_shader_service.py:602

tech_connector.game_engine.rendering.render_graph_service

RenderResource.__post_init__

def RenderResource.__post_init__(self) -> None

class method · internal · tech_connector/game_engine/rendering/render_graph_service.py:28

RenderAccess.__post_init__

def RenderAccess.__post_init__(self) -> None

class method · internal · tech_connector/game_engine/rendering/render_graph_service.py:45

RenderPass.__post_init__

def RenderPass.__post_init__(self) -> None

class method · internal · tech_connector/game_engine/rendering/render_graph_service.py:59

CompiledRenderGraph.transient_savings_bytes

def CompiledRenderGraph.transient_savings_bytes(self) -> int

class method · public name · tech_connector/game_engine/rendering/render_graph_service.py:113

CompiledRenderGraph.validate

def CompiledRenderGraph.validate(self) -> tuple[str, ...]

class method · public name · tech_connector/game_engine/rendering/render_graph_service.py:116

CompiledRenderGraph.to_dict

def CompiledRenderGraph.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/rendering/render_graph_service.py:124

compile_render_graph

def compile_render_graph(resources: Iterable[RenderResource], passes: Iterable[RenderPass], *, metadata: dict[str, Any] | None=None) -> CompiledRenderGraph

module function · public name · tech_connector/game_engine/rendering/render_graph_service.py:148

Compile declarations into deterministic execution, barriers, and aliases.

build_fx_render_graph

def build_fx_render_graph(stream_receipt: dict[str, Any] | None, *, width: int=1920, height: int=1080, enable_async_compute: bool=True, enable_refraction: bool=True, enable_temporal_reconstruction: bool=True) -> CompiledRenderGraph

module function · public name · tech_connector/game_engine/rendering/render_graph_service.py:201

Build the canonical particle/FX frame without claiming unavailable interop.

qualify_render_graph

def qualify_render_graph(graph: CompiledRenderGraph, *, require_async_compute: bool=False, require_shared_resource: bool=False) -> dict[str, Any]

module function · public name · tech_connector/game_engine/rendering/render_graph_service.py:317

_unique_map

def _unique_map(items: tuple[Any, ...], attribute: str, label: str) -> dict[str, Any]

module function · internal · tech_connector/game_engine/rendering/render_graph_service.py:342

_hazard

def _hazard(before: str, after: str) -> bool

module function · internal · tech_connector/game_engine/rendering/render_graph_service.py:352

_topological_order

def _topological_order(dependencies: dict[str, set[str]], declaration_index: dict[str, int]) -> tuple[list[str], list[str]]

module function · internal · tech_connector/game_engine/rendering/render_graph_service.py:356

_compile_barriers

def _compile_barriers(passes: tuple[RenderPass, ...]) -> tuple[RenderBarrier, ...]

module function · internal · tech_connector/game_engine/rendering/render_graph_service.py:379

_compile_queue_sync

def _compile_queue_sync(passes: tuple[RenderPass, ...], dependencies: dict[str, tuple[str, ...]], barriers: tuple[RenderBarrier, ...]) -> tuple[QueueSynchronization, ...]

module function · internal · tech_connector/game_engine/rendering/render_graph_service.py:397

_compile_transient_aliases

def _compile_transient_aliases(resources: tuple[RenderResource, ...], passes: tuple[RenderPass, ...]) -> tuple[tuple[TransientAllocation, ...], int, int]

module function · internal · tech_connector/game_engine/rendering/render_graph_service.py:425

tech_connector.game_engine.rendering.upscaling_service

UpscalingProfile.__post_init__

def UpscalingProfile.__post_init__(self) -> None

class method · internal · tech_connector/game_engine/rendering/upscaling_service.py:37

UpscalingProfile.to_dict

def UpscalingProfile.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/rendering/upscaling_service.py:51

create_upscaling_profile

def create_upscaling_profile(*, backend: str='native', quality: str='native', output_width: int=1920, output_height: int=1080, **overrides: Any) -> UpscalingProfile

module function · public name · tech_connector/game_engine/rendering/upscaling_service.py:74

choose_upscaling_backend

def choose_upscaling_backend(requested: str, *, graphics_api: str, installed_runtimes: Iterable[str]=()) -> tuple[str, tuple[str, ...]]

module function · public name · tech_connector/game_engine/rendering/upscaling_service.py:89

Resolve a requested backend without making the player unlaunchable.

render_dimensions

def render_dimensions(profile: UpscalingProfile) -> dict[str, int]

module function · public name · tech_connector/game_engine/rendering/upscaling_service.py:112

required_frame_resources

def required_frame_resources(backend: str) -> tuple[str, ...]

module function · public name · tech_connector/game_engine/rendering/upscaling_service.py:119

tech_connector.game_engine.runtime.character_brain_service

CharacterDecisionReceipt.to_dict

def CharacterDecisionReceipt.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/character_brain_service.py:60

choose_character_action

def choose_character_action(character: CharacterState, world: CharacterWorldAsset, actions: Iterable[CharacterAction], *, available_affordances: Iterable[str]=(), now: float=0.0, model_proposal: ModelActionProposal | None=None) -> CharacterDecisionReceipt

module function · public name · tech_connector/game_engine/runtime/character_brain_service.py:79

Choose an action deterministically; model proposals receive no authority bypass.

execute_character_action

def execute_character_action(character: CharacterState, world: CharacterWorldAsset, action: CharacterAction, decision: CharacterDecisionReceipt) -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/character_brain_service.py:168

record_character_memory

def record_character_memory(character: CharacterState, memory: CharacterMemory) -> CharacterMemory

module function · public name · tech_connector/game_engine/runtime/character_brain_service.py:192

decay_character_memories

def decay_character_memories(character: CharacterState, *, now: float, elapsed: float, decay_rate: float=0.01) -> int

module function · public name · tech_connector/game_engine/runtime/character_brain_service.py:215

select_narrative_beat

def select_narrative_beat(world: CharacterWorldAsset, *, now: float, focus_character: str='') -> NarrativeDecisionReceipt

module function · public name · tech_connector/game_engine/runtime/character_brain_service.py:239

apply_narrative_beat

def apply_narrative_beat(world: CharacterWorldAsset, beat: NarrativeBeat, receipt: NarrativeDecisionReceipt, *, now: float, focus_character: str='') -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/character_brain_service.py:272

choose_character_lod

def choose_character_lod(character_id: str, *, distance: float, significance: float=0.5, conversing: bool=False, quest_critical: bool=False) -> CharacterLODDecision

module function · public name · tech_connector/game_engine/runtime/character_brain_service.py:301

build_character_context

def build_character_context(character: CharacterState, world: CharacterWorldAsset, *, now: float) -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/character_brain_service.py:316

evaluate_condition

def evaluate_condition(condition: FactCondition, context: dict[str, Any]) -> bool

module function · public name · tech_connector/game_engine/runtime/character_brain_service.py:334

_resolve_path

def _resolve_path(value: Any, path: str) -> Any

module function · internal · tech_connector/game_engine/runtime/character_brain_service.py:367

_compare

def _compare(first: Any, second: Any, operation: Any) -> bool

module function · internal · tech_connector/game_engine/runtime/character_brain_service.py:383

_character_parameter

def _character_parameter(character: CharacterState, name: str) -> float

module function · internal · tech_connector/game_engine/runtime/character_brain_service.py:390

tech_connector.game_engine.runtime.engine_console_service

EngineConsoleReceipt.to_dict

def EngineConsoleReceipt.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/engine_console_service.py:25

EngineConsoleSession.__init__

def EngineConsoleSession.__init__(self) -> None

class method · internal · tech_connector/game_engine/runtime/engine_console_service.py:32

EngineConsoleSession.reset

def EngineConsoleSession.reset(self) -> None

class method · public name · tech_connector/game_engine/runtime/engine_console_service.py:36

EngineConsoleSession.execute_python

def EngineConsoleSession.execute_python(self, source: str, context: dict[str, Any] | None=None) -> EngineConsoleReceipt

class method · public name · tech_connector/game_engine/runtime/engine_console_service.py:39

EngineConsoleSession.execute_tc_command

def EngineConsoleSession.execute_tc_command(self, source: str, executor: Callable[..., dict[str, Any]]) -> EngineConsoleReceipt

class method · public name · tech_connector/game_engine/runtime/engine_console_service.py:72

parse_tc_command

def parse_tc_command(source: str) -> tuple[str, dict[str, Any]]

module function · public name · tech_connector/game_engine/runtime/engine_console_service.py:105

tech_connector.game_engine.runtime.engine_runtime_experience_service

build_engine_runtime_experience_plan

def build_engine_runtime_experience_plan(world: Any, *, target: str='desktop', goal: str='balanced', quality: str='auto', backend: str='auto', adaptive: bool=True, tick_rate: int | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/engine_runtime_experience_service.py:46

Turn user intent into an inspectable runtime configuration and fallback plan.

runtime_target_options

def runtime_target_options() -> list[dict[str, Any]]

module function · public name · tech_connector/game_engine/runtime/engine_runtime_experience_service.py:132

runtime_goal_options

def runtime_goal_options() -> list[dict[str, str]]

module function · public name · tech_connector/game_engine/runtime/engine_runtime_experience_service.py:136

_feature_capabilities

def _feature_capabilities(domains: list[str], target: EngineTargetProfile, resolved_backend: str) -> list[dict[str, str]]

module function · internal · tech_connector/game_engine/runtime/engine_runtime_experience_service.py:140

_adaptive_controls

def _adaptive_controls(domains: list[str]) -> list[str]

module function · internal · tech_connector/game_engine/runtime/engine_runtime_experience_service.py:175

_summary

def _summary(backend: str, quality: str, fallbacks: int, blockers: int) -> str

module function · internal · tech_connector/game_engine/runtime/engine_runtime_experience_service.py:188

tech_connector.game_engine.runtime.graph_debugger_service

GraphDebugSnapshot.to_dict

def GraphDebugSnapshot.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/graph_debugger_service.py:44

GraphDebugSession.__init__

def GraphDebugSession.__init__(self, session_id: str, instance_id: str, manifest: Mapping[str, Any], context: GraphExecutionContext | Mapping[str, Any], *, registry: GraphOperationRegistry | None=None, execution_mode: str='editor_simulation', selected_entity_id: str='') -> None

class method · internal · tech_connector/game_engine/runtime/graph_debugger_service.py:61

GraphDebugSession.program_id

def GraphDebugSession.program_id(self) -> str

class method · public name · tech_connector/game_engine/runtime/graph_debugger_service.py:89

GraphDebugSession.execution_order

def GraphDebugSession.execution_order(self) -> list[str]

class method · public name · tech_connector/game_engine/runtime/graph_debugger_service.py:93

GraphDebugSession.set_breakpoints

def GraphDebugSession.set_breakpoints(self, node_ids) -> GraphDebugSnapshot

class method · public name · tech_connector/game_engine/runtime/graph_debugger_service.py:96

GraphDebugSession.set_watches

def GraphDebugSession.set_watches(self, paths) -> GraphDebugSnapshot

class method · public name · tech_connector/game_engine/runtime/graph_debugger_service.py:105

GraphDebugSession.start

def GraphDebugSession.start(self) -> GraphDebugSnapshot

class method · public name · tech_connector/game_engine/runtime/graph_debugger_service.py:109

GraphDebugSession.continue_execution

def GraphDebugSession.continue_execution(self) -> GraphDebugSnapshot

class method · public name · tech_connector/game_engine/runtime/graph_debugger_service.py:116

GraphDebugSession.step

def GraphDebugSession.step(self) -> GraphDebugSnapshot

class method · public name · tech_connector/game_engine/runtime/graph_debugger_service.py:124

GraphDebugSession.pause

def GraphDebugSession.pause(self) -> GraphDebugSnapshot

class method · public name · tech_connector/game_engine/runtime/graph_debugger_service.py:137

GraphDebugSession.restart

def GraphDebugSession.restart(self) -> GraphDebugSnapshot

class method · public name · tech_connector/game_engine/runtime/graph_debugger_service.py:143

GraphDebugSession.stop

def GraphDebugSession.stop(self, *, keep_changes: bool=False) -> GraphDebugSnapshot

class method · public name · tech_connector/game_engine/runtime/graph_debugger_service.py:150

GraphDebugSession.hot_swap

def GraphDebugSession.hot_swap(self, manifest: Mapping[str, Any]) -> GraphDebugSnapshot

class method · public name · tech_connector/game_engine/runtime/graph_debugger_service.py:158

GraphDebugSession.reject_hot_swap

def GraphDebugSession.reject_hot_swap(self, message: str) -> GraphDebugSnapshot

class method · public name · tech_connector/game_engine/runtime/graph_debugger_service.py:180

Record a compile/validation rejection while preserving the running manifest and state.

GraphDebugSession.select_entity

def GraphDebugSession.select_entity(self, entity_id: str) -> GraphDebugSnapshot

class method · public name · tech_connector/game_engine/runtime/graph_debugger_service.py:186

GraphDebugSession.snapshot

def GraphDebugSession.snapshot(self) -> GraphDebugSnapshot

class method · public name · tech_connector/game_engine/runtime/graph_debugger_service.py:200

GraphDebugSession._run_until_pause

def GraphDebugSession._run_until_pause(self, *, skip_breakpoint: str='') -> GraphDebugSnapshot

class method · internal · tech_connector/game_engine/runtime/graph_debugger_service.py:211

GraphDebugSession._execute_next

def GraphDebugSession._execute_next(self) -> None

class method · internal · tech_connector/game_engine/runtime/graph_debugger_service.py:222

GraphDebugSession._fail

def GraphDebugSession._fail(self, error: GraphExecutionError) -> None

class method · internal · tech_connector/game_engine/runtime/graph_debugger_service.py:249

GraphDebugSession._next_node_id

def GraphDebugSession._next_node_id(self) -> str

class method · internal · tech_connector/game_engine/runtime/graph_debugger_service.py:252

GraphDebugSession._publish_external_context

def GraphDebugSession._publish_external_context(self) -> None

class method · internal · tech_connector/game_engine/runtime/graph_debugger_service.py:256

GraphDebugSessionManager.__init__

def GraphDebugSessionManager.__init__(self) -> None

class method · internal · tech_connector/game_engine/runtime/graph_debugger_service.py:265

GraphDebugSessionManager.attach

def GraphDebugSessionManager.attach(self, session_id: str, instance_id: str, manifest: Mapping[str, Any], context: Mapping[str, Any] | GraphExecutionContext, *, execution_mode: str='editor_simulation', selected_entity_id: str='') -> GraphDebugSession

class method · public name · tech_connector/game_engine/runtime/graph_debugger_service.py:269

GraphDebugSessionManager.session

def GraphDebugSessionManager.session(self, session_id: str) -> GraphDebugSession

class method · public name · tech_connector/game_engine/runtime/graph_debugger_service.py:275

GraphDebugSessionManager.list_sessions

def GraphDebugSessionManager.list_sessions(self) -> tuple[dict[str, Any], ...]

class method · public name · tech_connector/game_engine/runtime/graph_debugger_service.py:282

GraphDebugSessionManager.detach

def GraphDebugSessionManager.detach(self, session_id: str, *, keep_changes: bool=False) -> GraphDebugSnapshot

class method · public name · tech_connector/game_engine/runtime/graph_debugger_service.py:287

default_graph_debug_session_manager

def default_graph_debug_session_manager() -> GraphDebugSessionManager

module function · public name · tech_connector/game_engine/runtime/graph_debugger_service.py:298

Return the process-wide registry shared by editor windows and Python automation.

_validate_manifest

def _validate_manifest(manifest: Mapping[str, Any]) -> None

module function · internal · tech_connector/game_engine/runtime/graph_debugger_service.py:303

_resolve_inputs

def _resolve_inputs(node: Mapping[str, Any], outputs: Mapping[str, Any]) -> dict[str, Any]

module function · internal · tech_connector/game_engine/runtime/graph_debugger_service.py:310

_watch_value

def _watch_value(path: str, context: GraphExecutionContext, outputs: Mapping[str, Any]) -> Any

module function · internal · tech_connector/game_engine/runtime/graph_debugger_service.py:324

_summarize

def _summarize(value: Any) -> str

module function · internal · tech_connector/game_engine/runtime/graph_debugger_service.py:336

tech_connector.game_engine.runtime.graph_execution_service

GraphExecutionError.__init__

def GraphExecutionError.__init__(self, code: str, message: str, *, node_id: str='', operation: str='') -> None

class method · internal · tech_connector/game_engine/runtime/graph_execution_service.py:23

GraphExecutionError.to_dict

def GraphExecutionError.to_dict(self) -> dict[str, str]

class method · public name · tech_connector/game_engine/runtime/graph_execution_service.py:36

GraphExecutionLimits.__post_init__

def GraphExecutionLimits.__post_init__(self) -> None

class method · internal · tech_connector/game_engine/runtime/graph_execution_service.py:51

GraphExecutionContext.__post_init__

def GraphExecutionContext.__post_init__(self) -> None

class method · internal · tech_connector/game_engine/runtime/graph_execution_service.py:70

GraphExecutionContext.from_value

def GraphExecutionContext.from_value(cls, value: 'GraphExecutionContext | Mapping[str, Any]') -> 'GraphExecutionContext'

class method · public name · tech_connector/game_engine/runtime/graph_execution_service.py:77

GraphExecutionContext.staged_copy

def GraphExecutionContext.staged_copy(self) -> 'GraphExecutionContext'

class method · public name · tech_connector/game_engine/runtime/graph_execution_service.py:92

GraphExecutionContext.commit_from

def GraphExecutionContext.commit_from(self, staged: 'GraphExecutionContext') -> None

class method · public name · tech_connector/game_engine/runtime/graph_execution_service.py:103

GraphExecutionReceipt.ok

def GraphExecutionReceipt.ok(self) -> bool

class method · public name · tech_connector/game_engine/runtime/graph_execution_service.py:131

GraphExecutionReceipt.to_dict

def GraphExecutionReceipt.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/graph_execution_service.py:134

GraphOperationRegistry.__init__

def GraphOperationRegistry.__init__(self) -> None

class method · internal · tech_connector/game_engine/runtime/graph_execution_service.py:152

GraphOperationRegistry.register

def GraphOperationRegistry.register(self, operation: str, handler: GraphOperationHandler, *, replace: bool=False) -> None

class method · public name · tech_connector/game_engine/runtime/graph_execution_service.py:156

GraphOperationRegistry.resolve

def GraphOperationRegistry.resolve(self, operation: str) -> GraphOperationHandler | None

class method · public name · tech_connector/game_engine/runtime/graph_execution_service.py:171

GraphOperationRegistry.operation_names

def GraphOperationRegistry.operation_names(self) -> tuple[str, ...]

class method · public name · tech_connector/game_engine/runtime/graph_execution_service.py:175

create_default_graph_operation_registry

def create_default_graph_operation_registry() -> GraphOperationRegistry

module function · public name · tech_connector/game_engine/runtime/graph_execution_service.py:180

execute_graph_manifest

def execute_graph_manifest(manifest: Mapping[str, Any], context: GraphExecutionContext | MutableMapping[str, Any], *, registry: GraphOperationRegistry | None=None, limits: GraphExecutionLimits | None=None, cancellation_check: CancellationCheck | None=None, raise_on_error: bool=False) -> GraphExecutionReceipt

module function · public name · tech_connector/game_engine/runtime/graph_execution_service.py:198

Execute a manifest transactionally and return a source-mapped receipt.

_validate_manifest_header

def _validate_manifest_header(manifest: Mapping[str, Any]) -> None

module function · internal · tech_connector/game_engine/runtime/graph_execution_service.py:324

_resolve_node_inputs

def _resolve_node_inputs(node: Mapping[str, Any], outputs: Mapping[str, Any]) -> dict[str, Any]

module function · internal · tech_connector/game_engine/runtime/graph_execution_service.py:342

_check_runtime_limits

def _check_runtime_limits(started: float, limits: GraphExecutionLimits, operation_count: int, cancellation_check: CancellationCheck | None) -> None

module function · internal · tech_connector/game_engine/runtime/graph_execution_service.py:364

_check_after_operation

def _check_after_operation(started: float, limits: GraphExecutionLimits, cancellation_check: CancellationCheck | None) -> None

module function · internal · tech_connector/game_engine/runtime/graph_execution_service.py:384

_check_authority

def _check_authority(authority: str, raw_contract: Any, node_id: str, operation: str) -> None

module function · internal · tech_connector/game_engine/runtime/graph_execution_service.py:401

_read_input_action

def _read_input_action(*, context: GraphExecutionContext, axis: str='Move') -> tuple[float, float]

module function · internal · tech_connector/game_engine/runtime/graph_execution_service.py:418

_calculate_movement_velocity

def _calculate_movement_velocity(*, context: GraphExecutionContext, direction: Any, speed: float=6.0, acceleration: float=24.0, target: str='Self') -> tuple[float, float, float]

module function · internal · tech_connector/game_engine/runtime/graph_execution_service.py:429

_set_actor_velocity

def _set_actor_velocity(*, context: GraphExecutionContext, target: str='Self', velocity: Any) -> None

module function · internal · tech_connector/game_engine/runtime/graph_execution_service.py:450

_emit_gameplay_event

def _emit_gameplay_event(*, context: GraphExecutionContext, event: str, payload: Mapping[str, Any] | None=None) -> None

module function · internal · tech_connector/game_engine/runtime/graph_execution_service.py:467

_variables

def _variables(context: GraphExecutionContext) -> dict[str, Any]

module function · internal · tech_connector/game_engine/runtime/graph_execution_service.py:495

_set_variable

def _set_variable(*, context: GraphExecutionContext, name: str, value: Any) -> Any

module function · internal · tech_connector/game_engine/runtime/graph_execution_service.py:502

_add_variable

def _add_variable(*, context: GraphExecutionContext, name: str, amount: float=1.0) -> float

module function · internal · tech_connector/game_engine/runtime/graph_execution_service.py:510

_branch_greater

def _branch_greater(*, context: GraphExecutionContext, name: str, threshold: float, event: str='') -> bool

module function · internal · tech_connector/game_engine/runtime/graph_execution_service.py:521

_spawn_entity

def _spawn_entity(*, context: GraphExecutionContext, name: str, x: float=0.0, y: float=0.0, z: float=0.0) -> str

module function · internal · tech_connector/game_engine/runtime/graph_execution_service.py:529

_get_component_position

def _get_component_position(*, context: GraphExecutionContext, target: str='Self') -> tuple[float, float, float]

module function · internal · tech_connector/game_engine/runtime/graph_execution_service.py:541

_set_component_position

def _set_component_position(*, context: GraphExecutionContext, target: str='Self', x: float=0.0, y: float=0.0, z: float=0.0) -> None

module function · internal · tech_connector/game_engine/runtime/graph_execution_service.py:548

_set_runtime_ui_text

def _set_runtime_ui_text(*, context: GraphExecutionContext, text: str) -> str

module function · internal · tech_connector/game_engine/runtime/graph_execution_service.py:557

_play_audio

def _play_audio(*, context: GraphExecutionContext, asset: str) -> None

module function · internal · tech_connector/game_engine/runtime/graph_execution_service.py:562

_request_save

def _request_save(*, context: GraphExecutionContext) -> None

module function · internal · tech_connector/game_engine/runtime/graph_execution_service.py:569

_finite_vector

def _finite_vector(value: Any, size: int, label: str) -> tuple[float, ...]

module function · internal · tech_connector/game_engine/runtime/graph_execution_service.py:573

_non_negative_finite

def _non_negative_finite(value: Any, label: str) -> float

module function · internal · tech_connector/game_engine/runtime/graph_execution_service.py:582

_move_toward

def _move_toward(current: tuple[float, ...], target: tuple[float, ...], maximum_change: float) -> tuple[float, ...]

module function · internal · tech_connector/game_engine/runtime/graph_execution_service.py:589

_commit_context

def _commit_context(original: GraphExecutionContext | MutableMapping[str, Any], source: GraphExecutionContext, staged: GraphExecutionContext) -> None

module function · internal · tech_connector/game_engine/runtime/graph_execution_service.py:602

_elapsed_ms

def _elapsed_ms(started: float) -> float

module function · internal · tech_connector/game_engine/runtime/graph_execution_service.py:615

_summarize_value

def _summarize_value(value: Any) -> str

module function · internal · tech_connector/game_engine/runtime/graph_execution_service.py:619

tech_connector.game_engine.runtime.graph_instance_service

GraphTickReceipt.ok

def GraphTickReceipt.ok(self) -> bool

class method · public name · tech_connector/game_engine/runtime/graph_instance_service.py:32

GraphTickReceipt.to_dict

def GraphTickReceipt.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/graph_instance_service.py:37

GraphRuntimeInstance.__init__

def GraphRuntimeInstance.__init__(self, manifest: Mapping[str, Any], context: GraphExecutionContext | Mapping[str, Any], *, registry: GraphOperationRegistry | None=None, limits: GraphExecutionLimits | None=None, fixed_step_seconds: float=1.0 / 60.0, max_substeps: int=4, max_frame_delta: float=0.25) -> None

class method · internal · tech_connector/game_engine/runtime/graph_instance_service.py:49

GraphRuntimeInstance.entry_event

def GraphRuntimeInstance.entry_event(self) -> str

class method · public name · tech_connector/game_engine/runtime/graph_instance_service.py:81

GraphRuntimeInstance.begin_play

def GraphRuntimeInstance.begin_play(self) -> GraphExecutionReceipt

class method · public name · tech_connector/game_engine/runtime/graph_instance_service.py:84

GraphRuntimeInstance.run_event

def GraphRuntimeInstance.run_event(self, event_name: str, payload: Mapping[str, Any] | None=None) -> GraphExecutionReceipt

class method · public name · tech_connector/game_engine/runtime/graph_instance_service.py:95

GraphRuntimeInstance.tick

def GraphRuntimeInstance.tick(self, frame_delta_seconds: float) -> GraphTickReceipt

class method · public name · tech_connector/game_engine/runtime/graph_instance_service.py:126

GraphRuntimeInstance.set_paused

def GraphRuntimeInstance.set_paused(self, paused: bool) -> None

class method · public name · tech_connector/game_engine/runtime/graph_instance_service.py:187

GraphRuntimeInstance.reset_timing

def GraphRuntimeInstance.reset_timing(self) -> None

class method · public name · tech_connector/game_engine/runtime/graph_instance_service.py:190

GraphRuntimeInstance.hot_swap

def GraphRuntimeInstance.hot_swap(self, manifest: Mapping[str, Any]) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/graph_instance_service.py:195

GraphRuntimeInstance._refresh_external_context

def GraphRuntimeInstance._refresh_external_context(self) -> None

class method · internal · tech_connector/game_engine/runtime/graph_instance_service.py:223

GraphRuntimeInstance._publish_external_context

def GraphRuntimeInstance._publish_external_context(self) -> None

class method · internal · tech_connector/game_engine/runtime/graph_instance_service.py:238

GraphRuntimeInstance._validate_manifest

def GraphRuntimeInstance._validate_manifest(manifest: Mapping[str, Any]) -> None

class method · internal · tech_connector/game_engine/runtime/graph_instance_service.py:247

_idle_execution_receipt

def _idle_execution_receipt(program_id: str, message: str) -> GraphExecutionReceipt

module function · internal · tech_connector/game_engine/runtime/graph_instance_service.py:258

_event_key

def _event_key(value: str) -> str

module function · internal · tech_connector/game_engine/runtime/graph_instance_service.py:272

_positive_finite

def _positive_finite(value: Any, label: str) -> float

module function · internal · tech_connector/game_engine/runtime/graph_instance_service.py:276

_non_negative_finite

def _non_negative_finite(value: Any, label: str) -> float

module function · internal · tech_connector/game_engine/runtime/graph_instance_service.py:283

tech_connector.game_engine.runtime.graph_runtime

register_graph_runtime_operation

def register_graph_runtime_operation(operation: str, handler: GraphOperationHandler) -> None

module function · public name · tech_connector/game_engine/runtime/graph_runtime.py:12

unregister_graph_runtime_operation

def unregister_graph_runtime_operation(operation: str) -> None

module function · public name · tech_connector/game_engine/runtime/graph_runtime.py:18

graph_call

def graph_call(operation: str, *, context: Any, **inputs: Any) -> Any

module function · public name · tech_connector/game_engine/runtime/graph_runtime.py:22

Execute one graph operation through context overrides or the reference registry. The future C++ runtime consumes the matching native graph manifest. This Python dispatcher keeps generated code executable in editor previews and tests without

tech_connector.game_engine.runtime.level_sequence_runtime_service

SequenceRuntimeCommand.to_dict

def SequenceRuntimeCommand.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/level_sequence_runtime_service.py:21

LevelSequenceRuntimeDirector.__init__

def LevelSequenceRuntimeDirector.__init__(self, project_root: str | Path, database: AssetDatabase, *, command_sink: Callable[[SequenceRuntimeCommand], Any] | None=None) -> None

class method · internal · tech_connector/game_engine/runtime/level_sequence_runtime_service.py:38

LevelSequenceRuntimeDirector.tick

def LevelSequenceRuntimeDirector.tick(self, sequence_asset_id: str, frame: int, *, execute: bool=True) -> SequenceRuntimeFrame

class method · public name · tech_connector/game_engine/runtime/level_sequence_runtime_service.py:49

LevelSequenceRuntimeDirector.reset

def LevelSequenceRuntimeDirector.reset(self, *, execute: bool=True) -> tuple[SequenceRuntimeCommand, ...]

class method · public name · tech_connector/game_engine/runtime/level_sequence_runtime_service.py:85

LevelSequenceRuntimeDirector._command

def LevelSequenceRuntimeDirector._command(self, operation: str, level_id: str, *, weight: float=0.0, payload: dict[str, Any] | None=None) -> SequenceRuntimeCommand

class method · internal · tech_connector/game_engine/runtime/level_sequence_runtime_service.py:92

LevelSequenceRuntimeDirector._preload_levels

def LevelSequenceRuntimeDirector._preload_levels(values: Mapping[str, Any], frame: int) -> set[str]

class method · internal · tech_connector/game_engine/runtime/level_sequence_runtime_service.py:99

LevelSequenceRuntimeDirector._unload_when_inactive

def LevelSequenceRuntimeDirector._unload_when_inactive(values: Mapping[str, Any], level_id: str) -> bool

class method · internal · tech_connector/game_engine/runtime/level_sequence_runtime_service.py:111

tech_connector.game_engine.runtime.mesh_lod_service

MeshLodRequest.__post_init__

def MeshLodRequest.__post_init__(self) -> None

class method · internal · tech_connector/game_engine/runtime/mesh_lod_service.py:44

MeshLodRequest.validate

def MeshLodRequest.validate(self) -> list[str]

class method · public name · tech_connector/game_engine/runtime/mesh_lod_service.py:48

MeshLodRequest.to_dict

def MeshLodRequest.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/mesh_lod_service.py:67

generate_mesh_lods

def generate_mesh_lods(request: MeshLodRequest, *, timeout: float=300.0, cancel_event: threading.Event | None=None, blender_executable: str | os.PathLike[str] | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/mesh_lod_service.py:78

tech_connector.game_engine.runtime.native_graph_backend

NativeGraphBackend.__init__

def NativeGraphBackend.__init__(self, library_path: str | Path | None=None) -> None

class method · internal · tech_connector/game_engine/runtime/native_graph_backend.py:50

NativeGraphBackend.abi_version

def NativeGraphBackend.abi_version(self) -> int

class method · public name · tech_connector/game_engine/runtime/native_graph_backend.py:73

NativeGraphBackend.clamp_input_axis

def NativeGraphBackend.clamp_input_axis(self, value: Any) -> tuple[float, float]

class method · public name · tech_connector/game_engine/runtime/native_graph_backend.py:76

NativeGraphBackend.calculate_movement_velocity

def NativeGraphBackend.calculate_movement_velocity(self, *, direction: Any, current_velocity: Any, maximum_speed: float, acceleration: float, delta_seconds: float) -> tuple[float, float, float]

class method · public name · tech_connector/game_engine/runtime/native_graph_backend.py:88

NativeGraphBackend._configure_signatures

def NativeGraphBackend._configure_signatures(self) -> None

class method · internal · tech_connector/game_engine/runtime/native_graph_backend.py:119

NativeGraphBackend._check

def NativeGraphBackend._check(self, status: int) -> None

class method · internal · tech_connector/game_engine/runtime/native_graph_backend.py:135

discover_native_graph_library

def discover_native_graph_library(search_roots: Iterable[str | Path]=()) -> Path | None

module function · public name · tech_connector/game_engine/runtime/native_graph_backend.py:143

native_graph_backend_status

def native_graph_backend_status() -> NativeGraphBackendStatus

module function · public name · tech_connector/game_engine/runtime/native_graph_backend.py:170

_vector

def _vector(value: Any, size: int, label: str) -> tuple[float, ...]

module function · internal · tech_connector/game_engine/runtime/native_graph_backend.py:189

tech_connector.game_engine.runtime.procedural_runtime_service

_vec3

def _vec3(value: Any, default: Vec3=(0.0, 0.0, 0.0)) -> Vec3

module function · internal · tech_connector/game_engine/runtime/procedural_runtime_service.py:19

_normalized

def _normalized(value: Vec3) -> Vec3

module function · internal · tech_connector/game_engine/runtime/procedural_runtime_service.py:27

ProceduralRuntimeProfile.validate

def ProceduralRuntimeProfile.validate(self) -> list[str]

class method · public name · tech_connector/game_engine/runtime/procedural_runtime_service.py:55

ProceduralRuntimeChunk.center

def ProceduralRuntimeChunk.center(self) -> Vec3

class method · public name · tech_connector/game_engine/runtime/procedural_runtime_service.py:76

ProceduralRuntimeChunk.fingerprint

def ProceduralRuntimeChunk.fingerprint(self) -> str

class method · public name · tech_connector/game_engine/runtime/procedural_runtime_service.py:80

ProceduralRuntimeChunk.to_dict

def ProceduralRuntimeChunk.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/procedural_runtime_service.py:86

ProceduralRuntimeSchedule.to_dict

def ProceduralRuntimeSchedule.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/procedural_runtime_service.py:116

_instance_grid_size

def _instance_grid_size(instance: ProceduralInstance, profile: ProceduralRuntimeProfile) -> float

module function · internal · tech_connector/game_engine/runtime/procedural_runtime_service.py:125

partition_procedural_result

def partition_procedural_result(result: ProceduralCookResult, profile: ProceduralRuntimeProfile | None=None) -> list[ProceduralRuntimeChunk]

module function · public name · tech_connector/game_engine/runtime/procedural_runtime_service.py:139

Place each stable instance into exactly one hierarchical streaming grid.

_chunk_priority

def _chunk_priority(chunk: ProceduralRuntimeChunk, source: ProceduralGenerationSource, direction_weight: float) -> tuple[float, float]

module function · internal · tech_connector/game_engine/runtime/procedural_runtime_service.py:168

schedule_procedural_runtime

def schedule_procedural_runtime(chunks: Iterable[ProceduralRuntimeChunk], sources: Iterable[ProceduralGenerationSource], *, loaded_chunk_ids: Iterable[str]=(), profile: ProceduralRuntimeProfile | None=None) -> ProceduralRuntimeSchedule

module function · public name · tech_connector/game_engine/runtime/procedural_runtime_service.py:183

Build one frame's bounded generation, keep, cleanup, and deferred work.

tech_connector.game_engine.runtime.runtime_geometry_compiler_service

compile_point_runtime_proxy

def compile_point_runtime_proxy(vertices: Sequence[Sequence[float]], faces: Sequence[Sequence[int]], output_path: str | os.PathLike[str], *, face_material_ids: Sequence[int] | None=None, materials: Sequence[dict[str, Any]]=(), page_size: int=512, cancel_event: threading.Event | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/runtime_geometry_compiler_service.py:20

compile_virtualized_hard_surface

def compile_virtualized_hard_surface(vertices: Sequence[Sequence[float]], faces: Sequence[Sequence[int]], output_path: str | os.PathLike[str], *, max_vertices: int=64, max_triangles: int=126, meshlets_per_page: int=32, cancel_event: threading.Event | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/runtime_geometry_compiler_service.py:73

_validated_triangles

def _validated_triangles(vertices, faces)

module function · internal · tech_connector/game_engine/runtime/runtime_geometry_compiler_service.py:182

_triangle_material_ids

def _triangle_material_ids(faces, source_faces, face_material_ids)

module function · internal · tech_connector/game_engine/runtime/runtime_geometry_compiler_service.py:200

_material_channels

def _material_channels(materials, material_id)

module function · internal · tech_connector/game_engine/runtime/runtime_geometry_compiler_service.py:207

_morton_order

def _morton_order(positions)

module function · internal · tech_connector/game_engine/runtime/runtime_geometry_compiler_service.py:218

_pages_for_points

def _pages_for_points(positions, page_size)

module function · internal · tech_connector/game_engine/runtime/runtime_geometry_compiler_service.py:230

_meshlet_hierarchy

def _meshlet_hierarchy(bounds)

module function · internal · tech_connector/game_engine/runtime/runtime_geometry_compiler_service.py:238

_atomic_npz

def _atomic_npz(path, manifest, **arrays)

module function · internal · tech_connector/game_engine/runtime/runtime_geometry_compiler_service.py:259

_check_cancel

def _check_cancel(event)

module function · internal · tech_connector/game_engine/runtime/runtime_geometry_compiler_service.py:275

tech_connector.game_engine.runtime.runtime_geometry_scalability_service

build_runtime_geometry_plan

def build_runtime_geometry_plan(asset_id: str, *, triangle_count: int, material_features: list[str] | tuple[str, ...]=(), deforming: bool=False, collision_required: bool=True, target_platforms: list[str] | tuple[str, ...]=('desktop',)) -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/runtime_geometry_scalability_service.py:11

Build a measurable hybrid LOD/point-runtime plan without claiming conversion exists yet.

validate_runtime_geometry_plan

def validate_runtime_geometry_plan(plan: dict[str, Any]) -> list[str]

module function · public name · tech_connector/game_engine/runtime/runtime_geometry_scalability_service.py:127

Return structural planning errors before a future compiler accepts the plan.

tech_connector.game_engine.runtime.tc_cloth_authoring_service

configure_cloth_quality

def configure_cloth_quality(world: Any, profile_id: str='realtime', *, collision_thickness_scale: float=1.0, strain_warning: float=1.15) -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/tc_cloth_authoring_service.py:52

Apply one coherent quality profile without changing cloth topology.

apply_cloth_property_maps

def apply_cloth_property_maps(world: Any, maps: ClothPropertyMaps | Mapping[str, Sequence[float]]) -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/tc_cloth_authoring_service.py:103

Apply paintable pin, mass, stiffness, thickness, and drag controls.

create_cloth_seams

def create_cloth_seams(world: Any, vertex_pairs: Iterable[Sequence[int]], *, compliance: float=1e-08, break_threshold: float=0.0) -> list[int]

module function · public name · tech_connector/game_engine/runtime/tc_cloth_authoring_service.py:165

Create editable sew/weld constraints between garment border vertices.

enable_dihedral_bending

def enable_dihedral_bending(world: Any, *, compliance: float | None=None) -> list[int]

module function · public name · tech_connector/game_engine/runtime/tc_cloth_authoring_service.py:196

Build true adjacent-triangle angle constraints from the cloth surface.

configure_cloth_collision_layers

def configure_cloth_collision_layers(world: Any, layer_indices: Sequence[int], *, priorities: Sequence[float]=(), mode: str='all') -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/tc_cloth_authoring_service.py:238

Assign garment collision layers and resolution priorities per vertex.

cloth_diagnostics

def cloth_diagnostics(world: Any) -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/tc_cloth_authoring_service.py:282

cloth_export_contract

def cloth_export_contract(destination: str='portable') -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/tc_cloth_authoring_service.py:324

cloth_authoring_schema

def cloth_authoring_schema() -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/tc_cloth_authoring_service.py:345

_apply_constraint_stiffness

def _apply_constraint_stiffness(world: Any, paint: tuple[float, ...], kinds: set[str]) -> None

module function · internal · tech_connector/game_engine/runtime/tc_cloth_authoring_service.py:367

_triangulate

def _triangulate(faces: Iterable[Sequence[int]]) -> list[tuple[int, int, int]]

module function · internal · tech_connector/game_engine/runtime/tc_cloth_authoring_service.py:379

_dihedral_angle

def _dihedral_angle(edge_first, edge_second, opposite_first, opposite_second) -> float

module function · internal · tech_connector/game_engine/runtime/tc_cloth_authoring_service.py:387

tech_connector.game_engine.runtime.tc_collision_acceleration_service

TriangleBvhNode.leaf

def TriangleBvhNode.leaf(self) -> bool

class method · public name · tech_connector/game_engine/runtime/tc_collision_acceleration_service.py:22

TriangleBvhQuery.candidate_ratio

def TriangleBvhQuery.candidate_ratio(self) -> float

class method · public name · tech_connector/game_engine/runtime/tc_collision_acceleration_service.py:34

TriangleBvhQuery.to_dict

def TriangleBvhQuery.to_dict(self) -> dict[str, float | int]

class method · public name · tech_connector/game_engine/runtime/tc_collision_acceleration_service.py:37

TriangleBvh.build

def TriangleBvh.build(cls, vertices: Iterable[Sequence[float]], faces: Iterable[Sequence[int]], *, leaf_size: int=8) -> 'TriangleBvh'

class method · public name · tech_connector/game_engine/runtime/tc_collision_acceleration_service.py:55

TriangleBvh.query_sphere

def TriangleBvh.query_sphere(self, center: Sequence[float], radius: float) -> TriangleBvhQuery

class method · public name · tech_connector/game_engine/runtime/tc_collision_acceleration_service.py:72

TriangleBvh.refit

def TriangleBvh.refit(self, vertices: Iterable[Sequence[float]]) -> None

class method · public name · tech_connector/game_engine/runtime/tc_collision_acceleration_service.py:95

TriangleBvh.diagnostics

def TriangleBvh.diagnostics(self) -> dict[str, int | float]

class method · public name · tech_connector/game_engine/runtime/tc_collision_acceleration_service.py:103

TriangleBvh._build_node

def TriangleBvh._build_node(self, triangle_indices: list[int]) -> int

class method · internal · tech_connector/game_engine/runtime/tc_collision_acceleration_service.py:127

TriangleBvh._refit_node

def TriangleBvh._refit_node(self, node_index: int) -> Bounds

class method · internal · tech_connector/game_engine/runtime/tc_collision_acceleration_service.py:153

_triangulate

def _triangulate(faces: Iterable[Sequence[int]]) -> list[Triangle]

module function · internal · tech_connector/game_engine/runtime/tc_collision_acceleration_service.py:167

_triangle_bounds

def _triangle_bounds(vertices: list[Vec3], triangle: Triangle) -> Bounds

module function · internal · tech_connector/game_engine/runtime/tc_collision_acceleration_service.py:177

_bounds_for_triangles

def _bounds_for_triangles(vertices: list[Vec3], triangles: list[Triangle], triangle_indices: list[int]) -> Bounds

module function · internal · tech_connector/game_engine/runtime/tc_collision_acceleration_service.py:185

_merge_bounds

def _merge_bounds(bounds: list[Bounds]) -> Bounds

module function · internal · tech_connector/game_engine/runtime/tc_collision_acceleration_service.py:191

_triangle_centroid

def _triangle_centroid(vertices: list[Vec3], triangle: Triangle) -> Vec3

module function · internal · tech_connector/game_engine/runtime/tc_collision_acceleration_service.py:200

_centroid_bounds

def _centroid_bounds(vertices: list[Vec3], triangles: list[Triangle], triangle_indices: list[int]) -> Bounds

module function · internal · tech_connector/game_engine/runtime/tc_collision_acceleration_service.py:205

_sphere_overlaps_bounds

def _sphere_overlaps_bounds(center: Vec3, radius: float, bounds: Bounds) -> bool

module function · internal · tech_connector/game_engine/runtime/tc_collision_acceleration_service.py:215

tech_connector.game_engine.runtime.tc_deformable_surface_service

DeformableSurface.__post_init__

def DeformableSurface.__post_init__(self) -> None

class method · internal · tech_connector/game_engine/runtime/tc_deformable_surface_service.py:62

DeformableSurface.material_properties

def DeformableSurface.material_properties(self) -> SurfaceMaterial

class method · public name · tech_connector/game_engine/runtime/tc_deformable_surface_service.py:72

DeformableSurface.apply_footprint

def DeformableSurface.apply_footprint(self, position: Vec3, *, size: tuple[float, float]=(0.28, 0.12), depth: float=0.045, rotation: float=0.0, tread: Iterable[float] | None=None) -> SurfaceMark

class method · public name · tech_connector/game_engine/runtime/tc_deformable_surface_service.py:75

DeformableSurface.apply_contact

def DeformableSurface.apply_contact(self, position: Vec3, *, radius: float, depth: float, kind: str='contact') -> SurfaceMark

class method · public name · tech_connector/game_engine/runtime/tc_deformable_surface_service.py:104

DeformableSurface.apply_projectile

def DeformableSurface.apply_projectile(self, position: Vec3, direction: Vec3, *, energy: float, radius: float=0.015, thickness: float=0.1) -> SurfaceMark

class method · public name · tech_connector/game_engine/runtime/tc_deformable_surface_service.py:114

DeformableSurface.step

def DeformableSurface.step(self, dt: float) -> None

class method · public name · tech_connector/game_engine/runtime/tc_deformable_surface_service.py:134

DeformableSurface.to_dict

def DeformableSurface.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_deformable_surface_service.py:155

DeformableSurface._depress

def DeformableSurface._depress(self, shape, depth: float) -> None

class method · internal · tech_connector/game_engine/runtime/tc_deformable_surface_service.py:169

DeformableSurface._mark

def DeformableSurface._mark(self, kind: str, position: Vec3, radius: float, depth: float, *, metadata: dict[str, Any] | None=None) -> SurfaceMark

class method · internal · tech_connector/game_engine/runtime/tc_deformable_surface_service.py:184

tech_connector.game_engine.runtime.tc_effect_system_service

EffectSystem.to_dict

def EffectSystem.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_effect_system_service.py:126

module

def module(module_type: str, phase: str='update', **parameters: Any) -> EffectModule

module function · public name · tech_connector/game_engine/runtime/tc_effect_system_service.py:149

create_effect_world

def create_effect_world(preset: str, *, quality: str='high', seed: int=1) -> SimulationWorld

module function · public name · tech_connector/game_engine/runtime/tc_effect_system_service.py:153

create_effect_preset

def create_effect_preset(preset: str, *, quality: str='high', seed: int=1) -> EffectSystem

module function · public name · tech_connector/game_engine/runtime/tc_effect_system_service.py:179

effect_preset_names

def effect_preset_names() -> list[str]

module function · public name · tech_connector/game_engine/runtime/tc_effect_system_service.py:234

set_emitter_renderer

def set_emitter_renderer(system: EffectSystem, emitter_id: str, renderer_type: str, *, asset_id: str='', renderer_parameters: dict[str, Any] | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/tc_effect_system_service.py:245

effect_emitter_anchor

def effect_emitter_anchor(emitter: EffectEmitter) -> Vec3

module function · public name · tech_connector/game_engine/runtime/tc_effect_system_service.py:263

Return a stable manipulation anchor for every supported spawn shape.

set_effect_emitter_interactive

def set_effect_emitter_interactive(system: EffectSystem, emitter_id: str, active: bool, *, spawn_rate: float | None=None) -> EffectEmitter

module function · public name · tech_connector/game_engine/runtime/tc_effect_system_service.py:273

move_effect_emitter

def move_effect_emitter(system: EffectSystem, emitter_id: str, position: Vec3, *, world: SimulationWorld | None=None, move_live_particles: bool=False) -> Vec3

module function · public name · tech_connector/game_engine/runtime/tc_effect_system_service.py:288

Translate an emitter and its local spatial modules to a world-space anchor.

set_effect_parameter

def set_effect_parameter(system: EffectSystem, path: str, value: Any) -> Any

module function · public name · tech_connector/game_engine/runtime/tc_effect_system_service.py:337

add_effect_jiggle

def add_effect_jiggle(system: EffectSystem, emitter_id: str, *, stiffness: float=35.0, damping: float=8.0, influence: float=1.0, max_offset: float=1.0, target: Vec3 | None=None) -> EffectModule

module function · public name · tech_connector/game_engine/runtime/tc_effect_system_service.py:418

Tether effect particles to an authored target with spring secondary motion.

bake_effect_system

def bake_effect_system(world: SimulationWorld, *, start_frame: int=1, end_frame: int=120, frame_rate: float=24.0, progress_callback: Any | None=None, cancel_event: Any | None=None)

module function · public name · tech_connector/game_engine/runtime/tc_effect_system_service.py:445

configure_electric_arc

def configure_electric_arc(system: EffectSystem, source: Vec3, target: Vec3, *, branch_count: int=5, conductivity: float=1.0) -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/tc_effect_system_service.py:486

prepare_effect_step

def prepare_effect_step(system: EffectSystem, world: SimulationWorld, dt: float) -> None

module function · public name · tech_connector/game_engine/runtime/tc_effect_system_service.py:506

finish_effect_step

def finish_effect_step(system: EffectSystem, world: SimulationWorld, dt: float) -> None

module function · public name · tech_connector/game_engine/runtime/tc_effect_system_service.py:596

_compact_dead_effect_particles

def _compact_dead_effect_particles(system: EffectSystem, world: SimulationWorld) -> int

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:656

Remove expired effect particles when no index-based physics constraints can reference them.

_spawn_particles

def _spawn_particles(system: EffectSystem, emitter: EffectEmitter, world: SimulationWorld, count: int, *, override_position: Vec3 | None=None, inherited_velocity: Vec3=(0.0, 0.0, 0.0)) -> None

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:686

_solver_particle_state

def _solver_particle_state(solver_profile: str) -> tuple[str, str, str]

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:720

_apply_solver_material_controls

def _apply_solver_material_controls(system: EffectSystem, world: SimulationWorld) -> None

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:730

_sample_shape

def _sample_shape(shape: dict[str, Any], rng: random.Random) -> tuple[Vec3, Vec3]

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:750

_apply_spawn_modules

def _apply_spawn_modules(emitter: EffectEmitter, particle: SimulationParticle, rng: random.Random) -> None

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:778

_apply_update_modules

def _apply_update_modules(system: EffectSystem, emitter: EffectEmitter, particle: SimulationParticle, dt: float) -> None

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:802

_apply_over_life_modules

def _apply_over_life_modules(emitter: EffectEmitter, particle: SimulationParticle) -> None

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:852

_emitter

def _emitter(system: EffectSystem, emitter_id: str) -> EffectEmitter | None

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:864

_emitter_template

def _emitter_template(emitter_id: str, name: str, **kwargs: Any) -> EffectEmitter

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:868

_sparks

def _sparks() -> EffectSystem

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:872

_explosion

def _explosion() -> EffectSystem

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:882

_portal

def _portal() -> EffectSystem

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:889

_magic_ribbons

def _magic_ribbons() -> EffectSystem

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:894

_lightning

def _lightning() -> EffectSystem

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:899

_fireworks

def _fireworks() -> EffectSystem

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:904

_rain

def _rain() -> EffectSystem

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:910

_snow

def _snow() -> EffectSystem

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:915

_dust

def _dust() -> EffectSystem

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:920

_disintegration

def _disintegration() -> EffectSystem

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:925

_shield_impact

def _shield_impact() -> EffectSystem

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:930

_tornado

def _tornado() -> EffectSystem

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:935

_plasma_arc

def _plasma_arc() -> EffectSystem

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:940

_chain_lightning

def _chain_lightning() -> EffectSystem

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:948

_tesla_coil

def _tesla_coil() -> EffectSystem

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:956

_electrical_storm

def _electrical_storm() -> EffectSystem

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:967

_fog

def _fog() -> EffectSystem

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:974

_clouds

def _clouds() -> EffectSystem

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:979

_sandstorm

def _sandstorm() -> EffectSystem

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:984

_hurricane

def _hurricane() -> EffectSystem

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:989

_volcano

def _volcano() -> EffectSystem

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:1000

_mudslide

def _mudslide() -> EffectSystem

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:1006

_avalanche

def _avalanche() -> EffectSystem

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:1011

_earthquake

def _earthquake() -> EffectSystem

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:1016

_jello

def _jello() -> EffectSystem

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:1022

_ocean

def _ocean() -> EffectSystem

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:1034

_storm_ocean

def _storm_ocean() -> EffectSystem

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:1046

_aurora

def _aurora() -> EffectSystem

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:1052

_refractive_bubbles

def _refractive_bubbles() -> EffectSystem

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:1057

_heat_haze

def _heat_haze() -> EffectSystem

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:1062

_range

def _range(value: Any, rng: random.Random) -> float

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:1067

_curve

def _curve(keys: Any, amount: float) -> float

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:1073

_gradient

def _gradient(keys: Any, amount: float, fallback: Color) -> Color

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:1085

_color

def _color(value: Any) -> Color

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:1100

_vec

def _vec(value: Any) -> Vec3

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:1105

_random_unit

def _random_unit(rng: random.Random) -> Vec3

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:1110

_add

def _add(first: Vec3, second: Vec3) -> Vec3

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:1117

_subtract

def _subtract(first: Vec3, second: Vec3) -> Vec3

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:1121

_scale

def _scale(value: Vec3, amount: float) -> Vec3

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:1125

_length

def _length(value: Vec3) -> float

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:1129

_normalize

def _normalize(value: Vec3) -> Vec3

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:1133

_cross

def _cross(first: Vec3, second: Vec3) -> Vec3

module function · internal · tech_connector/game_engine/runtime/tc_effect_system_service.py:1138

tech_connector.game_engine.runtime.tc_engine_api

ConfiguredRuntime.receipt

def ConfiguredRuntime.receipt(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_engine_api.py:23

TCEngineAPI.editor

def TCEngineAPI.editor(project_root: str | Path, **options: Any) -> Any

class method · public name · tech_connector/game_engine/runtime/tc_engine_api.py:35

Open the project-scoped editor API used by the UI and Python tools.

TCEngineAPI.configure_runtime

def TCEngineAPI.configure_runtime(world: Any, *, target: str='desktop', goal: str='balanced', quality: str='auto', backend: str='auto', adaptive: bool=True, tick_rate: int | None=None) -> ConfiguredRuntime

class method · public name · tech_connector/game_engine/runtime/tc_engine_api.py:42

TCEngineAPI.create_effect

def TCEngineAPI.create_effect(cls, preset: str, *, target: str='desktop', goal: str='balanced', quality: str='auto', seed: int=1) -> ConfiguredRuntime

class method · public name · tech_connector/game_engine/runtime/tc_engine_api.py:74

TCEngineAPI.update_running_game

def TCEngineAPI.update_running_game(scene_document: Any, scene_path: str | Path, *, force_full: bool=False) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_engine_api.py:88

TCEngineAPI.plan_playtest

def TCEngineAPI.plan_playtest(*, target: str='desktop', session_mode: str='play_in_editor', changed_modes: list[str] | tuple[str, ...]=(), session_connected: bool=False) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_engine_api.py:98

TCEngineAPI.audit_runtime

def TCEngineAPI.audit_runtime(runtime: SimulationRuntimeInstance, *, determinism_receipt: dict[str, Any] | None=None, minimum_performance_samples: int=30) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_engine_api.py:113

TCEngineAPI.qualify_runtime

def TCEngineAPI.qualify_runtime(runtime: SimulationRuntimeInstance, *, ticks: int=30, repeats: int=2, minimum_performance_samples: int=30) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_engine_api.py:123

TCEngineAPI.create_character

def TCEngineAPI.create_character(world: Any, profile: Any) -> Any

class method · public name · tech_connector/game_engine/runtime/tc_engine_api.py:137

TCEngineAPI.solve_grounded_animation

def TCEngineAPI.solve_grounded_animation(runtime: Any, limb_settings: Any, bone_positions: Any, ground_query: Any, **options: Any) -> Any

class method · public name · tech_connector/game_engine/runtime/tc_engine_api.py:145

Evaluate post-animation ground IK through the public engine API.

TCEngineAPI.step_vehicle

def TCEngineAPI.step_vehicle(runtime: Any, wheels: Any, chassis_position: Any, chassis_velocity: Any, controls: Any, ground_query: Any, **options: Any) -> Any

class method · public name · tech_connector/game_engine/runtime/tc_engine_api.py:156

Evaluate suspension, steering, drive, braking, and wheel contacts.

TCEngineAPI.decide_character

def TCEngineAPI.decide_character(world: Any, character_id: str, actions: Any, *, available_affordances: Any=(), now: float=0.0, model_proposal: Any=None) -> Any

class method · public name · tech_connector/game_engine/runtime/tc_engine_api.py:171

TCEngineAPI.execute_world_intelligence

def TCEngineAPI.execute_world_intelligence(world: Any, runtime_state: Any, command: str, **payload: Any) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_engine_api.py:193

TCEngineAPI.create_game_experience

def TCEngineAPI.create_game_experience(profile_id: str, game_types: Any, **options: Any) -> Any

class method · public name · tech_connector/game_engine/runtime/tc_engine_api.py:199

TCEngineAPI.validate_game_experience

def TCEngineAPI.validate_game_experience(profile: Any) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_engine_api.py:205

TCEngineAPI.create_presentation

def TCEngineAPI.create_presentation(profile_id: str, visual_style: str, **options: Any) -> Any

class method · public name · tech_connector/game_engine/runtime/tc_engine_api.py:211

TCEngineAPI.preview_presentation

def TCEngineAPI.preview_presentation(profile: Any, **options: Any) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_engine_api.py:217

TCEngineAPI.graph_to_code

def TCEngineAPI.graph_to_code(program: Any) -> str

class method · public name · tech_connector/game_engine/runtime/tc_engine_api.py:223

TCEngineAPI.code_to_graph

def TCEngineAPI.code_to_graph(source_code: str, previous: Any=None) -> Any

class method · public name · tech_connector/game_engine/runtime/tc_engine_api.py:229

TCEngineAPI.compile_graph

def TCEngineAPI.compile_graph(program: Any) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_engine_api.py:235

TCEngineAPI.execute_graph

def TCEngineAPI.execute_graph(program_or_manifest: Any, context: Any, **options: Any) -> Any

class method · public name · tech_connector/game_engine/runtime/tc_engine_api.py:241

TCEngineAPI.create_graph_runtime

def TCEngineAPI.create_graph_runtime(program_or_manifest: Any, context: Any, **options: Any) -> Any

class method · public name · tech_connector/game_engine/runtime/tc_engine_api.py:256

engine_access_contract

def engine_access_contract() -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/tc_engine_api.py:274

Describe equivalent entry points for capability discovery and chat guidance.

tech_connector.game_engine.runtime.tc_engine_readiness_service

EngineReadinessGate.to_dict

def EngineReadinessGate.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_engine_readiness_service.py:21

EngineReadinessReport.to_dict

def EngineReadinessReport.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_engine_readiness_service.py:33

qualify_runtime_determinism

def qualify_runtime_determinism(runtime: SimulationRuntimeInstance, *, ticks: int=30, repeats: int=2) -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/tc_engine_readiness_service.py:44

Replay isolated instances and compare canonical state hashes tick for tick.

audit_engine_readiness

def audit_engine_readiness(runtime: SimulationRuntimeInstance, *, determinism_receipt: dict[str, Any] | None=None, minimum_performance_samples: int=30) -> EngineReadinessReport

module function · public name · tech_connector/game_engine/runtime/tc_engine_readiness_service.py:87

Report what is proven, what is falling back, and what still needs qualification.

_gate

def _gate(gate_id: str, passed: bool, summary: str, evidence: dict[str, Any]) -> EngineReadinessGate

module function · internal · tech_connector/game_engine/runtime/tc_engine_readiness_service.py:178

tech_connector.game_engine.runtime.tc_exotic_simulation_service

exotic_simulation_preset_names

def exotic_simulation_preset_names() -> list[str]

module function · public name · tech_connector/game_engine/runtime/tc_exotic_simulation_service.py:50

create_exotic_simulation

def create_exotic_simulation(preset: str, *, seed: int=1, particle_count: int | None=None) -> SimulationWorld

module function · public name · tech_connector/game_engine/runtime/tc_exotic_simulation_service.py:54

simulation_diagnostics

def simulation_diagnostics(world: SimulationWorld) -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/tc_exotic_simulation_service.py:81

Return conserved-quantity overlays shared by viewport and bake validation.

exotic_authoring_schema

def exotic_authoring_schema() -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/tc_exotic_simulation_service.py:121

UI-neutral clean inspector contract for viewport and host-specific panels.

_binary_star

def _binary_star() -> SimulationWorld

module function · internal · tech_connector/game_engine/runtime/tc_exotic_simulation_service.py:133

_asteroid_ring

def _asteroid_ring(*, seed: int, particle_count: int) -> SimulationWorld

module function · internal · tech_connector/game_engine/runtime/tc_exotic_simulation_service.py:151

_magnetosphere

def _magnetosphere(*, seed: int, particle_count: int) -> SimulationWorld

module function · internal · tech_connector/game_engine/runtime/tc_exotic_simulation_service.py:176

_accretion_disk

def _accretion_disk(*, seed: int, particle_count: int) -> SimulationWorld

module function · internal · tech_connector/game_engine/runtime/tc_exotic_simulation_service.py:196

_pic_double_layer

def _pic_double_layer(*, seed: int, particle_count: int) -> SimulationWorld

module function · internal · tech_connector/game_engine/runtime/tc_exotic_simulation_service.py:236

_aurora_curtain

def _aurora_curtain(*, seed: int, particle_count: int) -> SimulationWorld

module function · internal · tech_connector/game_engine/runtime/tc_exotic_simulation_service.py:263

_plasma_jet

def _plasma_jet(*, seed: int, particle_count: int) -> SimulationWorld

module function · internal · tech_connector/game_engine/runtime/tc_exotic_simulation_service.py:291

_roche_breakup

def _roche_breakup() -> SimulationWorld

module function · internal · tech_connector/game_engine/runtime/tc_exotic_simulation_service.py:320

_stellar_merger

def _stellar_merger() -> SimulationWorld

module function · internal · tech_connector/game_engine/runtime/tc_exotic_simulation_service.py:364

_molecular_gas

def _molecular_gas(*, seed: int, particle_count: int) -> SimulationWorld

module function · internal · tech_connector/game_engine/runtime/tc_exotic_simulation_service.py:383

_ferrofluid

def _ferrofluid(*, seed: int, particle_count: int) -> SimulationWorld

module function · internal · tech_connector/game_engine/runtime/tc_exotic_simulation_service.py:403

_assign_material

def _assign_material(world: SimulationWorld, name: str) -> SimulationWorld

module function · internal · tech_connector/game_engine/runtime/tc_exotic_simulation_service.py:413

tech_connector.game_engine.runtime.tc_fx_data_channel_service

FxChannelField.validated

def FxChannelField.validated(self) -> 'FxChannelField'

class method · public name · tech_connector/game_engine/runtime/tc_fx_data_channel_service.py:21

FxDataChannelSchema.validated

def FxDataChannelSchema.validated(self) -> 'FxDataChannelSchema'

class method · public name · tech_connector/game_engine/runtime/tc_fx_data_channel_service.py:40

FxDataChannelSchema.to_dict

def FxDataChannelSchema.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_fx_data_channel_service.py:56

FxDataChannelEvent.to_dict

def FxDataChannelEvent.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_fx_data_channel_service.py:69

FxGraphPort.validated

def FxGraphPort.validated(self) -> 'FxGraphPort'

class method · public name · tech_connector/game_engine/runtime/tc_fx_data_channel_service.py:100

FxSubgraphDefinition.validate

def FxSubgraphDefinition.validate(self) -> list[str]

class method · public name · tech_connector/game_engine/runtime/tc_fx_data_channel_service.py:132

FxSubgraphDefinition.to_dict

def FxSubgraphDefinition.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_fx_data_channel_service.py:168

FxSubgraphDefinition._port_type

def FxSubgraphDefinition._port_type(self, node_id: str, port_name: str, nodes: dict[str, FxGraphNode], *, output: bool) -> str | None

class method · internal · tech_connector/game_engine/runtime/tc_fx_data_channel_service.py:175

FxDataChannel.__post_init__

def FxDataChannel.__post_init__(self) -> None

class method · internal · tech_connector/game_engine/runtime/tc_fx_data_channel_service.py:193

FxDataChannel.publish

def FxDataChannel.publish(self, values: Mapping[str, Any], *, tick: int, source: str='') -> FxDataChannelEvent | None

class method · public name · tech_connector/game_engine/runtime/tc_fx_data_channel_service.py:196

FxDataChannel.read_since

def FxDataChannel.read_since(self, sequence: int=-1, *, through_tick: int | None=None, limit: int | None=None) -> list[FxDataChannelEvent]

class method · public name · tech_connector/game_engine/runtime/tc_fx_data_channel_service.py:211

FxDataChannel.expire

def FxDataChannel.expire(self, current_tick: int) -> int

class method · public name · tech_connector/game_engine/runtime/tc_fx_data_channel_service.py:217

FxDataChannel.statistics

def FxDataChannel.statistics(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_fx_data_channel_service.py:226

FxDataChannel.to_dict

def FxDataChannel.to_dict(self, *, include_events: bool=False) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_fx_data_channel_service.py:232

FxDataChannel._validated_payload

def FxDataChannel._validated_payload(self, values: Mapping[str, Any]) -> dict[str, Any]

class method · internal · tech_connector/game_engine/runtime/tc_fx_data_channel_service.py:239

impact_data_channel

def impact_data_channel(channel_id: str='fx.impacts', *, capacity: int=8192) -> FxDataChannel

module function · public name · tech_connector/game_engine/runtime/tc_fx_data_channel_service.py:254

publish_bound_effect_events

def publish_bound_effect_events(system: Any, *, tick: int) -> list[dict[str, Any]]

module function · public name · tech_connector/game_engine/runtime/tc_fx_data_channel_service.py:265

Map newly emitted effect events into shared typed channels.

_nested_value

def _nested_value(values: Mapping[str, Any], path: str) -> Any

module function · internal · tech_connector/game_engine/runtime/tc_fx_data_channel_service.py:288

_coerce_value

def _coerce_value(value: Any, value_type: str) -> Any

module function · internal · tech_connector/game_engine/runtime/tc_fx_data_channel_service.py:297

tech_connector.game_engine.runtime.tc_fx_workflow_service

FxPerformanceContract.normalized

def FxPerformanceContract.normalized(self) -> 'FxPerformanceContract'

class method · public name · tech_connector/game_engine/runtime/tc_fx_workflow_service.py:60

FxWorkflowPlan.to_dict

def FxWorkflowPlan.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_fx_workflow_service.py:84

FxAuditReport.to_dict

def FxAuditReport.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_fx_workflow_service.py:103

_control

def _control(control_id: str, label: str, minimum: float, maximum: float, default: float, unit: str='', help_text: str='') -> FxAuthoringControl

module function · internal · tech_connector/game_engine/runtime/tc_fx_workflow_service.py:113

solver_profile_for_preset

def solver_profile_for_preset(preset: str) -> FxSolverProfile

module function · public name · tech_connector/game_engine/runtime/tc_fx_workflow_service.py:230

build_fx_workflow_plan

def build_fx_workflow_plan(solver_profile: str, *, quality: str='realtime', requested_backend: str='auto', performance: FxPerformanceContract | None=None) -> FxWorkflowPlan

module function · public name · tech_connector/game_engine/runtime/tc_fx_workflow_service.py:235

audit_fx_world

def audit_fx_world(world: Any) -> FxAuditReport

module function · public name · tech_connector/game_engine/runtime/tc_fx_workflow_service.py:264

Audit solver readiness and budgets without changing the simulation.

_stage_detail

def _stage_detail(stage: str) -> str

module function · internal · tech_connector/game_engine/runtime/tc_fx_workflow_service.py:334

tech_connector.game_engine.runtime.tc_gpu_compute_service

GpuDispatchTelemetry.to_dict

def GpuDispatchTelemetry.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:48

D3D11MeshBvhPayload.memory_bytes

def D3D11MeshBvhPayload.memory_bytes(self) -> int

class method · public name · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:79

compile_d3d11_mesh_bvh

def compile_d3d11_mesh_bvh(collider: Any) -> D3D11MeshBvhPayload

module function · public name · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:83

Flatten the canonical refittable collider BVH for bounded D3D11 stack traversal.

NativeD3D11ParticleCompute.__init__

def NativeD3D11ParticleCompute.__init__(self, library_path: str | Path | None=None)

class method · internal · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:134

NativeD3D11ParticleCompute.resident_particle_count

def NativeD3D11ParticleCompute.resident_particle_count(self) -> int

class method · public name · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:246

NativeD3D11ParticleCompute.resident_distance_constraint_count

def NativeD3D11ParticleCompute.resident_distance_constraint_count(self) -> int

class method · public name · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:250

NativeD3D11ParticleCompute.resident_physics_field_count

def NativeD3D11ParticleCompute.resident_physics_field_count(self) -> int

class method · public name · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:256

NativeD3D11ParticleCompute.resident_mesh_triangle_count

def NativeD3D11ParticleCompute.resident_mesh_triangle_count(self) -> int

class method · public name · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:262

NativeD3D11ParticleCompute.close

def NativeD3D11ParticleCompute.close(self) -> None

class method · public name · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:267

NativeD3D11ParticleCompute.__enter__

def NativeD3D11ParticleCompute.__enter__(self) -> 'NativeD3D11ParticleCompute'

class method · internal · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:275

NativeD3D11ParticleCompute.__exit__

def NativeD3D11ParticleCompute.__exit__(self, *_args: Any) -> None

class method · internal · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:278

NativeD3D11ParticleCompute.__del__

def NativeD3D11ParticleCompute.__del__(self) -> None

class method · internal · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:281

NativeD3D11ParticleCompute.dispatch

def NativeD3D11ParticleCompute.dispatch(self, world: Any, dt: float) -> GpuDispatchTelemetry

class method · public name · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:287

NativeD3D11ParticleCompute.dispatch_runtime

def NativeD3D11ParticleCompute.dispatch_runtime(self, world: Any, dt: float, *, substeps: int | None=None, constraint_iterations: int | None=None, resident_output: bool=False) -> GpuDispatchTelemetry

class method · public name · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:320

Execute a compiled tick while retaining the per-world native device session.

NativeD3D11ParticleCompute.integrate_arrays

def NativeD3D11ParticleCompute.integrate_arrays(self, positions: np.ndarray, velocities: np.ndarray, *, acceleration: tuple[float, float, float]=(0.0, -9.81, 0.0), dt: float=1.0 / 60.0, substeps: int=1, collision_plane: tuple[tuple[float, float, float], float, float, float] | None=None, collision_sphere: tuple[tuple[float, float, float], float, float, float] | None=None) -> GpuDispatchTelemetry

class method · public name · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:445

NativeD3D11ParticleCompute._validate_arrays

def NativeD3D11ParticleCompute._validate_arrays(positions: np.ndarray, velocities: np.ndarray) -> int

class method · internal · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:486

NativeD3D11ParticleCompute.upload_resident_arrays

def NativeD3D11ParticleCompute.upload_resident_arrays(self, positions: np.ndarray, velocities: np.ndarray) -> GpuDispatchTelemetry

class method · public name · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:495

NativeD3D11ParticleCompute.upload_resident_distance_constraints

def NativeD3D11ParticleCompute.upload_resident_distance_constraints(self, world: Any) -> GpuDispatchTelemetry

class method · public name · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:519

Compile enabled distance constraints into conflict-free GPU color batches.

NativeD3D11ParticleCompute.upload_resident_physics_fields

def NativeD3D11ParticleCompute.upload_resident_physics_fields(self, world: Any) -> GpuDispatchTelemetry

class method · public name · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:577

NativeD3D11ParticleCompute.upload_resident_mesh_bvh

def NativeD3D11ParticleCompute.upload_resident_mesh_bvh(self, collider: Any) -> GpuDispatchTelemetry

class method · public name · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:610

NativeD3D11ParticleCompute.step_resident_mesh_bvh

def NativeD3D11ParticleCompute.step_resident_mesh_bvh(self, dt: float) -> GpuDispatchTelemetry

class method · public name · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:641

NativeD3D11ParticleCompute.step_resident_self_collision

def NativeD3D11ParticleCompute.step_resident_self_collision(self, *, cell_size: float, dt: float, iterations: int=1, maximum_bucket_visits: int=4096) -> GpuDispatchTelemetry

class method · public name · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:663

NativeD3D11ParticleCompute.step_resident_distance_constraints

def NativeD3D11ParticleCompute.step_resident_distance_constraints(self, dt: float, iterations: int=1) -> GpuDispatchTelemetry

class method · public name · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:688

NativeD3D11ParticleCompute.step_resident

def NativeD3D11ParticleCompute.step_resident(self, *, acceleration: tuple[float, float, float]=(0.0, -9.81, 0.0), dt: float=1.0 / 60.0, substeps: int=1, collision_plane: tuple[tuple[float, float, float], float, float, float] | None=None, collision_sphere: tuple[tuple[float, float, float], float, float, float] | None=None) -> GpuDispatchTelemetry

class method · public name · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:714

NativeD3D11ParticleCompute.readback_resident

def NativeD3D11ParticleCompute.readback_resident(self, positions: np.ndarray, velocities: np.ndarray) -> GpuDispatchTelemetry

class method · public name · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:753

_world_particle_arrays

def _world_particle_arrays(world: Any) -> tuple[np.ndarray, np.ndarray]

module function · internal · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:777

_particle_constraint_weight

def _particle_constraint_weight(particle: Any) -> float

module function · internal · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:792

_constraint_graph_colors

def _constraint_graph_colors(constraints: list[Any]) -> list[list[int]]

module function · internal · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:798

Greedy deterministic coloring; constraints in one batch never share a particle.

_apply_world_particle_arrays

def _apply_world_particle_arrays(world: Any, positions: np.ndarray, velocities: np.ndarray) -> None

module function · internal · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:815

synchronize_gpu_world

def synchronize_gpu_world(world: Any) -> bool

module function · public name · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:821

Read a compiled D3D11 resident session back before CPU ownership resumes.

mark_gpu_constraints_dirty

def mark_gpu_constraints_dirty(world: Any) -> None

module function · public name · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:832

Request a resident constraint parameter/topology upload on the next GPU tick.

mark_gpu_fields_dirty

def mark_gpu_fields_dirty(world: Any) -> None

module function · public name · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:837

Request a resident physics-field parameter upload on the next GPU tick.

gpu_world_eligibility

def gpu_world_eligibility(world: Any, *, used_material_names: set[str] | None=None, trust_resident_constraints: bool=False) -> tuple[bool, str]

module function · public name · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:842

_uniform_acceleration

def _uniform_acceleration(world: Any) -> tuple[float, float, float]

module function · internal · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:914

_d3d11_spatial_fields

def _d3d11_spatial_fields(world: Any) -> list[Any]

module function · internal · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:935

_physics_field_records

def _physics_field_records(fields: list[Any]) -> list[tuple[float, float, float, float]]

module function · internal · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:948

_plane_parameters

def _plane_parameters(world: Any) -> tuple[tuple[float, float, float], float, float, float] | None

module function · internal · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:971

_sphere_parameters

def _sphere_parameters(world: Any) -> tuple[tuple[float, float, float], float, float, float] | None

module function · internal · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:990

QtRhiParticleCompute.__init__

def QtRhiParticleCompute.__init__(self, api: str='d3d11')

class method · internal · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:1006

QtRhiParticleCompute.dispatch

def QtRhiParticleCompute.dispatch(self, world: Any, dt: float) -> GpuDispatchTelemetry

class method · public name · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:1027

QtRhiParticleCompute.close

def QtRhiParticleCompute.close(self) -> None

class method · public name · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:1061

_ParticleComputeWidget

def _ParticleComputeWidget(api_name: str, base_class: type)

module function · internal · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:1066

Create the QRhiWidget subclass lazily so headless imports remain safe.

_register_service

def _register_service(service: Any) -> Any

module function · internal · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:1221

install_native_gpu_backend

def install_native_gpu_backend(library_path: str | Path | None=None) -> NativeD3D11ParticleCompute

module function · public name · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:1300

install_qrhi_gpu_backend

def install_qrhi_gpu_backend(api: str='d3d11') -> QtRhiParticleCompute

module function · public name · tech_connector/game_engine/runtime/tc_gpu_compute_service.py:1307

Probe, qualify, and register the first real GPU compute executor.

tech_connector.game_engine.runtime.tc_live_game_sync_service

register_live_game_session

def register_live_game_session(session_id: str, transport: Callable[[dict[str, Any]], Any], *, target: str='desktop', capabilities: set[str] | None=None, mode: str='local_playtest') -> LiveGameSession

module function · public name · tech_connector/game_engine/runtime/tc_live_game_sync_service.py:32

unregister_live_game_session

def unregister_live_game_session(session_id: str) -> None

module function · public name · tech_connector/game_engine/runtime/tc_live_game_sync_service.py:50

live_game_sessions

def live_game_sessions() -> list[dict[str, Any]]

module function · public name · tech_connector/game_engine/runtime/tc_live_game_sync_service.py:54

publish_tcscene_save

def publish_tcscene_save(document: dict[str, Any], scene_path: str | Path, *, force_full: bool=False) -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/tc_live_game_sync_service.py:66

Compile changed logical chunks and publish them to every live game session.

build_playtest_iteration_plan

def build_playtest_iteration_plan(*, target: str='desktop', session_mode: str='play_in_editor', changed_modes: list[str] | tuple[str, ...]=(), session_connected: bool=False) -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/tc_live_game_sync_service.py:168

Explain the fastest truthful route from an edit to a playable session.

reset_live_sync_state

def reset_live_sync_state() -> None

module function · public name · tech_connector/game_engine/runtime/tc_live_game_sync_service.py:206

Clear process-local sessions and snapshots; intended for shutdown and tests.

_scene_chunks

def _scene_chunks(document: dict[str, Any]) -> dict[str, tuple[str, Any]]

module function · internal · tech_connector/game_engine/runtime/tc_live_game_sync_service.py:213

_snapshot_mode_for_chunk

def _snapshot_mode_for_chunk(snapshot_value: Any, chunk_id: str) -> str

module function · internal · tech_connector/game_engine/runtime/tc_live_game_sync_service.py:230

_stable_hash

def _stable_hash(payload: Any) -> str

module function · internal · tech_connector/game_engine/runtime/tc_live_game_sync_service.py:246

_update_message

def _update_message(changes: int, sessions: int, updated: int, mode: str) -> str

module function · internal · tech_connector/game_engine/runtime/tc_live_game_sync_service.py:251

tech_connector.game_engine.runtime.tc_magnetic_grid_service

MagnetodynamicGrid.solve

def MagnetodynamicGrid.solve(self, particles: list[Any], dt: float) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_magnetic_grid_service.py:31

MagnetodynamicGrid.sample

def MagnetodynamicGrid.sample(self, position: Vec3) -> Vec3

class method · public name · tech_connector/game_engine/runtime/tc_magnetic_grid_service.py:114

_sample_grid

def _sample_grid(values, position, bounds_min, bounds_max) -> Vec3

module function · internal · tech_connector/game_engine/runtime/tc_magnetic_grid_service.py:120

_curl

def _curl(values, spacing)

module function · internal · tech_connector/game_engine/runtime/tc_magnetic_grid_service.py:137

_divergence

def _divergence(values, spacing)

module function · internal · tech_connector/game_engine/runtime/tc_magnetic_grid_service.py:145

_laplacian

def _laplacian(values, spacing)

module function · internal · tech_connector/game_engine/runtime/tc_magnetic_grid_service.py:149

tech_connector.game_engine.runtime.tc_multiphysics_coupling_service

MultiphysicsCouplingStage.to_dict

def MultiphysicsCouplingStage.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_multiphysics_coupling_service.py:25

MultiphysicsCouplingPlan.validate

def MultiphysicsCouplingPlan.validate(self) -> list[str]

class method · public name · tech_connector/game_engine/runtime/tc_multiphysics_coupling_service.py:38

MultiphysicsCouplingPlan.to_dict

def MultiphysicsCouplingPlan.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_multiphysics_coupling_service.py:57

compile_multiphysics_coupling

def compile_multiphysics_coupling(world: Any, domains: list[str] | tuple[str, ...], *, backend: str, maximum_pairs_per_particle: int=16) -> MultiphysicsCouplingPlan

module function · public name · tech_connector/game_engine/runtime/tc_multiphysics_coupling_service.py:98

tech_connector.game_engine.runtime.tc_nbody_acceleration_service

barnes_hut_accelerations

def barnes_hut_accelerations(positions: Sequence[Sequence[float]], masses: Sequence[float], charges: Sequence[float], alive: Sequence[bool], settings: Any) -> tuple[list[Vec3], dict[str, int | float | str]]

module function · public name · tech_connector/game_engine/runtime/tc_nbody_acceleration_service.py:28

Approximate long-range gravity/electrostatics with a deterministic octree.

_build_root

def _build_root(positions, masses, charges, indices, leaf_capacity, depth, maximum_depth) -> BarnesHutNode

module function · internal · tech_connector/game_engine/runtime/tc_nbody_acceleration_service.py:100

_build_node

def _build_node(positions, masses, charges, indices, center, half_size, leaf_capacity, depth, maximum_depth)

module function · internal · tech_connector/game_engine/runtime/tc_nbody_acceleration_service.py:108

_add_pair

def _add_pair(output, target_position, target_mass, target_charge, source_position, source_mass, source_charge, gravity, coulomb, softening_sq)

module function · internal · tech_connector/game_engine/runtime/tc_nbody_acceleration_service.py:152

_add_monopole

def _add_monopole(output, target_position, source_position, strength, softening_sq)

module function · internal · tech_connector/game_engine/runtime/tc_nbody_acceleration_service.py:163

_count_nodes

def _count_nodes(root: BarnesHutNode) -> int

module function · internal · tech_connector/game_engine/runtime/tc_nbody_acceleration_service.py:171

_receipt

def _receipt(particles: int, visits: int, direct: int, settings: Any) -> dict[str, int | float | str]

module function · internal · tech_connector/game_engine/runtime/tc_nbody_acceleration_service.py:175

tech_connector.game_engine.runtime.tc_ocean_surface_service

OceanSample.to_dict

def OceanSample.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_ocean_surface_service.py:44

OceanSurface.__post_init__

def OceanSurface.__post_init__(self) -> None

class method · internal · tech_connector/game_engine/runtime/tc_ocean_surface_service.py:60

OceanSurface.step

def OceanSurface.step(self, dt: float) -> None

class method · public name · tech_connector/game_engine/runtime/tc_ocean_surface_service.py:64

OceanSurface.add_wake

def OceanSurface.add_wake(self, position: tuple[float, float], velocity: tuple[float, float], *, radius: float=1.0, strength: float=0.25, lifetime: float=6.0) -> OceanWake

class method · public name · tech_connector/game_engine/runtime/tc_ocean_surface_service.py:71

OceanSurface.sample

def OceanSurface.sample(self, x: float, z: float, time_seconds: float | None=None) -> OceanSample

class method · public name · tech_connector/game_engine/runtime/tc_ocean_surface_service.py:82

OceanSurface.mesh_patch

def OceanSurface.mesh_patch(self, *, center: tuple[float, float]=(0.0, 0.0), size: float=20.0, rows: int=32, columns: int=32) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_ocean_surface_service.py:102

OceanSurface.to_dict

def OceanSurface.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_ocean_surface_service.py:152

OceanSurface._wake_sample

def OceanSurface._wake_sample(self, x: float, z: float) -> tuple[float, float, float, float, float]

class method · internal · tech_connector/game_engine/runtime/tc_ocean_surface_service.py:158

create_ocean_surface

def create_ocean_surface(preset: str='open_ocean', *, seed: int=1, wave_count: int=12, **overrides: float) -> OceanSurface

module function · public name · tech_connector/game_engine/runtime/tc_ocean_surface_service.py:176

_normalize

def _normalize(value: Vec3) -> Vec3

module function · internal · tech_connector/game_engine/runtime/tc_ocean_surface_service.py:195

_patch_triangles

def _patch_triangles(rows: int, columns: int) -> tuple[tuple[int, int, int], ...]

module function · internal · tech_connector/game_engine/runtime/tc_ocean_surface_service.py:201

tech_connector.game_engine.runtime.tc_physics_network_service

PhysicsDatagramTransport.__init__

def PhysicsDatagramTransport.__init__(self, session_id: str, bind: tuple[str, int]=('127.0.0.1', 0), *, retry_seconds: float=0.08) -> None

class method · internal · tech_connector/game_engine/runtime/tc_physics_network_service.py:28

PhysicsDatagramTransport.close

def PhysicsDatagramTransport.close(self) -> None

class method · public name · tech_connector/game_engine/runtime/tc_physics_network_service.py:41

PhysicsDatagramTransport.send

def PhysicsDatagramTransport.send(self, address: tuple[str, int], kind: str, payload: dict[str, Any], *, reliable: bool=True) -> int

class method · public name · tech_connector/game_engine/runtime/tc_physics_network_service.py:44

PhysicsDatagramTransport._acknowledge

def PhysicsDatagramTransport._acknowledge(self, address: tuple[str, int], sequence: int) -> None

class method · internal · tech_connector/game_engine/runtime/tc_physics_network_service.py:60

PhysicsDatagramTransport.poll

def PhysicsDatagramTransport.poll(self, handler: Callable[[str, dict[str, Any], tuple[str, int]], None], *, maximum_packets: int=256) -> int

class method · public name · tech_connector/game_engine/runtime/tc_physics_network_service.py:67

PhysicsDatagramTransport.service_retries

def PhysicsDatagramTransport.service_retries(self, *, maximum_attempts: int=8) -> int

class method · public name · tech_connector/game_engine/runtime/tc_physics_network_service.py:101

PhysicsDatagramTransport.unacknowledged_count

def PhysicsDatagramTransport.unacknowledged_count(self) -> int

class method · public name · tech_connector/game_engine/runtime/tc_physics_network_service.py:117

PhysicsReplicationSession.__init__

def PhysicsReplicationSession.__init__(self, transport: PhysicsDatagramTransport, recorder: DeterministicPhysicsRecorder | None=None) -> None

class method · internal · tech_connector/game_engine/runtime/tc_physics_network_service.py:124

PhysicsReplicationSession.send_frame

def PhysicsReplicationSession.send_frame(self, address: tuple[str, int], frame: PhysicsFrame, baseline: PhysicsFrame | None=None) -> int

class method · public name · tech_connector/game_engine/runtime/tc_physics_network_service.py:130

PhysicsReplicationSession.request_rollback

def PhysicsReplicationSession.request_rollback(self, address: tuple[str, int], frame: int) -> int

class method · public name · tech_connector/game_engine/runtime/tc_physics_network_service.py:133

PhysicsReplicationSession.poll

def PhysicsReplicationSession.poll(self) -> int

class method · public name · tech_connector/game_engine/runtime/tc_physics_network_service.py:136

PhysicsReplicationSession._receive

def PhysicsReplicationSession._receive(self, kind: str, payload: dict[str, Any], _address: tuple[str, int]) -> None

class method · internal · tech_connector/game_engine/runtime/tc_physics_network_service.py:139

tech_connector.game_engine.runtime.tc_physics_replay_service

_canonical_hash

def _canonical_hash(value: Any) -> str

module function · internal · tech_connector/game_engine/runtime/tc_physics_replay_service.py:11

DeterministicPhysicsRecorder.__init__

def DeterministicPhysicsRecorder.__init__(self, capacity: int=600) -> None

class method · internal · tech_connector/game_engine/runtime/tc_physics_replay_service.py:25

DeterministicPhysicsRecorder.record

def DeterministicPhysicsRecorder.record(self, frame: int, state: dict[str, Any], inputs: list[dict[str, Any]] | tuple[dict[str, Any], ...]=()) -> PhysicsFrame

class method · public name · tech_connector/game_engine/runtime/tc_physics_replay_service.py:30

DeterministicPhysicsRecorder.rollback

def DeterministicPhysicsRecorder.rollback(self, frame: int) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_physics_replay_service.py:38

DeterministicPhysicsRecorder.replay

def DeterministicPhysicsRecorder.replay(self, start_frame: int, step: Callable[[dict[str, Any], tuple[dict[str, Any], ...]], dict[str, Any]]) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_physics_replay_service.py:44

DeterministicPhysicsRecorder.verify

def DeterministicPhysicsRecorder.verify(self) -> list[int]

class method · public name · tech_connector/game_engine/runtime/tc_physics_replay_service.py:53

hot_reload_joint_state

def hot_reload_joint_state(current: dict[str, Any], authored_joints: list[dict[str, Any]]) -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/tc_physics_replay_service.py:57

Apply authored properties while preserving compatible accumulated runtime state.

replication_packet

def replication_packet(frame: PhysicsFrame, baseline: PhysicsFrame | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/tc_physics_replay_service.py:76

tech_connector.game_engine.runtime.tc_physics_stress_service

build_physics_stress_scene

def build_physics_stress_scene(scenario: str, count: int=1000) -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/tc_physics_stress_service.py:17

write_physics_stress_manifest

def write_physics_stress_manifest(runtime_world: dict[str, Any], path: str | Path) -> Path

module function · public name · tech_connector/game_engine/runtime/tc_physics_stress_service.py:73

qualify_physics_stress_scenarios

def qualify_physics_stress_scenarios(*, executable: str | Path | None=None, count: int=1000, frames: int=180, warmup_frames: int=30, target_frame_ms: float=16.6667, maximum_joint_position_error: float=5.0, working_directory: str | Path | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/tc_physics_stress_service.py:95

Run every stress scene in the native headless player and qualify measured physics cost.

audit_physics_stress_scene

def audit_physics_stress_scene(runtime_world: dict[str, Any]) -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/tc_physics_stress_service.py:161

tech_connector.game_engine.runtime.tc_plasma_pic_service

ElectrostaticPicGrid.solve

def ElectrostaticPicGrid.solve(self, particles: list[Any]) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_plasma_pic_service.py:29

ElectrostaticPicGrid.sample

def ElectrostaticPicGrid.sample(self, position: Vec3) -> Vec3

class method · public name · tech_connector/game_engine/runtime/tc_plasma_pic_service.py:111

tech_connector.game_engine.runtime.tc_player_build_service

PlayerBuildReceipt.to_dict

def PlayerBuildReceipt.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_player_build_service.py:59

PlayInEditorSession.stop

def PlayInEditorSession.stop(self, timeout: float=3.0) -> None

class method · public name · tech_connector/game_engine/runtime/tc_player_build_service.py:79

stable_runtime_asset_id

def stable_runtime_asset_id(asset_type: str, source: str) -> str

module function · public name · tech_connector/game_engine/runtime/tc_player_build_service.py:89

compile_tcscene_for_runtime

def compile_tcscene_for_runtime(scene_path: str | Path, output_path: str | Path | None=None) -> PlayerBuildReceipt

module function · public name · tech_connector/game_engine/runtime/tc_player_build_service.py:98

Compile bounded player data from the authoritative scene archive.

_physical_animation_records

def _physical_animation_records(entities: list[dict[str, Any]], rig_graph: dict[str, Any], warnings: list[str]) -> list[str]

module function · internal · tech_connector/game_engine/runtime/tc_player_build_service.py:286

_motion_database_records

def _motion_database_records(raw_database: Any) -> list[str]

module function · internal · tech_connector/game_engine/runtime/tc_player_build_service.py:314

_rig_animation_records

def _rig_animation_records(rig_graph: dict[str, Any], warnings: list[str]) -> list[str]

module function · internal · tech_connector/game_engine/runtime/tc_player_build_service.py:340

_rig_rows

def _rig_rows(rig_graph: dict[str, Any], key: str) -> list[dict[str, Any]]

module function · internal · tech_connector/game_engine/runtime/tc_player_build_service.py:436

_materialize_rig_blobs

def _materialize_rig_blobs(rig_graph: dict[str, Any], blobs: dict[str, bytes], destination: Path) -> None

module function · internal · tech_connector/game_engine/runtime/tc_player_build_service.py:442

_skin_binding_records

def _skin_binding_records(rig_graph: dict[str, Any], assets: list[dict[str, str]], warnings: list[str]) -> list[str]

module function · internal · tech_connector/game_engine/runtime/tc_player_build_service.py:463

build_windows_player

def build_windows_player(scene_path: str | Path, output_directory: str | Path, *, player_executable: str | Path | None=None, compiled_receipt: PlayerBuildReceipt | None=None) -> PlayerBuildReceipt

module function · public name · tech_connector/game_engine/runtime/tc_player_build_service.py:489

Create a self-contained Windows player folder from a ``.tcscene``.

runtime_platform_capabilities

def runtime_platform_capabilities(platform_name: str | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/tc_player_build_service.py:548

Report shipped runtime support without implying unimplemented renderer backends.

build_player_for_target

def build_player_for_target(scene_path: str | Path, output_directory: str | Path, *, target: str, player_executable: str | Path | None=None, compiled_receipt: PlayerBuildReceipt | None=None) -> PlayerBuildReceipt

module function · public name · tech_connector/game_engine/runtime/tc_player_build_service.py:606

Build an explicitly selected platform, never relabeling a Windows binary as console-ready.

validate_player_package

def validate_player_package(output_directory: str | Path, *, frames: int=2, timeout: float=30.0) -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/tc_player_build_service.py:628

Run the packaged executable headlessly and reject loader or graph failures.

validate_windowed_player

def validate_windowed_player(output_directory: str | Path, *, frames: int=30, timeout: float=60.0, scripted_input: bool=False) -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/tc_player_build_service.py:664

Require a rendered D3D11 frame from the packaged Windows player.

summarize_player_profile

def summarize_player_profile(profile_path: str | Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/tc_player_build_service.py:726

Parse mixed JSON frame profiles and graph diagnostics into useful timing evidence.

validate_packaged_assets

def validate_packaged_assets(manifest_path: str | Path, output_directory: str | Path) -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/tc_player_build_service.py:770

Verify every copied content asset against the compiler's content hash.

launch_play_in_editor

def launch_play_in_editor(scene_path: str | Path, *, player_executable: str | Path | None=None, working_directory: str | Path | None=None) -> PlayInEditorSession

module function · public name · tech_connector/game_engine/runtime/tc_player_build_service.py:812

Launch PIE through the standalone player executable, never an editor-only loop.

_runtime_entities

def _runtime_entities(rig_graph: dict[str, Any], runtime: dict[str, Any]) -> list[dict[str, Any]]

module function · internal · tech_connector/game_engine/runtime/tc_player_build_service.py:834

_runtime_assets

def _runtime_assets(entities: list[dict[str, Any]], runtime: dict[str, Any], blobs: dict[str, bytes], graphs: list[tuple[str, dict[str, Any]]], rig_graph: dict[str, Any] | None=None) -> list[dict[str, str]]

module function · internal · tech_connector/game_engine/runtime/tc_player_build_service.py:867

_runtime_graphs

def _runtime_graphs(metadata: dict[str, Any], runtime: dict[str, Any]) -> list[tuple[str, dict[str, Any]]]

module function · internal · tech_connector/game_engine/runtime/tc_player_build_service.py:938

_physics_joint_records

def _physics_joint_records(runtime: dict[str, Any], entity_names: set[str], warnings: list[str]) -> list[str]

module function · internal · tech_connector/game_engine/runtime/tc_player_build_service.py:960

Compile body constraints separately from skeletal rig joints.

_entity_records

def _entity_records(entity: dict[str, Any], assets: list[dict[str, str]], warnings: list[str]) -> list[str]

module function · internal · tech_connector/game_engine/runtime/tc_player_build_service.py:1020

_graph_arguments

def _graph_arguments(operation: str, instruction: dict[str, Any]) -> list[Any]

module function · internal · tech_connector/game_engine/runtime/tc_player_build_service.py:1098

_collect_player_assets

def _collect_player_assets(manifest: Path, output: Path) -> None

module function · internal · tech_connector/game_engine/runtime/tc_player_build_service.py:1140

_resolve_player_executable

def _resolve_player_executable(value: str | Path | None) -> Path

module function · internal · tech_connector/game_engine/runtime/tc_player_build_service.py:1163

_canonical_asset_source

def _canonical_asset_source(source: str) -> str

module function · internal · tech_connector/game_engine/runtime/tc_player_build_service.py:1179

_source_hash

def _source_hash(source: str, blobs: dict[str, bytes]) -> str

module function · internal · tech_connector/game_engine/runtime/tc_player_build_service.py:1184

_encode

def _encode(value: str) -> str

module function · internal · tech_connector/game_engine/runtime/tc_player_build_service.py:1199

_decode

def _decode(value: str) -> str

module function · internal · tech_connector/game_engine/runtime/tc_player_build_service.py:1203

_vector

def _vector(value: Any, size: int, default: tuple[float, ...]) -> tuple[float, ...]

module function · internal · tech_connector/game_engine/runtime/tc_player_build_service.py:1210

_number

def _number(value: Any) -> str

module function · internal · tech_connector/game_engine/runtime/tc_player_build_service.py:1216

_real

def _real(value: Any) -> str

module function · internal · tech_connector/game_engine/runtime/tc_player_build_service.py:1220

_flag

def _flag(value: Any) -> str

module function · internal · tech_connector/game_engine/runtime/tc_player_build_service.py:1224

tech_connector.game_engine.runtime.tc_procedural_animation_service

ProceduralAnimationFrame.to_dict

def ProceduralAnimationFrame.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_procedural_animation_service.py:59

ProceduralAnimationRuntime.step_ground_ik

def ProceduralAnimationRuntime.step_ground_ik(self, limb_settings: Mapping[str, GroundIKSettings], bone_positions: Mapping[str, Vector3], ground_query: GroundQuery, *, delta_time: float, character_speed: float=0.0, weight: float=1.0, foot_contacts: Optional[Mapping[str, bool]]=None) -> ProceduralAnimationFrame

class method · public name · tech_connector/game_engine/runtime/tc_procedural_animation_service.py:75

Solve world-space feet; explicit per-foot contacts override the idle-speed heuristic.

solve_two_bone_ik

def solve_two_bone_ik(root: Vector3, joint: Vector3, end: Vector3, target: Vector3, pole_vector: Vector3, *, maximum_stretch: float=1.0) -> tuple[Vector3, Vector3, float]

module function · public name · tech_connector/game_engine/runtime/tc_procedural_animation_service.py:139

Solve a two-bone chain while preserving its authored bend in stretch. Once the target passes the original bent root-to-end reach, both segments scale from that chord. This retains the input bend angle instead of making the scaled segment su

_contact

def _contact(value: Mapping[str, Any] | None, origin: Vector3) -> GroundContact

module function · internal · tech_connector/game_engine/runtime/tc_procedural_animation_service.py:179

_vec

def _vec(value: Any) -> Vector3

module function · internal · tech_connector/game_engine/runtime/tc_procedural_animation_service.py:189

_add

def _add(a: Vector3, b: Vector3) -> Vector3

module function · internal · tech_connector/game_engine/runtime/tc_procedural_animation_service.py:198

_subtract

def _subtract(a: Vector3, b: Vector3) -> Vector3

module function · internal · tech_connector/game_engine/runtime/tc_procedural_animation_service.py:202

_scale

def _scale(value: Vector3, factor: float) -> Vector3

module function · internal · tech_connector/game_engine/runtime/tc_procedural_animation_service.py:206

_length

def _length(value: Vector3) -> float

module function · internal · tech_connector/game_engine/runtime/tc_procedural_animation_service.py:210

_normalize

def _normalize(value: Vector3, fallback: Vector3) -> Vector3

module function · internal · tech_connector/game_engine/runtime/tc_procedural_animation_service.py:214

_cross

def _cross(a: Vector3, b: Vector3) -> Vector3

module function · internal · tech_connector/game_engine/runtime/tc_procedural_animation_service.py:219

_lerp

def _lerp(a: Vector3, b: Vector3, alpha: float) -> Vector3

module function · internal · tech_connector/game_engine/runtime/tc_procedural_animation_service.py:223

_clamp

def _clamp(value: float, minimum: float, maximum: float) -> float

module function · internal · tech_connector/game_engine/runtime/tc_procedural_animation_service.py:227

tech_connector.game_engine.runtime.tc_runtime_authoring_service

runtime_authoring_contract

def runtime_authoring_contract() -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/tc_runtime_authoring_service.py:8

Describe one authored asset with scalable runtime presentation and simulation.

tech_connector.game_engine.runtime.tc_short_range_interaction_service

spatial_hash_accelerations

def spatial_hash_accelerations(positions: Sequence[Sequence[float]], masses: Sequence[float], alive: Sequence[bool], settings: Any) -> tuple[list[Vec3], dict[str, int | float | str]]

module function · public name · tech_connector/game_engine/runtime/tc_short_range_interaction_service.py:12

tech_connector.game_engine.runtime.tc_simulation_compute_provider_service

ArrayComputeProvider.__init__

def ArrayComputeProvider.__init__(self, status: ComputeProviderStatus, array_module: Any) -> None

class method · internal · tech_connector/game_engine/runtime/tc_simulation_compute_provider_service.py:37

ArrayComputeProvider.allocate

def ArrayComputeProvider.allocate(self, shape: tuple[int, ...], dtype: str='float32') -> PersistentComputeBuffer

class method · public name · tech_connector/game_engine/runtime/tc_simulation_compute_provider_service.py:41

ArrayComputeProvider.upload

def ArrayComputeProvider.upload(self, buffer: PersistentComputeBuffer, values: Any) -> None

class method · public name · tech_connector/game_engine/runtime/tc_simulation_compute_provider_service.py:51

ArrayComputeProvider.download

def ArrayComputeProvider.download(self, buffer: PersistentComputeBuffer) -> np.ndarray

class method · public name · tech_connector/game_engine/runtime/tc_simulation_compute_provider_service.py:59

ArrayComputeProvider.synchronize

def ArrayComputeProvider.synchronize(self) -> None

class method · public name · tech_connector/game_engine/runtime/tc_simulation_compute_provider_service.py:65

ArrayComputeProvider._require_owned

def ArrayComputeProvider._require_owned(self, buffer: PersistentComputeBuffer) -> None

class method · internal · tech_connector/game_engine/runtime/tc_simulation_compute_provider_service.py:69

register_compute_provider

def register_compute_provider(provider: ArrayComputeProvider) -> None

module function · public name · tech_connector/game_engine/runtime/tc_simulation_compute_provider_service.py:77

compute_provider

def compute_provider(provider_id: str) -> ArrayComputeProvider

module function · public name · tech_connector/game_engine/runtime/tc_simulation_compute_provider_service.py:83

compute_provider_statuses

def compute_provider_statuses(*, refresh: bool=False) -> list[dict[str, Any]]

module function · public name · tech_connector/game_engine/runtime/tc_simulation_compute_provider_service.py:90

discover_compute_providers

def discover_compute_providers(*, refresh: bool=False) -> list[ArrayComputeProvider]

module function · public name · tech_connector/game_engine/runtime/tc_simulation_compute_provider_service.py:107

tech_connector.game_engine.runtime.tc_simulation_gpu_backend_service

GpuParticleBuffers.__post_init__

def GpuParticleBuffers.__post_init__(self) -> None

class method · internal · tech_connector/game_engine/runtime/tc_simulation_gpu_backend_service.py:31

GpuParticleBuffers.reserve

def GpuParticleBuffers.reserve(self, count: int) -> None

class method · public name · tech_connector/game_engine/runtime/tc_simulation_gpu_backend_service.py:34

GpuParticleBuffers.upload

def GpuParticleBuffers.upload(self, world: Any) -> None

class method · public name · tech_connector/game_engine/runtime/tc_simulation_gpu_backend_service.py:55

GpuParticleBuffers.download

def GpuParticleBuffers.download(self, world: Any) -> None

class method · public name · tech_connector/game_engine/runtime/tc_simulation_gpu_backend_service.py:101

GpuParticleBuffers.memory_bytes

def GpuParticleBuffers.memory_bytes(self) -> int

class method · public name · tech_connector/game_engine/runtime/tc_simulation_gpu_backend_service.py:112

gpu_backend_support

def gpu_backend_support(world: Any) -> tuple[bool, list[str]]

module function · public name · tech_connector/game_engine/runtime/tc_simulation_gpu_backend_service.py:116

execute_gpu_compute

def execute_gpu_compute(compiled: Any, world: Any, dt: float, *, provider_id: str='cupy_cuda') -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/tc_simulation_gpu_backend_service.py:150

_gpu_particle_step

def _gpu_particle_step(xp: Any, buffers: GpuParticleBuffers, constraints: GpuConstraintBuffers, world: Any, dt: float, constraint_iterations: int, *, material_neighbors: bool, pic_acceleration: Any, magnetic_field_sample: Any) -> dict[str, int]

module function · internal · tech_connector/game_engine/runtime/tc_simulation_gpu_backend_service.py:283

_gpu_mesh_collisions

def _gpu_mesh_collisions(xp: Any, buffers: GpuParticleBuffers, world: Any, dynamic: Any, normals: Any, surface_velocity: Any, friction: Any, restitution: Any, collided: Any, dt: float) -> None

module function · internal · tech_connector/game_engine/runtime/tc_simulation_gpu_backend_service.py:383

_gpu_closest_points_triangle

def _gpu_closest_points_triangle(xp: Any, points: Any, a: Any, b: Any, c: Any) -> Any

module function · internal · tech_connector/game_engine/runtime/tc_simulation_gpu_backend_service.py:435

_gpu_closest_points_segment

def _gpu_closest_points_segment(xp: Any, points: Any, first: Any, second: Any) -> Any

module function · internal · tech_connector/game_engine/runtime/tc_simulation_gpu_backend_service.py:456

_gpu_field_acceleration

def _gpu_field_acceleration(xp: Any, world: Any, position: Any, velocity: Any, masses: Any, charges: Any, radii: Any) -> Any

module function · internal · tech_connector/game_engine/runtime/tc_simulation_gpu_backend_service.py:462

_host

def _host(xp: Any, value: Any) -> np.ndarray

module function · internal · tech_connector/game_engine/runtime/tc_simulation_gpu_backend_service.py:568

synchronize_gpu_particles

def synchronize_gpu_particles(world: Any) -> bool

module function · public name · tech_connector/game_engine/runtime/tc_simulation_gpu_backend_service.py:572

gpu_particle_view

def gpu_particle_view(world: Any) -> dict[str, Any] | None

module function · public name · tech_connector/game_engine/runtime/tc_simulation_gpu_backend_service.py:581

Expose resident provider buffers without triggering host synchronization.

_gpu_normalized_rows

def _gpu_normalized_rows(xp: Any, values: Any, fallback: tuple[float, float, float]) -> Any

module function · internal · tech_connector/game_engine/runtime/tc_simulation_gpu_backend_service.py:600

install_gpu_compute_backend

def install_gpu_compute_backend(provider_id: str='cupy_cuda') -> bool

module function · public name · tech_connector/game_engine/runtime/tc_simulation_gpu_backend_service.py:609

tech_connector.game_engine.runtime.tc_simulation_gpu_constraints_service

GpuConstraintBuffers.__post_init__

def GpuConstraintBuffers.__post_init__(self) -> None

class method · internal · tech_connector/game_engine/runtime/tc_simulation_gpu_constraints_service.py:22

GpuConstraintBuffers.upload

def GpuConstraintBuffers.upload(self, world: Any, *, force: bool=True) -> None

class method · public name · tech_connector/game_engine/runtime/tc_simulation_gpu_constraints_service.py:30

GpuConstraintBuffers.begin_substep

def GpuConstraintBuffers.begin_substep(self) -> None

class method · public name · tech_connector/game_engine/runtime/tc_simulation_gpu_constraints_service.py:64

GpuConstraintBuffers.download_mutable_state

def GpuConstraintBuffers.download_mutable_state(self, world: Any) -> None

class method · public name · tech_connector/game_engine/runtime/tc_simulation_gpu_constraints_service.py:69

GpuConstraintBuffers.memory_bytes

def GpuConstraintBuffers.memory_bytes(self) -> int

class method · public name · tech_connector/game_engine/runtime/tc_simulation_gpu_constraints_service.py:89

solve_gpu_constraints

def solve_gpu_constraints(xp: Any, particles: Any, constraints: GpuConstraintBuffers, world: Any, dt: float, *, solve_bending: bool=True) -> None

module function · public name · tech_connector/game_engine/runtime/tc_simulation_gpu_constraints_service.py:93

solve_gpu_pairwise_neighbors

def solve_gpu_pairwise_neighbors(xp: Any, particles: Any, world: Any, dt: float, *, self_collision: bool, material_neighbors: bool, constraints: GpuConstraintBuffers | None=None) -> dict[str, int]

module function · public name · tech_connector/game_engine/runtime/tc_simulation_gpu_constraints_service.py:102

_spatial_hash_pairs

def _spatial_hash_pairs(xp: Any, position: Any, alive: Any, cell_size: float) -> tuple[Any, Any]

module function · internal · tech_connector/game_engine/runtime/tc_simulation_gpu_constraints_service.py:214

Generate deterministic local candidates without allocating an N-by-N distance matrix.

_hash_cells

def _hash_cells(xp: Any, coordinates: Any) -> Any

module function · internal · tech_connector/game_engine/runtime/tc_simulation_gpu_constraints_service.py:249

_solve_distance

def _solve_distance(xp: Any, particles: Any, state: GpuConstraintBuffers, dt: float) -> None

module function · internal · tech_connector/game_engine/runtime/tc_simulation_gpu_constraints_service.py:257

_solve_area

def _solve_area(xp: Any, particles: Any, state: GpuConstraintBuffers, dt: float) -> None

module function · internal · tech_connector/game_engine/runtime/tc_simulation_gpu_constraints_service.py:307

_solve_bending

def _solve_bending(xp: Any, particles: Any, state: GpuConstraintBuffers, dt: float) -> None

module function · internal · tech_connector/game_engine/runtime/tc_simulation_gpu_constraints_service.py:343

_rotate_points

def _rotate_points(xp: Any, points: Any, origins: Any, axes: Any, angles: Any) -> Any

module function · internal · tech_connector/game_engine/runtime/tc_simulation_gpu_constraints_service.py:399

_graph_colors

def _graph_colors(indices: tuple[tuple[int, ...], ...]) -> list[np.ndarray]

module function · internal · tech_connector/game_engine/runtime/tc_simulation_gpu_constraints_service.py:407

_solve_attachments

def _solve_attachments(xp: Any, particles: Any, world: Any, dt: float) -> None

module function · internal · tech_connector/game_engine/runtime/tc_simulation_gpu_constraints_service.py:423

_scalar_int

def _scalar_int(xp: Any, value: Any) -> int

module function · internal · tech_connector/game_engine/runtime/tc_simulation_gpu_constraints_service.py:440

_host

def _host(xp: Any, value: Any) -> np.ndarray

module function · internal · tech_connector/game_engine/runtime/tc_simulation_gpu_constraints_service.py:446

tech_connector.game_engine.runtime.tc_simulation_gpu_magnetic_service

GpuMagneticGridState.memory_bytes

def GpuMagneticGridState.memory_bytes(self) -> int

class method · public name · tech_connector/game_engine/runtime/tc_simulation_gpu_magnetic_service.py:23

solve_gpu_magnetic_grids

def solve_gpu_magnetic_grids(world: Any, particle_buffers: Any, provider: Any, dt: float, *, readback: bool) -> tuple[Any, dict[str, Any]]

module function · public name · tech_connector/game_engine/runtime/tc_simulation_gpu_magnetic_service.py:29

_sample_vector_grid

def _sample_vector_grid(xp, values, lower, fraction)

module function · internal · tech_connector/game_engine/runtime/tc_simulation_gpu_magnetic_service.py:162

_curl

def _curl(xp, values, spacing)

module function · internal · tech_connector/game_engine/runtime/tc_simulation_gpu_magnetic_service.py:174

_divergence

def _divergence(xp, values, spacing)

module function · internal · tech_connector/game_engine/runtime/tc_simulation_gpu_magnetic_service.py:182

_derivative

def _derivative(xp, values, axis, spacing)

module function · internal · tech_connector/game_engine/runtime/tc_simulation_gpu_magnetic_service.py:186

_laplacian

def _laplacian(xp, values, spacing)

module function · internal · tech_connector/game_engine/runtime/tc_simulation_gpu_magnetic_service.py:190

_host

def _host(xp, value)

module function · internal · tech_connector/game_engine/runtime/tc_simulation_gpu_magnetic_service.py:197

_scalar

def _scalar(value)

module function · internal · tech_connector/game_engine/runtime/tc_simulation_gpu_magnetic_service.py:201

_empty_receipt

def _empty_receipt()

module function · internal · tech_connector/game_engine/runtime/tc_simulation_gpu_magnetic_service.py:205

tech_connector.game_engine.runtime.tc_simulation_gpu_pic_service

GpuPicGridState.memory_bytes

def GpuPicGridState.memory_bytes(self) -> int

class method · public name · tech_connector/game_engine/runtime/tc_simulation_gpu_pic_service.py:22

solve_gpu_pic_grids

def solve_gpu_pic_grids(world: Any, particle_buffers: Any, provider: Any, *, readback: bool) -> tuple[Any, dict[str, Any]]

module function · public name · tech_connector/game_engine/runtime/tc_simulation_gpu_pic_service.py:26

_host

def _host(xp: Any, value: Any) -> np.ndarray

module function · internal · tech_connector/game_engine/runtime/tc_simulation_gpu_pic_service.py:153

_scalar

def _scalar(xp: Any, value: Any) -> Any

module function · internal · tech_connector/game_engine/runtime/tc_simulation_gpu_pic_service.py:157

tech_connector.game_engine.runtime.tc_simulation_gpu_volume_service

GpuSparseVolumeBuffers.__post_init__

def GpuSparseVolumeBuffers.__post_init__(self) -> None

class method · internal · tech_connector/game_engine/runtime/tc_simulation_gpu_volume_service.py:20

GpuSparseVolumeBuffers.upload

def GpuSparseVolumeBuffers.upload(self, volume: Any) -> None

class method · public name · tech_connector/game_engine/runtime/tc_simulation_gpu_volume_service.py:23

GpuSparseVolumeBuffers.step

def GpuSparseVolumeBuffers.step(self, volume: Any, dt: float) -> None

class method · public name · tech_connector/game_engine/runtime/tc_simulation_gpu_volume_service.py:61

GpuSparseVolumeBuffers._project_velocity

def GpuSparseVolumeBuffers._project_velocity(self, xp: Any, volume: Any) -> None

class method · internal · tech_connector/game_engine/runtime/tc_simulation_gpu_volume_service.py:76

GpuSparseVolumeBuffers.download

def GpuSparseVolumeBuffers.download(self, volume: Any) -> int

class method · public name · tech_connector/game_engine/runtime/tc_simulation_gpu_volume_service.py:108

GpuSparseVolumeBuffers.memory_bytes

def GpuSparseVolumeBuffers.memory_bytes(self) -> int

class method · public name · tech_connector/game_engine/runtime/tc_simulation_gpu_volume_service.py:127

step_gpu_sparse_volumes

def step_gpu_sparse_volumes(world: Any, dt: float, provider_id: str, *, resident_output: bool=False) -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/tc_simulation_gpu_volume_service.py:131

synchronize_gpu_sparse_volumes

def synchronize_gpu_sparse_volumes(world: Any) -> bool

module function · public name · tech_connector/game_engine/runtime/tc_simulation_gpu_volume_service.py:169

_host

def _host(xp: Any, value: Any) -> np.ndarray

module function · internal · tech_connector/game_engine/runtime/tc_simulation_gpu_volume_service.py:181

tech_connector.game_engine.runtime.tc_simulation_ir_service

CompiledSimulationIR.validate

def CompiledSimulationIR.validate(self) -> list[str]

class method · public name · tech_connector/game_engine/runtime/tc_simulation_ir_service.py:107

CompiledSimulationIR.to_dict

def CompiledSimulationIR.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_simulation_ir_service.py:125

register_simulation_backend

def register_simulation_backend(capabilities: SimulationBackendCapabilities) -> None

module function · public name · tech_connector/game_engine/runtime/tc_simulation_ir_service.py:139

register_simulation_executor

def register_simulation_executor(backend_id: str, executor: Any) -> None

module function · public name · tech_connector/game_engine/runtime/tc_simulation_ir_service.py:143

simulation_backend_status

def simulation_backend_status(backend_id: str) -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/tc_simulation_ir_service.py:149

Return the truthful runtime state shown by authoring and diagnostics UI.

simulation_backend_statuses

def simulation_backend_statuses() -> list[dict[str, Any]]

module function · public name · tech_connector/game_engine/runtime/tc_simulation_ir_service.py:175

compile_simulation_world

def compile_simulation_world(world: Any, *, profile: str='realtime', backend: str='auto') -> CompiledSimulationIR

module function · public name · tech_connector/game_engine/runtime/tc_simulation_ir_service.py:179

Compile a mutable reference world into a validated staged execution plan.

execute_compiled_reference

def execute_compiled_reference(compiled: CompiledSimulationIR, world: Any, dt: float) -> None

module function · public name · tech_connector/game_engine/runtime/tc_simulation_ir_service.py:427

Execute a compatible compiled plan with the deterministic reference solver. :param compiled: Validated simulation IR. :param world: Mutable reference simulation world. :param dt: Tick duration in seconds. :return: None.

execute_compiled_simulation

def execute_compiled_simulation(compiled: CompiledSimulationIR, world: Any, dt: float) -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/tc_simulation_ir_service.py:448

Dispatch one compiled tick to the installed runtime backend.

effect_system_is_stateless

def effect_system_is_stateless(system: Any) -> bool

module function · public name · tech_connector/game_engine/runtime/tc_simulation_ir_service.py:519

_select_backend

def _select_backend(domains: list[str], profile: SimulationExecutionProfile, requested: str) -> tuple[SimulationBackendCapabilities, list[dict[str, Any]]]

module function · internal · tech_connector/game_engine/runtime/tc_simulation_ir_service.py:534

_simulation_domains

def _simulation_domains(world: Any) -> list[str]

module function · internal · tech_connector/game_engine/runtime/tc_simulation_ir_service.py:579

_compiled_outputs

def _compiled_outputs(domains: list[str], profile: SimulationExecutionProfile) -> list[dict[str, Any]]

module function · internal · tech_connector/game_engine/runtime/tc_simulation_ir_service.py:605

tech_connector.game_engine.runtime.tc_simulation_native_backend_service

NativeParticleBuffers.__post_init__

def NativeParticleBuffers.__post_init__(self) -> None

class method · internal · tech_connector/game_engine/runtime/tc_simulation_native_backend_service.py:30

NativeParticleBuffers.reserve

def NativeParticleBuffers.reserve(self, count: int) -> None

class method · public name · tech_connector/game_engine/runtime/tc_simulation_native_backend_service.py:42

NativeParticleBuffers.upload

def NativeParticleBuffers.upload(self, world: Any) -> None

class method · public name · tech_connector/game_engine/runtime/tc_simulation_native_backend_service.py:59

NativeParticleBuffers.download

def NativeParticleBuffers.download(self, world: Any) -> None

class method · public name · tech_connector/game_engine/runtime/tc_simulation_native_backend_service.py:81

NativeParticleBuffers.memory_bytes

def NativeParticleBuffers.memory_bytes(self) -> int

class method · public name · tech_connector/game_engine/runtime/tc_simulation_native_backend_service.py:91

native_backend_support

def native_backend_support(world: Any) -> tuple[bool, list[str]]

module function · public name · tech_connector/game_engine/runtime/tc_simulation_native_backend_service.py:97

execute_native_cpu

def execute_native_cpu(compiled: Any, world: Any, dt: float) -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/tc_simulation_native_backend_service.py:154

Run supported worlds with persistent vector buffers; explicitly fall back otherwise.

_step_buffers

def _step_buffers(buffers: NativeParticleBuffers, constraint_buffers: NativeConstraintBuffers, world: Any, dt: float, constraint_iterations: int, *, material_neighbors_enabled: bool, execution_profile: str) -> dict[str, float | int]

module function · internal · tech_connector/game_engine/runtime/tc_simulation_native_backend_service.py:306

_solve_native_colliders

def _solve_native_colliders(buffers: NativeParticleBuffers, world: Any, dynamic: Any, collision_normal: Any, collision_friction: Any, collision_restitution: Any, collision_surface_velocity: Any, collided: Any, dt: float) -> None

module function · internal · tech_connector/game_engine/runtime/tc_simulation_native_backend_service.py:423

_closest_point_triangle

def _closest_point_triangle(point: Any, first: Any, second: Any, third: Any) -> Any

module function · internal · tech_connector/game_engine/runtime/tc_simulation_native_backend_service.py:504

Ericson closest-point regions, expressed on NumPy vectors.

_field_acceleration

def _field_acceleration(world: Any, position, velocity, masses, charges, radii) -> Any

module function · internal · tech_connector/game_engine/runtime/tc_simulation_native_backend_service.py:534

_particle_interaction_acceleration

def _particle_interaction_acceleration(world: Any, position, masses, charges, alive) -> Any

module function · internal · tech_connector/game_engine/runtime/tc_simulation_native_backend_service.py:628

Vectorized-per-source exact kernel; deterministic reference for future tree/grid GPU stages.

_record_contacts

def _record_contacts(world: Any, points, normals, penetration, kind: str) -> None

module function · internal · tech_connector/game_engine/runtime/tc_simulation_native_backend_service.py:748

_normalized

def _normalized(value, fallback)

module function · internal · tech_connector/game_engine/runtime/tc_simulation_native_backend_service.py:760

_normalized_rows

def _normalized_rows(values, fallback)

module function · internal · tech_connector/game_engine/runtime/tc_simulation_native_backend_service.py:765

native_particle_view

def native_particle_view(world: Any) -> dict[str, Any] | None

module function · public name · tech_connector/game_engine/runtime/tc_simulation_native_backend_service.py:774

Return zero-copy native arrays for renderer/compute consumers when allocated.

synchronize_native_particles

def synchronize_native_particles(world: Any) -> bool

module function · public name · tech_connector/game_engine/runtime/tc_simulation_native_backend_service.py:789

Explicitly read authoritative native state back into compatibility particle objects.

install_native_cpu_backend

def install_native_cpu_backend() -> None

module function · public name · tech_connector/game_engine/runtime/tc_simulation_native_backend_service.py:799

tech_connector.game_engine.runtime.tc_simulation_native_constraints_service

NativeConstraintBuffers.__post_init__

def NativeConstraintBuffers.__post_init__(self) -> None

class method · internal · tech_connector/game_engine/runtime/tc_simulation_native_constraints_service.py:21

NativeConstraintBuffers.upload

def NativeConstraintBuffers.upload(self, world: Any, *, force: bool=False) -> None

class method · public name · tech_connector/game_engine/runtime/tc_simulation_native_constraints_service.py:42

NativeConstraintBuffers.begin_substep

def NativeConstraintBuffers.begin_substep(self, world: Any) -> None

class method · public name · tech_connector/game_engine/runtime/tc_simulation_native_constraints_service.py:95

NativeConstraintBuffers.download_mutable_state

def NativeConstraintBuffers.download_mutable_state(self, world: Any) -> None

class method · public name · tech_connector/game_engine/runtime/tc_simulation_native_constraints_service.py:101

NativeConstraintBuffers.memory_bytes

def NativeConstraintBuffers.memory_bytes(self) -> int

class method · public name · tech_connector/game_engine/runtime/tc_simulation_native_constraints_service.py:111

solve_native_constraints

def solve_native_constraints(buffers: Any, constraints: NativeConstraintBuffers, world: Any, dt: float) -> None

module function · public name · tech_connector/game_engine/runtime/tc_simulation_native_constraints_service.py:117

solve_native_material_neighbors

def solve_native_material_neighbors(buffers: Any, world: Any, dt: float) -> int

module function · public name · tech_connector/game_engine/runtime/tc_simulation_native_constraints_service.py:130

Stable spatial-hash neighborhood solve; returns the number of interacting pairs.

solve_native_self_collision

def solve_native_self_collision(buffers: Any, world: Any, record_contact: Any=None) -> int

module function · public name · tech_connector/game_engine/runtime/tc_simulation_native_constraints_service.py:188

Deterministic spatial-hash particle contact solve with stable pair ordering.

_solve_distance

def _solve_distance(buffers: Any, constraints: NativeConstraintBuffers, dt: float) -> None

module function · internal · tech_connector/game_engine/runtime/tc_simulation_native_constraints_service.py:235

_solve_distance_batched

def _solve_distance_batched(buffers: Any, constraints: NativeConstraintBuffers, dt: float) -> None

module function · internal · tech_connector/game_engine/runtime/tc_simulation_native_constraints_service.py:297

Solve a small topology in one deterministic Jacobi batch. Graph-colour dispatch is ideal for large meshes, but issuing many tiny NumPy operations costs more than the useful work on preview-sized soft bodies. ``np.add.at`` preserves determin

_solve_area

def _solve_area(buffers: Any, constraints: NativeConstraintBuffers, dt: float) -> None

module function · internal · tech_connector/game_engine/runtime/tc_simulation_native_constraints_service.py:371

_solve_area_batched

def _solve_area_batched(buffers: Any, constraints: NativeConstraintBuffers, dt: float) -> None

module function · internal · tech_connector/game_engine/runtime/tc_simulation_native_constraints_service.py:414

_solve_attachments

def _solve_attachments(buffers: Any, world: Any, dt: float) -> None

module function · internal · tech_connector/game_engine/runtime/tc_simulation_native_constraints_service.py:467

_solve_volume

def _solve_volume(buffers: Any, constraints: NativeConstraintBuffers, world: Any, dt: float) -> None

module function · internal · tech_connector/game_engine/runtime/tc_simulation_native_constraints_service.py:486

_cross_rows

def _cross_rows(first: np.ndarray, second: np.ndarray) -> np.ndarray

module function · internal · tech_connector/game_engine/runtime/tc_simulation_native_constraints_service.py:514

Vector cross product without ``np.cross``'s axis-normalization overhead.

_graph_colors

def _graph_colors(vertices: list[tuple[int, ...]]) -> list[np.ndarray]

module function · internal · tech_connector/game_engine/runtime/tc_simulation_native_constraints_service.py:523

tech_connector.game_engine.runtime.tc_simulation_native_volume_service

NativeSparseVolumeBuffers.__post_init__

def NativeSparseVolumeBuffers.__post_init__(self) -> None

class method · internal · tech_connector/game_engine/runtime/tc_simulation_native_volume_service.py:17

NativeSparseVolumeBuffers.upload

def NativeSparseVolumeBuffers.upload(self, volume: Any) -> None

class method · public name · tech_connector/game_engine/runtime/tc_simulation_native_volume_service.py:28

NativeSparseVolumeBuffers.step

def NativeSparseVolumeBuffers.step(self, volume: Any, dt: float) -> None

class method · public name · tech_connector/game_engine/runtime/tc_simulation_native_volume_service.py:59

NativeSparseVolumeBuffers._project_velocity

def NativeSparseVolumeBuffers._project_velocity(self, volume: Any) -> None

class method · internal · tech_connector/game_engine/runtime/tc_simulation_native_volume_service.py:70

NativeSparseVolumeBuffers.download

def NativeSparseVolumeBuffers.download(self, volume: Any) -> int

class method · public name · tech_connector/game_engine/runtime/tc_simulation_native_volume_service.py:98

NativeSparseVolumeBuffers.memory_bytes

def NativeSparseVolumeBuffers.memory_bytes(self) -> int

class method · public name · tech_connector/game_engine/runtime/tc_simulation_native_volume_service.py:117

step_native_sparse_volumes

def step_native_sparse_volumes(world: Any, dt: float, *, resident_output: bool=False) -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/tc_simulation_native_volume_service.py:126

synchronize_native_sparse_volumes

def synchronize_native_sparse_volumes(world: Any) -> bool

module function · public name · tech_connector/game_engine/runtime/tc_simulation_native_volume_service.py:173

tech_connector.game_engine.runtime.tc_simulation_render_bridge_service

RenderBufferView.descriptor

def RenderBufferView.descriptor(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_simulation_render_bridge_service.py:20

SimulationRenderStream.receipt

def SimulationRenderStream.receipt(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_simulation_render_bridge_service.py:43

build_simulation_render_stream

def build_simulation_render_stream(world: Any, *, consumer: str='generic_compute', allow_synchronization: bool=False) -> SimulationRenderStream

module function · public name · tech_connector/game_engine/runtime/tc_simulation_render_bridge_service.py:66

Return the best available particle stream without hiding interop copies.

_stream_from_mapping

def _stream_from_mapping(mapping: dict[str, Any], *, source_backend: str, provider_id: str, residency: str, consumer: str, compatible: bool, zero_copy: bool, synchronization_required: bool, fallback_reason: str='') -> SimulationRenderStream

module function · internal · tech_connector/game_engine/runtime/tc_simulation_render_bridge_service.py:115

_object_stream

def _object_stream(world: Any, consumer: str) -> SimulationRenderStream

module function · internal · tech_connector/game_engine/runtime/tc_simulation_render_bridge_service.py:136

qualify_simulation_render_stream

def qualify_simulation_render_stream(stream: SimulationRenderStream, *, require_end_to_end_zero_copy: bool=False) -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/tc_simulation_render_bridge_service.py:153

tech_connector.game_engine.runtime.tc_simulation_runtime_service

RuntimeFramePacket.to_dict

def RuntimeFramePacket.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_simulation_runtime_service.py:64

RuntimeHealthSnapshot.to_dict

def RuntimeHealthSnapshot.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_simulation_runtime_service.py:98

SimulationRuntimeInstance.__init__

def SimulationRuntimeInstance.__init__(self, world: Any, *, profile: str='realtime', backend: str='auto', tick_rate: float=60.0, max_catch_up_steps: int=4, checkpoint_interval: int=30, checkpoint_limit: int=8, max_pending_commands: int=4096, command_history_limit: int=16384) -> None

class method · internal · tech_connector/game_engine/runtime/tc_simulation_runtime_service.py:105

SimulationRuntimeInstance.from_effect_preset

def SimulationRuntimeInstance.from_effect_preset(cls, preset: str, *, quality: str='realtime', seed: int=1, tick_rate: float=60.0, backend: str='auto', max_pending_commands: int=4096, command_history_limit: int=16384) -> 'SimulationRuntimeInstance'

class method · public name · tech_connector/game_engine/runtime/tc_simulation_runtime_service.py:147

SimulationRuntimeInstance.queue_parameter

def SimulationRuntimeInstance.queue_parameter(self, path: str, value: Any, *, tick: int | None=None) -> RuntimeCommand

class method · public name · tech_connector/game_engine/runtime/tc_simulation_runtime_service.py:166

SimulationRuntimeInstance.queue_data_channel

def SimulationRuntimeInstance.queue_data_channel(self, channel_id: str, values: dict[str, Any], *, tick: int | None=None) -> RuntimeCommand

class method · public name · tech_connector/game_engine/runtime/tc_simulation_runtime_service.py:185

Publish gameplay/simulation data on a deterministic future tick boundary.

SimulationRuntimeInstance.advance

def SimulationRuntimeInstance.advance(self, elapsed_seconds: float) -> RuntimeFramePacket

class method · public name · tech_connector/game_engine/runtime/tc_simulation_runtime_service.py:193

SimulationRuntimeInstance.pause

def SimulationRuntimeInstance.pause(self) -> None

class method · public name · tech_connector/game_engine/runtime/tc_simulation_runtime_service.py:215

SimulationRuntimeInstance.resume

def SimulationRuntimeInstance.resume(self) -> None

class method · public name · tech_connector/game_engine/runtime/tc_simulation_runtime_service.py:219

SimulationRuntimeInstance.reset

def SimulationRuntimeInstance.reset(self) -> None

class method · public name · tech_connector/game_engine/runtime/tc_simulation_runtime_service.py:224

Restore authored initial state while preserving runtime configuration.

SimulationRuntimeInstance.authored_world_snapshot

def SimulationRuntimeInstance.authored_world_snapshot(self) -> Any

class method · public name · tech_connector/game_engine/runtime/tc_simulation_runtime_service.py:243

Return an isolated copy suitable for qualification, replay, or another runtime instance.

SimulationRuntimeInstance.enable_cache

def SimulationRuntimeInstance.enable_cache(self, *, frame_rate: float | None=None) -> SimulationCache

class method · public name · tech_connector/game_engine/runtime/tc_simulation_runtime_service.py:247

SimulationRuntimeInstance.disable_cache

def SimulationRuntimeInstance.disable_cache(self, *, completed: bool=True) -> SimulationCache | None

class method · public name · tech_connector/game_engine/runtime/tc_simulation_runtime_service.py:262

SimulationRuntimeInstance.frame_packet

def SimulationRuntimeInstance.frame_packet(self, *, steps: int=0) -> RuntimeFramePacket

class method · public name · tech_connector/game_engine/runtime/tc_simulation_runtime_service.py:270

SimulationRuntimeInstance.set_quality

def SimulationRuntimeInstance.set_quality(self, quality: str) -> None

class method · public name · tech_connector/game_engine/runtime/tc_simulation_runtime_service.py:336

SimulationRuntimeInstance.capture_checkpoint

def SimulationRuntimeInstance.capture_checkpoint(self) -> RuntimeCheckpoint

class method · public name · tech_connector/game_engine/runtime/tc_simulation_runtime_service.py:345

SimulationRuntimeInstance.rollback

def SimulationRuntimeInstance.rollback(self, tick: int) -> int

class method · public name · tech_connector/game_engine/runtime/tc_simulation_runtime_service.py:358

SimulationRuntimeInstance.deployment_manifest

def SimulationRuntimeInstance.deployment_manifest(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_simulation_runtime_service.py:373

SimulationRuntimeInstance.state_hash

def SimulationRuntimeInstance.state_hash(self) -> str

class method · public name · tech_connector/game_engine/runtime/tc_simulation_runtime_service.py:395

SimulationRuntimeInstance.health_snapshot

def SimulationRuntimeInstance.health_snapshot(self) -> RuntimeHealthSnapshot

class method · public name · tech_connector/game_engine/runtime/tc_simulation_runtime_service.py:402

SimulationRuntimeInstance._step_once

def SimulationRuntimeInstance._step_once(self) -> None

class method · internal · tech_connector/game_engine/runtime/tc_simulation_runtime_service.py:423

SimulationRuntimeInstance._capture_cache_frame

def SimulationRuntimeInstance._capture_cache_frame(self) -> None

class method · internal · tech_connector/game_engine/runtime/tc_simulation_runtime_service.py:445

SimulationRuntimeInstance._apply_commands

def SimulationRuntimeInstance._apply_commands(self, tick: int) -> None

class method · internal · tech_connector/game_engine/runtime/tc_simulation_runtime_service.py:462

SimulationRuntimeInstance._particle_positions

def SimulationRuntimeInstance._particle_positions(self) -> dict[int, tuple[float, float, float]]

class method · internal · tech_connector/game_engine/runtime/tc_simulation_runtime_service.py:475

SimulationRuntimeInstance._particle_id

def SimulationRuntimeInstance._particle_id(particle: Any, index: int) -> int

class method · internal · tech_connector/game_engine/runtime/tc_simulation_runtime_service.py:483

_stable_hash

def _stable_hash(value: Any) -> str

module function · internal · tech_connector/game_engine/runtime/tc_simulation_runtime_service.py:488

_checkpoint_world_copy

def _checkpoint_world_copy(world: Any) -> Any

module function · internal · tech_connector/game_engine/runtime/tc_simulation_runtime_service.py:493

Copy durable simulation state without device sessions or transient buffers.

_canonical_world

def _canonical_world(world: Any, *, runtime_state: bool) -> dict[str, Any]

module function · internal · tech_connector/game_engine/runtime/tc_simulation_runtime_service.py:502

_canonicalize

def _canonicalize(value: Any) -> Any

module function · internal · tech_connector/game_engine/runtime/tc_simulation_runtime_service.py:513

tech_connector.game_engine.runtime.tc_simulation_service

SimulationParticle.inertial_mass

def SimulationParticle.inertial_mass(self) -> float

class method · public name · tech_connector/game_engine/runtime/tc_simulation_service.py:98

Return explicit mass, or the legacy inverse-mass equivalent.

TriangleMeshCollider.mark_geometry_dirty

def TriangleMeshCollider.mark_geometry_dirty(self, *, topology_changed: bool=False) -> None

class method · public name · tech_connector/game_engine/runtime/tc_simulation_service.py:158

TriangleMeshCollider.acceleration

def TriangleMeshCollider.acceleration(self)

class method · public name · tech_connector/game_engine/runtime/tc_simulation_service.py:164

TriangleMeshCollider.record_query

def TriangleMeshCollider.record_query(self, query: Any) -> None

class method · public name · tech_connector/game_engine/runtime/tc_simulation_service.py:176

TriangleMeshCollider.collision_diagnostics

def TriangleMeshCollider.collision_diagnostics(self, *, reset: bool=False) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_simulation_service.py:182

GeometryEmitter.set_source_weights

def GeometryEmitter.set_source_weights(self, values: Sequence[float], *, name: str='emission_source', revision: int=0) -> None

class method · public name · tech_connector/game_engine/runtime/tc_simulation_service.py:271

SimulationScaleSettings.validate

def SimulationScaleSettings.validate(self) -> None

class method · public name · tech_connector/game_engine/runtime/tc_simulation_service.py:317

ParticleInteractionSettings.enabled

def ParticleInteractionSettings.enabled(self) -> bool

class method · public name · tech_connector/game_engine/runtime/tc_simulation_service.py:353

ParticleInteractionSettings.resolved_long_range_method

def ParticleInteractionSettings.resolved_long_range_method(self, particle_count: int) -> str

class method · public name · tech_connector/game_engine/runtime/tc_simulation_service.py:359

ParticleInteractionSettings.resolved_short_range_method

def ParticleInteractionSettings.resolved_short_range_method(self, particle_count: int) -> str

class method · public name · tech_connector/game_engine/runtime/tc_simulation_service.py:367

_force_falloff

def _force_falloff(force: ForceField, distance: float) -> float

module function · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:376

SparseVolume.step

def SparseVolume.step(self, dt: float) -> None

class method · public name · tech_connector/game_engine/runtime/tc_simulation_service.py:407

SparseVolume._project_velocity

def SparseVolume._project_velocity(self) -> None

class method · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:421

SimulationCache.store

def SimulationCache.store(self, frame: SimulationFrame) -> None

class method · public name · tech_connector/game_engine/runtime/tc_simulation_service.py:475

SimulationCache.set_stage_state

def SimulationCache.set_stage_state(self, stage_id: str, state: str, *, detail: str='') -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_simulation_service.py:478

SimulationCache.checkpoint

def SimulationCache.checkpoint(self, frame: int, *, stage_id: str='simulate') -> SimulationFrame

class method · public name · tech_connector/game_engine/runtime/tc_simulation_service.py:489

SimulationCache.resumable_frame

def SimulationCache.resumable_frame(self, stage_id: str='simulate') -> SimulationFrame | None

class method · public name · tech_connector/game_engine/runtime/tc_simulation_service.py:497

SimulationCache.to_dict

def SimulationCache.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_simulation_service.py:501

SimulationWorld.step

def SimulationWorld.step(self, dt: float) -> None

class method · public name · tech_connector/game_engine/runtime/tc_simulation_service.py:542

SimulationWorld.resolved_substeps

def SimulationWorld.resolved_substeps(self, dt: float) -> int

class method · public name · tech_connector/game_engine/runtime/tc_simulation_service.py:608

SimulationWorld.capture_frame

def SimulationWorld.capture_frame(self, frame: int) -> SimulationFrame

class method · public name · tech_connector/game_engine/runtime/tc_simulation_service.py:624

SimulationWorld._integrate

def SimulationWorld._integrate(self, dt: float) -> None

class method · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:636

SimulationWorld._accumulate_particle_interactions

def SimulationWorld._accumulate_particle_interactions(self, accelerations: list[Vec3]) -> None

class method · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:680

SimulationWorld._resolve_interaction_collisions

def SimulationWorld._resolve_interaction_collisions(self) -> None

class method · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:817

SimulationWorld._field_acceleration

def SimulationWorld._field_acceleration(self, force: ForceField, particle: SimulationParticle, particle_index: int) -> Vec3

class method · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:892

SimulationWorld._curve_acceleration

def SimulationWorld._curve_acceleration(self, field: CurveFlowField, position: Vec3) -> Vec3

class method · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:972

SimulationWorld._solve_distance_constraints

def SimulationWorld._solve_distance_constraints(self, dt: float) -> None

class method · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:998

SimulationWorld._update_reformable_bonds

def SimulationWorld._update_reformable_bonds(self) -> None

class method · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:1049

SimulationWorld._solve_attachments

def SimulationWorld._solve_attachments(self, dt: float) -> None

class method · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:1119

SimulationWorld._solve_volume_constraints

def SimulationWorld._solve_volume_constraints(self, dt: float) -> None

class method · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:1135

SimulationWorld._solve_area_constraints

def SimulationWorld._solve_area_constraints(self, dt: float) -> None

class method · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:1168

SimulationWorld._solve_bending_constraints

def SimulationWorld._solve_bending_constraints(self, dt: float) -> None

class method · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:1199

Preserve the authored angle between adjacent cloth triangles.

SimulationWorld._solve_particle_contacts

def SimulationWorld._solve_particle_contacts(self) -> None

class method · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:1246

SimulationWorld._separate_particles

def SimulationWorld._separate_particles(self, first_index: int, second_index: int) -> None

class method · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:1276

SimulationWorld._solve_colliders

def SimulationWorld._solve_colliders(self, dt: float, responses: dict[int, tuple[Vec3, float, float, Vec3]] | None=None) -> None

class method · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:1301

SimulationWorld._solve_mesh_collision

def SimulationWorld._solve_mesh_collision(self, particle: SimulationParticle, collider: TriangleMeshCollider, dt: float) -> tuple[Vec3, float, float, Vec3] | None

class method · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:1338

SimulationWorld._apply_material_adhesion

def SimulationWorld._apply_material_adhesion(self, particle: SimulationParticle, dt: float) -> None

class method · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:1371

SimulationWorld._record_debug_contact

def SimulationWorld._record_debug_contact(self, point: Vec3, normal: Vec3, penetration: float, kind: str) -> None

class method · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:1376

SimulationWorld._emit_geometry

def SimulationWorld._emit_geometry(self, dt: float) -> None

class method · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:1386

SimulationWorld._update_thermal_state

def SimulationWorld._update_thermal_state(self, dt: float) -> None

class method · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:1454

SimulationWorld._solve_material_neighbors

def SimulationWorld._solve_material_neighbors(self, dt: float) -> None

class method · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:1499

create_cloth_grid

def create_cloth_grid(columns: int=16, rows: int=16, *, spacing: float=0.08, origin: Vec3=(-0.6, 1.5, 0.0), material: str='cotton', pin_top_corners: bool=True) -> SimulationWorld

module function · public name · tech_connector/game_engine/runtime/tc_simulation_service.py:1530

create_cloth_from_geometry

def create_cloth_from_geometry(vertices: Iterable[Vec3], faces: Iterable[tuple[int, ...]], *, material: str='cotton', pinned_vertices: Iterable[int]=(), particle_radius: float=0.02, tear_threshold: float=0.0, uvs: Iterable[tuple[float, float]] | None=None) -> SimulationWorld

module function · public name · tech_connector/game_engine/runtime/tc_simulation_service.py:1589

create_soft_body_from_geometry

def create_soft_body_from_geometry(vertices: Iterable[Vec3], faces: Iterable[tuple[int, ...]], *, material: str='jello', pinned_vertices: Iterable[int]=(), volume_compliance: float=2e-07) -> SimulationWorld

module function · public name · tech_connector/game_engine/runtime/tc_simulation_service.py:1672

create_breakable_solid_from_geometry

def create_breakable_solid_from_geometry(vertices: Iterable[Vec3], faces: Iterable[tuple[int, ...]], *, material: str='glass') -> SimulationWorld

module function · public name · tech_connector/game_engine/runtime/tc_simulation_service.py:1706

_create_glass_shards

def _create_glass_shards(vertices: Iterable[Vec3], faces: Iterable[tuple[int, ...]]) -> SimulationWorld

module function · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:1725

create_fluid_from_geometry

def create_fluid_from_geometry(vertices: Iterable[Vec3], faces: Iterable[tuple[int, ...]], *, material: str='soup', spacing: float=0.08, max_particles: int=20000) -> SimulationWorld

module function · public name · tech_connector/game_engine/runtime/tc_simulation_service.py:1773

create_reformable_dough_from_geometry

def create_reformable_dough_from_geometry(vertices: Iterable[Vec3], faces: Iterable[tuple[int, ...]], *, spacing: float=0.08, max_particles: int=12000, material: str='playdoh') -> SimulationWorld

module function · public name · tech_connector/game_engine/runtime/tc_simulation_service.py:1817

create_particle_block

def create_particle_block(dimensions: tuple[int, int, int]=(8, 8, 8), *, spacing: float=0.07, origin: Vec3=(-0.25, 0.2, -0.25), material: str='water') -> SimulationWorld

module function · public name · tech_connector/game_engine/runtime/tc_simulation_service.py:1847

create_sparse_fire_volume

def create_sparse_fire_volume(*, plasma: bool=False) -> SimulationWorld

module function · public name · tech_connector/game_engine/runtime/tc_simulation_service.py:1870

attach_particles

def attach_particles(world: SimulationWorld, particle_indices: Iterable[int], *, compliance: float=0.0, break_threshold: float=0.0) -> list[int]

module function · public name · tech_connector/game_engine/runtime/tc_simulation_service.py:1886

_add

def _add(first: Vec3, second: Vec3) -> Vec3

module function · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:1907

_subtract

def _subtract(first: Vec3, second: Vec3) -> Vec3

module function · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:1911

_scale

def _scale(value: Vec3, amount: float) -> Vec3

module function · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:1915

_dot

def _dot(first: Vec3, second: Vec3) -> float

module function · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:1919

_cross

def _cross(first: Vec3, second: Vec3) -> Vec3

module function · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:1923

_length

def _length(value: Vec3) -> float

module function · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:1931

_normalize

def _normalize(value: Vec3, fallback: Vec3=(0.0, 0.0, 0.0)) -> Vec3

module function · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:1935

_signed_dihedral_angle

def _signed_dihedral_angle(edge_first: Vec3, edge_second: Vec3, opposite_first: Vec3, opposite_second: Vec3) -> float

module function · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:1940

_wrapped_angle

def _wrapped_angle(value: float) -> float

module function · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:1954

_rotate_about_axis

def _rotate_about_axis(point: Vec3, origin: Vec3, axis: Vec3, angle: float) -> Vec3

module function · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:1958

_friction_velocity

def _friction_velocity(velocity: Vec3, normal: Vec3, friction: float, restitution: float) -> Vec3

module function · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:1968

_fabric_axis

def _fabric_axis(uvs: list[tuple[float, float]], first: int, second: int, kind: str) -> str

module function · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:1976

_fabric_compliance

def _fabric_compliance(material: SimulationMaterial, axis: str, fallback: float, *, bend: bool=False) -> float

module function · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:1991

_triangulate_polygons

def _triangulate_polygons(faces: Iterable[tuple[int, ...]]) -> list[tuple[int, int, int]]

module function · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:2009

_add_surface_area_constraints

def _add_surface_area_constraints(world: SimulationWorld, *, compliance: float, break_threshold: float=0.0) -> None

module function · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:2018

signed_mesh_volume

def signed_mesh_volume(vertices: Iterable[Vec3], faces: Iterable[tuple[int, ...]]) -> float

module function · public name · tech_connector/game_engine/runtime/tc_simulation_service.py:2035

Return oriented closed-mesh volume for validation and solver diagnostics.

_signed_mesh_volume

def _signed_mesh_volume(vertices: list[Vec3], faces: Iterable[tuple[int, int, int]]) -> float

module function · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:2041

_point_inside_closed_mesh

def _point_inside_closed_mesh(point: Vec3, vertices: list[Vec3], faces: Iterable[tuple[int, int, int]]) -> bool

module function · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:2050

_ray_triangle_distance

def _ray_triangle_distance(origin: Vec3, direction: Vec3, first: Vec3, second: Vec3, third: Vec3) -> float | None

module function · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:2063

_closest_point_on_triangle

def _closest_point_on_triangle(point: Vec3, first: Vec3, second: Vec3, third: Vec3) -> Vec3

module function · internal · tech_connector/game_engine/runtime/tc_simulation_service.py:2082

tech_connector.game_engine.runtime.tc_simulation_transfer_service

SimulationTransferManifest.to_dict

def SimulationTransferManifest.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_simulation_transfer_service.py:28

build_simulation_transfer_manifest

def build_simulation_transfer_manifest(world: SimulationWorld, cache: SimulationCache, target: str, *, prefer_live: bool=True) -> SimulationTransferManifest

module function · public name · tech_connector/game_engine/runtime/tc_simulation_transfer_service.py:56

_simulation_types

def _simulation_types(world: SimulationWorld) -> list[str]

module function · internal · tech_connector/game_engine/runtime/tc_simulation_transfer_service.py:165

tech_connector.game_engine.runtime.tc_vehicle_dynamics_service

VehicleDynamicsFrame.to_dict

def VehicleDynamicsFrame.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/tc_vehicle_dynamics_service.py:74

VehicleDynamicsRuntime.step

def VehicleDynamicsRuntime.step(self, wheels: Sequence[WheelRigSettings], chassis_position: Vector3, chassis_velocity: Vector3, controls: VehicleControlInput, ground_query: VehicleGroundQuery, *, delta_time: float, forward: Vector3=(0.0, 0.0, 1.0), up: Vector3=(0.0, 1.0, 0.0)) -> VehicleDynamicsFrame

class method · public name · tech_connector/game_engine/runtime/tc_vehicle_dynamics_service.py:90

VehicleDynamicsRuntime._anti_roll_torque

def VehicleDynamicsRuntime._anti_roll_torque(self, wheels: Sequence[WheelRigSettings], compressions: Mapping[str, float]) -> Vector3

class method · internal · tech_connector/game_engine/runtime/tc_vehicle_dynamics_service.py:159

_validate_wheel

def _validate_wheel(wheel: WheelRigSettings) -> None

module function · internal · tech_connector/game_engine/runtime/tc_vehicle_dynamics_service.py:172

_vec

def _vec(value: Any) -> Vector3

module function · internal · tech_connector/game_engine/runtime/tc_vehicle_dynamics_service.py:181

_add

def _add(a: Vector3, b: Vector3) -> Vector3

module function · internal · tech_connector/game_engine/runtime/tc_vehicle_dynamics_service.py:190

_subtract

def _subtract(a: Vector3, b: Vector3) -> Vector3

module function · internal · tech_connector/game_engine/runtime/tc_vehicle_dynamics_service.py:194

_scale

def _scale(value: Vector3, factor: float) -> Vector3

module function · internal · tech_connector/game_engine/runtime/tc_vehicle_dynamics_service.py:198

_length

def _length(value: Vector3) -> float

module function · internal · tech_connector/game_engine/runtime/tc_vehicle_dynamics_service.py:202

_normalize

def _normalize(value: Vector3, fallback: Vector3) -> Vector3

module function · internal · tech_connector/game_engine/runtime/tc_vehicle_dynamics_service.py:206

_dot

def _dot(a: Vector3, b: Vector3) -> float

module function · internal · tech_connector/game_engine/runtime/tc_vehicle_dynamics_service.py:211

_cross

def _cross(a: Vector3, b: Vector3) -> Vector3

module function · internal · tech_connector/game_engine/runtime/tc_vehicle_dynamics_service.py:215

_clamp

def _clamp(value: float, minimum: float, maximum: float) -> float

module function · internal · tech_connector/game_engine/runtime/tc_vehicle_dynamics_service.py:219

tech_connector.game_engine.runtime.world_intelligence_command_service

execute_world_intelligence_command

def execute_world_intelligence_command(world: CharacterWorldAsset, runtime: WorldIntelligenceRuntimeState, command: str, payload: dict[str, Any]) -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/world_intelligence_command_service.py:58

execute_gameplay_experience_command

def execute_gameplay_experience_command(profile: GameExperienceProfile | None, command: str, payload: dict[str, Any]) -> tuple[GameExperienceProfile | None, dict[str, Any]]

module function · public name · tech_connector/game_engine/runtime/world_intelligence_command_service.py:210

_partial_asset

def _partial_asset(collection: str, payload: dict[str, Any]) -> WorldIntelligenceAsset

module function · internal · tech_connector/game_engine/runtime/world_intelligence_command_service.py:291

_require_character

def _require_character(world: CharacterWorldAsset, character_id: str) -> Any

module function · internal · tech_connector/game_engine/runtime/world_intelligence_command_service.py:312

tech_connector.game_engine.runtime.world_intelligence_runtime_service

SmartObjectReservationManager.release_expired

def SmartObjectReservationManager.release_expired(self, now: float) -> int

class method · public name · tech_connector/game_engine/runtime/world_intelligence_runtime_service.py:101

SmartObjectReservationManager.reserve

def SmartObjectReservationManager.reserve(self, definition: SmartObjectDefinition, *, character_id: str, action: str, character_tags: Iterable[str]=(), now: float=0.0, duration: float=5.0, preferred_slot: str='') -> SmartObjectReservation

class method · public name · tech_connector/game_engine/runtime/world_intelligence_runtime_service.py:107

SmartObjectReservationManager.release

def SmartObjectReservationManager.release(self, reservation_id: str, *, character_id: str='') -> bool

class method · public name · tech_connector/game_engine/runtime/world_intelligence_runtime_service.py:152

SmartObjectReservationManager.to_dict

def SmartObjectReservationManager.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/world_intelligence_runtime_service.py:161

SmartObjectReservationManager.from_dict

def SmartObjectReservationManager.from_dict(cls, data: dict[str, Any]) -> 'SmartObjectReservationManager'

class method · public name · tech_connector/game_engine/runtime/world_intelligence_runtime_service.py:165

sense_stimuli

def sense_stimuli(character: CharacterState, sensors: Iterable[PerceptionSensor], stimuli: Iterable[PerceivedStimulus], *, occlusion_test: Callable[[tuple[float, float, float], tuple[float, float, float]], bool] | None=None) -> PerceptionReceipt

module function · public name · tech_connector/game_engine/runtime/world_intelligence_runtime_service.py:202

apply_perception_receipt

def apply_perception_receipt(character: CharacterState, receipt: PerceptionReceipt, stimuli: Iterable[PerceivedStimulus], sensors: Iterable[PerceptionSensor]) -> int

module function · public name · tech_connector/game_engine/runtime/world_intelligence_runtime_service.py:253

find_navigation_path

def find_navigation_path(graph: NavigationGraph, start: str, goal: str, *, traversal_tags: Iterable[str]=()) -> NavigationReceipt

module function · public name · tech_connector/game_engine/runtime/world_intelligence_runtime_service.py:290

solve_crowd_steering

def solve_crowd_steering(intents: Iterable[CrowdAgentIntent], *, neighbor_distance: float=2.0) -> tuple[CrowdSteeringReceipt, ...]

module function · public name · tech_connector/game_engine/runtime/world_intelligence_runtime_service.py:336

evaluate_behavior_graph

def evaluate_behavior_graph(graph: BehaviorGraph, character: CharacterState, world: CharacterWorldAsset, *, now: float=0.0) -> BehaviorDecisionReceipt

module function · public name · tech_connector/game_engine/runtime/world_intelligence_runtime_service.py:359

choose_dialogue_act

def choose_dialogue_act(dialogue: DialogueSet, character: CharacterState, world: CharacterWorldAsset, *, now: float=0.0, model_realizations: dict[str, str] | None=None) -> DialogueDecisionReceipt

module function · public name · tech_connector/game_engine/runtime/world_intelligence_runtime_service.py:422

simulate_group_tick

def simulate_group_tick(group: Any, *, elapsed: float, events: Iterable[dict[str, Any]]=()) -> dict[str, Any]

module function · public name · tech_connector/game_engine/runtime/world_intelligence_runtime_service.py:459

authorize_world_mutation

def authorize_world_mutation(policy: AuthorityPolicy, *, writer: str, field_path: str, current_revision: int, expected_revision: int, predicted: bool=False) -> AuthorityReceipt

module function · public name · tech_connector/game_engine/runtime/world_intelligence_runtime_service.py:477

_character_value

def _character_value(character: CharacterState, name: str) -> float

module function · internal · tech_connector/game_engine/runtime/world_intelligence_runtime_service.py:495

_vec3

def _vec3(value: Any) -> tuple[float, float, float]

module function · internal · tech_connector/game_engine/runtime/world_intelligence_runtime_service.py:502

_add

def _add(first: tuple[float, float, float], second: tuple[float, float, float]) -> tuple[float, float, float]

module function · internal · tech_connector/game_engine/runtime/world_intelligence_runtime_service.py:507

_subtract

def _subtract(first: tuple[float, float, float], second: tuple[float, float, float]) -> tuple[float, float, float]

module function · internal · tech_connector/game_engine/runtime/world_intelligence_runtime_service.py:511

_scale

def _scale(value: tuple[float, float, float], amount: float) -> tuple[float, float, float]

module function · internal · tech_connector/game_engine/runtime/world_intelligence_runtime_service.py:515

_dot

def _dot(first: tuple[float, float, float], second: tuple[float, float, float]) -> float

module function · internal · tech_connector/game_engine/runtime/world_intelligence_runtime_service.py:519

_length

def _length(value: tuple[float, float, float]) -> float

module function · internal · tech_connector/game_engine/runtime/world_intelligence_runtime_service.py:523

_normalized

def _normalized(value: tuple[float, float, float]) -> tuple[float, float, float]

module function · internal · tech_connector/game_engine/runtime/world_intelligence_runtime_service.py:527

_clamp_length

def _clamp_length(value: tuple[float, float, float], maximum: float) -> tuple[float, float, float]

module function · internal · tech_connector/game_engine/runtime/world_intelligence_runtime_service.py:532

_distance

def _distance(first: tuple[float, float, float], second: tuple[float, float, float]) -> float

module function · internal · tech_connector/game_engine/runtime/world_intelligence_runtime_service.py:537

_clamp01

def _clamp01(value: float) -> float

module function · internal · tech_connector/game_engine/runtime/world_intelligence_runtime_service.py:541

tech_connector.game_engine.runtime.world_streaming_runtime_service

StreamingCellState.center

def StreamingCellState.center(self) -> tuple[float, float]

class method · public name · tech_connector/game_engine/runtime/world_streaming_runtime_service.py:31

StreamingFrameReceipt.to_dict

def StreamingFrameReceipt.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/world_streaming_runtime_service.py:47

WorldStreamingRuntime.__init__

def WorldStreamingRuntime.__init__(self, cells: Sequence[StreamingCellState], *, maximum_loaded_cells: int=256, memory_mb: float=2048.0, maximum_requests: int=16, unload_hysteresis_frames: int=8, preload_seconds: float=0.35) -> None

class method · internal · tech_connector/game_engine/runtime/world_streaming_runtime_service.py:52

WorldStreamingRuntime.from_manifest

def WorldStreamingRuntime.from_manifest(cls, manifest: Mapping[str, Any]) -> 'WorldStreamingRuntime'

class method · public name · tech_connector/game_engine/runtime/world_streaming_runtime_service.py:66

WorldStreamingRuntime.tick

def WorldStreamingRuntime.tick(self, sources: Sequence[StreamingSource], *, delta_seconds: float=1 / 60) -> StreamingFrameReceipt

class method · public name · tech_connector/game_engine/runtime/world_streaming_runtime_service.py:79

WorldStreamingRuntime.diagnostics

def WorldStreamingRuntime.diagnostics(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/runtime/world_streaming_runtime_service.py:118

_distance_to_bounds

def _distance_to_bounds(position: tuple[float, float], bounds: tuple[float, float, float, float]) -> float

module function · internal · tech_connector/game_engine/runtime/world_streaming_runtime_service.py:126

tech_connector.game_engine.scene.coordinate_space_service

AxisBasis.native_to_shared

def AxisBasis.native_to_shared(self, point: Sequence[float], scale: float) -> Vec3

class method · public name · tech_connector/game_engine/scene/coordinate_space_service.py:28

AxisBasis.shared_to_native

def AxisBasis.shared_to_native(self, point: Sequence[float], scale: float) -> Vec3

class method · public name · tech_connector/game_engine/scene/coordinate_space_service.py:33

_axis_basis_for_provider_scene

def _axis_basis_for_provider_scene(provider_id: str, up_axis: str | None=None) -> AxisBasis

module function · internal · tech_connector/game_engine/scene/coordinate_space_service.py:59

provider_default_unit

def provider_default_unit(provider_id: str) -> str

module function · public name · tech_connector/game_engine/scene/coordinate_space_service.py:100

unit_to_centimeters

def unit_to_centimeters(unit_name: str | None, provider_id: str='') -> float

module function · public name · tech_connector/game_engine/scene/coordinate_space_service.py:109

CoordinateSpace.provider

def CoordinateSpace.provider(self) -> str

class method · public name · tech_connector/game_engine/scene/coordinate_space_service.py:121

CoordinateSpace.centimeters_per_native_unit

def CoordinateSpace.centimeters_per_native_unit(self) -> float

class method · public name · tech_connector/game_engine/scene/coordinate_space_service.py:125

CoordinateSpace.native_to_shared_point

def CoordinateSpace.native_to_shared_point(self, point: Sequence[float]) -> Vec3

class method · public name · tech_connector/game_engine/scene/coordinate_space_service.py:128

CoordinateSpace.shared_to_native_point

def CoordinateSpace.shared_to_native_point(self, point: Sequence[float]) -> Vec3

class method · public name · tech_connector/game_engine/scene/coordinate_space_service.py:131

CoordinateSpace.native_bbox_to_shared

def CoordinateSpace.native_bbox_to_shared(self, bbox: Sequence[float]) -> BBox6

class method · public name · tech_connector/game_engine/scene/coordinate_space_service.py:134

ProviderScaleDiagnostic.native_to_reference_scale

def ProviderScaleDiagnostic.native_to_reference_scale(self) -> float

class method · public name · tech_connector/game_engine/scene/coordinate_space_service.py:159

ProviderScaleDiagnostic.reference_to_native_scale

def ProviderScaleDiagnostic.reference_to_native_scale(self) -> float

class method · public name · tech_connector/game_engine/scene/coordinate_space_service.py:163

ProviderScaleDiagnostic.compact_label

def ProviderScaleDiagnostic.compact_label(self) -> str

class method · public name · tech_connector/game_engine/scene/coordinate_space_service.py:166

SceneNormalization.from_bounds

def SceneNormalization.from_bounds(cls, bounds: Iterable[Sequence[float]], target_extent: float=4.0) -> 'SceneNormalization'

class method · public name · tech_connector/game_engine/scene/coordinate_space_service.py:179

SceneNormalization.shared_to_view_point

def SceneNormalization.shared_to_view_point(self, point: Sequence[float]) -> Vec3

class method · public name · tech_connector/game_engine/scene/coordinate_space_service.py:186

SceneNormalization.view_to_shared_point

def SceneNormalization.view_to_shared_point(self, point: Sequence[float]) -> Vec3

class method · public name · tech_connector/game_engine/scene/coordinate_space_service.py:194

provider_native_to_shared

def provider_native_to_shared(provider_id: str, point: Sequence[float], unit_linear: str | None=None, up_axis: str | None=None) -> Vec3

module function · public name · tech_connector/game_engine/scene/coordinate_space_service.py:204

shared_to_provider_native

def shared_to_provider_native(provider_id: str, point: Sequence[float], unit_linear: str | None=None, up_axis: str | None=None) -> Vec3

module function · public name · tech_connector/game_engine/scene/coordinate_space_service.py:213

provider_bbox_to_shared

def provider_bbox_to_shared(provider_id: str, bbox: Sequence[float], unit_linear: str | None=None, up_axis: str | None=None) -> BBox6

module function · public name · tech_connector/game_engine/scene/coordinate_space_service.py:222

provider_scale_diagnostic

def provider_scale_diagnostic(provider_id: str, unit_linear: str | None=None, *, reference_provider_id: str='maya', reference_unit_linear: str | None='centimeters') -> ProviderScaleDiagnostic

module function · public name · tech_connector/game_engine/scene/coordinate_space_service.py:231

snapshot_scale_diagnostics

def snapshot_scale_diagnostics(snapshots: dict[str, dict], *, reference_provider_id: str='maya', reference_unit_linear: str | None='centimeters') -> dict[str, ProviderScaleDiagnostic]

module function · public name · tech_connector/game_engine/scene/coordinate_space_service.py:252

convert_point_between_providers

def convert_point_between_providers(source_provider: str, target_provider: str, point: Sequence[float], *, source_unit: str | None=None, target_unit: str | None=None, source_up_axis: str | None=None, target_up_axis: str | None=None) -> Vec3

module function · public name · tech_connector/game_engine/scene/coordinate_space_service.py:272

convert_vector_between_providers

def convert_vector_between_providers(source_provider: str, target_provider: str, vector: Sequence[float], *, source_unit: str | None=None, target_unit: str | None=None, source_up_axis: str | None=None, target_up_axis: str | None=None) -> Vec3

module function · public name · tech_connector/game_engine/scene/coordinate_space_service.py:286

Convert a direction or delta vector without applying any scene offset.

convert_camera_payload_between_providers

def convert_camera_payload_between_providers(source_provider: str, target_provider: str, payload: dict, *, source_unit: str | None=None, target_unit: str | None=None, source_up_axis: str | None=None, target_up_axis: str | None=None, source_bounds_shared: tuple[Vec3, float] | None=None, target_bounds_shared: tuple[Vec3, float] | None=None) -> dict

module function · public name · tech_connector/game_engine/scene/coordinate_space_service.py:308

Convert camera eye/target/up payloads between provider-native spaces. Eye, target, and up-target first move into Tech Connector shared space. If both provider scene bounds are supplied, the camera is then remapped from the source scene cent

provider_axis_basis

def provider_axis_basis(provider_id: str, up_axis: str | None=None) -> AxisBasis

module function · public name · tech_connector/game_engine/scene/coordinate_space_service.py:364

provider_space_label

def provider_space_label(provider_id: str, unit_linear: str | None=None) -> str

module function · public name · tech_connector/game_engine/scene/coordinate_space_service.py:368

bounds_from_points

def bounds_from_points(points: Iterable[Sequence[float]]) -> BBox6

module function · public name · tech_connector/game_engine/scene/coordinate_space_service.py:382

bounds_from_bboxes

def bounds_from_bboxes(bounds: Iterable[Sequence[float]]) -> BBox6

module function · public name · tech_connector/game_engine/scene/coordinate_space_service.py:396

_vec3

def _vec3(point: Sequence[float]) -> Vec3

module function · internal · tech_connector/game_engine/scene/coordinate_space_service.py:411

tech_connector.game_engine.scene.engine_project_conversion_service

EngineProjectAdapter.strategy_for

def EngineProjectAdapter.strategy_for(self, domain: str) -> str

class method · public name · tech_connector/game_engine/scene/engine_project_conversion_service.py:37

EngineSemanticNode.__post_init__

def EngineSemanticNode.__post_init__(self) -> None

class method · internal · tech_connector/game_engine/scene/engine_project_conversion_service.py:50

engine_project_adapters

def engine_project_adapters() -> dict[str, dict[str, Any]]

module function · public name · tech_connector/game_engine/scene/engine_project_conversion_service.py:104

Return the registered full-project extraction contracts.

plan_engine_project_conversion

def plan_engine_project_conversion(manifest: EngineProjectManifest, requested_ids: Iterable[str] | None=None) -> dict[str, Any]

module function · public name · tech_connector/game_engine/scene/engine_project_conversion_service.py:109

Plan a dependency-closed conversion without claiming execution succeeded.

_dependency_order

def _dependency_order(node_map: dict[str, EngineSemanticNode], roots: list[str]) -> tuple[list[str], list[tuple[str, str]], list[list[str]]]

module function · internal · tech_connector/game_engine/scene/engine_project_conversion_service.py:179

tech_connector.game_engine.scene.federated_scene_service

_finite_float

def _finite_float(value: Any, default: float) -> float

module function · internal · tech_connector/game_engine/scene/federated_scene_service.py:34

normalize_dcc_session_state

def normalize_dcc_session_state(state: dict[str, Any] | None, *, provider: str='') -> dict[str, Any]

module function · public name · tech_connector/game_engine/scene/federated_scene_service.py:42

Normalize portable per-source UI/timeline state without transient ports.

dcc_session_state_from_snapshot

def dcc_session_state_from_snapshot(snapshot: dict[str, Any] | None, *, provider: str='') -> dict[str, Any]

module function · public name · tech_connector/game_engine/scene/federated_scene_service.py:83

Extract portable camera/timeline state from a host scene snapshot.

normalize_federated_scene_source

def normalize_federated_scene_source(source: dict[str, Any]) -> dict[str, Any]

module function · public name · tech_connector/game_engine/scene/federated_scene_service.py:110

Normalize optional portable source state while accepting legacy manifests.

federated_scene_lookdev_report

def federated_scene_lookdev_report(document: 'FederatedSceneDocument') -> dict[str, Any]

module function · public name · tech_connector/game_engine/scene/federated_scene_service.py:128

Summarize saved lookdev evidence without treating absent legacy data as parity.

_source_ownership

def _source_ownership(source_ref: dict[str, Any] | None) -> tuple[str, str]

module function · internal · tech_connector/game_engine/scene/federated_scene_service.py:158

EditableRigGraph.add_node

def EditableRigGraph.add_node(self, name: str, node_type: str, *, parent_id: str='', attributes: dict[str, Any] | None=None, node_id: str | None=None, source_type: str='', source_ref: dict[str, str] | None=None, portable: bool=True) -> str

class method · public name · tech_connector/game_engine/scene/federated_scene_service.py:178

Create one native or linked rig node in the editable DAG/DG.

EditableRigGraph.connect_attributes

def EditableRigGraph.connect_attributes(self, source_node: str, source_attribute: str, target_node: str, target_attribute: str, *, connection_type: str='attribute', connection_id: str | None=None) -> str

class method · public name · tech_connector/game_engine/scene/federated_scene_service.py:223

Author a portable directed plug connection without evaluating it eagerly.

EditableRigGraph.set_node_attribute

def EditableRigGraph.set_node_attribute(self, node_id: str, attribute: str, value: Any) -> None

class method · public name · tech_connector/game_engine/scene/federated_scene_service.py:265

Set a native node input; linked nodes remain authoritative in their DCC.

EditableRigGraph.evaluate_direct_attribute_connections

def EditableRigGraph.evaluate_direct_attribute_connections(self) -> list[str]

class method · public name · tech_connector/game_engine/scene/federated_scene_service.py:277

Propagate portable attr-to-attr links and report cyclic local nodes.

EditableRigGraph.evaluate_local

def EditableRigGraph.evaluate_local(self)

class method · public name · tech_connector/game_engine/scene/federated_scene_service.py:312

Evaluate native rig nodes locally while leaving linked source-proxy nodes authoritative.

EditableRigGraph.disconnect_attributes

def EditableRigGraph.disconnect_attributes(self, connection_id: str) -> None

class method · public name · tech_connector/game_engine/scene/federated_scene_service.py:318

EditableRigGraph.reparent_node

def EditableRigGraph.reparent_node(self, node_id: str, parent_id: str='') -> None

class method · public name · tech_connector/game_engine/scene/federated_scene_service.py:326

EditableRigGraph.merge_rig_topology

def EditableRigGraph.merge_rig_topology(self, topology: dict[str, Any], *, provider_id: str='') -> None

class method · public name · tech_connector/game_engine/scene/federated_scene_service.py:341

Merge an ordered provider DAG and its lossless plug-level rig graph.

EditableRigGraph.add_joint

def EditableRigGraph.add_joint(self, name: str, *, parent_id: str='', local_matrix: list[float] | tuple[float, ...] | None=None, joint_id: str | None=None, source_ref: dict[str, str] | None=None) -> str

class method · public name · tech_connector/game_engine/scene/federated_scene_service.py:454

EditableRigGraph.joint_edit_policy

def EditableRigGraph.joint_edit_policy(self, joint_id: str) -> str

class method · public name · tech_connector/game_engine/scene/federated_scene_service.py:493

EditableRigGraph.joint_is_structurally_editable

def EditableRigGraph.joint_is_structurally_editable(self, joint_id: str) -> bool

class method · public name · tech_connector/game_engine/scene/federated_scene_service.py:500

EditableRigGraph._require_structurally_editable_joint

def EditableRigGraph._require_structurally_editable_joint(self, joint_id: str) -> None

class method · internal · tech_connector/game_engine/scene/federated_scene_service.py:503

EditableRigGraph.reparent_joint

def EditableRigGraph.reparent_joint(self, joint_id: str, parent_id: str='') -> None

class method · public name · tech_connector/game_engine/scene/federated_scene_service.py:510

EditableRigGraph.remove_joint

def EditableRigGraph.remove_joint(self, joint_id: str) -> None

class method · public name · tech_connector/game_engine/scene/federated_scene_service.py:525

EditableRigGraph.add_skin

def EditableRigGraph.add_skin(self, mesh_id: str, joint_ids: list[str] | tuple[str, ...], *, skin_id: str | None=None, inverse_bind_blob: str='', weights_blob: str='', source_ref: dict[str, str] | None=None) -> str

class method · public name · tech_connector/game_engine/scene/federated_scene_service.py:544

EditableRigGraph.set_vertex_weights

def EditableRigGraph.set_vertex_weights(self, skin_id: str, vertex_index: int, weights: dict[str, float]) -> None

class method · public name · tech_connector/game_engine/scene/federated_scene_service.py:574

EditableRigGraph.add_constraint

def EditableRigGraph.add_constraint(self, constraint_type: str, source_ids: list[str] | tuple[str, ...], target_id: str, *, constraint_id: str | None=None, settings: dict[str, Any] | None=None) -> str

class method · public name · tech_connector/game_engine/scene/federated_scene_service.py:592

EditableRigGraph.add_ik_solver

def EditableRigGraph.add_ik_solver(self, start_joint_id: str, mid_joint_id: str, end_joint_id: str, target_node_id: str, *, pole_node_id: str='', solver_id: str | None=None, settings: dict[str, Any] | None=None) -> str

class method · public name · tech_connector/game_engine/scene/federated_scene_service.py:615

Author a native two-bone rotate-plane IK solver in the neutral rig graph.

EditableRigGraph.add_ik_chain_solver

def EditableRigGraph.add_ik_chain_solver(self, joint_ids: list[str] | tuple[str, ...], target_node_id: str, *, pole_node_id: str='', solver_id: str | None=None, settings: dict[str, Any] | None=None) -> str

class method · public name · tech_connector/game_engine/scene/federated_scene_service.py:666

Author a native multi-segment rotate-plane IK solver.

EditableRigGraph.add_motion_path

def EditableRigGraph.add_motion_path(self, target_node_id: str, control_points: list[list[float]] | tuple[tuple[float, ...], ...], *, parameter: float=0.0, follow: bool=True, closed: bool=False, up_vector: tuple[float, float, float]=(0.0, 1.0, 0.0), solver_id: str | None=None) -> str

class method · public name · tech_connector/game_engine/scene/federated_scene_service.py:714

Author a portable arc-length motion path for one native transform.

EditableRigGraph.add_ribbon_attachment

def EditableRigGraph.add_ribbon_attachment(self, target_node_id: str, control_grid: list[list[list[float]]], *, u: float=0.5, v: float=0.5, follow: bool=True, frame_method: str='surface', up_vector: tuple[float, float, float]=(0.0, 1.0, 0.0), solver_id: str | None=None) -> str

class method · public name · tech_connector/game_engine/scene/federated_scene_service.py:760

Author a portable bilinear ribbon attachment with stable U/V coordinates.

EditableRigGraph.add_deformer

def EditableRigGraph.add_deformer(self, mesh_id: str, deformer_type: str, *, settings: dict[str, Any] | None=None, deformer_id: str | None=None, source_ref: dict[str, str] | None=None) -> str

class method · public name · tech_connector/game_engine/scene/federated_scene_service.py:814

Append one ordered deformer without claiming local parity for unsupported types.

EditableRigGraph.merge_deformation_binding

def EditableRigGraph.merge_deformation_binding(self, binding: dict[str, Any], *, provider_id: str='') -> dict[str, bytes]

class method · public name · tech_connector/game_engine/scene/federated_scene_service.py:857

Import a linked DCC skin as editable joints and versioned binary sidecars.

EditableRigGraph.to_dict

def EditableRigGraph.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/scene/federated_scene_service.py:989

EditableRigGraph.from_dict

def EditableRigGraph.from_dict(cls, data: dict[str, Any] | None) -> 'EditableRigGraph'

class method · public name · tech_connector/game_engine/scene/federated_scene_service.py:1003

EditableRigGraph.validate

def EditableRigGraph.validate(self) -> list[str]

class method · public name · tech_connector/game_engine/scene/federated_scene_service.py:1027

FederatedSceneDocument.to_dict

def FederatedSceneDocument.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/scene/federated_scene_service.py:1083

FederatedSceneDocument.from_dict

def FederatedSceneDocument.from_dict(cls, data: dict[str, Any]) -> 'FederatedSceneDocument'

class method · public name · tech_connector/game_engine/scene/federated_scene_service.py:1098

stable_scene_source_id

def stable_scene_source_id(provider: str, source_path: str='', session_key: str='') -> str

module function · public name · tech_connector/game_engine/scene/federated_scene_service.py:1116

Return a stable archive-safe identity that does not depend on a transient bridge port.

source_snapshot_blob_name

def source_snapshot_blob_name(source_id: str) -> str

module function · public name · tech_connector/game_engine/scene/federated_scene_service.py:1127

save_federated_scene

def save_federated_scene(path: str | os.PathLike[str], document: FederatedSceneDocument, *, blobs: dict[str, bytes | bytearray | memoryview] | None=None) -> Path

module function · public name · tech_connector/game_engine/scene/federated_scene_service.py:1132

Atomically save a versioned `.tcscene` archive.

load_federated_scene

def load_federated_scene(path: str | os.PathLike[str], *, max_manifest_bytes: int=32 * 1024 * 1024, max_blob_bytes: int=8 * 1024 * 1024 * 1024) -> tuple[FederatedSceneDocument, dict[str, bytes]]

module function · public name · tech_connector/game_engine/scene/federated_scene_service.py:1165

Load and validate a `.tcscene` archive with bounded allocations.

source_file_fingerprint

def source_file_fingerprint(path: str | os.PathLike[str]) -> dict[str, Any]

module function · public name · tech_connector/game_engine/scene/federated_scene_service.py:1192

reconcile_scene_sources

def reconcile_scene_sources(document: FederatedSceneDocument, available_sessions: list[dict[str, Any]]) -> list[dict[str, Any]]

module function · public name · tech_connector/game_engine/scene/federated_scene_service.py:1231

Match stable source paths first and ephemeral ports only as a hint.

_same_path

def _same_path(left: str, right: str) -> bool

module function · internal · tech_connector/game_engine/scene/federated_scene_service.py:1299

_safe_blob_name

def _safe_blob_name(name: str) -> str

module function · internal · tech_connector/game_engine/scene/federated_scene_service.py:1307

_buffer_bytes

def _buffer_bytes(buffer: Any, offset: int, count: int, item_size: int) -> bytes

module function · internal · tech_connector/game_engine/scene/federated_scene_service.py:1314

_bind_world_matrices

def _bind_world_matrices(buffer: Any, offset: int, joint_count: int) -> list[list[float]]

module function · internal · tech_connector/game_engine/scene/federated_scene_service.py:1329

_local_bind_matrix

def _local_bind_matrix(bind_world_matrices: list[list[float]], index: int, joints: list[dict[str, Any]], source_to_joint_id: dict[str, str]) -> list[float]

module function · internal · tech_connector/game_engine/scene/federated_scene_service.py:1340

tech_connector.game_engine.scene.native_fbx_service

NativeFbxAsset.source_format

def NativeFbxAsset.source_format(self) -> str

class method · public name · tech_connector/game_engine/scene/native_fbx_service.py:41

NativeFbxAsset.to_editable_rig_graph

def NativeFbxAsset.to_editable_rig_graph(self) -> tuple[EditableRigGraph, dict[str, bytes]]

class method · public name · tech_connector/game_engine/scene/native_fbx_service.py:47

NativeFbxAsset.build_deformation_binding

def NativeFbxAsset.build_deformation_binding(self, graph: EditableRigGraph | None=None) -> dict[str, Any]

class method · public name · tech_connector/game_engine/scene/native_fbx_service.py:139

Compile immutable FBX skin data into the viewport's exact sparse GPU contract.

NativeFbxAsset.deformation_pose_at_frame

def NativeFbxAsset.deformation_pose_at_frame(self, binding: dict[str, Any], frame: int, *, graph: EditableRigGraph | None=None) -> dict[str, Any]

class method · public name · tech_connector/game_engine/scene/native_fbx_service.py:281

Read a baked exact FBX pose, falling back to the editable local graph for static rigs.

build_native_fbx_deformation_pose

def build_native_fbx_deformation_pose(graph: EditableRigGraph, binding: dict[str, Any]) -> dict[str, Any]

module function · public name · tech_connector/game_engine/scene/native_fbx_service.py:351

Evaluate a native rig graph and return only the joint matrices needed by the GPU.

apply_native_joint_matrix_override

def apply_native_joint_matrix_override(graph: EditableRigGraph, joint_id: str, *, translation_delta: tuple[float, float, float] | None=None, rotation_degrees: tuple[float, float, float] | None=None, scale: tuple[float, float, float] | None=None) -> list[float]

module function · public name · tech_connector/game_engine/scene/native_fbx_service.py:381

Apply a viewer-authored local joint delta while preserving imported joint orientation.

_armature_bind_world_matrices

def _armature_bind_world_matrices(armature: dict[str, Any], *, centimeters_per_unit: float) -> dict[str, list[float]]

module function · internal · tech_connector/game_engine/scene/native_fbx_service.py:415

_relative_row_matrix

def _relative_row_matrix(world_matrix: Any, parent_world_matrix: Any | None) -> list[float]

module function · internal · tech_connector/game_engine/scene/native_fbx_service.py:439

_scaled_row_matrix

def _scaled_row_matrix(matrix: Any, centimeters_per_unit: float) -> list[float]

module function · internal · tech_connector/game_engine/scene/native_fbx_service.py:449

_apply_authored_mesh_transform

def _apply_authored_mesh_transform(matrix: Any, authored: dict[str, Any], *, pivot: Any=(0.0, 0.0, 0.0)) -> list[float]

module function · internal · tech_connector/game_engine/scene/native_fbx_service.py:457

_row_euler_matrix

def _row_euler_matrix(rotation_degrees: Any)

module function · internal · tech_connector/game_engine/scene/native_fbx_service.py:480

find_blender_executable

def find_blender_executable() -> Path | None

module function · public name · tech_connector/game_engine/scene/native_fbx_service.py:500

find_blender_fbx_extractor

def find_blender_fbx_extractor() -> Path | None

module function · public name · tech_connector/game_engine/scene/native_fbx_service.py:512

Resolve the converter worker in both canonical and compatibility package layouts.

native_scene_import_capabilities

def native_scene_import_capabilities() -> dict[str, Any]

module function · public name · tech_connector/game_engine/scene/native_fbx_service.py:527

Report import support without launching a DCC or mutating scene state.

import_native_scene

def import_native_scene(source_path: str | os.PathLike[str], *, blender_executable: str | os.PathLike[str] | None=None, timeout: float=180.0, cancel_event: threading.Event | None=None) -> NativeFbxAsset

module function · public name · tech_connector/game_engine/scene/native_fbx_service.py:569

Import a supported scene file through an isolated Blender process.

import_native_fbx

def import_native_fbx(source_path: str | os.PathLike[str], *, blender_executable: str | os.PathLike[str] | None=None, timeout: float=180.0, cancel_event: threading.Event | None=None) -> NativeFbxAsset

module function · public name · tech_connector/game_engine/scene/native_fbx_service.py:658

_attach_portable_materials

def _attach_portable_materials(manifest: dict[str, Any], source: Path) -> None

module function · internal · tech_connector/game_engine/scene/native_fbx_service.py:681

Persist normalized lookdev while retaining the complete source payload.

_stop_subprocess

def _stop_subprocess(process: subprocess.Popen[Any]) -> None

module function · internal · tech_connector/game_engine/scene/native_fbx_service.py:699

Bounded child cleanup used by cancellation and timeout paths.

_constraint_kind

def _constraint_kind(blender_type: str) -> str

module function · internal · tech_connector/game_engine/scene/native_fbx_service.py:714

tech_connector.game_engine.scene.scene_delta_contract

normalize_frame_delta

def normalize_frame_delta(snapshot: dict[str, Any], provider_id: str='') -> dict[str, Any]

module function · public name · tech_connector/game_engine/scene/scene_delta_contract.py:20

Promote a provider packet to the shared delta schema without copying buffers.

validate_frame_delta

def validate_frame_delta(packet: dict[str, Any]) -> list[str]

module function · public name · tech_connector/game_engine/scene/scene_delta_contract.py:54

Return bounded validation errors suitable for telemetry and fallbacks.

frame_delta_has_gpu_points

def frame_delta_has_gpu_points(packet: dict[str, Any]) -> bool

module function · public name · tech_connector/game_engine/scene/scene_delta_contract.py:99

Whether at least one valid object contains a directly uploadable float buffer.

tech_connector.game_engine.scene.source_conversion_adapter_service

SourceConversionAdapter.readiness

def SourceConversionAdapter.readiness(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/scene/source_conversion_adapter_service.py:25

source_conversion_adapters

def source_conversion_adapters() -> dict[str, dict[str, Any]]

module function · public name · tech_connector/game_engine/scene/source_conversion_adapter_service.py:69

conversion_readiness

def conversion_readiness(provider: str) -> dict[str, Any]

module function · public name · tech_connector/game_engine/scene/source_conversion_adapter_service.py:73

tech_connector.game_engine.scene.tc_native_scene_compiler_service

stable_tc_id

def stable_tc_id(kind: str, provider: str, source_id: str) -> str

module function · public name · tech_connector/game_engine/scene/tc_native_scene_compiler_service.py:26

Return a stable TC identity without exposing a provider path as runtime identity.

tc_node_class

def tc_node_class(contract_node_type: str) -> str

module function · public name · tech_connector/game_engine/scene/tc_native_scene_compiler_service.py:33

compile_graph_to_tc_native

def compile_graph_to_tc_native(graph: EditableRigGraph, provider: str) -> dict[str, Any]

module function · public name · tech_connector/game_engine/scene/tc_native_scene_compiler_service.py:46

Replace source-scoped executable IDs while preserving lossless provenance.

_source_identity

def _source_identity(item: dict[str, Any], fallback: str) -> str

module function · internal · tech_connector/game_engine/scene/tc_native_scene_compiler_service.py:182

_provenance

def _provenance(item: dict[str, Any], provider: str, source_id: str) -> dict[str, Any]

module function · internal · tech_connector/game_engine/scene/tc_native_scene_compiler_service.py:187

_remap_nested_ids

def _remap_nested_ids(value: Any, node_ids: dict[str, str]) -> Any

module function · internal · tech_connector/game_engine/scene/tc_native_scene_compiler_service.py:194

_remap_animation

def _remap_animation(animation: dict[str, dict[str, Any]], node_ids: dict[str, str], provider: str) -> None

module function · internal · tech_connector/game_engine/scene/tc_native_scene_compiler_service.py:210

tech_connector.game_engine.scene.tc_scene_conversion_service

TCSceneConversionResult.save

def TCSceneConversionResult.save(self, path: str | Path) -> Path

class method · public name · tech_connector/game_engine/scene/tc_scene_conversion_service.py:46

convert_to_tc

def convert_to_tc(*, scene_snapshot: dict[str, Any] | None=None, rig_topology: dict[str, Any] | None=None, deformation_binding: dict[str, Any] | None=None, source_provider: str='maya', source_native_id: str='', scope: str='scene', include_animation: bool=True, include_materials: bool=True, port: int | None=None, output_path: str | Path | None=None, progress_callback: Any=None, cancel_event: Any=None) -> TCSceneConversionResult

module function · public name · tech_connector/game_engine/scene/tc_scene_conversion_service.py:50

Convert supplied packets, or capture a live Maya session when ``port`` is set.

capture_maya_scene

def capture_maya_scene(port: int, *, source_native_id: str='', scope: str='scene', include_animation: bool=True, progress_callback: Any=None, cancel_event: Any=None) -> tuple[dict[str, Any], dict[str, Any] | None, dict[str, Any] | None, list[dict[str, Any]]]

module function · public name · tech_connector/game_engine/scene/tc_scene_conversion_service.py:100

Capture the three Maya packets needed for an offline conversion.

_emit_progress

def _emit_progress(callback: Any, percent: int, description: str) -> None

module function · internal · tech_connector/game_engine/scene/tc_scene_conversion_service.py:269

_maya_topology_cache_key

def _maya_topology_cache_key(inventory: dict[str, Any], port: int, mesh_targets: list[str], include_animation: bool) -> tuple[Any, ...] | None

module function · internal · tech_connector/game_engine/scene/tc_scene_conversion_service.py:274

_cached_maya_topology

def _cached_maya_topology(key: tuple[Any, ...] | None) -> dict[str, Any] | None

module function · internal · tech_connector/game_engine/scene/tc_scene_conversion_service.py:298

_store_maya_topology

def _store_maya_topology(key: tuple[Any, ...] | None, topology: dict[str, Any]) -> None

module function · internal · tech_connector/game_engine/scene/tc_scene_conversion_service.py:306

_raise_if_cancelled

def _raise_if_cancelled(cancel_event: Any) -> None

module function · internal · tech_connector/game_engine/scene/tc_scene_conversion_service.py:315

_merge_deformation_binding_chunks

def _merge_deformation_binding_chunks(chunks: list[dict[str, Any]], *, provider_id: str) -> dict[str, Any] | None

module function · internal · tech_connector/game_engine/scene/tc_scene_conversion_service.py:320

convert_scene_packets_to_tc

def convert_scene_packets_to_tc(scene_snapshot: dict[str, Any], *, rig_topology: dict[str, Any] | None=None, deformation_binding: dict[str, Any] | None=None, source_provider: str='maya', source_native_id: str='', scope: str='scene', include_animation: bool=True, include_materials: bool=True, initial_issues: list[dict[str, Any]] | None=None) -> TCSceneConversionResult

module function · public name · tech_connector/game_engine/scene/tc_scene_conversion_service.py:342

Create an editable, self-contained TC document from provider packets.

_standalone_snapshot

def _standalone_snapshot(snapshot: dict[str, Any], provider: str, *, include_materials: bool) -> dict[str, Any]

module function · internal · tech_connector/game_engine/scene/tc_scene_conversion_service.py:443

_canonicalize_point_field

def _canonicalize_point_field(payload: dict[str, Any], key: str, provider: str, unit_linear: str | None, up_axis: str | None) -> None

module function · internal · tech_connector/game_engine/scene/tc_scene_conversion_service.py:506

_promote_graph_to_native

def _promote_graph_to_native(graph: EditableRigGraph, provider: str, issues: list[dict[str, Any]]) -> None

module function · internal · tech_connector/game_engine/scene/tc_scene_conversion_service.py:516

_convert_animation_curves

def _convert_animation_curves(graph: EditableRigGraph, topology: dict[str, Any], provider: str, snapshot: dict[str, Any]) -> None

module function · internal · tech_connector/game_engine/scene/tc_scene_conversion_service.py:551

_conversion_counts

def _conversion_counts(snapshot: dict[str, Any], graph: EditableRigGraph) -> dict[str, int]

module function · internal · tech_connector/game_engine/scene/tc_scene_conversion_service.py:610

_conversion_build_chunks

def _conversion_build_chunks(snapshot: dict[str, Any], graph: EditableRigGraph) -> dict[str, Any]

module function · internal · tech_connector/game_engine/scene/tc_scene_conversion_service.py:626

Describe retryable asset chunks and the compact semantic rig-builder handoff.

_issue

def _issue(severity: str, category: str, source_id: str, message: str, fallback: str) -> dict[str, Any]

module function · internal · tech_connector/game_engine/scene/tc_scene_conversion_service.py:687

_json_safe

def _json_safe(value: Any) -> Any

module function · internal · tech_connector/game_engine/scene/tc_scene_conversion_service.py:697

tech_connector.game_engine.scene.usd_composition_command_service

apply_usd_composition_command

def apply_usd_composition_command(command: str, payload: dict[str, Any] | None=None, *, composition: UsdComposition | None=None, result: UsdCompositionResult | None=None) -> UsdCompositionCommandOutcome

module function · public name · tech_connector/game_engine/scene/usd_composition_command_service.py:36

Apply one adaptive command without launching a compositor or touching Qt.

_composition_from_payload

def _composition_from_payload(payload: dict[str, Any], existing: UsdComposition | None) -> UsdComposition

module function · internal · tech_connector/game_engine/scene/usd_composition_command_service.py:138

_output_path

def _output_path(payload: dict[str, Any], composition: UsdComposition, result: UsdCompositionResult | None) -> str

module function · internal · tech_connector/game_engine/scene/usd_composition_command_service.py:170

_require_composition

def _require_composition(composition: UsdComposition | None) -> UsdComposition

module function · internal · tech_connector/game_engine/scene/usd_composition_command_service.py:185

_required_text

def _required_text(payload: dict[str, Any], key: str) -> str

module function · internal · tech_connector/game_engine/scene/usd_composition_command_service.py:191

_is_remove

def _is_remove(payload: dict[str, Any]) -> bool

module function · internal · tech_connector/game_engine/scene/usd_composition_command_service.py:198

tech_connector.game_engine.scene.usd_composition_service

UsdLayerSpec.__post_init__

def UsdLayerSpec.__post_init__(self) -> None

class method · internal · tech_connector/game_engine/scene/usd_composition_service.py:39

UsdLayerSpec.to_dict

def UsdLayerSpec.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/scene/usd_composition_service.py:43

UsdComposition.validate

def UsdComposition.validate(self) -> list[str]

class method · public name · tech_connector/game_engine/scene/usd_composition_service.py:82

UsdComposition.to_dict

def UsdComposition.to_dict(self) -> dict[str, Any]

class method · public name · tech_connector/game_engine/scene/usd_composition_service.py:111

UsdComposition.from_dict

def UsdComposition.from_dict(cls, data: dict[str, Any]) -> 'UsdComposition'

class method · public name · tech_connector/game_engine/scene/usd_composition_service.py:124

UsdComposition.source_changes

def UsdComposition.source_changes(self) -> list[dict[str, Any]]

class method · public name · tech_connector/game_engine/scene/usd_composition_service.py:136

UsdCompositionResult.prim_count

def UsdCompositionResult.prim_count(self) -> int

class method · public name · tech_connector/game_engine/scene/usd_composition_service.py:156

find_blender_usd_worker

def find_blender_usd_worker() -> Path | None

module function · public name · tech_connector/game_engine/scene/usd_composition_service.py:160

usd_composition_capabilities

def usd_composition_capabilities() -> dict[str, Any]

module function · public name · tech_connector/game_engine/scene/usd_composition_service.py:173

compose_usd_stage

def compose_usd_stage(composition: UsdComposition, output_path: str | os.PathLike[str], *, blender_executable: str | os.PathLike[str] | None=None, timeout: float=180.0, cancel_event: threading.Event | None=None, prim_limit: int=10000) -> UsdCompositionResult

module function · public name · tech_connector/game_engine/scene/usd_composition_service.py:194

attach_usd_composition

def attach_usd_composition(document: FederatedSceneDocument, composition: UsdComposition, result: UsdCompositionResult | None=None) -> None

module function · public name · tech_connector/game_engine/scene/usd_composition_service.py:263

usd_composition_from_document

def usd_composition_from_document(document: FederatedSceneDocument) -> UsdComposition | None

module function · public name · tech_connector/game_engine/scene/usd_composition_service.py:274

_valid_prim_path

def _valid_prim_path(path: str) -> bool

module function · internal · tech_connector/game_engine/scene/usd_composition_service.py:279