Search Unity

[RELEASED] RayFire for Unity. Runtime demolition and fragmentation plugin.

Discussion in 'Assets and Asset Store' started by Mir-vadim, May 8, 2019.

  1. HenryChinaski

    HenryChinaski

    Joined:
    Jul 9, 2013
    Posts:
    97
    Next question. I don't really get how I am expected to use the asset.
    I shattered a simple cube object with the shatter component in 150 pieces. Then, I assigned a RayfireRigid component to the newly created root object and set it to: Kinematic, MeshRoot, No Demolition.
    Every one of those objects reduces the FPS noticeably. Five such objects reduce our FPS from 80 to 45.
    All of this is without demolishing anything - nothing even moves.

    Profiler shows 2400 calls at the RayfireRigid.DemolishableCor coroutine what can be explained if you look at the pre-fractured fragments in play mode - they all got RayfireRigid components attached. Is it really necessary to have a coroutine running on every single fragment? Or am I missing something?
     
  2. Roni92pl

    Roni92pl

    Joined:
    Jun 2, 2015
    Posts:
    310
    That is very cool asset. Is it possible to have deterministic destruction for multiplayer usage? Ideally with slicing object at runtime. The idea is that you would send only needed input for destruction(for example point of impact and force), and it would create the same result in all clients.
     
  3. Mir-vadim

    Mir-vadim

    Joined:
    Apr 18, 2017
    Posts:
    114
    Did you increase Impact Strength and Radius in Gun properties? These are the properties which allows to push objects at impact point. With 0 radius Gun will push only object which was shot, with bigger radius it will explode objects in radius.
     
  4. Mir-vadim

    Mir-vadim

    Joined:
    Apr 18, 2017
    Posts:
    114
    You should use Clusters to simulate whole group of fragments as one and being able to shoot out fragments out of it, but I just got report about a bug in this system and will work on a fix tomorrow, I will let you know here when this bug will be fixed and new build 1.09 will be released. If you need it urgently, send me your email and I will send you new build.

    To change objec's mass you need to change their material type in Rigid/Physics to something heavier. To change default material density for picked material you need to create empty gameobjecta and RayFireMan component, it will be created anyway at start unless you already have it in scene. In RayFireMan component you can find Material presets group, open picked material and increase Density property.

    Sorry for not answering for so long, got distracted by another project which was need my attention for too long. Of course you can ask me any question any time, to get reply quicker it is better to email me directly.
     
  5. Mir-vadim

    Mir-vadim

    Joined:
    Apr 18, 2017
    Posts:
    114
    Are you sure Demolition is set to None?
    DemolishableCor can be started only in demolition type is not None.

    As for reduced FPS, well, you have 750 objects which have to be checked for demolition every frame, but I will take a look how to optimize it for such simulations.
    Also, can you send me package with your setup? I tried to recreate it and didn't got such FPS drop, maybe there is some bug, your setup will help me to find it or at least find out why FPS drops so much.
     
  6. Mir-vadim

    Mir-vadim

    Joined:
    Apr 18, 2017
    Posts:
    114
    This is the way Slicing works right now, you can initiate it by sending list of Vector3 points to RayfireRigid.demolition.slicePlanes list.
    First point is slicing plane position, second is normal, third point is position of second slicing plane, fourth - it's normal and so on. So you can send several slicing planes and at next frame object should be sliced by them.
     
  7. marcrem

    marcrem

    Joined:
    Oct 13, 2016
    Posts:
    173
    Hi,

    Very excited to see this, and will probably buy. Does your system use rigidibodies at all, or did you do a custom way of processing physics?

    Also, can we see a vortex example video?

    Thanks.
     
  8. SpaceRay

    SpaceRay

    Joined:
    Feb 26, 2014
    Posts:
    391
    Hello, This is really awesome and great and this is surely spectacular and well done, but I have a question that I could not find here, what happens with the sounds of the crumbling and falling parts ? And about of the fragmented parts sounds hitting the floor?
    I mean how is controlled and managed the sounds of the explosions, and the fragmentation and then after the fragments sounds falling to ground or any collision with other object?

    For example if I shoot to a cristal panel, how is managed the sound of it shattering and then falling the fragmented parts?

    COMPARED TO 3Ds Max version

    Does this Rayfire version have all the same fracturing, shattering, breakimg and demolition features that appear in the newest video technical demo https://youtu.be/dzOhI-H3pSk


    Thanks very much for any possible help and for answering and really great and awesome that this is available for Unity
     
  9. SpaceRay

    SpaceRay

    Joined:
    Feb 26, 2014
    Posts:
    391
    Also wanted to know what examples escenes and demos are included in the asset to see how it works amd what can be done with it and does it features most of the features and ways of fracturing and show what it can be done in different ways ?

    Thanks very much, I send you my best wishes and that you can keep making it even better and adding more features to make it even more awesome and excellent
     
  10. SpaceRay

    SpaceRay

    Joined:
    Feb 26, 2014
    Posts:
    391
    One last thing is that I want to use this for mobile phone and tablet games, so I want to know how is it optimized to work with mobile when using precached and already fragmented objects previously ?

    Thanks very much again
     
  11. Mir-vadim

    Mir-vadim

    Joined:
    Apr 18, 2017
    Posts:
    114

    Yes, it is based on native Unity RigidBody/Collider system, so it can interacti with other simulated objects as well.
     
  12. Mir-vadim

    Mir-vadim

    Joined:
    Apr 18, 2017
    Posts:
    114
    For now there is no sound support for demolitions/shooting, I am going to add it later. But there are Demolition and Activation events support, so you can get notification with all info when Demolition/Activation happens and use this info for anything you need, including sound initiation.

    For now it supports Regular Voronoi, Wood splinters, Slabs, Radial,Tetrahedron based fragmentation types, and slice by planes. Later I will add ability to use Custom Voronoi point cloud, so basically all fragmentation types from Max is here except ProBoolean types.
     
    SpaceRay likes this.
  13. Mir-vadim

    Mir-vadim

    Joined:
    Apr 18, 2017
    Posts:
    114
    There are almost 10 tutorial scenes, so you can try almost all features in action. I am adding new featurs over time and changing other, so some issues may occur, but just let me know in this case, it will take too much time to check them all every time I release new buildand to be honest I am not doing this at every release. only at major releases. :)
     
    SpaceRay likes this.
  14. Mir-vadim

    Mir-vadim

    Joined:
    Apr 18, 2017
    Posts:
    114
    Well, I tried to optimize it as much as possible, but I see that there is still some space to optimize it further. The problem is that I am not a mobile developer, so for now I need experienced users advices to make it better for mobile games, just let me know (with some explanation) if you will see that it is not optimized at some actions and I will try to fix all such issues asap.
     
    SpaceRay likes this.
  15. SpaceRay

    SpaceRay

    Joined:
    Feb 26, 2014
    Posts:
    391
    Thanks very much Mir-Vadim for answering all my questions and now I know

    I know that I could do the sound activation myself with scripts but I do not know how to do it as I do not do any programming or coding, so this is why I asked if it was included, as it is something very important for a good demolition and breaking effect

    Good to know that there are 10 tutorial scenes already included, I just wanted to know what is included now, and not in the future that you may add others.

    I understand of course that for mobile it depends very much of what you do and how many things you have on the scene. Will explain it better another day.

    Thanks very much and wish you the best.
     
  16. marcrem

    marcrem

    Joined:
    Oct 13, 2016
    Posts:
    173
    Thanks @Mir-vadim . I have houses that are actually plain, without any interior. Should I create an interior "space" inside of it, or does your tool allow the creation of emptiness with a thickness parameter to create the walls?
     
  17. alsomitra

    alsomitra

    Joined:
    Aug 31, 2017
    Posts:
    15
    iOS build error when using RayFire for Unity



    Hi,

    I am in trouble with the following error.

    MacOS Catalina
    Unity Ver. 2019.1.14f1 Personal

    Create a new project.

    import RayFire for Unity.

    Build Settings.

    iOS Switch Platform.

    Build.

    I got the following error.

    Assets/RayFire/Script/Class/RFDemolition.cs(5,15): error CS0234: The type or namespace name 'DotNet' does not exist in the namespace 'RayFire' (are you missing an assembly reference?)

    Assets/RayFire/Script/Class/RFDemolition.cs(99,16): error CS0246: The type or namespace name 'RFShatter' could not be found (are you missing a using directive or an assembly reference?)

    Error building Player because scripts had compiler errors

    Build completed with a result of 'Failed'

    UnityEditor.EditorApplication:Internal_CallGlobalEventHandler()

    UnityEditor.BuildPlayerWindow+BuildMethodException: 3 errors

    at UnityEditor.BuildPlayerWindow+DefaultBuildMethods.BuildPlayer (UnityEditor.BuildPlayerOptions options) [0x00242] in /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPlayerWindowBuildMethods.cs:194

    at UnityEditor.BuildPlayerWindow.CallBuildMethods (System.Boolean askForBuildLocation, UnityEditor.BuildOptions defaultBuildOptions) [0x0007f] in /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPlayerWindowBuildMethods.cs:97

    UnityEditor.EditorApplication:Internal_CallGlobalEventHandler()

    And...

    Is Unity Ver. 2019.2.9f1 Personal supported?

    Thank you.
     
  18. alsomitra

    alsomitra

    Joined:
    Aug 31, 2017
    Posts:
    15
    DllNotFoundException:



    Hi,

    I am in trouble with the following error.

    MacOS Catalina
    Unity Ver. 2019.1.14f1 Personal

    RayfireShatter Component.

    Fragment Button click.

    Console:

    DllNotFoundException: RFLib_CNative_2018
    RayFire.DotNet.RFShatter..ctor (RayFire.DotNet.RFShatter+RFShatterMode mode, System.Boolean enable_fragmenting) (at <1066f506186b4b0aa292e62fb5a7fab5>:0)
    RayFire.RFFragment.SetFragmentCommon (System.Int32 shatterMode, UnityEngine.Mesh mesh, UnityEngine.Transform transform, RayFire.RFSurface interior, System.Boolean decompose, System.Boolean deleteCol, System.Int32 seed, System.Boolean unsafeMode) (at Assets/RayFire/Script/Class/RFFragment.cs:417)
    RayFire.RFFragment.CacheMeshes (UnityEngine.Mesh[]& meshes, UnityEngine.Vector3[]& pivots, System.Collections.Generic.List`1[RayFire.RFDictionary]& origSubMeshIdsRf, RayFire.RayfireShatter scrShatter, RayFire.RFSurface interior) (at Assets/RayFire/Script/Class/RFFragment.cs:34)
    RayFire.RayfireShatter.Fragment () (at Assets/RayFire/Script/RayfireShatter.cs:129)
    RayfireShatterEditor.OnInspectorGUI () (at Assets/RayFire/Script/Editor/RayfireShatterEditor.cs:87)
    UnityEditor.UIElements.InspectorElement+<CreateIMGUIInspectorFromEditor>c__AnonStorey1.<>m__0 () (at /Users/builduser/buildslave/unity/build/Editor/Mono/Inspector/InspectorElement.cs:462)
    UnityEngine.GUIUtility:processEvent(Int32, IntPtr)

    Thank you.
     
  19. DTownTony

    DTownTony

    Joined:
    Apr 22, 2014
    Posts:
    1
    As someone else mentioned too,I can't seem to build for iOS. Every time I try get the following errors -


    Assets\RayFire\Script\Class\RFDemolition.cs(5,15): error CS0234: The type or namespace name 'DotNet' does not exist in the namespace 'RayFire' (are you missing an assembly reference?)

    Assets\RayFire\Script\Class\RFDemolition.cs(99,16): error CS0246: The type or namespace name 'RFShatter' could not be found (are you missing a using directive or an assembly reference?)

    Error building Player because scripts had compiler errors

    Build completed with a result of 'Failed'
    UnityEngine.GUIUtility:processEvent(Int32, IntPtr) (at C:/buildslave/unity/build/Modules/IMGUI/GUIUtility.cs:179)


    UnityEditor.BuildPlayerWindow+BuildMethodException: 3 errors
    at UnityEditor.BuildPlayerWindow+DefaultBuildMethods.BuildPlayer (UnityEditor.BuildPlayerOptions options) [0x00242] in C:\buildslave\unity\build\Editor\Mono\BuildPlayerWindowBuildMethods.cs:190
    at UnityEditor.BuildPlayerWindow.CallBuildMethods (System.Boolean askForBuildLocation, UnityEditor.BuildOptions defaultBuildOptions) [0x0007f] in C:\buildslave\unity\build\Editor\Mono\BuildPlayerWindowBuildMethods.cs:95
    UnityEngine.GUIUtility:processEvent(Int32, IntPtr) (at C:/buildslave/unity/build/Modules/IMGUI/GUIUtility.cs:179)


    I'm using Unity 2019.2.9f1
    Thank you
     
  20. Mir-vadim

    Mir-vadim

    Joined:
    Apr 18, 2017
    Posts:
    114
    iOS bug was fixed in buil 1.10.
    It is in Asset Store already.
     
    DTownTony likes this.
  21. Mir-vadim

    Mir-vadim

    Joined:
    Apr 18, 2017
    Posts:
    114

    I will try to create Vortex tutorial on next few days.

    As for House, no, it should not have space, if it is low poly, has no open edges (has closed volume) and has no a lot od separate elements you can fragment it as is using Safe mode.

    If your house is hi poly, has all kind of issues, like open edges, unwelded vertices separate planes with material with alpha texture then you should try to use Unsafe mode.
    We added these two modes a week ago I think, and I want to create a tutorial to show when and how you should use them.

    But shortly, for runtime demolitions it is better to use Safe mode since it is much faster but much more sensitive for input mesh and make sure all output fragments also will not have any issues. And in Editor mode you can use Unsafe mode to fragment complex objects with different problems, it is much slower but much more robust.
     
  22. castor76

    castor76

    Joined:
    Dec 5, 2011
    Posts:
    1,507
    What is prerequisite for the meshes to be fragmented? Does it have to be a closed mesh? Does all the vertices have to be welded together? What kinds of meshes will not work? I have bunch of voxel to fbx converted meshes and they all typically creates mesh with not all the vertices welded or closed up..
     
  23. Mir-vadim

    Mir-vadim

    Joined:
    Apr 18, 2017
    Posts:
    114
    There are two fragmentation modes:

    Safe mode:

    • Very fast and designed for runtime fragmentations.
    • Should be used for simple low poly, one element objects.
    • Weld vertices.
    • Cap open edges to close volume.
    • Produce nice and clean fragments with closed volume.
    • Input mesh sensitive. Show "Bad mesh" warnings if input mesh or output fragments has issues which can be fixed and may cause simulation errors and crashes.
    Very rare case, maybe 1 to 20000 fragments if input mesh has open edges which can be closed properly (cap improvement is what we are working on right now, so it will be able to cap mesh with complicated curved open edges), sometimes attempt to apply RigidBody to such mesh crashed Unity, this is why we made this mode so Mesh sensitive. In runtime you won't be able to test fragments before use them in game.

    Unsafe mode:
    • Slow and designed for in Editor use.
    • Can be used for hi poly, multi element complex meshes (not connected and interpenetrated with each other parts of mesh).
    • Also Weld vertices.
    • Do not cap open edges, if mesh has open edges only it's surface will be cut, so, it won't create 3d fragments if input mesh itself is not correct 3d object. (Again, when cap will be improved this will be optional because sometimes you may fragment object like Village House with hay on the roof which are just planes with texture and should be cut, but not fragmented and then stick )
    • Produce fragments which may have open edges.
    • Non sensitive for input mesh and output fragments.
    Later I will create tutorial and show difference between these two modes.
     
  24. castor76

    castor76

    Joined:
    Dec 5, 2011
    Posts:
    1,507
    Is there a demo i can try on my mesh or can i send you my mesh to see if it can be fragmented?
     
  25. Mir-vadim

    Mir-vadim

    Joined:
    Apr 18, 2017
    Posts:
    114
    I will send you link in private message.
     
  26. HenryChinaski

    HenryChinaski

    Joined:
    Jul 9, 2013
    Posts:
    97
    Hi,

    thanks for the help. We got back to this yesterday and unfortunately found a few maybe bugs/maybe user errors. The easiest one to recreate and maybe the one solving all the other issues can be recreated by opening a fresh scene and:

    1. create a cube and a plane.
    2. use the shatter script to shatter the cube. Delete the cube.
    3. assign RayFireRigid to cube_root object. Set only the following settings:
    Dynamic, Connected Cluster, Runtime
    Result:
    Cube falls to the ground. Only the lower parts shatter (as expected).
    All the shattered fragments drift awkwardly away and jitter through the ground.
    I did not even set an activation type. Can you recreate this?

    Thanks, got it!

    Thanks for looking into it. Since I got the feeling, that this asset - because it is so versatile - needs more time to understand than I thought, let me make more tests by myself and don't waste your time, just to make sure I am doing everything right.

    I think the main problem was that I was not using clusters but the mesh root option. I suppose clusters are the right choice for our use-case since I assume they reduce the amount of "checking for demolition" to one per cluster instead of one per fragment in the scene.

    Answer time was o.k. for me, don't worry.

    So yes, I had to be hinted at clusters. You have so many tutorial videos that I somehow missed this one. In theory, that's exactly what we need. In reality, we did not get it working for hours. The setup is exactly like in your tutorial video:
    RayFireScreen1.png
    The only difference is, that we need to use the "by activator" activation option because we don't want the objects to break when the play just walks into them and we cannot use the gun component because we use projectiles. So we just instantiate the RayFireActivator and a small scale RayFireExplosion at the point of impact, if the hit object has the "RayFireObj" tag set.

    All of this worked by using the mesh root type, but also lead to the mentioned performance problems.
    With the cluster setup, the object never activates, because at startup the "by activator" checkbox gets automatically unticked. Even if I tick it again manually, the object stays always intact and only breaks when manually clicking on "demolish". If I pick another simulation type the "by activator" checkbox stays ticked but the demolition doesn't happen anyway.
    We have updated to the newest version yesterday.

    Lastly, you pointed me at the RayFire Manager materials. Thats also something quite nice, I completely oversaw and it might hint at a solution to the problems.

    The original "wood" density values lead for our large shelve to the mass of 1.16kg, which was way too low. We raised the density value to 5 and got a mass of 8kg, which seemed better. When we now shoot at the shelve the demolition actually works and looks quite incredible with no noticeable frame drop at all! Problem now is that 1. the shelve sometimes break when the player moves into it (if I raise the solidity this is fixed but then bullet destruction doesn't work anymore as well) and 2. if the shelves get demolished by bullet, all fragments seemingly have a constant force applied that moves them slowly away in one direction, not colliding with anything. It's the same bug as described before, but it only happens in this case if the mass exceeds a certain value.

    I hope you can recreate this or hint us where we are misunderstanding things.

    Best regards,
    Daniel
     
  27. alsomitra

    alsomitra

    Joined:
    Aug 31, 2017
    Posts:
    15
    Unfortunately, ver [1.10] seems to have an error.
    Example:

    Assets/RayFire/Script/Class/RFDemolition.cs(7,15): error CS0234: The type or namespace name 'DotNet' does not exist in the namespace 'RayFire' (are you missing an assembly reference?)

    Assets/RayFire/Script/Class/RFFragment.cs(350,43): error CS0246: The type or namespace name 'RFShatter' could not be found (are you missing a using directive or an assembly reference?)
     
  28. Mir-vadim

    Mir-vadim

    Joined:
    Apr 18, 2017
    Posts:
    114
    Hm, just tried to compile iOS build and it works for me.
    On which platform you use it?
     
    Last edited: Oct 31, 2019
  29. Mir-vadim

    Mir-vadim

    Joined:
    Apr 18, 2017
    Posts:
    114
    Clusters contains all MeshColliders of it's children, check collision and release only thos meshes which were collided in case you use Connected Cluster. Nested cluster alway will be demolished as you planned.

    Activation turns Inactive and Kinematik objects into Dynamic, if you start simulate cluster as Dynamic it can't be activated, This is why it turn this property off, it doesn't matter if it is on if your object already dynamic. It stay On only for inactiv and Kinematik objects.

    And to fix this bug with floating fragments I guess I need to get your setup.
    Can you send me package or at least screen grab to see what exactly happens there? I will try to recreate it tho.

    I recreated Cube example and getting the same weird behaviour, will work on this issue today and let you know when it will be fixed.
     
    Last edited: Oct 31, 2019
  30. Mir-vadim

    Mir-vadim

    Joined:
    Apr 18, 2017
    Posts:
    114
    I found why this happens, when Connected cluster demolishes to two or more not connected clusters it creates new clusters and destroy itself. But when it releases some fragments and object itself stay in scene it's RigidBody start behave in weird way, you can check it with Physic Debug.

    Anyway, I fixed this issue. This helped with CLusterd box problem and should help with shelves.

    Will send you new package link and update it in Asset Store.
     
  31. alsomitra

    alsomitra

    Joined:
    Aug 31, 2017
    Posts:
    15
    macOS Catalina: version 10.15.1
    Unity: 2019.2.9f1
    build Platform: maybe ALL

    1. Create a new project.
    2. import RayFire for Unity.
    3. I see an error in the console
    • Assets/RayFire/Script/Class/RFDemolition.cs(7,15): error CS0234: The type or namespace name 'DotNet' does not exist in the namespace 'RayFire' (are you missing an assembly reference?)
    • Assets/RayFire/Script/Class/RFFragment.cs(350,43): error CS0246: The type or namespace name 'RFShatter' could not be found (are you missing a using directive or an assembly reference?)
     
  32. Mir-vadim

    Mir-vadim

    Joined:
    Apr 18, 2017
    Posts:
    114
    Ah, I guess I should have ask this question before.
    Sorry, but for now macOS does't support Fragmentation and Runtime demolitions. We definitely will add support for macOS, but after we will fix all issues with mesh fragmentations, this is our top priority right now. For now users send to us meshes with all kind of issues and we need to make them all fragmentable.
    If you want to make a refund then please send me your invoice ID.
    I will let you know when we will add support for macOS.
     
  33. Mir-vadim

    Mir-vadim

    Joined:
    Apr 18, 2017
    Posts:
    114
    Build 1.12 is in Asset Store now.

    Changelog:

    [1.12]

    - Connectivity. New Rayfire Connectivity component for Inactive & Kinematik objects activation.
    Activates objects if they are not connected with Unyielding objects.
    - Unyielding. New Rayfire Unyielding component. Sets objects as Unyielding by it's gizmo.
    - Rigid. By Connectivity activation type.
    - Rigid. By Damage activation type.
    - Rigid. Unyielding property.
    - Rigid. Mass By property. Allows to choose between two methods: By Material Density and By Mass property.
    - Rigid. Mass property. Allows to set exact mass for object in case Mass By set to By Mass property.
    - Manager. Minimum Mass property. Defines minimum mass for simulated rigid bodies.
    - Manager. Maximum Mass property. Defines maximum mass for simulated rigid bodies.
    - Shatter. Unsafe fragmentation mode fixes for objects with open edges.

     
  34. therewillbebrad

    therewillbebrad

    Joined:
    Mar 2, 2018
    Posts:
    133
    I'm having an issu
    Let me know when you figure this out as I'm having a similair issue. I want to have a crate that I can move around as if it's a full crate but then when it's shot the rayfire gets activated. At the moment I can't figure out how to get rayfire to not be sensitive to slight movements.
     
  35. Mir-vadim

    Mir-vadim

    Joined:
    Apr 18, 2017
    Posts:
    114
    Which build do you use?
    These issues should be fixed.
    And which activation types do you use? Maybe yo can send screenshot or scene?
     
  36. therewillbebrad

    therewillbebrad

    Joined:
    Mar 2, 2018
    Posts:
    133
    I've tried a bunch of different combinations but in my head sleeping/inactive, connected cluster, and then demolition type none or runtime. With runtime any sort of movement breaks the box. Ideally I could push or roll the box down a hill and nothing would happen and then once it hits 0 on my own damage system it becomes activated and then destroys itself. I've got something working cool with having a bomb object as a child game object of the nested cluster that gets activated when the damage reaches 0 so it gets a cool exploding effect.

    I just can't figure out the proper settings to do something like this. Maybe having a video tutorial on doing something like this as I feel it's a very common use case for game design. A lot of the tutorials seem to be leaning towards the simulation side and not having real world game examples.

    I see the potential, and I know it's possible just missing the knowledge. Thanks!
     
  37. Mir-vadim

    Mir-vadim

    Joined:
    Apr 18, 2017
    Posts:
    114
    What do you mean? It demolishes at very slight collision? Try to increase Solidity in this case.

    Also, I probably too tired right now :) but I don't clearly understand what exactly you want to get/create. Can you explain in detail what you have and what you want to get and how you expect to get what you want? Maybe with youtube links with references.

    And which build do you use? Latest one is 1.12.

    And yes, it is already pretty powerful but I don't mind to make it even better :)
    But since I am not a game developer in some cases I need to be pointed in right direction.
     
  38. NullKommaNeun

    NullKommaNeun

    Joined:
    Apr 13, 2018
    Posts:
    3
    I realy like the asset. It is incredible what you made possible at runtime.
    I tried alot of things but sadly i am not able to get the Dust working. One simple example of what i tried:
    1) I created the unity cube object, assigned the Rayfire Rigid component and configured it.
    2) I assigned the Rayfire Dust component to the Cube, assigned a dust material and checked "On Demolition".

    When i hit play the Cube is fractured as expected but no dust appears. Instead it seems to not delete the cube wich causes chaos. It is probably because of the NullReferenceException i get in Line 805 of RFParticles. It seems that scr.scrDust is always null when i am debugging, wich explains the Exception. What do i need to do to use it correctly?

    I am using Unity 2019.1.0f2
     
  39. Censureret

    Censureret

    Joined:
    Jan 3, 2017
    Posts:
    221
    Hey i am trying to demolish my wall object however i keep getting bad input mesh can you help?

    upload_2019-12-7_1-54-16.png
     
  40. Mir-vadim

    Mir-vadim

    Joined:
    Apr 18, 2017
    Posts:
    114
    In last build I moved Debris and Dust properties into separate componenets so they will not overload Rigid componenet and seems like this added few new bugs.
    I am going to release build 1.14 with new demolition type on next few days which will allow to break any type of object to any other (cluster, fbx, prefab, other scene object) and this bug will be fixed there, if you need this fix urgently let me know and I will send you 1.14b to use.
     
  41. Mir-vadim

    Mir-vadim

    Joined:
    Apr 18, 2017
    Posts:
    114
    This happens when mesh has some issues like open edges, unwelded vertices, to fragment such objects we added special Editor fragmentation mode which is not sensitive to input mesh, it is much slower than Runtime mode because it performs a lot of mesh checks and then tries to fix issues it can fix before fragment. For Runtime demolition you need to use clean meshes without issues or prefragment\precache them in Editor using Editor Fragmentation mode.
    So, firest of all, it will be great if you can send your mesh to me to test, in this way we improve our library so it will be able to handle more mesh issues. And second, Add Shatter component and try to fragment it using Editor Fragmentation mode to see how it works with this mesh.
    Next build which will be released on next few days will allow to define fragments which you got by Shatter as references for demolition, so you won't need to fragment object via Rigid component, this will make eveyrhing much more easier to setup.
     
  42. Censureret

    Censureret

    Joined:
    Jan 3, 2017
    Posts:
    221
    @Mir-vadim Thank you so much for your answer where can i send my mesh to you?
     
  43. NullKommaNeun

    NullKommaNeun

    Joined:
    Apr 13, 2018
    Posts:
    3
    Thank you for the reply. I can wait for the stable version to come out.
     
  44. Mir-vadim

    Mir-vadim

    Joined:
    Apr 18, 2017
    Posts:
    114
    There is Readme.txt in RayFire/Info folder with all contacts.
     
  45. Censureret

    Censureret

    Joined:
    Jan 3, 2017
    Posts:
    221
    @Mir-vadim i will send it later today is it possible that you could give me some information on the dust and Debris component? i want to spawn some particles when my object is demolished ( i am creating a catapult that launches a rock so on impact i would like som particles)
     
  46. Mir-vadim

    Mir-vadim

    Joined:
    Apr 18, 2017
    Posts:
    114
    Hi, as I said in previous post in last build I changed the way debris and dust worked before and some new bugs were added. I already fixed these bugs, on monday I will upload new build 1.14 in Asset Store and it will take about two days to be approved.
     
  47. Mir-vadim

    Mir-vadim

    Joined:
    Apr 18, 2017
    Posts:
    114
  48. Mir-vadim

    Mir-vadim

    Joined:
    Apr 18, 2017
    Posts:
    114
  49. Mir-vadim

    Mir-vadim

    Joined:
    Apr 18, 2017
    Posts:
    114
  50. Mir-vadim

    Mir-vadim

    Joined:
    Apr 18, 2017
    Posts:
    114
unityunity