Giter VIP home page Giter VIP logo

impostorbaker's People

Contributors

ictusbrucks avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

impostorbaker's Issues

Not compatible with UE5

All the projects using this tool (nature packs for example) in the Marketplace are stuck with black imposters.
UE5 seems to have a problem with the material functions.
Any one could help?

Licensing

I would like to use this in a commercial project but it's missing a proper license. Can you please add a license to make it clear if we are allowed or not to use it in a commercial project?

Error opening the provided Generate_Impostor_Map

Using UE 4.19.0 (4.19.0-3944462+++UE4+Release-4.19), created an empty BP project, created a Plugins directory and cloned this repository into an ImpostorBaker subdirectory (so it is in C:\Users\sebas\workspace\UE4ImpostorBaker\Plugins\ImpostorBaker).

(UE 4.18.3 and UE4.20-master are totally unable to open the map)

When opening the provided Generate_Impostor_Map.umap (using "Show Plugin Content") I get a big bung of warnings. The first few lines are:

[2018.03.18-13.23.33:248][  0]Cmd: MAP LOAD FILE="../../../../../../Users/sebas/workspace/UE4ImpostorBaker/Plugins/ImpostorBaker/Content/ImpostorBaker/Maps/Generate_Impostor_Map.umap" TEMPLATE=0 SHOWPROGRESS=1 FEATURELEVEL=3
[2018.03.18-13.23.33:249][  0]LightingResults: New page: Lighting Build
[2018.03.18-13.23.33:255][  0]MapCheck: New page: Map Check
[2018.03.18-13.23.33:255][  0]LightingResults: New page: Lighting Build
[2018.03.18-13.23.33:578][  0]LogLinker: Warning: Can't find file '/Script/BlueprintMaterialTextureNodes'
[2018.03.18-13.23.33:578][  0]LogLinker: Warning: Can't find file for asset '/Script/BlueprintMaterialTextureNodes' while loading ../../../../../../Users/sebas/workspace/UE4ImpostorBaker/Plugins/ImpostorBaker/Content/ImpostorBaker/BP/BP_Generate_ImposterSprites.uasset.
[2018.03.18-13.23.33:578][  0]LoadErrors: Error: /ImpostorBaker/ImpostorBaker/BP/BP_Generate_ImposterSprites : Can't find file for asset. /Script/BlueprintMaterialTextureNodes
[...]

If I create my own NewMap, and try to bring BP_Generate_ImposterSprites into it I get the following errors:

