Häufige Probleme bei der UE4-Entwicklung: Importieren von Plug-Ins, Code-Debugging, abnormales Format

1. So importieren Sie andere Quellcode-Plug-Ins

1. Erstellen Sie ein neues leeres Plug-in mit demselben Namen wie das zu importierende Plug-in

2. Kopieren Sie den alten Plug-in-Quellcode in das neue Plug-in-Quellverzeichnis

3. Fügen Sie die .h.cpp-Datei des alten Plug-Ins zum vs-Projekt hinzu

4. Ändern Sie den Plugin.build.cs-Code und fügen Sie die für das alte Plugin erforderliche Bibliothek hinzu.

2. So debuggen Sie das Quellcode-Plug-in

1. Öffnen Sie zunächst das UE4-Projekt.

2. Sie müssen das Menü „Datei“ -> VS-Projekt in UE4 öffnen auswählen, andernfalls meldet VS einen Fehler, wenn es mit dem Debuggen und Ausführen beginnt.

3. Schließen Sie das Originalprojekt und beginnen Sie mit dem Debuggen in VS

3. Formate, die von PF_R8G8B8A8 nicht unterstützt werden

Behauptung fehlgeschlagen: FTextureRenderTargetResource::IsSupportedFormat(InOverrideFormat) [File:D:\Build\++UE4+Release-4.16+Compile\Sync\Engine\Source\Runtime\Engine\Private\TextureRenderTarget2D.cpp] [Zeile: 84] 

void UTextureRenderTarget2D::InitCustomFormat( uint32 InSizeX, uint32 InSizeY, EPixelFormat InOverrideFormat, bool bInForceLinearGamma )
{
	check(InSizeX > 0 && InSizeY > 0);
	check(FTextureRenderTargetResource::IsSupportedFormat(InOverrideFormat));

	// set required size/format
	SizeX = InSizeX;
	SizeY = InSizeY;
	OverrideFormat = InOverrideFormat;
	bForceLinearGamma = bInForceLinearGamma;

	// Recreate the texture's resource.
	UpdateResource();
}

/**

 * Gibt „true“ zurück, wenn ein Renderziel des angegebenen Formats zulässig ist

 * für die Schöpfung

 */

bool FTextureRenderTargetResource::IsSupportedFormat( EPixelFormat Format )

{

    Schalter (Format)

    {

    Fall PF_B8G8R8A8:

    Fall PF_A16B16G16R16:

    Fall PF_FloatRGB:

    case PF_FloatRGBA: // zum Exportieren von Materialien nach .obj/.mtl

    case PF_A2B10G10R10: //Pixelinspektor für normalen Puffer

    case PF_DepthStencil: //Pixelinspektor für Tiefe und Schablonenpuffer

        return true;

    Standard:

        falsch zurückgeben;

    }

}

4. Nach dem Erstellen einer neuen C++-Klasse meldet UE4 generierte.h-Konflikte und kann keinen Code generieren.
CompilerResultsLog: FEHLER: Änderungen am generierten Code sind nicht zulässig – Konflikte werden in generierte.h.conflict geschrieben

Schließen Sie den Editor vs und öffnen Sie ihn erneut. Und stellen Sie sicher, dass die Lösungskonfiguration in Visual Studio „Development Editor“ ist

Supongo que te gusta

Origin blog.csdn.net/a2831942318/article/details/127430373
Recomendado
Clasificación