Announcement

Collapse
No announcement yet.

Point Cloud Plugin

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

    phoboz

    Awesome job on this plugin. It's going to be a huge help to our project, so thank you for sharing.

    Originally posted by phoboz View Post

    Herein lies the problem. It shouldn't be compiled with the engine.
    Generally, the plugin shouldn't go into your engine Plugins directory at all, but rather into your project Plugins directory. Alternatively, you could try to place the plugin within the engine Plugins directory after you fully compile it (tho I haven't tested it).
    I just thought I would share with you that I was actually able to compile and run 0.4.2 as an engine plugin by doing a clean build of the full UE 4.18.3 source using the Unreal Automation Tool. However, there was one compiler error that was resolved by changing the #include on line 8 of PointCloudFactory.h from "PointCloudRuntime/Public/PointCloud.h" to just "PointCloud.h".

    Also, when using the non-unity build to compile our game (this time with the Point Cloud as a project plugin rather than an engine plugin), there are a few compiler errors due to missing #includes:
    • PointCloudStatics.cpp needs "FileHelper.h" and "Runtime/Core/Public/Misc/Paths.h"
    • PointCloudStatics.h needs "PointCloudShared.h"
    • PointCloudSection.h needs "PointCloud.h" and "Runtime/Core/Public/Math/UnrealMathUtility.h"
    None of this is a big deal and probably won't be noticed by many people, but I figured I would let you know what we found in our testing. Thanks again!

    Comment


      Originally posted by lcipolla View Post
      phoboz

      Awesome job on this plugin. It's going to be a huge help to our project, so thank you for sharing.



      I just thought I would share with you that I was actually able to compile and run 0.4.2 as an engine plugin by doing a clean build of the full UE 4.18.3 source using the Unreal Automation Tool. However, there was one compiler error that was resolved by changing the #include on line 8 of PointCloudFactory.h from "PointCloudRuntime/Public/PointCloud.h" to just "PointCloud.h".

      Also, when using the non-unity build to compile our game (this time with the Point Cloud as a project plugin rather than an engine plugin), there are a few compiler errors due to missing #includes:
      • PointCloudStatics.cpp needs "FileHelper.h" and "Runtime/Core/Public/Misc/Paths.h"
      • PointCloudStatics.h needs "PointCloudShared.h"
      • PointCloudSection.h needs "PointCloud.h" and "Runtime/Core/Public/Math/UnrealMathUtility.h"
      None of this is a big deal and probably won't be noticed by many people, but I figured I would let you know what we found in our testing. Thanks again!
      Glad you like it

      Some people reported compilers complaining about missing includes - not entirely sure why it only happens for some. Will add them just in case, as to avoid potential issues - thanks!
      Interesting find with the engine compilation - was it a clean 4.18.3 source build?

      Thanks again for the feedback
      Point Cloud Plugin: Project Website | Forum Thread | Roadmap

      If you need help: join me on Discord
      Please support me on Patreon if you enjoy my content

      Comment


        Hey guys!

        Just a quick update on the development progress.

        Version 0.5 turned into a much bigger undertaking than originally anticipated. The internal data structure as well as how it's send to the GPU have been completely redesigned to allow for much more scalable and flexible approach. These changes should also make the transition to full streaming and background rebuilding in the future much easier.

        The clouds are no longer being split into individual sections, which use their own, self-contained render data and LODs. Instead, an adaptive octree division is applied and the LODs are partially constructed and handled at runtime. Gone are the section size setting and worrying about draw call count - the whole cloud will now use as little draw calls as there are LODs

        Current estimated release: late July.
        Last edited by phoboz; 06-22-2018, 08:11 AM.
        Point Cloud Plugin: Project Website | Forum Thread | Roadmap

        If you need help: join me on Discord
        Please support me on Patreon if you enjoy my content

        Comment


          Originally posted by phoboz View Post
          Some people reported compilers complaining about missing includes - not entirely sure why it only happens for some.
          My guess is Unreal isn't always consistent with which source files it lumps together when generating the giant combined cpp files for the unity build, so most of the time the missing includes get included anyway, but occasionally they're split between separate cpp files.

          Originally posted by phoboz View Post
          Interesting find with the engine compilation - was it a clean 4.18.3 source build?
          Yep. I just checked out a clean copy of the 4.18.3 engine source, put the Point Cloud code into Engine\Plugins, generated the project files, and then ran BuildGraph via the Unreal Automation Tool (RunUAT.bat).

          Quick question for you - When rendering our point cloud as points, the points seem to get culled out of view rather quickly when you try to get close to them in both the editor and the game. I played around with the LOD settings a bit as well as some of the Unreal rendering console variables, but they didn't seem to have any effect, and I haven't seen anything in the code so far that would be causing it. It doesn't appear to be an issue when using sprites as the render method though. Any ideas?

          Thanks!

          Comment


            Originally posted by lcipolla View Post
            Quick question for you - When rendering our point cloud as points, the points seem to get culled out of view rather quickly when you try to get close to them in both the editor and the game. I played around with the LOD settings a bit as well as some of the Unreal rendering console variables, but they didn't seem to have any effect, and I haven't seen anything in the code so far that would be causing it. It doesn't appear to be an issue when using sprites as the render method though. Any ideas?
            Sounds like you're describing near clipping plane. Sprites would appear to be less susceptible to it simply because they cover bigger area of the screen and so you don't just see them go all of a sudden.
            Point Cloud Plugin: Project Website | Forum Thread | Roadmap

            If you need help: join me on Discord
            Please support me on Patreon if you enjoy my content

            Comment


              That was my first thought as well. The near clipping plane is already set to 0 for our player camera, so I didn't think there was much more I could do to adjust it.

              Comment


                Below is a small sample of what to expect from the new rendering approach.
                Keep in mind that this is still very much work in progress and far from properly optimized.

                Click image for larger version