[2018.03.18-13.33.08:113][169]LogBlueprint: Error: [Compiler BP_Generate_ImposterSprites] In use pin  In Render Target  no longer exists on node  Render Target Sample Rectangle Editor Only . Please refresh node or break links to remove pin.
[2018.03.18-13.33.08:113][169]LogBlueprint: Error: [Compiler BP_Generate_ImposterSprites] In use pin  In Rect  no longer exists on node  Render Target Sample Rectangle Editor Only . Please refresh node or break links to remove pin.
[2018.03.18-13.33.08:114][169]LogBlueprint: Error: [Compiler BP_Generate_ImposterSprites] In use pin  Return Value  no longer exists on node  Render Target Sample Rectangle Editor Only . Please refresh node or break links to remove pin.
[2018.03.18-13.33.08:114][169]LogBlueprint: Error: [Compiler BP_Generate_ImposterSprites] Could not find a function named "RenderTarget_SampleRectangle_EditorOnly" in 'BP_Generate_ImposterSprites'.
Make sure 'BP_Generate_ImposterSprites' has been compiled for  Render Target Sample Rectangle Editor Only
[2018.03.18-13.33.08:115][169]LogBlueprint: Error: [Compiler BP_Generate_ImposterSprites] In use pin  <Unnamed>  no longer exists on node  Set MICTexture Param Editor Only . Please refresh node or break links to remove pin.
[2018.03.18-13.33.08:115][169]LogBlueprint: Error: [Compiler BP_Generate_ImposterSprites] In use pin  <Unnamed>  no longer exists on node  Set MICTexture Param Editor Only . Please refresh node or break links to remove pin.
[2018.03.18-13.33.08:115][169]LogBlueprint: Error: [Compiler BP_Generate_ImposterSprites] In use pin  Material  no longer exists on node  Set MICTexture Param Editor Only . Please refresh node or break links to remove pin.
[2018.03.18-13.33.08:115][169]LogBlueprint: Error: [Compiler BP_Generate_ImposterSprites] In use pin  Param Name  no longer exists on node  Set MICTexture Param Editor Only . Please refresh node or break links to remove pin.
[2018.03.18-13.33.08:116][169]LogBlueprint: Error: [Compiler BP_Generate_ImposterSprites] In use pin  Texture  no longer exists on node  Set MICTexture Param Editor Only . Please refresh node or break links to remove pin.
[2018.03.18-13.33.08:116][169]LogBlueprint: Error: [Compiler BP_Generate_ImposterSprites] Could not find a function named "SetMICTextureParam_EditorOnly" in 'BP_Generate_ImposterSprites'.
Make sure 'BP_Generate_ImposterSprites' has been compiled for  Set MICTexture Param Editor Only
[2018.03.18-13.33.08:117][169]LogBlueprint: Error: [Compiler BP_Generate_ImposterSprites] In use pin  <Unnamed>  no longer exists on node  Create MIC Editor Only . Please refresh node or break links to remove pin.
[2018.03.18-13.33.08:117][169]LogBlueprint: Error: [Compiler BP_Generate_ImposterSprites] In use pin  <Unnamed>  no longer exists on node  Create MIC Editor Only . Please refresh node or break links to remove pin.
[2018.03.18-13.33.08:117][169]LogBlueprint: Error: [Compiler BP_Generate_ImposterSprites] In use pin  Material  no longer exists on node  Create MIC Editor Only . Please refresh node or break links to remove pin.
[2018.03.18-13.33.08:118][169]LogBlueprint: Error: [Compiler BP_Generate_ImposterSprites] In use pin  Name  no longer exists on node  Create MIC Editor Only . Please refresh node or break links to remove pin.
[2018.03.18-13.33.08:118][169]LogBlueprint: Error: [Compiler BP_Generate_ImposterSprites] In use pin  Return Value  no longer exists on node  Create MIC Editor Only . Please refresh node or break links to remove pin.
[2018.03.18-13.33.08:118][169]LogBlueprint: Error: [Compiler BP_Generate_ImposterSprites] Could not find a function named "CreateMIC_EditorOnly" in 'BP_Generate_ImposterSprites'.
Make sure 'BP_Generate_ImposterSprites' has been compiled for  Create MIC Editor Only
[2018.03.18-13.33.08:234][169]LogBlueprint: Error: [Compiler BP_Generate_ImposterSprites] In use pin  In Render Target  no longer exists on node  Render Target Sample Rectangle Editor Only . Please refresh node or break links to remove pin.
[2018.03.18-13.33.08:235][169]LogBlueprint: Error: [Compiler BP_Generate_ImposterSprites] In use pin  In Rect  no longer exists on node  Render Target Sample Rectangle Editor Only . Please refresh node or break links to remove pin.
[2018.03.18-13.33.08:235][169]LogBlueprint: Error: [Compiler BP_Generate_ImposterSprites] In use pin  Return Value  no longer exists on node  Render Target Sample Rectangle Editor Only . Please refresh node or break links to remove pin.
[2018.03.18-13.33.08:236][169]LogBlueprint: Error: [Compiler BP_Generate_ImposterSprites] Could not find a function named "RenderTarget_SampleRectangle_EditorOnly" in 'BP_Generate_ImposterSprites'.
Make sure 'BP_Generate_ImposterSprites' has been compiled for  Render Target Sample Rectangle Editor Only
[2018.03.18-13.33.08:267][169]LogBlueprint: Warning: [Compiler BP_Generate_ImposterSprites] [0280,67] Compile of BP_Generate_ImposterSprites failed. 20 Fatal Issue(s) 0 Warning(s) [in 225 ms] (/ImpostorBaker/ImpostorBaker/BP/BP_Generate_ImposterSprites.BP_Generate_ImposterSprites)

Release for UE4.18

You mentioned having a 4.18 version of this plugin available,
Could you please share it on a branch ?
I'm interested in the capture setup actually, so no biggie if it's not fully functional.
Thanks !

Crashing when building lighting

Hey Ryan thanks for the awesome work you've done on this tool. I'm not sure if this is still being updated, but just in case anyone out there knows what is going on, any help would be greatly appreciated!

The impostors seem to work just fine and don't seem to have any issues with them but when I try to bake the lighting in the scene my project unfortunately crashes 100% of the time. UE4 gives me this note upon crash "Assertion failed: InShadingModel < MSM_NUM [File:D:\Build++UE4+Licensee\Sync\Engine\Source\Runtime\Engine\Classes\Engine/EngineTypes.h] [Line: 499] ". This happens when I try building the lighting in both 4.24 and 4.25. Not sure if anyone else has run into this issue and knows exactly what is going on. I can still use the impostors without baked lighting, but it would still be nice to be able to use baked lighting withing the project for other assets.

