SharpText

Hi,

First of all, thanks for the suggestions! Actually, there’s no need for scaling the font texture up and down. Changing the imported font texture’s “Texture Group” setting to “ColorLookupTable” would increase your text’s quality greatly. I’m working hard to create an in-depth documentation, including usage instructions like that but I’m not there yet : /

This way you don’t need large textures for your fonts. Actually, the whole point of texture size option is that you can put more characters into your sheets. The technology I’m using (MSDF) is almost texture resolution independent.

Please let me know if this solves your problem.

SharpTextTextureGroup.JPG

Yep setting to color look up helped a lot,
But where is the documentation ?
What about including the demo project in the plug in ?
The materials need to be exposed and swapable , translucency and height / displacement.
Unstable, once the component has been saved you cannot change parameters eg text or text size without the editor crashing 4.19

This has great potential but urgently needs sorting

Paul G

As I said in my previous post, It’s under active development and will be online as soon as possible.

Marketplace guidelines don’t allow us to include the demo project in code plugins. I’m thinking about the alternative solutions for this.

Sorry, but I didn’t understand this. Can you detail it, please?

I didn’t experience any crash on my tests in 4.19 but I’ll take a deeper look for sure.

Hi
I realise that you are working on the documentation, but how crazy is it to release a “code” plugin without anything to explain or anyway to examine its working.
We cannot even look inside your example project to see how you have done it.

Use the top post of this support thread to write a brief text only descrition of how to use it - call it “usage overview” together with limitations of use etc.
Or answer these questions.

Can this be used successfully as a text render component or is it only suitable for UMG ?
How do I use multi-line ?
How can I give the Text an element of transparency ?
How can I add a height or normal map ?
How can I change the surface material of the render ?
Can I set a negative outline, to reduce the thickness of the text ?
(the present method I guessed at to be able to import a new font makes the lettering bolder.)
How do you use bevel, they are greyed out ?

To elaborate on the material thing…
At present we have a choice of using your two default materials lit or unlit…
if neither of these meet my needs, I could go into your plugin content and edit your material.
However I cannot make a copy of the material and either add it to your list to select or apply my new material to that instance of Sharp Text.
Basically I have changed it for everything in the project.
Therefore expose the material that sharp text is using in the details panel.
So we can duplicate edit then apply it to sharp text.

Nearly everyone of my purchased plugins has a demo map, that I can examine to see how different things are acheived,
If still a problem make several actors using your various techniques, Example 1, 2 , 3 etc that we can place in our own worlds and examine.

Paul G

There’s no UMG support ATM as stated in the marketplace page. You can add SharpText component just like the native Text component to your actors.

Same. Just as like as in the native Text Render input: CTRL+ENTER

SharpText currently doesn’t support custom materials and properties.
​​​​​​​

SharpText currently doesn’t support custom textures.

SharpText currently doesn’t support custom materials and properties.

There’s no term like “negative outline” so you can’t.

What do you mean by greyed out? Can I see some screen(s), please?

Yes.

SharpText currently doesn’t support custom materials and properties.

Marketplace team was very clear about not including the demo project with the plugin. This is what I’ve experienced and don’t know yours.

Thanks for the suggestion.

Thanks for a great plugin! The text looks SO much better than standard UE4 text!

The web page conversion workes fine, but would it be possible to do from within UE4? Maybe a script or something? Also default change the tx to ColorLookupTable…
Also a little note : there is no “space” char included in the default char setup of the conversion page - i encoded 10 fonts then realised space didnt work. Just added a " " in the charset and it worked. Maybe add it?

Otherwise, fantastic work! :slight_smile:

[Edit]
Seems the plugin crashes in standalone mode:

