ALCC2ProxyMesh: Actor della mesh proxy
Actor della mesh proxy che fornisce profondità e normali reali della scena per la modalità delle normali ProxyMesh di LCC2.
| Modulo | LCC4UnrealRuntime |
| Header | LCC2ProxyMesh.h |
| Classe padre | AActor |
| Licenza | La modalità delle normali ProxyMesh richiede una licenza, vedere Edizioni e licenze |
#include "LCC2ProxyMesh.h"
Per il funzionamento della mesh proxy, i requisiti di realizzazione del whitebox, i passi di posizionamento, le buone pratiche e la risoluzione dei problemi, vedere Proxy Mesh. Questa pagina elenca solo le interfacce.
Proprietà
| Proprietà | Tipo | Accesso | Descrizione |
|---|---|---|---|
StaticMeshComponent | UStaticMeshComponent* | Sola lettura | Componente static mesh radice che fornisce la profondità della scena e il GBuffer. Inserire il whitebox nel suo slot StaticMesh |
Il componente stesso è BlueprintReadOnly e non può essere sostituito, ma la sua StaticMesh può essere impostata.
CustomDepth è gestito automaticamente dall'Actor: viene abilitato quando una mesh valida è assegnata e resta disabilitato con un solo avviso quando la mesh è vuota (al massimo un messaggio per istanza). Per i dettagli vedere Comportamento.
Uso
#include "LCC2ProxyMesh.h"
#include "LCC2Component.h"
#include "Components/StaticMeshComponent.h"
void AMyLightingSetup::SetupProxyMesh(ALCC2Actor* LCC2Actor, UStaticMesh* ProxyAsset)
{
// posizionarlo nella stessa posizione del 3DGS; l'abbinamento si basa sulla sovrapposizione spaziale, non serve un riferimento esplicito
ALCC2ProxyMesh* Proxy = GetWorld()->SpawnActor<ALCC2ProxyMesh>(
ALCC2ProxyMesh::StaticClass(),
LCC2Actor->GetActorLocation(),
LCC2Actor->GetActorRotation());
if (!Proxy)
{
return;
}
// assegnare la mesh, CustomDepth si attiva automaticamente
Proxy->StaticMeshComponent->SetStaticMesh(ProxyAsset);
// passare alla modalità delle normali ProxyMesh
ULCC2Component* Comp = Cast<ULCC2Component>(LCC2Actor->GetLCCComponent());
if (Comp)
{
Comp->SetLightMode(ELightMode::Lit);
Comp->NormalMode = ELCC2NormalGenerationMode::ProxyMesh;
// senza licenza ripiega su Fixed senza avvisi, quindi verificarlo
if (Comp->GetEffectiveNormalGenerationMode() != ELCC2NormalGenerationMode::ProxyMesh)
{
UE_LOG(LogTemp, Warning, TEXT("ProxyMesh requires a license"));
}
}
}
Per l'uso con Blueprint vedere Proxy Mesh - Uso con Blueprint.
Vedere anche
- Proxy Mesh: descrizione d'uso completa
- Normali e illuminazione: confronto tra le quattro modalità delle normali
- ULCC2Component:
NormalModee gli altri parametri di illuminazione - Enum: valori della modalità delle normali