Thanks in advance.

Imposter doesn't work with scaled meshes

When I've scaled the meshes the imposter doubled the scaling. I could fix it by changing both usages of "ImposterInfo->Scaled Size" in Imposter_ThreeFrameBlend to "Default Size"
screen
screen

CollectionParameter has invalid Collection

Even when inside ImposterCaptureSwitch there're no errors (Collections were not set, but I used MPC_ImposterCapture) when plugining in the result to the output in my material it displays the error:
"Function ImposterCaptureSwitch: (Node CollectionParameter) CollectionParameter has invalid connection"

Package contains BluePrint classes called 'asdf' and 'blutil'

There are two BluePrint classes defined in this plugin which have unclear or invalid names which pollute the global class list.

  • asdf - looks like it can be removed as it's not referenced anywhere?
  • blutil - should be renamed for consistency & clarity (e.g. BP_ImposterBaker_Blutility or something appropriately descriptive)

HLSL "World To Loc" not work on 4.22

Hello, ryan
I would like to tell you that your work is extraordinary, a big thank you to you for everything you do.
I am currently working on a BP editor to automate HLOD settings and also to create imposters, I tested your "ImpostorBaker" code, under version 4.22 it is impossible to use the final Material because the HLSL code contained in "World To Loc" does not work with the new version.
With the 4.22 I create blueprint tools using "Widget Editor", I started making my own Bake imposter system based on your work "render to texture" and "Octahedral Impostors".
Thank you...

Crash when opening BP_Generate_Imposter Sprites

Using Unreal Engine 4.19.1, it will crash when opening BP_Generate_Imposter Sprites

Fatal error: [File:D:\Build\++UE4+Release-4.19+Compile\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\LinkerLoad.cpp] [Line: 3370] BP_Generate_ImposterSprites_C /Game/ImpostorBaker/BP/BP_Generate_ImposterSprites.Default__BP_Generate_ImposterSprites_C: Serial size mismatch: Got 1788, Expected 2052