UE4Editor_SharpText!USharpTextComponent::USharpTextComponent() [d:\build++portal+dev-marketplace+full\sync\localbuilds\plugintemp\hostproject\plugins\sharptext\source\sharptext\private\sharptextcomponent.cpp:26]
UE4Editor_CoreUObject!UClass::CreateDefaultObject() [d:\build++ue4\sync\engine\source\runtime\coreuobject\private\uobject\class.cpp:3019]
UE4Editor_CoreUObject!UObjectLoadAllCompiledInDefaultProperties() [d:\build++ue4\sync\engine\source\runtime\coreuobject\private\uobject\uobjectbase.cpp:793]
UE4Editor_CoreUObject!ProcessNewlyLoadedUObjects() [d:\build++ue4\sync\engine\source\runtime\coreuobject\private\uobject\uobjectbase.cpp:867]
UE4Editor_CoreUObject!TBaseStaticDelegateInstance<void __cdecl(void)>::ExecuteIfSafe() [d:\build++ue4\sync\engine\source\runtime\core\public\delegates\delegateinstancesimpl.h:813]
UE4Editor_Core!TBaseMulticastDelegate<void>::Broadcast() [d:\build++ue4\sync\engine\source\runtime\core\public\delegates\delegatesignatureimpl.inl:974]
UE4Editor_Core!FModuleManager::LoadModuleWithFailureReason() [d:\build++ue4\sync\engine\source\runtime\core\private\modules\modulemanager.cpp:510]
UE4Editor_Projects!FModuleDescriptor::LoadModulesForPhase() [d:\build++ue4\sync\engine\source\runtime\projects\private\moduledescriptor.cpp:593]
UE4Editor_Projects!TryLoadModulesForPlugin() [d:\build++ue4\sync\engine\source\runtime\projects\private\pluginmanager.cpp:922]
UE4Editor_Projects!FPluginManager::LoadModulesForEnabledPlugins() [d:\build++ue4\sync\engine\source\runtime\projects\private\pluginmanager.cpp:987]
UE4Editor!FEngineLoop::LoadStartupModules() [d:\build++ue4\sync\engine\source\runtime\launch\private\launchengineloop.cpp:2897]
UE4Editor!FEngineLoop::PreInit() [d:\build++ue4\sync\engine\source\runtime\launch\private\launchengineloop.cpp:2310]
UE4Editor!GuardedMain() [d:\build++ue4\sync\engine\source\runtime\launch\private\launch.cpp:135]
UE4Editor!GuardedMainWrapper() [d:\build++ue4\sync\engine\source\runtime\launch\private\windows\launchwindows.cpp:145]
UE4Editor!WinMain() [d:\build++ue4\sync\engine\source\runtime\launch\private\windows\launchwindows.cpp:276]
UE4Editor!__scrt_common_main_seh() [f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl:283]
kernel32
ntdll

Hi,

Thanks for reporting. What is your engine version?

INFO: Project files (4.20 - 4.21) for the SharpText Demo is now available at SharpText | SUMFX

This was with 4.21

The crash also happens with your 4.20 example project (Standalone from Editor).

Ok. The problem is; there’s no way (AFAIK) in UE4 to tell if it’s PIE or standalone mode selected. SharpText actors on a map get their SharpText icon if the user is in the editor. I’m excluding this operation in cooked builds since there’s a pre-compile direction like this:


 

  1. #if WITH_EDITOR
  1. //EDITOR ONLY CODE HERE. LIKE ATTACHING ICONS TO PLUGIN ACTORS WHICH ARE ONLY VISIBLE IN EDITOR MODE.
  1. #endif

 

AFAIK there’s no pre-compile direction like #if WITH_EDITOR_STANDALONE or something like that. I’ll still look into it though. There may be some trick to make editor knows before compiling if it’s PIE or Standalone Mode (but not cooked game). Will let you know on my findings.

I’ve updated the font generator with the " " character included by default. Could you please check if it also works for you?

Yes. As I said in my previous post, it’s version agnostic. For now, all I can do is suggest you try not to use Standalone Mode for testing.

Beta version of the documentation is now available: SharpText Archives | SUMFX](SharpText Archives | SUMFX)

I’ll update the contents constantly. If you have a question(s) about SharpText which was not covered in the documentation, you can always ask it here.

Hello !
The text can be set in runtime or just in the ConstructionScript ?
Thank you !

You can change the text at runtime.

This plugin crashes the editor everytime you attempt to make a change 4.19

To be more specific, when you first place the component you can edit parameters without any problem.
If you save and later reload the project any attempt to edit a parameter will crash the editor… every time.
Tried on different projects and different actors… same consistent results.

