Search Unity

Octave3D-Level Design - Snapping, Prop placement, Multi-Prefab painting

Discussion in 'Assets and Asset Store' started by XGT08, Aug 10, 2016.

?

Do you prefer written documentation or video tutorials? (regarding the Octave3D remake)

Poll closed Jun 10, 2023.
  1. Written documentation

    68.8%
  2. Video tutorials

    31.3%
  1. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,905
    @Lars-Steenhoff
    ... and everybody using Unity 2018.2 or above

    Starting with Unity 2018.2, it seems that were some changes made to the Unity scripting API and for this reason the console will show a compiler error. I will release a quick update to fix this nut until I do, please perform the following steps to fix the issue:

    1. open the Octave3D World Builder/Scripts/Transform/Coordinate System/CoordinateSystem.cs file;
    2. on line 103 there is a SetRotation function.
    3. inside this function there is this line of code:
    rotation = rotation.Normalize();
    4. replace it with:
    rotation.Normalize();

    That's it :)
     
  2. GrassWhooper

    GrassWhooper

    Joined:
    Mar 25, 2016
    Posts:
    109
    hey again, small question.
    sometimes the Shift + Scroll moves between prefabs in an active category and sometimes it moves between categories, not sure what i am doing something wrong to be honest,
    but the moment i close and reopen unity it starts to behave again, normally with moving through prefabs instead of categories, it is a tad bit annoying but i thought i might be doing something wrong any ideas?
     
    unity_RMiJ7SENDRQxhQ likes this.
  3. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,905
    Hi there,

    So SHIFT + Scroll wheel - moves between prefabs in active category;
    ALT + SHIFT + scroll wheel - moves between categories;

    So are you holding ALT by accident?
     
    GrassWhooper likes this.
  4. GrassWhooper

    GrassWhooper

    Joined:
    Mar 25, 2016
    Posts:
    109
    thanks for the quick support :) i was sure i wasn't holding Alt, but pressing it again, when this issue happens solves it.
    i guess unity somehow read that i was pressing it while i was not.
     
    XGT08 likes this.
  5. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,905
    I have had trouble with the Unity event system before. It sometimes feels like it works against you. In fact I remember that I had to apply an ugly hack in my code in order fix an issue that had to do with the CTRL key. I can not guarantee that I can make it work for ALT but maybe I will find a solution for it someday. Thanks for letting me know!
     
  6. funselektor

    funselektor

    Joined:
    Oct 11, 2013
    Posts:
    105
    Hey there,

    Had a question, I'm trying to use align to stroke to place objects with space between them (shown in blue) so they aren't right beside each other, but stroke distance doesn't have an effect. Is there any way to do this?

    upload_2018-7-23_11-57-5.png

    upload_2018-7-23_11-55-11.png
     

    Attached Files:

  7. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,905
    Hey there,

    Unfortunately, stroke distance is not taken into account when using Align to stroke. I am not sure if I can change this behavior for now.
     
  8. CoughE

    CoughE

    Joined:
    Oct 26, 2015
    Posts:
    39
    Hello there,

    Any tips on how to easily place ceiling tiles? I have a hard time aligning them with the floor, or placing new ceiling tiles against pre-existing ones.

    It's also hard quite to select ceiling tiles you have placed more movement/deletion.

    Thanks!
     
  9. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,905
    Hi there,

    I think you should give this video a shot. This is a video I made some time ago for another customer who was having trouble with the tool and in this video I show how an apartment can be built using Octave3D.

    I have linked to the actual time when I start talking about the ceiling, but I suggest you watch the entire tutorial. You can get some good tips from it.

    I actually invite everybody to watch this video as it might prove to be really helpful.

    Cheers,
    Andrew
     
    Mark_01 likes this.
  10. CoughE

    CoughE

    Joined:
    Oct 26, 2015
    Posts:
    39
    Wow that is so simple, yet powerful! (A trend I am finding with this entire asset\) I learned about 5 useful hot keys in about 2 minutes with that part of the video.

    Thanks so much for the quick reply, I am in love with your asset, and will preach it's usefulness to all my Unity buddies! :)
     
    XGT08 likes this.
  11. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,905
    :) Thank you. I am happy you find it useful!

    AA... wonderful! :) You are also more than welcome to leave a rating on the store if you feel inclined.

    Thanks,
    Andrew
     
  12. GrassWhooper

    GrassWhooper

    Joined:
    Mar 25, 2016
    Posts:
    109
    hey there, small question about the Brush Mode,
    is there a way to "unpaint" with the decor paint bursh mode?
    as in, something similar to what unity terrain has, where, you just shift click or something to unpaint the grass that was painted.
    or do i have to select all props, and just delete?
     
  13. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,905
    Hi there,

    Octave3D has something similar. You have to go to the erase settings GUI as shown in the following image:

    3DEraseBrush.png

    and then choose the ObjectMass3D option from the Erase mode popup.

    You can use CTRL + mouse scroll wheel to increase the brush radius or simply modify the Circle radius property in the inspector.

    Radius adjustment speed controls how fast the radius changes in response to mouse scrolls.
     
    Mark_01 and GrassWhooper like this.
  14. GrassWhooper

    GrassWhooper

    Joined:
    Mar 25, 2016
    Posts:
    109
    thanks, you rock, and your tool rocks too :D
     
    XGT08 likes this.
  15. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,905
    smiling-face-with-sunglasses.png
     
  16. GrassWhooper

    GrassWhooper

    Joined:
    Mar 25, 2016
    Posts:
    109
    hey again.
    so, the issue is that i have prefabs in the following manner,
    the LOD0 contains the collider, the head object contains only a transform.
    issue is that, those rock prefabs, can be placed by the Octave3D, but issue is, selection just, doesn't happen on that it can not be selected.
    i tried creating a box collider, and adding it to the head game object(and removing the collider from LOD0), and nothing else changes.
    these rocks, are static, and they belong to the default layer.
    any ideas or tips?
    its nice that i can place them easily, but would also be very nice if i could select them too.
    upload_2018-8-2_11-5-1.png
     
    Last edited: Aug 2, 2018
  17. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,905
    You probably placed the tree manually using Unity's standard interface. In that case you need to press the Refresh Scene button:

    RefreshScene.png

    Colliders are not needed.
     
  18. GrassWhooper

    GrassWhooper

    Joined:
    Mar 25, 2016
    Posts:
    109
    i didn't really put the rock manually, i placed it through octave3d, but i still did try refreshing scene, and no positive results.
    i did attempt to remove, the entire Octave3D Game Objects, and all other Groups, and recreate them, and that didn't help.
     
  19. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,905
    I am using some rock models from NatureManufacture and they also have LOD levels and I can select them with absolutely no problem:

    Rocks.png

    I do not know what is happening in your case. What models are you using?
     
  20. GrassWhooper

    GrassWhooper

    Joined:
    Mar 25, 2016
    Posts:
    109
    my models are actually from Dynamic Nature Starter pack, from Nature Manufatura too, i guess i'll investigate more, and see if its on my end.

    prefab_rock_01_uvfree
    prefab_rock_01_snow
    and basically all rocks from that pack don't work, i even tried remaking the prefabs, and no results too.
    Edit: just tested on an empty scene, and even an empty scene makes no difference

    Edit2: i tried creating a full on new empty project, with just these 2 assets,
    and it appears the issue is from the models themselves.
    the things i noticed about these models, they're actually scaled up by, a lot, children are scaled by 1670, and head is scaled by 0.3, i don't know if that fixes things
    the fix, that managed to work for me, is to actually add a cube, and then scale it, to be slightly larger than the actual rock,
    then apply a transparent material to the cube, (so that, we can't see it) and lastly, applying prefabs, and refreshing scene, after that, they worked. like magic
    so basically, it probably is something with the prefabs of that that pack that i just can't figure out, the fix i found was hacky, but hy, it works, and a transparent cube, shouldn't hurt :)
     
    Last edited: Aug 3, 2018
  21. Shadowing

    Shadowing

    Joined:
    Jan 29, 2015
    Posts:
    1,648
    What causes this error to be spam in my console while using Octave 3d World Builder?
    Im a first time user.
    Unity 2017.4.10f1

    Screen position out of view frustum (screen pos 128.000000, 0.000000, 1000.000000) (Camera rect 0 0 128 128)


    Been using the tool for a while. having a lot of trouble building tight fences. Even the fence being made on the tutorial isn't a tight fence.
     
    Last edited: Aug 31, 2018
  22. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,905
    Hi there,

    I'm afraid I won't be able to start looking into this until Tuesday. Until then I wold like to ask you to give me more information about the error such as:

    • when does it happen?
    • Is there any special action required?
    • When the error pops up, please select one of the entries in the console window, make the console window large enough and take a screenshot so that I can see the error message and its description (file and line numbers etc).
    Not sure what you mean by tight fences. If you mean that fences should be as close enough as possible, then you should move the mouse more slowly. This procedure is mouse movement dependent.
     
    Mark_01 likes this.
  23. Stranger-Games

    Stranger-Games

    Joined:
    May 10, 2014
    Posts:
    393
    @XGT08
    Hi,

    Thank you for adding 2D sprite support.
    Is there a way to have a collider that encloses objects created in Path or Group mode?
    I know each prefab can have their own collider, but a feature like that would be cool and would eliminate imperfections in connections between colliders.
    I can use tilemap asset or unity's tilemap, but I love octave3d and it makes more sense to use prefabs rather than tiles in my game.

    Thanks for advance.
     
  24. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,905
    Hi there,

    I think that could make it in Octave3D, yes. I won't be able to start working on it until Tuesday, but until then I just want to make sure I understood correctly. So you are talking about the Path and Block modes? For path, you need a collider that encloses the entire path, or each segment of the path?

    Also do you need this for sprites only?
     
  25. Stranger-Games

    Stranger-Games

    Joined:
    May 10, 2014
    Posts:
    393
    Hi,

    Thank you for your prompt reply.

    Here's a very simple example of what I need. I want a big BoxCollider2D to enclose those blocks (one block height and 16 blocks width). I think that will increase performance hugely in physics calculations.

    upload_2018-9-3_6-24-40.png

    In a case like the following a PolygonCollider2D would be great.

    upload_2018-9-3_6-33-18.png

    I would suggest that rather than binding the functionality with path or block modes, I suggest the following workflow.

    After the user creates the level, the user selects consecutive prefabs like the images above, then a button appear to generate the collider to enclose them all. A choice to choose the type of collider (Polygon Collider2D, BoxCollider2D, etc..) would be cool option.
    With ready made assets bought from the store, individual prefabs might have colliders on it, so an option to delete individual collider on each one before creating the enclosing collider will also be cool. In that case you might give the user the option to calculate the enclosing collider from the individual colliders of each prefab rather than the sprite image, which I think might be simpler to program than using sprites for calculations.

    Right now I need it for sprites only, but it would definitely be a cool feature in 3D also reducing physics calculation time significantly.
    I actually bought Octave3D for a 3D game that development went a little stagnant, but I will return to developing it again soon and it would be an awesome feature to add.

    Edit:
    -----
    I would suggest that a parent object is created with the generated collider component attached and the selected objects move as children to that parent object. Assigning the parent object layer to be the same as the first object selected would be cool.

    Thanks for advance.
     
    Last edited: Sep 3, 2018
  26. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,905
    Hi there,

    I think I spoke a bit too soon :)

    I have been playing around with the idea and trying to figure out how to do this, but the harsh reality is that generating colliders for a series of random objects (3D or sprites) is not an easy task to solve. I would be aiming for a more general solution where the sprites can have different rotations, no assumptions about their positions etc and I simply do not know how to do it. If I did come up with a solution, I would probably sell that as a separate asset.

    I am sorry, but for now at least, this feature will not be available. I know you need it, but for the moment it is just not possible. I hope you understand.

    Looking on the Asset Store I found some collider generator solutions. Doesn't look exactly like what you would need, but maybe with some more info from the authors, you might be able to decide if it works for you. That is unfortunately the best I can do right now. Link to asset.

    Cheers,
    Andrew
     
    Stranger-Games and Mark_01 like this.
  27. sbsmith

    sbsmith

    Joined:
    Feb 7, 2013
    Posts:
    126
    Hello, I'm using Octave as part of a multi-scene editing setup where each scene has an environment root somewhere in space, but not at the origin. I only work with one scene at a time for decorating, and they're assembled later. This is important because I need the freedom to move my environments around later.

    I've noticed that attaching the World Builder to any object in my hierarchy (like the root object of my scene) will snap it to the global origin. I can't have any of my game objects secured to the origin.

    Should I be creating the Octave World Builder outside of my normal object hierarchy and then use the Group functionality to have the objects appear within my hierarchy? Is that the intended workflow?

    Thanks for your help!
     
  28. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,905
    Hi there,

    Yes :) Object groups are the way to go. The Octave3D World Builder script is just an object that needs to exist in the scene to store all the plugin data (settings, prefabs, tags etc).
     
    Last edited: Sep 16, 2018
  29. sbsmith

    sbsmith

    Joined:
    Feb 7, 2013
    Posts:
    126
    Thanks for the quick response. I've noticed that the Prefab Manager adds a couple MB to the size of each scene. Are there any plans to separate it out into a separate scriptable object? As it stands, it will add hundreds of MB to the size of my project. To get around this, I'm going to make it so that you can't save a scene with items in the manager and it will just load/unload them from the config file when you open the scene.
     
  30. sbsmith

    sbsmith

    Joined:
    Feb 7, 2013
    Posts:
    126
    If I have a World Builder in multiple scenes open at the same time (even if I'm not using it), I will get an exception when I close the scenes. Given this, I may need to change the workflow so that it saves the Octave setup and removes it entirely (not just the database) when the scene is saved.

    Is this safe, or could this cause issues with things like the utility that combines meshes with the same material? I'm still a bit new to Octave.

    Code (CSharp):
    1. Destroying object multiple times. Don't use DestroyImmediate on the same object in OnDisable or OnDestroy.
    2. UnityEngine.Object:DestroyImmediate(Object)
    3. O3DWB.Octave3DWorldBuilder:DestroyPools() (at Assets/Octave3D World Builder/Scripts/Octave3DWorldBuilder.cs:515)
     
  31. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,905
    The PrefabManager is a scriptable object. PrefabCategoryDatabase (SO) which contains a collection of PrefabCategory instances (SO) but I am not sure how SO's are supposed to decrease the size of a scene unless you save them as assets which in turn will increase the size of the project. Also, the problem I experienced with saving those as assets is that when you have lots of them and refresh the asset database it puts Unity into a hard stall. I may have done something wrong, but for now there are no plans to make those assets.

    I will have to look into that exception as it should not happen. Removing the Octave3D object when the scene is saved should be safe, but it was never the intended workflow. Until I manage to fix the exception, I think you can safely ignore it. By the looks of it, it should not cause any issues.
     
  32. sbsmith

    sbsmith

    Joined:
    Feb 7, 2013
    Posts:
    126
    Thanks. My issue with the size was more that the same database needs to be used in a hundred scenes and it would have been nice if it only existed once outside of the scenes. Deleting the database contents and reloading them at the beginning of a session, or removing Octave entirely between sessions are adequate workarounds for my workflow.
     
    XGT08 likes this.
  33. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,905
    Hi there,

    I've sent you an PM :)

    Oh. I see. Octave3D stores a lot of data indeed. For each prefab that you store inside the prefab manager, there are all sorts of pieces of information that get stored.

    I am glad you find this approach acceptable. As I said, for now at least, there isn't much I can do to change this.

    Thanks,
    Andrew
     
  34. ratking

    ratking

    Joined:
    Feb 24, 2010
    Posts:
    350
    Hi, I get a lot of errors when I import Octave3D into my Unity 2018.2 project. Apparently it uses the Terrain package stuff, while I didn't import this (and don't want to). Dear developer, please remove the dependency on the terrain stuff. Thanks.
     
    Last edited: Oct 12, 2018
  35. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,905
    First off, Octave3D does not use any terrain package stuff. I will check to see what the problem is and if I can reproduce it.

    Secondly, I assume you meant 'Dear' instead of 'Dead'. Calling me a dead developer doesn't sound right and I don't like it. Please update your post.
     
    Mark_01 likes this.
  36. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,905
    @ratking
    I just imported Octave3D in 2018.2 and it works with no problems:

    Octave3D_2018.2.png
     
    danrt50 and Mark_01 like this.
  37. ratking

    ratking

    Joined:
    Feb 24, 2010
    Posts:
    350
    Hey, sorry for the "dead". No reason to get upset because of a typo.

    I imported Octave3D in a fresh project now and it works. So this is an error on my side.
    FYI, this is the error I get when I import Octave3D in an project that I upgraded from an older Unity version.

    Screenshot_1.jpg

    Apparently somehow the Terrain package was deactivated, and Octave3D doesn't like that. It would be cool if it were more modular, so I don't have to import the Terrain stuff if I don't need it, but I understand if that's not easy to circumvent.

    Cheers,
    ratking
     
    TeagansDad likes this.
  38. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,905
    Hi there,

    I'm not upset. But it was just something that I felt like it needed fixing. Thanks for updating your post.

    It is not possible to remove this dependency. I need access to the Unity.TerrainCollider functionality to perform raycasts against terrains. This is necessary in different places such as when placing objects on terrains, brushes (paint and erase), selecting terrain objects, projecting objects on terrains etc.
     
    ratking likes this.
  39. Jakub_Machowski

    Jakub_Machowski

    Joined:
    Mar 19, 2013
    Posts:
    647
    Hello @XGT08 Do you plan to supportu nity 2018.3 Cause there are huge changes in prefabs, Are you going to support that version?


    Oh and have some news for you ;) We Released some Early Trailer from our game The End of The Sun where we used a lot of Octave to level Design! :)



    If you need our screenshts to promote your system there is no problem, just add somewhere link to our webpage. Of couse you could use it also to promote your system if you need that :)
    CLICK HERE TO VISIT OUR OFFICIAL WEBSITE

    We hope You 'll like it and add our game to steam wishlist :)
    CLICK HERE TO VISIT OUR STEAM STORE PAGE











    RELEVANT LINKS


    Game’s official website: http://www.endofsun.com

    Facebook: https://www.facebook.com/EndOfTheSunGame

    YouTube Official: https://www.youtube.com/channel/UCFoSXpa4XVRZEC...

    Instagram: https://www.instagram.com/endofsungame/

    Twitter: https://twitter.com/endofthesungame

    Gamedev blog: https://www.endofsun.com/blog/

    Screenshots and gameplay materials: https://www.endofsun.com/#Gallery
     
    Mark_01 and XGT08 like this.
  40. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,905
    Hi @Jakub_Machowski

    I must say I am extremely happy you shared this with me :) The project looks wonderful and incredibly promising! I would definitely like to use screenshots for promotion and of course links to official game pages. Goes without saying, I will follow this project closely and will most definitely grab a copy on release :cool:

    Regarding support for the new prefab system, I have heard about it and currently the plan is to wait until 2018.3 comes out. I do not generally implement features for beta versions. So once 2018.3 is out, I will start working on it. Looking at their upgrade guide, it looks like it should not be too much of an issue. So yes, 2018.3 support will be available.

    I wish you the best of luck with this project! Looks amazing! We'll keep in touch and thank you very much for sharing :)

    All the Best,
    Andrew
     
  41. Duffer123

    Duffer123

    Joined:
    May 24, 2015
    Posts:
    1,216
    @XGT08 ,

    As you know from the other thread, I'm looking at buying this Asset. However, I already own Gena2. What are the key differences with Octavia3D and what can it do when compared to Gena2?
     
  42. Mark_01

    Mark_01

    Joined:
    Mar 31, 2016
    Posts:
    634
    Gena is good as you know me @Duffer123 They have some similar things like
    fence along a path...

    But Octave3d can do much more... I have had this since the first version about 3 years ago.
    Andrew will say more too.... they are 2 different tools in more ways then they are
    similar...

    This is the main video and I think its easy to see that you would have a harder time doing the
    same thing in Gena ..


    They are both very good at what they do as the main functions I mean.

    P.S Andrew I hope you don't mind the mini testimonial. :)
     
    Last edited: Oct 26, 2018
    XGT08 and Duffer123 like this.
  43. Duffer123

    Duffer123

    Joined:
    May 24, 2015
    Posts:
    1,216
    @Mark_01 ,

    Thanks. Helpful to hear. Interestingly, people on Gena in Discord use both and say much the same...
     
    Mark_01 likes this.
  44. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,905
    @Mark_01
    Absolutely no problem Mark! :) I actually appreciate the intervention!

    @Duffer123
    I do not own Gena and I do not generally like comparing with other products especially because I might provide misleading information in the comparison since I do not know all the details of what the other product can do.

    I have spent quite a lot of time recording videos of how Octave3D works and I believe there is a wealth of information that can be gathered from there. If you already own Gena, it should be pretty simple to decide if you need Octave3D or not. It would take you a lot LESS time to watch the videos and make an informed decision than it took me to record the videos :)

    If you have any questions about Octave3D functionality, I would be glad to help, but I will have to leave the comparison and decision making up to you :)
     
    Mark_01 and Duffer123 like this.
  45. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,905
    @Duffer123
    In the future I would like to kindly ask you to ask all the questions in one place instead of using 3 different forums to ask questions that could have been asked in a single place :)
     
  46. Duffer123

    Duffer123

    Joined:
    May 24, 2015
    Posts:
    1,216
    Apologies, fair point.
     
    XGT08 likes this.
  47. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,905
    No apologies needed :)
     
    Duffer123 likes this.
  48. Duffer123

    Duffer123

    Joined:
    May 24, 2015
    Posts:
    1,216
    Anywhos, I have purchased.... ;)
     
    Mark_01 and XGT08 like this.
  49. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,905
    Ok. Great! I hope you have fun using it! ;)
     
    Duffer123 likes this.
  50. Duffer123

    Duffer123

    Joined:
    May 24, 2015
    Posts:
    1,216
    @XGT08 ,

    Hi just installed and happily moving to load in rock prefabs. Only, all three asset packs the whole rock is the preview is just pink - like they had no materials?

    [Edit]. Ignore. Just me loading in too many Prefabs and with them too many shaders. Nothing to do with Octave3D.
     
    Last edited: Oct 26, 2018