UE4Editor_Core!FDebug::AssertFailed() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\core\private\misc\assertionmacros.cpp:419]
UE4Editor_CoreUObject!FLinkerLoad::Preload() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\coreuobject\private\uobject\linkerload.cpp:3370]
UE4Editor_CoreUObject!FLinkerLoad::ResolveDeferredExports() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\coreuobject\private\blueprint\blueprintsupport.cpp:1839]
UE4Editor_CoreUObject!FLinkerLoad::FinalizeBlueprint() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\coreuobject\private\blueprint\blueprintsupport.cpp:1614]
UE4Editor_CoreUObject!FLinkerLoad::Preload() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\coreuobject\private\uobject\linkerload.cpp:3353]
UE4Editor_CoreUObject!FLinkerLoad::CreateExport() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\coreuobject\private\uobject\linkerload.cpp:4027]
UE4Editor_CoreUObject!FLinkerLoad::IndexToObject() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\coreuobject\private\uobject\linkerload.cpp:4250]
UE4Editor_CoreUObject!FLinkerLoad::CreateExport() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\coreuobject\private\uobject\linkerload.cpp:3648]
UE4Editor_CoreUObject!FLinkerLoad::CreateExportAndPreload() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\coreuobject\private\uobject\linkerload.cpp:2746]
UE4Editor_CoreUObject!FLinkerLoad::LoadAllObjects() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\coreuobject\private\uobject\linkerload.cpp:2908]
UE4Editor_CoreUObject!LoadPackageInternal() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\coreuobject\private\uobject\uobjectglobals.cpp:1328]
UE4Editor_CoreUObject!LoadPackage() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\coreuobject\private\uobject\uobjectglobals.cpp:1436]
UE4Editor_CoreUObject!ResolveName() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\coreuobject\private\uobject\uobjectglobals.cpp:792]
UE4Editor_CoreUObject!StaticLoadObjectInternal() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\coreuobject\private\uobject\uobjectglobals.cpp:880]
UE4Editor_CoreUObject!StaticLoadObject() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\coreuobject\private\uobject\uobjectglobals.cpp:947]
UE4Editor_ContentBrowser!FAssetData::GetAsset() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\assetregistry\public\assetdata.h:284]
UE4Editor_ContentBrowser!SContentBrowser::OnAssetsActivated() [d:\build\++ue4+release-4.19+compile\sync\engine\source\editor\contentbrowser\private\scontentbrowser.cpp:2052]
UE4Editor_ContentBrowser!TBaseSPMethodDelegateInstance<0,SContentBrowser,0,TTypeWrapper<void> __cdecl(TArray<FAssetData,FDefaultAllocator> const & __ptr64,enum EAssetTypeActivationMethod::Type)>::Execute() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\core\public\delegates\delegateinstancesimpl.h:269]
UE4Editor_ContentBrowser!TBaseSPMethodDelegateInstance<0,SContentBrowser,0,void __cdecl(TArray<FAssetData,FDefaultAllocator> const & __ptr64,enum EAssetTypeActivationMethod::Type)>::ExecuteIfSafe() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\core\public\delegates\delegateinstancesimpl.h:345]
UE4Editor_ContentBrowser!SAssetView::OnListMouseButtonDoubleClick() [d:\build\++ue4+release-4.19+compile\sync\engine\source\editor\contentbrowser\private\sassetview.cpp:3941]
UE4Editor_ContentBrowser!TBaseSPMethodDelegateInstance<0,SAssetView,0,TTypeWrapper<void> __cdecl(TSharedPtr<FAssetViewItem,0>)>::Execute() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\core\public\delegates\delegateinstancesimpl.h:269]
UE4Editor_ContentBrowser!TBaseSPMethodDelegateInstance<0,SAssetView,0,void __cdecl(TSharedPtr<FAssetViewItem,0>)>::ExecuteIfSafe() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\core\public\delegates\delegateinstancesimpl.h:345]
UE4Editor_ContentBrowser!TBaseDelegate<void,TSharedPtr<FAssetViewItem,0> >::ExecuteIfBound() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\core\public\delegates\delegatesignatureimpl.inl:624]
UE4Editor_ContentBrowser!SListView<TSharedPtr<FAssetViewItem,0> >::Private_OnItemDoubleClicked() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\slate\public\widgets\views\slistview.h:809]
UE4Editor_ContentBrowser!STableRow<TSharedPtr<FAssetViewItem,0> >::OnMouseButtonDoubleClick() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\slate\public\widgets\views\stablerow.h:288]
UE4Editor_Slate!<lambda_eeb33fd1b480e3cad58a1531d90d2e14>::operator()() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:5872]
UE4Editor_Slate!FEventRouter::Route<FReply,FEventRouter::FBubblePolicy,FPointerEvent,<lambda_eeb33fd1b480e3cad58a1531d90d2e14> >() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:266]
UE4Editor_Slate!FSlateApplication::RoutePointerDoubleClickEvent() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:5870]
UE4Editor_Slate!FSlateApplication::ProcessMouseButtonDoubleClickEvent() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:5857]
UE4Editor_Slate!FSlateApplication::OnMouseDoubleClick() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:5833]
UE4Editor_ApplicationCore!FWindowsApplication::ProcessDeferredMessage() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\applicationcore\private\windows\windowsapplication.cpp:1730]
UE4Editor_ApplicationCore!FWindowsApplication::DeferMessage() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\applicationcore\private\windows\windowsapplication.cpp:2172]
UE4Editor_ApplicationCore!FWindowsApplication::ProcessMessage() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\applicationcore\private\windows\windowsapplication.cpp:889]
UE4Editor_ApplicationCore!FWindowsApplication::AppWndProc() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\applicationcore\private\windows\windowsapplication.cpp:726]
user32
user32
UE4Editor_ApplicationCore!FWindowsPlatformApplicationMisc::PumpMessages() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\applicationcore\private\windows\windowsplatformapplicationmisc.cpp:129]
UE4Editor!FEngineLoop::Tick() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\launch\private\launchengineloop.cpp:3263]
UE4Editor!GuardedMain() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\launch\private\launch.cpp:166]
UE4Editor!GuardedMainWrapper() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\launch\private\windows\launchwindows.cpp:134]
UE4Editor!WinMain() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\launch\private\windows\launchwindows.cpp:210]
UE4Editor!__scrt_common_main_seh() [f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl:253]
kernel32
ntdll

No longer working in any version?

I've tried this in 4.23 and 4.27 and it doesn't create the imposters. I'm talking even just opening the scene and trying the default settings. Nothing happens when you try to build the imposter. Anyone has any ideia what might wrong?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.