[2018.12.11-08.38.34:973][652]LogWindows: Error: === Critical error: ===
[2018.12.11-08.38.34:973][652]LogWindows: Error:
[2018.12.11-08.38.34:973][652]LogWindows: Error: Fatal error!
[2018.12.11-08.38.34:973][652]LogWindows: Error:
[2018.12.11-08.38.34:973][652]LogWindows: Error: Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0xffffffff
[2018.12.11-08.38.34:973][652]LogWindows: Error:
[2018.12.11-08.38.34:973][652]LogWindows: Error: [Callstack] 0x00000000B529BA90 UE4Editor-ProceduralMeshComponent.dll!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x00000000B5298E87 UE4Editor-ProceduralMeshComponent.dll!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x00000000C6FC4BAA UE4Editor-SharpText.dll!USharpTextComponent::STF_Construct() [d:\build++portal+dev-marketplace+full\sync\localbuilds\plugintemp\hostproject\plugins\sharptext\source\sharptext\private\sharptextcomponent.cpp:300]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x00000000C6FC4455 UE4Editor-SharpText.dll!USharpTextComponent::PostEditChangeProperty() [d:\build++portal+dev-marketplace+full\sync\localbuilds\plugintemp\hostproject\plugins\sharptext\source\sharptext\private\sharptextcomponent.cpp:87]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x00000000C5877192 UE4Editor-CoreUObject.dll!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x00000000C2FCC6D6 UE4Editor-Engine.dll!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x00000000BC17C6A6 UE4Editor-PropertyEditor.dll!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x00000000BC171871 UE4Editor-PropertyEditor.dll!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x00000000BC171DF9 UE4Editor-PropertyEditor.dll!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x00000000BC1B3638 UE4Editor-PropertyEditor.dll!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x00000000BC0AF2D8 UE4Editor-PropertyEditor.dll!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x00000000BC03D8D7 UE4Editor-PropertyEditor.dll!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x00000000BC042D07 UE4Editor-PropertyEditor.dll!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x00000000BBFE9DA5 UE4Editor-PropertyEditor.dll!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x00000000BC0D2B9E UE4Editor-PropertyEditor.dll!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x00000000BC03E9B7 UE4Editor-PropertyEditor.dll!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x00000000BC043E67 UE4Editor-PropertyEditor.dll!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x00000000C23058E5 UE4Editor-Slate.dll!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x00000000C2125A74 UE4Editor-Slate.dll!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x00000000C212613C UE4Editor-Slate.dll!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x00000000C2109FF4 UE4Editor-Slate.dll!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x00000000C2087325 UE4Editor-Slate.dll!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x00000000C211DAB7 UE4Editor-Slate.dll!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x00000000C210782C UE4Editor-Slate.dll!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x00000000C20FAD33 UE4Editor-Slate.dll!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x00000000CDE4E73E UE4Editor-ApplicationCore.dll!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x00000000CDE41B78 UE4Editor-ApplicationCore.dll!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x00000000CDE5052C UE4Editor-ApplicationCore.dll!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x00000000CDE3D679 UE4Editor-ApplicationCore.dll!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x0000000077AE9BBD USER32.dll!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x0000000077AE98C2 USER32.dll!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x00000000CDE51666 UE4Editor-ApplicationCore.dll!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x000000003F115475 UE4Editor.exe!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x000000003F126BD0 UE4Editor.exe!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x000000003F126C4A UE4Editor.exe!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x000000003F134177 UE4Editor.exe!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x000000003F135B87 UE4Editor.exe!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x00000000779C59CD kernel32.dll!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x0000000077BFA561 ntdll.dll!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error: [Callstack] 0x0000000077BFA561 ntdll.dll!UnknownFunction ]
[2018.12.11-08.38.34:974][652]LogWindows: Error:
[2018.12.11-08.38.34:984][652]LogExit: Executing StaticShutdownAfterError
[2018.12.11-08.38.35:005][652]LogWindows: FPlatformMisc::RequestExit(1)
[2018.12.11-08.38.35:005][652]Log file closed, 12/11/18 08:38:35

Please sort this

Thanks for the report. I’ll check to see what’s the problem. I think this is 4.19 only problem since demo projects (4.20,4.21) doesn’t have it.

SharpText v1.2 is live. Changelog

This is happening in 4.21 for us. If a BP with Sharp Text components is in the level and you edit the BP changing the settings you get the crash.

-Brian.