Announcement

Collapse
No announcement yet.

Open World Kit

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

    Open World Kit

    Introducing you some work which I do for my current project. For the most part, the OWK is related to a procedural world, editing the environment in real time, working with files, and 3D interface.

    I’m going to make flexible and very simple system which based on sandbox model. All to create a tool for building a virtual universe. So the name is VR Constructor. Development is still at the stage of testing the hypotheses, functionality and architecture of the platform. I'm sure that almost all of you can handle gray cubes style. Anyways, most of the planned models on my machine could not even load)) Most of the code is written on BP, because the speed of code editing and visibility are priority in my case.

    Can’t promise you tutorials (especially video), because I hate this format of information, but I will answer all the questions with pleasure and try to explain how I achieved any feature. As soon as the features are ready I’ll post them in this topic.

    1) Procedural 3D UI.


    With this, I started working on the Open World Kit. In general, it is supposed to be used with a VR headset and haptic gloves. But since I do not yet have the opportunity to test the work in this configuration, I did something universal. Buttons can be made as follows:

    (Leap Motion)


    (my UE4 realiazition)

    A good designer would turn the rest of the menu into something cute, like a holographic interface from a sci-fi movie, but for the sake of functionality it’s enough.

    2) Procedural thumbnails for spawning meshes.


    To place objects, you first had to load them into the interface. But I was terribly lazy to create my own picture for each model, and the essence is not in the models. So I just generated thumbnails automatically based on the list of objects that are in the props folder.

    3) Procedural mesh database.

    4) Runtime Terrain Generator

    5) Procedural Voxel Terrain.

    6) Building system.


    A core system of Open World Kit, allowing the user to place objects, both from database, and their own. Mesh pivot must be placed at the bottom to build correctly. I have not done the switching of the snapping and checking for the overlap yet, but this is a trivia compared to the rest of the algorithm. When placing an object, the mesh material dynamically changes.

    7) Snapping building.

    8) Material edit system based on procedural 3D widget.

    9) Procedural Foliage System.



    10) Foundation mesh. Terrain changing system.



    11) Portals



    12) Procedural/runtime Scattering

    13) 3D cursor. VR emulation
    Last edited by Two-faced; 04-28-2017, 03:30 PM.
    Available for contract hiring! Complex mechanics, quick game prototyping, VR, AI, Animation, Tools for designers.

    Check out my latest game! Last Joy - 2D RPG with unique combat system.

    #2
    This looks cool, although I am not quite clear on what this is going to be useful for (except for Virtual Reality)?

    And you may want to change the name, when people hear 'open world', they think about an open, large scale environment, not a virtual interface.

    Comment


      #3
      Originally posted by spacegojira View Post
      This looks cool, although I am not quite clear on what this is going to be useful for (except for Virtual Reality)?

      And you may want to change the name, when people hear 'open world', they think about an open, large scale environment, not a virtual interface.
      I haven't shown my open world features yet) Today I'm gonna finish terrain editing and after polishing I will post it in a few days
      Available for contract hiring! Complex mechanics, quick game prototyping, VR, AI, Animation, Tools for designers.

      Check out my latest game! Last Joy - 2D RPG with unique combat system.

      Comment


        #4
        Look forward to it

        Comment


          #5
          3) Procedural mesh database.
          Click image for larger version

