acmeydan

  • 28 de Abr de 2022
  • Entrou em 18 de Out de 2021
  • Hello dear esoteric software employees, Unreal Engine keep continusly crashing when i re-import skel data and when open its related blueprint. Its obvious your plugin doesnt work properly and sometimes creates problem but I am very careful for this, for example I never re-import when blueprint with spine renderer is open, because this makes directly crashing project. But even in every crash I always re-open file and everything works smooth. This time I have a serious problem. After re importing .skel file, the project crahses when I open related bp. Whatever I tried it doesnt work. Can you please help me... I didnt have any backup and I cant open my blueprint. I wrote the animation name inside the spine animation component on blueprint. I strongly believe this creates problem and I dont know how to revert back.

    My unreal engine version 4,27, spine version is the latest.

    Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0x0000000000000228

    UE4Editor_SpinePlugin!spine::SkeletonBinary::readSkin() [C:\Unreal Projects\spine-ue4\Plugins\SpinePlugin\Source\SpinePlugin\Public\spine-cpp\src\spine\SkeletonBinary.cpp:458]
    UE4Editor_SpinePlugin!spine::SkeletonBinary::readSkeletonData() [C:\Unreal Projects\spine-ue4\Plugins\SpinePlugin\Source\SpinePlugin\Public\spine-cpp\src\spine\SkeletonBinary.cpp:274]
    UE4Editor_SpinePlugin!USpineSkeletonDataAsset::GetSkeletonData() [C:\Unreal Projects\spine-ue4\Plugins\SpinePlugin\Source\SpinePlugin\Private\SpineSkeletonDataAsset.cpp:298]
    UE4Editor_SpinePlugin!USpineSkeletonAnimationComponent::CheckState() [C:\Unreal Projects\spine-ue4\Plugins\SpinePlugin\Source\SpinePlugin\Private\SpineSkeletonAnimationComponent.cpp:138]
    UE4Editor_SpinePlugin!USpineSkeletonAnimationComponent::InternalTick() [C:\Unreal Projects\spine-ue4\Plugins\SpinePlugin\Source\SpinePlugin\Private\SpineSkeletonAnimationComponent.cpp:93]
    UE4Editor_Engine
    UE4Editor_Engine
    UE4Editor_Engine
    UE4Editor_Engine
    UE4Editor_Core
    UE4Editor_Core
    UE4Editor_Core
    UE4Editor_Engine
    UE4Editor_Engine
    UE4Editor_Engine
    UE4Editor_Engine
    UE4Editor_Kismet
    UE4Editor_UnrealEd
    UE4Editor_UnrealEd
    UE4Editor
    UE4Editor
    UE4Editor
    UE4Editor
    UE4Editor
    UE4Editor
    kernel32
    ntdll


    Ok I found the problem, I revert back to spine 4.06 and export again, and it works.

  • Mario escreveu

    That runtime geometry video is unrelated to what we need.

    The issue is an editor issue really. In edit mode, if we generate physics meshes, the physix cachd files are generated on disk. Each frame, when realtime mode is enabled in the editor window. There's no good way to detect this and not do it, at least I couldn't find one. I'll see if 4.27 let's me fix that.

    I've created an issue here https://github.com/EsotericSoftware/spine-runtimes/issues/1993

    Thank you for your interest. Did you ask directly to the Epic? Would you mind if I try my chance on facebook group(unreal engine developers)? There are some offical epic game members there. https://www.facebook.com/groups/223137344551305

  • RareFlower escreveu
    Mario escreveu

    thank you for reply!
    i will show video about issue number 2 because it is the most important for now

    https://youtu.be/IGa6uwJxx8U

    i have tried this also on spine ue4 example. i can record video about it if you need a proof that i didn't set up anything wrong
    and this is one animation maybe i can solve this when i try to make it at false. but in state machine for true and false (conditions) it is more broken
    if you need video about a full state machine to show tell me 🙂 + idk if you are very familiar with BP but this code is fine with ue4 animations (flipbooks)

    Hello friend, you are using animation node in wrong way. Every tick it added a new animation. You should check first if animation is loaded, then you should set it again. Otherwise in each frame a new animation setting.

    What i did is;

    1) Get current animation
    2) get current animation name
    3) check if it is not walk animation, if it is not, continue(branch)
    4) And after that set animation.

    With this we are avoiding adding animation one more time on each frame. You can also achieve this result with other nodes such as "do once" node, but i guess this is the most shortest way.

  • Mario escreveu

    What version of Unreal Engine are you using? The issue with "create collision" is known and a bug in UE4. We can not support freely deformable collision shapes based on attachments precisely because UE4 will generate new physix meshes everytime we change the vertex data, which is not something we can change on our end.

    The only workable solution so far is to create custom collision shapes and use the bone follower component to drive their location.

    I am using 4.27... Thank you I understand that solution by myself. But you need to say this in your plugin info page, sorry if i didnt see it, since its a serious problem. Your script creating a procedural mesh for each frame and In my case 1 mesh is 22 kb. After few hours of working, your script filled my gigabaytes of empty space with this procedural meshes. Inside the derived data cache folder in users/ app/ local

    So do you have any road map or a plan to fix this problem? I made your solution, but this doesnt work in some cases such as where character bends and strecthes. And more important, its a lot of work.

    I am not c++ coder but If you say its unreal engine's problem what are you thinking about this?

    https://youtu.be/PBnvJROQOqc

  • Hello friends, i tried everything but spine skeletal renderer component doesnt create any collision.

    Actually It creates a collision, but its colored black and flickering continously, doesnt generate any overlap reaction to anything, even tried with all possible object channels and object types. Did I miss something?

    edit: I found that if we enable tick of "create collision" on spine component, the unreal engine gone crazy in editor and create a procedural mesh of spine skeleton continuosly, until deplete all free space on the drive.