Announcement

Collapse
No announcement yet.

Instance Tool - Editing instances directly in editor viewport

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    #61
    Hello.

    I'm having an issue with HISM with LODs.
    when I bake a lightmap, it's going totally wrong.
    I checked UVs for lightmap but it's very okay.
    When it goes to static shadow, it's showing totally wrong shadow.

    and There is a source meshes that instance tool generated which is hidden and affecting the level even blocks my character's collision and also camera collision.

    Could you fix this issue?
    Or I also heard from another ppl that having issue that is actually a bug in 4.15..
    Please visit and follow my Artstation
    https://www.artstation.com/artist/archivolts

    Comment


      #62
      Hi [MENTION=49052]MeepMeep[/MENTION]

      The lightmap issue with HISM LODs seems indeed a bug in 4.15 and will be fixed in 4.15.1.
      AnswerHub : https://answers.unrealengine.com/que...s-anymore.html
      IssueTracker: https://issues.unrealengine.com/issue/UE-42196

      For the collision issue, is it only happens with Instance Tool converted instances?

      Just an idea, have you tried change the Collision Presets on the HISM to something like "NoCollision"?

      Click image for larger version

Name:	collision_preset.jpg
Views:	1
Size:	71.4 KB
ID:	1124571
      | twitter | github | #ue4tip

      Comment


        #63
        Originally posted by Nate View Post
        Aother feature introduced in v1.1.2 is "Auto Align Scale to Grid", which is a workaroud of instance scale drifting issue (as [MENTION=49052]MeepMeep[/MENTION] reported). For more info regarding scale drifting, Niklas Frykholm wrote an detail article here. But unfortunately keeping the scale from drifting wont fully fix the gap between rotated instance bug in engine itself. (The bug dated from 4.8 according to this answer hub post). Good new is that the bug is related to issue UE-17458 which is targed to be fixed in 4.15.

        Meanwhile I found the simplest solution for fixing the gap between rotated instances (before 4.15), is to add a tiny scale to rotated instance. (I'm adding Delta Transform function to make it easier in next version.)
        Unfortunaly, it doesn't work.
        You have to activate the "auto align scale to grid" option and move every mesh a little then move them back and they will be aligned without gap. BUT, everytime you open the level, they will scale back to 0.9999 and rotate on Z axis to 89.999954. So you have to "move/move back" every tiled mesh everytime you open the level :/
        It look like manualy writing rounded transform values is only visual. It doesn't look to scale/rotate to rounded value until you "move/move back" them.

        Plus, you can't manualy scale a mesh to a desired value with this option activated because it will be "scale to grid"

        Ps: I see that the target fix is version 4.16, let's hope they will launch it soon and fix it.
        Last edited by Haoris; 03-14-2017, 01:40 PM.

        Comment


          #64
          Originally posted by Haoris View Post
          Unfortunaly, it doesn't work.
          You have to activate the "auto align scale to grid" option and move every mesh a little then move them back and they will be aligned without gap. BUT, everytime you open the level, they will scale back to 0.9999 and rotate on Z axis to 89.999954. So you have to "move/move back" every tiled mesh everytime you open the level :/
          It look like manualy writing rounded transform values is only visual. It doesn't look to scale/rotate to rounded value until you "move/move back" them.

          Plus, you can't manualy scale a mesh to a desired value with this option activated because it will be "scale to grid"

          Ps: I see that the target fix is version 4.16, let's hope they will launch it soon and fix it.
          Hi Haoris, thanks for sharing your experience. Yes, the "Auto Align Scale to Grid" is pretty much a dirty hack at best trying to fix UE-17458 issue in a little bizzare way... And it seems failed miserably here. Sorry about that!

          I'm too hope Epic will finally fix this bug in 4.16 timeframe.
          | twitter | github | #ue4tip

          Comment


            #65
            Originally posted by Nate View Post
            Hi Haoris, thanks for sharing your experience. Yes, the "Auto Align Scale to Grid" is pretty much a dirty hack at best trying to fix UE-17458 issue in a little bizzare way... And it seems failed miserably here. Sorry about that!

            I'm too hope Epic will finally fix this bug in 4.16 timeframe.
            Hi Nate, I read here that rotating to 540° instead of 90° as workaround remove those gaps : https://issues.unrealengine.com/issue/UE-40476 (not the same report number but same bug)
            The problem is that I can't use 540 as Z value in the transform of your plugin panel, it correct it to 89.999***
            Do you think you can do something so we can enter 540° in Z rotation or do you think it's editor related?

            EDIT: Forget it, it works only for mesh rotated to 180°, using 450° for the 90° bug doesn't work
            Last edited by Haoris; 03-14-2017, 02:45 PM.

            Comment


              #66
              I think I'll tackle the issue UE-17458 (UE-40476) this weekend, here's my progress so far:



              The fix here is adding an option to enable using full precision vertex array for ISMC/HISMC All seems works so far, but I would like to do more test before I submit the pull request to Epic as a possible solution to fix the bug.

              If you're currently bumping into UE-17458 gap issue and would like to help me testing the fix, I would appreciate that you PM me a test project so I can verify it in real use cases. Thanks!
              | twitter | github | #ue4tip

              Comment


                #67
                I have a few questions:
                1. Can instances be grouped?
                2. When instances are hidden, are they completely unloaded from memory?
                3. Can instances be part of physics simulations?
                4. Can you attach the instances to skeleton sockets?
                5. I need to update to 4.16 when it drops, how long does it usually take for the plugin to be updated?

                Comment


                  #68
                  Originally posted by Kalcifer Kandari View Post
                  I have a few questions:
                  1. Can instances be grouped?
                  2. When instances are hidden, are they completely unloaded from memory?
                  3. Can instances be part of physics simulations?
                  4. Can you attach the instances to skeleton sockets?
                  5. I need to update to 4.16 when it drops, how long does it usually take for the plugin to be updated?
                  Hi,

                  1. Can instances be grouped?

                  You can't group individual instances, you can only group actors in UE4.

                  2. When instances are hidden, are they completely unloaded from memory?

                  All instances shared same mesh and material memory, so hidding some instances would not unload the mesh/material from memory.

                  3. Can instances be part of physics simulations?

                  As far as I know that both ISM/HISM can generate collision but can't simulate physics.

                  4. Can you attach the instances to skeleton sockets?

                  Not directly. But you can use blueprint to update instance transfrom.

                  5. I need to update to 4.16 when it drops, how long does it usually take for the plugin to be updated?

                  I usually update my plugins to new released engine version within one week, then it's up to Epic to publish the update to marketplace (it could be 2 days or 4 weeks from my past experiences)
                  | twitter | github | #ue4tip

                  Comment


                    #69
                    Thanks for the answers. Unreal seems so patchy with instances support. I'm making a rigid-body-world animation so you would think everything could be instances, but I need to be able to group them, unload groups, preferably use instances in rigid-body simulations, and to make characters.

                    Comment


                      #70
                      Originally posted by Nate View Post
                      Oh, I thought you are asking about the Instance Tool.

                      What version are you using? Have you tried setting Instance Cull Distance?

                      [ATTACH=CONFIG]130447[/ATTACH]

                      Here's a simple test I just did on 4.14.3

                      [ATTACH=CONFIG]130449[/ATTACH]
                      Hi Nate, this is not working anymore on 4.15.3.
                      The engine culls all the meshes together at the distance I set, instead of culling them based on distance like your gif (and like it did in 4.14).
                      Is it an engine bug or did they change something?
                      Thank you

                      Comment


                        #71
                        Ok I found this.

                        https://answers.unrealengine.com/que...ince-4150.html

                        That's weird but.. now it works.

                        Comment


                          #72
                          Click image for larger version

Name:	415MateiralLODDither.jpg
Views:	1
Size:	27.1 KB
ID:	1127887

                          [MENTION=72046]ginwakeup[/MENTION], so glad you've already solved the issue. Just as the answerhub post you linked stated, since 4.15 there's "Dithered LOD Transition" option need to be checked for material to make dithered LOD transition works.
                          | twitter | github | #ue4tip

                          Comment


                            #73
                            v1.2.2 submitted to marketplace for review. One new feature added in this version is added spawn ISM/HISM instances on spline support.

                            1.2.2
                            ------------------
                            * Now 4.16 ready; drop 4.13 support
                            * Add spawn instances on spline

                            1.2.1
                            ------------------
                            * Update for 4.15 IWYU header changes

                            1.2.0
                            ------------------
                            * Add new Spawn panel
                            * Now can spawn blueprint instances base on ISM/HISM instances and auto assign instance id to blueprint instances
                            * Convert to new ISM/HISM actor base on staic mesh material (thanks Emanuel May from Subiculum Interactive)
                            * Set default value of bUseAsOccluder and bDisallowMeshPaintPerInstance for converted ISMA/HISMA,to make it consistent with manual created ISMA/HISMA
                            Attached Files
                            | twitter | github | #ue4tip

                            Comment


                              #74
                              v1.2.2 with 4.16 support is now live on both Unreal marketplace and itch.
                              | twitter | github | #ue4tip

                              Comment


                                #75
                                Bought it through the website, on 4.15 I tried the 4.15.0, 4.15.3 and 4.16 (with alterations) all of them crash here:

                                Code:
                                SLevelEditor.cpp:1320
                                if ( EditorModeCommand.IsValid() && !LevelEditorCommands->IsActionMapped(Commands.EditorModeCommands[CommandIndex]) )
                                Code:
                                Call stack:
                                >	UE4Editor-LevelEditor.dll!SLevelEditor::RefreshEditorModeCommands() Line 1320	C++
                                 	UE4Editor-LevelEditor.dll!SLevelEditor::RestoreContentArea(const TSharedRef<SDockTab,0> & OwnerTab, const TSharedRef<SWindow,0> & OwnerWindow) Line 1120	C++
                                 	UE4Editor-LevelEditor.dll!SLevelEditor::Initialize(const TSharedRef<SDockTab,0> & OwnerTab, const TSharedRef<SWindow,0> & OwnerWindow) Line 176	C++
                                 	UE4Editor-LevelEditor.dll!FLevelEditorModule::SpawnLevelEditor(const FSpawnTabArgs & InArgs) Line 169	C++
                                 	UE4Editor-LevelEditor.dll!TMemberFunctionCaller<FLevelEditorModule,TSharedRef<SDockTab,0> (__cdecl FLevelEditorModule::*)(FSpawnTabArgs const & __ptr64) __ptr64>::operator()<FSpawnTabArgs const & __ptr64>(const FSpawnTabArgs & <Args_0>) Line 165	C++
                                 	UE4Editor-LevelEditor.dll!TTupleImpl<TIntegerSequence<unsigned int> >::ApplyAfter<TMemberFunctionCaller<FLevelEditorModule,TSharedRef<SDockTab,0> (__cdecl FLevelEditorModule::*)(FSpawnTabArgs const & __ptr64) __ptr64>,FSpawnTabArgs const & __ptr64>(TMemberFunctionCaller<FLevelEditorModule,TSharedRef<SDockTab,0> (__cdecl FLevelEditorModule::*)(FSpawnTabArgs const &)> && Func, const FSpawnTabArgs & <Args_0>) Line 134	C++
                                 	UE4Editor-LevelEditor.dll!TBaseRawMethodDelegateInstance<0,FLevelEditorModule,TSharedRef<SDockTab,0> __cdecl(FSpawnTabArgs const & __ptr64)>::Execute(const FSpawnTabArgs & <Params_0>) Line 556	C++
                                 	UE4Editor-Slate.dll!TBaseDelegate<TSharedRef<SDockTab,0>,FSpawnTabArgs const & __ptr64>::Execute(const FSpawnTabArgs & <Params_0>) Line 537	C++
                                 	UE4Editor-Slate.dll!FTabManager::SpawnTab(const FTabId & TabId, const TSharedPtr<SWindow,0> & ParentWindow) Line 1413	C++
                                 	UE4Editor-Slate.dll!FTabManager::RestoreArea_Helper(const TSharedRef<FTabManager::FLayoutNode,0> & LayoutNode, const TSharedPtr<SWindow,0> & ParentWindow, const bool bEmbedTitleAreaContent) Line 1272	C++
                                 	UE4Editor-Slate.dll!FTabManager::RestoreSplitterContent(const TSharedRef<FTabManager::FSplitter,0> & SplitterNode, const TSharedRef<SDockingSplitter,0> & SplitterWidget, const TSharedPtr<SWindow,0> & ParentWindow) Line 1387	C++
                                 	UE4Editor-Slate.dll!FTabManager::RestoreArea_Helper(const TSharedRef<FTabManager::FLayoutNode,0> & LayoutNode, const TSharedPtr<SWindow,0> & ParentWindow, const bool bEmbedTitleAreaContent) Line 1356	C++
                                 	UE4Editor-Slate.dll!FTabManager::RestoreArea(const TSharedRef<FTabManager::FArea,0> & AreaToRestore, const TSharedPtr<SWindow,0> & InParentWindow, const bool bEmbedTitleAreaContent) Line 1248	C++
                                 	UE4Editor-Slate.dll!FTabManager::RestoreFrom(const TSharedRef<FTabManager::FLayout,0> & Layout, const TSharedPtr<SWindow,0> & ParentWindow, const bool bEmbedTitleAreaContent) Line 806	C++
                                 	UE4Editor-MainFrame.dll!FMainFrameModule::CreateDefaultMainFrame(const bool bStartImmersive, const bool bStartPIE) Line 209	C++
                                 	UE4Editor-UnrealEd.dll!EditorInit(IEngineLoop & EngineLoop) Line 124	C++
                                 	UE4Editor.exe!GuardedMain(const wchar_t * CmdLine, HINSTANCE__ * hInInstance, HINSTANCE__ * hPrevInstance, int nCmdShow) Line 150	C++
                                 	UE4Editor.exe!WinMain(HINSTANCE__ * hInInstance, HINSTANCE__ * hPrevInstance, char * __formal, int nCmdShow) Line 199	C++

                                Comment

                                Working...
                                X