Name:	2017-03-16_23-37-37.png
Views:	1
Size:	107.3 KB
ID:	1124801

          Actually, the database consists of the main menu, for which you can specify pictures and names, and objects for placement. The longest I was busy with the creation of a procedural database for the Constructor, which differs from most open world solutions, in that the user should be able to import their meshes into the engine in the simplest possible way: by copying the fbx model into a special folder. The work is still far from complete, since fbxsdk, and the source code of the engine is still a swamp, but something works... In the near future I want to add more meshes and decompose them into categories depending on the mesh tags.
          Last edited by Two-faced; 03-16-2017, 12:48 PM.
          Available for contract hiring! Complex mechanics, quick game prototyping, VR, AI, Animation, Tools for designers.

          Check out my latest game! Last Joy - 2D RPG with unique combat system.

          Comment


            #6
            Originally posted by Two-faced View Post
            I haven't shown my open world features yet) Today I'm gonna finish terrain editing and after polishing I will post it in a few days
            Oh okay, looking forward to it then!

            Comment


              #7
              4) Runtime Terrain Generator


              There are already several similar implementations on our forum, and some of them with free access, but they are all so complex that it’s not so easy to understand the details of algorithm, and even more difficult change them for my purposes. Therefore, I decided that it would be easier to write my own vertex generator, calculate triangles and create a Runtime Mesh based on them. It turned out quite well. Lags and FPS dropping are more likely due to the recording program.

              In the future, I want to implement the cherished feature of many developers: the procedural placement of pre-created areas in the middle of the random terrain.
              Available for contract hiring! Complex mechanics, quick game prototyping, VR, AI, Animation, Tools for designers.

              Check out my latest game! Last Joy - 2D RPG with unique combat system.

              Comment


                #8
                5) Procedural Voxel Terrain.


                Since everyone loves voxels so much, it's not so difficult to remake heightmap into the Minecraft-like world)
                Available for contract hiring! Complex mechanics, quick game prototyping, VR, AI, Animation, Tools for designers.

                Check out my latest game! Last Joy - 2D RPG with unique combat system.

                Comment


                  #9
                  This looks pretty nice so far.

                  Comment


                    #10
                    Originally posted by HeadClot View Post
                    This looks pretty nice so far.
                    Thanks, man) I forgot to mention that the world is infinite. Once you get away from far chunks, they are removed until you turn back.
                    Last edited by Two-faced; 03-19-2017, 06:37 PM.
                    Available for contract hiring! Complex mechanics, quick game prototyping, VR, AI, Animation, Tools for designers.

                    Check out my latest game! Last Joy - 2D RPG with unique combat system.

                    Comment


                      #11
                      7) Snapping building.



                      This is the most common thing in the building systems. All meshes must have appropriate sockets.

                      In a good sense, of course, I need to add a predictive snapping here in addition to trace mode)
                      Available for contract hiring! Complex mechanics, quick game prototyping, VR, AI, Animation, Tools for designers.

                      Check out my latest game! Last Joy - 2D RPG with unique combat system.

                      Comment


                        #12
                        Added rotation and scaling features for building system.
                        Available for contract hiring! Complex mechanics, quick game prototyping, VR, AI, Animation, Tools for designers.

                        Check out my latest game! Last Joy - 2D RPG with unique combat system.

                        Comment


                          #13
                          8) Material edit system based on procedural 3D widget.



                          Apotheosis of procedural laziness) 3D widget is filled with textures for each material found in the materials folder. Widget location is calculated depending to the size of the mesh being edited. All descendants of the edited mesh inherit the selected material. The widget disappears at a distance from the user.

                          In my opinion it looks very cool))
                          Available for contract hiring! Complex mechanics, quick game prototyping, VR, AI, Animation, Tools for designers.

                          Check out my latest game! Last Joy - 2D RPG with unique combat system.

                          Comment


                            #14
                            A small update while I'm working on magic system: added GUI scroll and zoom feature.
                            Available for contract hiring! Complex mechanics, quick game prototyping, VR, AI, Animation, Tools for designers.

                            Check out my latest game! Last Joy - 2D RPG with unique combat system.

                            Comment


                              #15
                              9) Procedural Foliage System.



                              Maybe this will be useful someday)
                              Available for contract hiring! Complex mechanics, quick game prototyping, VR, AI, Animation, Tools for designers.

                              Check out my latest game! Last Joy - 2D RPG with unique combat system.

                              Comment

                              Working...
                              X