Name:	RenderingOverhaul.jpg
Views:	1
Size:	370.7 KB
ID:	1492944
                Point Cloud Plugin: Project Website | Forum Thread | Roadmap

                If you need help: join me on Discord
                Please support me on Patreon if you enjoy my content

                Comment


                  I have 2 point clouds in the same coordinate system and would like them to line up when I bring them into UE with the plugin. But when I insert the point clouds it goes to the mouse coordinates, making it difficult to line them up perfectly. Is there a way to have them appear in the level according to their point coordinates?

                  Comment


                    Originally posted by CIMS View Post
                    I have 2 point clouds in the same coordinate system and would like them to line up when I bring them into UE with the plugin. But when I insert the point clouds it goes to the mouse coordinates, making it difficult to line them up perfectly. Is there a way to have them appear in the level according to their point coordinates?

                    Hi CIMS,

                    You could do it in few ways:
                    1. Import both clouds with no transformation applied, drag them both to your level, then set their Location to 0, 0, 0. The downside to this approach is they may end up with a very large offset from the level's origin (0, 0, 0) causing weird movement.
                    2. Import the clouds as First Point or Center, then calculate what should be their relative offset in the chosen case and assign those offsets using the Details panel. For example:

                    Let's assume that we have clouds PC1 and PC2 and that their respective first points are 519287.471, 195777.342, 97.635 and 519213.366, 195981.924, 98.681. Assuming you import them using a scale of 100 their respective Origins will be: 51928747.1, 19577734.2, 9763.5 and 51921336.6, 19598192.4, 9868.1. To calculate their relative offset you have to subtract PC1's origin from PC2's origin, like so:
                    Code:
                    (51921336.6, 19598192.4, 9868.1) - (51928747.1, 19577734.2, 9763.5) = (-7410.5, 20458.2, 104.6)
                    Finally you drag them both to your level, set PC1's location as 0, 0, 0 and PC2's location to the relative offset: -7410.5, 20458.2, 104.6
                    Point Cloud Plugin: Project Website | Forum Thread | Roadmap

                    If you need help: join me on Discord
                    Please support me on Patreon if you enjoy my content

                    Comment


                      Click image for larger version

Name:	UnrealDevGrant_Award_Icon_01.png
Views:	2
Size:	32.8 KB
ID:	1495185


                      Hey guys,

                      I'm very pleased to announce that the plugin has been awarded the Unreal Dev Grant!

                      Thanks for all your feedback and support. I hope you'll enjoy all upcoming releases
                      Point Cloud Plugin: Project Website | Forum Thread | Roadmap

                      If you need help: join me on Discord
                      Please support me on Patreon if you enjoy my content

                      Comment


                        Very much deserved Phoboz - congratulations!

                        Comment


                          Congratulations and very much deserved.

                          Comment


                            That's great news with the Unreal Dev Grant. I'm looking forward to the direct E57 import in the next version.

                            Comment


                              Congrats!! ;-)

                              Comment


                                Hi! Thank you very much for this amazing pointcloud.

                                I have a question about the aspect of the sprite. Is there a way to display it like Multipoint mode in Maya ?

                                I mean, in Maya you can display sprite as a standard square but you have Multi points mode where one point is multiplied and scale X times, so you can have some good results.

                                I made a graphic to be more explicit...

                                Thanks a lot!

                                Comment

                                Working...
                                X