Search Unity

World Building Voxel Play - infinite world generator

Discussion in 'Tools In Progress' started by Kronnect, Jan 2, 2018.

  1. Kronnect

    Kronnect

    Joined:
    Nov 16, 2014
    Posts:
    2,905
    Caves sneak preview ! :)



     
  2. Player7

    Player7

    Joined:
    Oct 21, 2015
    Posts:
    1,533
    biggest complaint right now is the performance is just bad.... and these are areas that could definitely be optimized better, and less time spent on minecraft clone stuff.



    I've come to buy voxel play having used another c# unity voxel framework, that kinda lacked in features and performance wasn't so great and had to optimized it abit myself.. but having tried voxel play the performance from the demoearth when the character controller is moving around is just awful.. like 27ms updates going on in the VoxelEnvironment.LateUpdate.. and everytime I move the mouse is bad.. don't move the mouse and I get avg 5-10ms frameupdates... which is ok though coming from 3ms in another voxel engine. Is some need for engine optimization and base features, personally don't care for much biome world stuff.. more about the performance that can be used for game development, not wanting a minecraft clone, though certainly features that help in that direction are useful I think to much focus on that right now and not more on the base line would work better.

    With the caves will you have more of a look at the voxel shader lighting, like it's not very accurate. And could do with some some better smoothing. Like minecraft lighting system was more accurate and worked better in how that worked with light sources and the smoothed version looked better.

    In voxelplay you can dig a cave, and the lighting behind you never really dies off into darkness at least not in ways you expect.. it does eventually get darker but seems like it needs some more tweaking. Just like enclosing yourself in blocks with just a 1block gap.. does matter how far away in darkness you are from that 1block air gap to outside lighting.. provides too much lighting instead of getting darker the further away you are from it.. know what I mean? sometimes it works othertimes not.

    that's it so far, I'm glad the unity colliders are in for chunks, one of the reason I've decided to purchase it, hope you keep improving it, bought a few voxel things in the past and authors just bail on them before really doing anything good.

    will see how far I get in converting my old game to this new framework and put it to the test but please improve the performance I don't want to doing that stuff all over again, already wasted countless time on another voxel project that didn't just let me work on the actual game.
     
  3. Kronnect

    Kronnect

    Joined:
    Nov 16, 2014
    Posts:
    2,905
    Thanks for the useful feedback - beta 0.9 is in the works and it’s being built from user community including your own feedback for sure. Caves and detail spawners are among the top in the wish list so they are seen light.
    Some fundamental changes are in this version, as chunks are no longer 18x3 in size but 16x3 aiming to allow different sizes as well. As a result smooth lighting has been reworked. Thanks for your comments on the digging issue and performance, will check it out on the new version as well.
     
  4. Kronnect

    Kronnect

    Joined:
    Nov 16, 2014
    Posts:
    2,905
    Beta 0.9 has been submitted - it extends the system to support detail generators. Two examples are provided:
    - Cave generator: which draws holes in the terrain.
    - Village/building generator: stamps random building models.

    As a sandboxed engine the idea is to provide fully functional core components while being extensive. So please take those provided components as reference implementations for two basic generators - feel free to expand or create your own detail generators.

    Version 0.9 also doubles down on performance by using a new octree-based system for culling chunks and dedicated thread for rendering.

    There're still more stuff to come but this version should be mostly feature complete for what version 1.0 is expected, except for the custom chunk size (which is aimed to be also included in version 1.0).
     
  5. Player7

    Player7

    Joined:
    Oct 21, 2015
    Posts:
    1,533
    yeh the performance issues in my post above have been fixed it's much better now, though still room for more performance improvements I'm sure :D
     
  6. Nolat

    Nolat

    Joined:
    Dec 24, 2017
    Posts:
    5
    Hi ! I have a question, how deep would there be chunks generated ?
     
  7. Kronnect

    Kronnect

    Joined:
    Nov 16, 2014
    Posts:
    2,905
    There're no hard limits for the world size so you could in theory dig in forever.. (playable limits can be enforced as well).
     
  8. Nolat

    Nolat

    Joined:
    Dec 24, 2017
    Posts:
    5
    Ok so it would be possible to generate something like Minecraft's Bedrock and stop generation under ?
     
  9. Kronnect

    Kronnect

    Joined:
    Nov 16, 2014
    Posts:
    2,905
    Yes, you can define a voxel type with a resistance of 255 which has a special meaning (unbreakable).
    Also you can set a bounds in the player controller provided with Voxel Play which will limit the area where it can move.
     
  10. Nolat

    Nolat

    Joined:
    Dec 24, 2017
    Posts:
    5
    Ok so if I would like to prevent the player to go under -256, i need to set Limit Bounds - Extent to 0 -256 0 ?
     
  11. Kronnect

    Kronnect

    Joined:
    Nov 16, 2014
    Posts:
    2,905
    You need to set also x and z limits. Extents is half the size of the bounding box and is always positive.

    For example, to limit the playable area from -2000 to 2000 in XZ plane and -256 to 256 in Y axis:

     
  12. Kronnect

    Kronnect

    Joined:
    Nov 16, 2014
    Posts:
    2,905
    I'm adding bedrock option to the default terrain generator in next update so you can simply set a minimum height and the terrain generator will automatically render bedrock voxels below that level (and will also skip worrying about chunks beneath that level).
     
  13. Nolat

    Nolat

    Joined:
    Dec 24, 2017
    Posts:
    5
    Ok thanks ! Keep doing greats !
     
    Kronnect likes this.
  14. RockyH

    RockyH

    Joined:
    Feb 24, 2014
    Posts:
    7
    Hey, loving this so far, but my team and I were discussing mobile so I switched to android and now we have an error when we enter play mode:

    Critical (STAGE=0)</color>: Object reference not set to an instance of an object
    at VoxelPlay.VoxelPlayEnvironment.GenerateMeshData_Triangle (System.Int32 jobIndex) [0x0012d] in E:\UnityProjects\Voxel\Assets\Voxel Play\Scripts\Private\Renderer\VoxelPlayRendererTriangle.cs:35
    at VoxelPlay.VoxelPlayEnvironment.GenerateChunkMeshDataOneJob () [0x001c1] in E:\UnityProjects\Voxel\Assets\Voxel Play\Scripts\Private\Renderer\VoxelPlayRenderer.cs:610
    at VoxelPlay.VoxelPlayEnvironment.GenerateChunkMeshDataInBackgroundThread () [0x00050] in E:\UnityProjects\Voxel\Assets\Voxel Play\Scripts\Private\Renderer\VoxelPlayRenderer.cs:553
    UnityEngine.Debug:LogError(Object)
    VoxelPlay.VoxelPlayEnvironment:ShowExceptionMessage(Exception) (at Assets/Voxel Play/Scripts/Private/Core/VoxelPlayEnvPriv.cs:375)
    VoxelPlay.VoxelPlayEnvironment:GenerateChunkMeshDataInBackgroundThread() (at Assets/Voxel Play/Scripts/Private/Renderer/VoxelPlayRenderer.cs:559)
    System.Threading.ThreadHelper:ThreadStart()

    Figured I would make a post while I try to figure it out and also in case someone else has this error. Please help. :)
     
  15. RockyH

    RockyH

    Joined:
    Feb 24, 2014
    Posts:
    7
    upload_2018-6-4_20-58-53.png

    I am sharing the fix for you all, BEFORE you switch platform, turn off the geometry shaders bool in the inspector when you have Voxel Play Environment selected.

    One last thing, are there any plans for ps4 or xbox support? Perhaps complete support on all the available platforms Unity supports development for?
     
  16. Kronnect

    Kronnect

    Joined:
    Nov 16, 2014
    Posts:
    2,905
    Hi @RockyH,
    Unfortunately we don’t own any XBox/PS4 DevKit but I’d love to support you guys tweaking or fixing any aspect you may find. Please join our discord server to discuss them: https://discord.gg/7HQgT3v
    Cheers
     
  17. Kronnect

    Kronnect

    Joined:
    Nov 16, 2014
    Posts:
    2,905
    @RockyH got your private message but for some reason I can't reply (doesn't make any sense since you started a conversation). Could you please send me an email instead? Thanks.
     
  18. RockyH

    RockyH

    Joined:
    Feb 24, 2014
    Posts:
    7
    Thanks, I sent the email.
     
  19. Kronnect

    Kronnect

    Joined:
    Nov 16, 2014
    Posts:
    2,905
    Beta 12 has been submitted with the following changelog:

    - Added HQ filtering option (removes distance noise)
    - Integrated mobile touch controls (automatically enabled when running on mobile)
    - Improved reliability on mobile (read this)
    - Added FPS counter (hotkey F8)
    - New simplified skybox for mobile (set it in World definition, picked up automatically)
    - Added windAnimation property to Voxel Definitions
    - Added Cactus tree models (they appear in desert biome in Earth sample world)

    Next update will focus on half-sized blocks and other shapes.
     
  20. Kronnect

    Kronnect

    Joined:
    Nov 16, 2014
    Posts:
    2,905
    Beta 13 now available which adds:

    - Added custom voxel definition types (eg. half blocks)
    - Added VPModelTextureAlpha shader which allows transparency on models

     
  21. Kronnect

    Kronnect

    Joined:
    Nov 16, 2014
    Posts:
    2,905
    While beta 13 was been approved, a new grand feature is now available :)

    Latest beta (still not on the Asset Store, will be available soon after some more testing work) supports one-click scene conversion from Unity standard terrain to Voxel Play environment (includes terrain splatmaps, trees and details, vegetation).



     
  22. Player7

    Player7

    Joined:
    Oct 21, 2015
    Posts:
    1,533
    I like the added for terrain conversion, though world edit tooling for making buildings, brushes for painting terrain, like voxelsniper etc would be good aswel.
     
    Kronnect likes this.
  23. Kronnect

    Kronnect

    Joined:
    Nov 16, 2014
    Posts:
    2,905
    Thanks. Sure, having world editing tools will be great. There’re some ideas on the table for the future - right now you can play and save the world, then use that saved world as the starting map. But, brushes and other painting tools will be a great addition for the SceneView. Yep.

    So you can start with a mass world generator like Gaia or other Unity standard terrain editor extension and finish modelling the scene with the new tools.
     
  24. Kronnect

    Kronnect

    Joined:
    Nov 16, 2014
    Posts:
    2,905
    Quick, non-edited footage of demo scene 2 included in next beta. Generated with a few clicks from a terrain created with Gaia:

     
    HeadClot88 likes this.
  25. Pangeli70

    Pangeli70

    Joined:
    Mar 2, 2016
    Posts:
    7
    Looks good :)
     
    Kronnect likes this.
  26. Kronnect

    Kronnect

    Joined:
    Nov 16, 2014
    Posts:
    2,905
  27. Pangeli70

    Pangeli70

    Joined:
    Mar 2, 2016
    Posts:
    7
    Using voxel play will be possibile to achieve the colony survival visual quality?
     
  28. Kronnect

    Kronnect

    Joined:
    Nov 16, 2014
    Posts:
    2,905
    Next release is going to support dynamic lights so in terms of graphic capability I think it will be very similar. Additionally a touch of Beautify will boost the quality with crisper, soft bloom and depth of field effects.
     
    Last edited: Jun 20, 2018
  29. Nolat

    Nolat

    Joined:
    Dec 24, 2017
    Posts:
    5
    What about the Voxel outline effect ?
     
    Last edited: Jun 21, 2018
  30. NeilBeresford

    NeilBeresford

    Joined:
    Jun 23, 2018
    Posts:
    2
    Hey Thrawn75,
    I think you have ruined my plans for my own voxel development for my game. I have been researching different methods for land generation and drawing after realizing mine/cave/biomes additions would mean several months more work for myself using my current method. Thus I felt I would change to voxel cube technique, allowing for reduced detail but quicker development and to be honest, it still would look good.
    Things started out well, until I saw" Voxel Play" in the Assest Store! I've been reviewing your progress etc from first beta up to the most recent release. What I find wonderfully refreshing is your commitment to your project and also how you listen to the community and bring them into its development.
    I was hoping to see 'Voxel Play' being used by a developer, however I think you have produced enough videos and answered questions that I would of asked - to a point where I will be purchasing 'Voxel Play' and joining your beta team, if possible,
    many thanks, Neil
     
    Kronnect likes this.
  31. Kronnect

    Kronnect

    Joined:
    Nov 16, 2014
    Posts:
    2,905
    Hi Neil, I’m sure there’s still plenty of development joy for you even with Voxel Play! :)
    Sure you’re most than welcome to join the beta team on kronnect.com.
    Cheers!
     
    NeilBeresford likes this.
  32. Kronnect

    Kronnect

    Joined:
    Nov 16, 2014
    Posts:
    2,905
    Hi ! Here're some news regarding next update.

    Beta 15 submitted with support for point lights and other improvements. Point lights logic is integrated in the forward base pass as vertex lights so no additional render passes are used, great for performance. Torches now cast a point light by default at the position providing better and smoother lighting results.

    Multi-threading support has also been improved for mobile so it now takes much less CPU cycles when idle saving battery life.

    And new APIs have been added to make it even easier to add blocks or random voxel figures at runtime by using simple 3D array of voxels, etc.

    More details when the new version is approved.

    Regards.
     
  33. Kronnect

    Kronnect

    Joined:
    Nov 16, 2014
    Posts:
    2,905
    Well, that was fast! :) Beta 15 is now available with the following change log:

    - Optimized/reduced CPU load on chunk thread generation (good for mobile)
    - Unity point lights support
    - Torches now cast a point light at position (customize point light color and behaviour in torch prefab itself)
    - Trees no longer respawn over loaded chunks from saved games
    - FPS character carries a light. Press L to toggle it on/off (customize light properties in FirstPersonCharacter gameobject scripts).
    - API: added AddVoxelDefinition method
    - API: added ModelPlace method overload to place an array of voxel definitions with optional colors
    - API: ModelPlace now can return the list of all vixible voxels in the model
    - API: added GetVoxelIndices: returns a list of visible voxel indices inside a given 3D box
     
  34. Pangeli70

    Pangeli70

    Joined:
    Mar 2, 2016
    Posts:
    7
    I have a curiosity. Tipically in voxel engines like minecraft the torch lights are emulated using vertex color shaders because realtime lights become quickly computationally too much expensive. If you use optifine and advanced shaders like Seus (
    ) you can use only one realtime light attached to the player. How is this aspect managed in voxel play?
     
  35. Kronnect

    Kronnect

    Joined:
    Nov 16, 2014
    Posts:
    2,905
    Hi @Pangeli70!
    Torch lights influence smooth lighting and also cast a point light. Voxel Play shaders implement vertex lighting receiving up to 4 real-time point lights per vertex.
     
    Last edited: Jun 27, 2018
  36. raeldor

    raeldor

    Joined:
    Jul 8, 2013
    Posts:
    55
    Hi. This looks great, but a couple of questions...

    1. Does it have any multi-player support?
    2. Will it run on Android, specifically Oculus G?

    Thanks
     
  37. Kronnect

    Kronnect

    Joined:
    Nov 16, 2014
    Posts:
    2,905
    Hi, thanks.
    There's no full multiplayer functionality in the asset but it provides you with an API that you can use to react to world events and sync them with other clients using the backend you want.
    It runs on Android (requires OpelGL 3.0 for Texture2DArray support) but it currently has not been tested on VR.
    Oculus GO and DK2 will be tested soon and results will be published on this thread.
    Regards.
     
  38. Kronnect

    Kronnect

    Joined:
    Nov 16, 2014
    Posts:
    2,905
    Some progress on revamped water system..

     
    Last edited: Jul 18, 2018
  39. Kronnect

    Kronnect

    Joined:
    Nov 16, 2014
    Posts:
    2,905
    Update 0.17 submitted!
     
  40. Kronnect

    Kronnect

    Joined:
    Nov 16, 2014
    Posts:
    2,905
  41. Kronnect

    Kronnect

    Joined:
    Nov 16, 2014
    Posts:
    2,905
    In Voxel Play you can define rotations per Voxel type (and also change existing scene voxels):

     
  42. peanutgallery

    peanutgallery

    Joined:
    Oct 5, 2013
    Posts:
    35
    Hey there,
    Been curious about VoxelPlay for a while. :D
    Noticed something in the latest demo scene that was a little weird... floating water blocks? Looked kinda cool even still haha
     
  43. Kronnect

    Kronnect

    Joined:
    Nov 16, 2014
    Posts:
    2,905
    That can happen in the demo world because there’s no check when digging caves / holes. That’s something that you can code in the cave generator script - check if there’s water on top and avoid clearing the ground immediately beneath.
     
    peanutgallery likes this.
  44. Kronnect

    Kronnect

    Joined:
    Nov 16, 2014
    Posts:
    2,905
    Version 1.1 is now available featuring collapsing voxels!

     
  45. peterpantss

    peterpantss

    Joined:
    Sep 24, 2014
    Posts:
    13
    Any plans to add support for marching cubes terrain
     
  46. Kronnect

    Kronnect

    Joined:
    Nov 16, 2014
    Posts:
    2,905
    Not in Voxel Play as it’s designed and optimised for cube-based environments.
     
  47. japanmomiji

    japanmomiji

    Joined:
    Sep 24, 2018
    Posts:
    7
    hi my english is very bad

    Can you teach me the easiest way to modify map?

    Do I have any map prefab that I can use for modify?

    I read few introduction for customize map and start from empty,

    However I could not understand the meaning of create NewWorldDefinition stuff,
    The description said map is generated by auto.

    All the demo scene seems to empty for me.


    what should I do if i want to put other 3D models such as temple or something like structures in game,
     
  48. Kronnect

    Kronnect

    Joined:
    Nov 16, 2014
    Posts:
    2,905
    Hi,
    Please check our online documentation (if you have not done so yet) to learn how to place voxels, models and customise terrain generators and also join our Discord channel for tips and tricks here:
    https://discord.gg/7HQgT3v
    Thanks!
     
    Last edited: Sep 30, 2018
    DJ_Design likes this.
  49. japanmomiji

    japanmomiji

    Joined:
    Sep 24, 2018
    Posts:
    7
    thank you for lecturing
     
    Kronnect likes this.
  50. DJ_Design

    DJ_Design

    Joined:
    Mar 14, 2013
    Posts:
    124
    ahhh man i was soo soo stoked to see someone actually take the time to create and optimize a nice water/flood system! When i saw it on the store i was hoping you had plans in the future to implement a sort of marching cubes or "smooth" variable for the edges or something to fit into the already in place voxel gridlock system to have more potential prospectively speaking to give buyers a wider range of creativity to mix up the that weary "mc clone" look that floods stores, since you already have a lot here that would definitely take the cake over all the other generators (uTerrains has this sort of feature, size of voxels as well as their "blockiness", but the dev seems to be going in a different direction, thus my search continues x), but i can totally see where you're coming from keeping it 1 shape and prioritizing speed and i appreciate that considering some of the options are like memory goons..
    If you are firm in your decision to permanently close this off as a cube only asset i respect that again just curious if you ever would consider smoothing option once you have the optimization months / years down the line.. would easily bump your work up to the $100 range with the rest..

    either way i'm happy to support your work, if it means readjusting my project to cubes so be it! haha
     
    Kronnect likes this.