Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

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,894
    I believe you are using the Decor Paint mode. First button in the toolbar fro left to right. You should press the second button. The one with the mouse cursor and cube. In that case the grid will show up and you can snap. However, the object won't be pushed on top of the terrain surface (e.g. on cliffs and so on). Is this what you need?
     
  2. Arkade

    Arkade

    Joined:
    Oct 11, 2012
    Posts:
    654
    Any idea why I sometimes get this error when trying to enter Play mode?

    Code (CSharp):
    1. Invalid editor window O3DWB.PrefabManagementWindow
    2. UnityEngine.DebugLogHandler:Internal_Log(LogType, LogOption, String, Object)
    3. UnityEngine.DebugLogHandler:LogFormat(LogType, Object, String, Object[])
    4. UnityEngine.Logger:Log(LogType, Object)
    5. UnityEngine.Debug:LogError(Object)
    6. UnityEditor.WindowLayout:CheckWindowConsistency() (at C:\buildslave\unity\build\Editor\Mono\GUI\WindowLayout.cs:233)
    7. UnityEditor.WindowLayout:MaximizePresent(EditorWindow) (at C:\buildslave\unity\build\Editor\Mono\GUI\WindowLayout.cs:640)
    8. UnityEditor.EditorApplicationLayout:FinalizePlaymodeLayout() (at C:\buildslave\unity\build\Editor\Mono\GUI\EditorApplicationLayout.cs:75)
    9. UnityEditor.EditorApplicationLayout:SetPlaymodeLayout() (at C:\buildslave\unity\build\Editor\Mono\GUI\EditorApplicationLayout.cs:34)
    10. (Filename: C:/buildslave/unity/build/Editor/Mono/GUI/WindowLayout.cs Line: 233)
    11.  
    Once it starts happening, attempts to unpause will keep hitting this error and it will keep happening every time I try to Play until I use Unity's "Layout" system to switch to a different one! (I noticed the business about Layout and guessed!) I therefore guess it's some window that's accidentally hung around invisible or something.

    Thanks
    p.s. I wrote a "Prefabifier" Editor script that worked well. Can share if useful?
     
  3. skrx1

    skrx1

    Joined:
    Feb 23, 2017
    Posts:
    24
  4. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,894
    I believe this happens because after you place a model, the mouse is hovering the model you just placed and it will attempt to align the placement guide to the surface of that model. So a small rotation occurs. I believe in this situation it might be better to turn of axis alignment and only activate it when you really need it. So in Surface Alignment Settings, uncheck Align axis.
     
  5. skrx1

    skrx1

    Joined:
    Feb 23, 2017
    Posts:
    24
    Drag the preview generated by the pre-production, do not see the front image, how to set to see the front?

     
    Last edited: Sep 4, 2019
  6. Arkade

    Arkade

    Joined:
    Oct 11, 2012
    Posts:
    654
    Hi
    Are there plans to get Octave3D out of the scene? By this I mean it feels like the whole thing should be an Editor window likely with the same data on a ScriptableObject rather than a MonoBehaviour. I ask this having run into the same problem you're addressing in this post
    https://forum.unity.com/threads/oct...ti-prefab-painting.425240/page-9#post-3134074

    As I implicitly put it above, I feel the asset would benefit from being outside the scene and editing it. However in case there's a workaround possible, maybe this might help? From my experiments with using `#if UNITY_EDITOR` with (a) MonoBehaviour, (b) ScriptableObjects and (c) Serializable classes, Unity only has those sorts of problems with (c).

    Sorry, I quite like the asset but having to both remove it from all scenes for a build and then not seeming able to edit them afterwards is a huge pain. Even if I save all the configs etc, it doesn't seem to recover groups and in my attempts to get them working again I've ended up corrupting scenes and all sorts. Yes I can revert from git history after every build but again, huge pain.

    Any help or hope appreciated.
     
  7. XGT08

    XGT08

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

    I have sent you a PM explaining this in some detail :)

    Cheers,
    Andrew
     
  8. noobynobody

    noobynobody

    Joined:
    May 9, 2019
    Posts:
    75
    Hello, is mesh combine is the only level optimization feature? Does it handle combining when selected meshes are over 64k vertices in total? There is no texture atlasing, correct?

    Does it have any features like what is described here? In particular, I think adding light probes is very useful.
    GeNa optimizes prefabs by fixing their batching and lighting, and adding light probes as needed. The result is better lighting, improved frame rates, and reduced bake times
    Finally, does Octave3d offer an easier way to add and edit primitive colliders?
     
  9. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,894
    Hello,

    Yes, mesh combine is the only level optimization that can be applied:
    1. it handles the 64K vertex limit;
    2. no texture atlasing.

    Regarding other optimizations such as light probes, no Octave3D does not support this feature.

    There are also no features for working with colliders. If you are thinking about anything in particular, please let me know and I will see if this can be done.

    Cheers,
    Andrew
     
  10. toddkc

    toddkc

    Joined:
    Nov 20, 2016
    Posts:
    207
    Hi there! So I have a question....this is one of several level-design assets on the store, and is by far the most expensive of the group. I have no problem spending money for a superior asset, but without the ability to demo it would you be willing to maybe make a little sales pitch about what makes Octave3D better than the alternatives?
     
  11. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,894
    Hello,

    Thanks for contacting me.

    I can only show what the plugin does. I have made several videos that showcase the tool's functionality. As far as comparing it with other products, I believe that's something you should handle yourself :). If you are interested to know if specific functionality is present in the tool, let me know. But I will have to leave the comparison to you :)

    Cheers,
    Andrew
     
  12. RealWyldhunt

    RealWyldhunt

    Joined:
    Dec 5, 2017
    Posts:
    32
    I love the functionality of Octave3d. It is well worth the price.
    I have a request for some added 'Tags' functionality that I think would help a lot with large projects.

    Let's say that I have the following tags:
    • Indoor
    • Outdoor
    • Castle
    • House
    • Wall
    • Window
    • Door
    • Floor
    • Furniture
    • New
    • Old
    • Damaged
    • Ruin
    Currently, the Tag filter works as an 'OR' filter. IE: Has Tag 'Indoor' or 'Castle' or 'Wall'
    It would be amazingly helpful if we had a second tab for an 'AND' filter.

    This would allow us to do things such as:
    First OR tab: select Door, Wall, Window
    Second AND tab: select Indoor, Castle, New

    This would begin by showing all of the doors, walls, and windows.
    The second tab would further refine that list by only showing the walls doors and windows which also have the Indoor, Castle, and New tags.

    When the project becomes large, with a ton of prefabs, we need a way to filter very efficiently.
    I think this added functionality would go a long way towards saving the level builders time.
     
    XGT08 likes this.
  13. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,894
    Hello,

    I definitely understand the need for this. I can't make any promises because I was actually planning on removing the tags feature :) in favor for some other way (still fuzzy about this) of filtering prefabs. Ideally, I would like to avoid having an additional list of something (in this case tags) to filter prefabs. I was thinking of somehow making the prefab categories more flexible to allow for more filtering options. I am still not decided on this so I can't say what will happen.

    I like the feature you proposed, but I would also like to spend some time thinking about this because I would not want to implement it only to have it removed in favor of something else later on.

    Thanks,
    Andrew
     
  14. RealWyldhunt

    RealWyldhunt

    Joined:
    Dec 5, 2017
    Posts:
    32
    Everything you've done so far is amazing, so I'll trust your expertise. :)
    Mainly, we need some way to control how granular our search is.
    Do we want all of our interior building prefabs, or do we want to narrow it down to only interior windows?
     
  15. BilginSahin

    BilginSahin

    Joined:
    Jul 2, 2012
    Posts:
    48
    I noticed some lags when you have really many prefabs in several categories. Also the size of the scene gets quite big.
     
  16. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,894
    The scene size is I'm afraid inevitable since there is a lot of data that is associated with the Octave3D game object. You can of course delete this object before the final build.

    Regarding the lags, do they happen when you are interacting with the UI or when you are moving the scene?
     
  17. BilginSahin

    BilginSahin

    Joined:
    Jul 2, 2012
    Posts:
    48
    It´s happening on both. The Editor gets high cpu usage in the profiler with a "World Builder" Script with many prefabs and categories. As soon i deselect the object it get to normal
     
  18. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,894
    I have sent you a PM with the updated package.
     
  19. Mr_TZ

    Mr_TZ

    Joined:
    Apr 5, 2018
    Posts:
    12
    I have the same problem before.
    I remembered that the PreviewIcon was created by rendering the prefab in the scene.
    So i changed the code.Get The Prview Icon from UnityEditor APi directly.
    No lags anymore,even there were thounsands of prefabs.
     
  20. BilginSahin

    BilginSahin

    Joined:
    Jul 2, 2012
    Posts:
    48
    Nice what did you changed? Do you have code?
     
  21. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,894
    If you are reffering to the prefab previews, note that the Unity API function has an issue. For some prefabs, it just produces a blank texture (gray I believe). This is why I had to draw the prefabs manually.
     
  22. Uli_Okm

    Uli_Okm

    Joined:
    Jul 10, 2012
    Posts:
    95
    Hello @XGT08 !
    I am interested in buying the asset for easier level design but my project have a special setting:
    - Not a single object have colliders (props don't have colliders, floors don't have colliders)
    The placement tool will work in this environment?
    Thanks
     
  23. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,894
    Yes. It does. No colliders are needed to interact with the objects. The only exception is terrains. Terrains must have terrain colliders attached.
     
  24. Mr_TZ

    Mr_TZ

    Joined:
    Apr 5, 2018
    Posts:
    12

    PrefabPreviewGenerator.cs

    public Texture2D GeneratePreview(Prefab prefab)
    {
    return AssetPreview.GetAssetPreview(prefab.UnityPrefab);

    }


    Do not remember To Set
    ""AssetPreview.SetPreviewTextureCacheSize""
    to a large size Or it will destory preview icon automaticly.



     
  25. Chris-Clark

    Chris-Clark

    Joined:
    Jan 16, 2012
    Posts:
    130
    Hi, I'm looking to buy Octave3D, but had a question about the randomization. Am I able to add weights to the prefabs in the category?

    For instance, I'm using a fixed tile size, so I'd like to drag out a dungeon floor made out of my tile prefab, but have 5% of them be a broken tile.

    Is that currently possible, or would I have to put all normal tiles down first, then manually switch a few them to the broken tile?
     
  26. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,894
    Hi there Chris,

    The weight functionality is only available when you use the brush to scatter objects in the scene. That's where you can assign weights to prefabs. But for all other cases, no weights are used. It's in interesting proposition though, so I might decide to implement in the future. I just can't make any commitments to this yet.

    Thanks,
    Andrew
     
  27. Chris-Clark

    Chris-Clark

    Joined:
    Jan 16, 2012
    Posts:
    130
    Thanks for the reply, is the source included or is it a compiled dll?

    If it has the source I might add that in if I felt I really needed it immediately. It would be nice to have, but not essential.
     
  28. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,894
    All source code is included. But I have to say, looking back at the source code, it's not the most intuitive. Not terrible, but not great either :)
     
    Chris-Clark likes this.
  29. xkinginthecastlecastlex

    xkinginthecastlecastlex

    Joined:
    Nov 7, 2018
    Posts:
    93
    hi there,
    is octave level design 3d compatible with unity 2019.2 and HDRP?
     
  30. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,894
    Hello,

    Octave3D is compatible with 2019.2, but I have not tested it with SRP. I do not support SRP for any of my plugins.
     
  31. xkinginthecastlecastlex

    xkinginthecastlecastlex

    Joined:
    Nov 7, 2018
    Posts:
    93
    thx for your fast reply.
    Yes I know, I already purchased your RLD, but now I need HDRP and this is what I am looking for...
    I will give it a try anywhere.. hopefully it works
     
  32. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,894
    The thing is that Octave3D is an editor extension. RLD is for in-game use. So not having any experience with SRP, I don't know if it affects what happens inside the Editor.
     
  33. xkinginthecastlecastlex

    xkinginthecastlecastlex

    Joined:
    Nov 7, 2018
    Posts:
    93
    I guess it should work, the only thing I would worry about are the preview-images of the prefabs.. if this wouldn´t display it would be pretty bad..
     
  34. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,894
    It's very possible that they won't display.
     
  35. xkinginthecastlecastlex

    xkinginthecastlecastlex

    Joined:
    Nov 7, 2018
    Posts:
    93
    ou this would be bad.. I just purchased it .. let´s see
     
  36. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,894
    I can't seem to see the image. But I think I know what the warning are all about. You can safely ignore those for now. They are informing that the plugin uses deprecated APIs. They will be fixed in the future.
     
  37. xkinginthecastlecastlex

    xkinginthecastlecastlex

    Joined:
    Nov 7, 2018
    Posts:
    93
    ok, I am receiving some warnings in the console, but beside of that the preview images are displayed and it should work - you can check the warnings here: https://ibb.co/jLWpb6Q
     
  38. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,894
    Replied to original message. See my reply above. Now I can see the image. Indeed, they can be ignored.
     
  39. xkinginthecastlecastlex

    xkinginthecastlecastlex

    Joined:
    Nov 7, 2018
    Posts:
    93
    ok, I am receiving some warnings in the console, but the preview images are displayed and beside the errors, I guess it should work

    hehe, you have been faster :)

    ok, great at least I can keep HDRP :)
     
    XGT08 likes this.
  40. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,894
    Yes. That's actually good to know that it works with HDRP. :D
     
  41. andreiagmu

    andreiagmu

    Joined:
    Feb 20, 2014
    Posts:
    175
    Hi! I'm using Octave3D-Level Design with Unity 2019.3, and the level design tools are working nicely!
    However, if I try to add any prefab in the prefab categories, they work correctly in the Scene View, but in the Octave3D prefabs window, the prefab preview images aren't generated (only a gray texture is generated).

    Is this feature not supported on Unity 2019.3?
     
  42. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,894
    Hello,

    Thanks for contacting me.

    I do not support beta versions of Unity. When 2019.3 will be released officially, I will check it out. Until then, please use an earlier version of Unity.

    All the Best,
    Andrew
     
    andreiagmu likes this.
  43. andreiagmu

    andreiagmu

    Joined:
    Feb 20, 2014
    Posts:
    175
    Okay, thanks for the info.

    I made some tests in 2019.3.0f3, Unity is nagging about the following lines of code, in PrefabPreviewGenerator.GeneratePreview()

    Code (CSharp):
    1. Texture2D previewTexture = new Texture2D(_previewWidth, _previewHeight, TextureFormat.ARGB32, true, true);
    2. previewTexture.ReadPixels(new Rect(0, 0, _previewWidth, _previewHeight), 0, 0);
    3. previewTexture.Apply();
    For some reason, Unity thinks the previewTexture's texture format is invalid or something, and it displays the following error in the Console:

    D3D11 unsupported ReadPixels destination texture format (5)
    (Filename: C:\buildslave\unity\build\Runtime/GfxDevice/d3d11/GfxDeviceD3D11.cpp Line: 2246)

    I guess ARGB32 is the correct format, but even if I try to change it to another valid format for ReadPixels, Unity keeps returning the same error. o_O
     
  44. andreiagmu

    andreiagmu

    Joined:
    Feb 20, 2014
    Posts:
    175
    I've found a partial fix for the "gray prefab previews", the error is related to the Direct3D Graphics APIs (I'm using Unity on Windows).

    In the Player Settings for "PC, Mac & Linux Standalone", if I disable the "Auto Graphics API for Windows", and then I select any non-Direct3D Graphics API (OpenGL, Vulkan) as the default Graphics API, the prefab preview images are rendered correctly!

    Only in that case, you can't use any Direct3D Graphics API as the default while editing the game.
    Seems like a Unity bug.
     
  45. patrickk2

    patrickk2

    Joined:
    Dec 8, 2019
    Posts:
    92
    Hello everyone!

    I just started using Octave for level building, and what I have seen so far looks really great!

    I wanted to place an idea for consideration in future versions. Would it be possible to add something like the "Object Layer Erase Mask" also to the "Object Selection" mode? Or maybe even an option so that Octave checks if an objects layer is currently locked in the Unity editor bevor deciding if it can be interacted with. I find myself selecting the ground objects in my levels more often, than I would like :).

    Thanks in advance for considering this, or for any hints for preventig selection of certain objects that already exist and I missed.

    Best regards,
    Patrick
     
  46. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,894
    Hello Patrik,

    I've just checked to see if this is possible. There doesn't seem to be a feature that allows you to do this. I will see what I can do.

    Cheers,
    Andrew
     
  47. patrickk2

    patrickk2

    Joined:
    Dec 8, 2019
    Posts:
    92
    Hello XGT08!

    Thanks for you quick answer, and for having a look at this!

    Best regards,
    Patrick
     
  48. transat

    transat

    Joined:
    May 5, 2018
    Posts:
    779
    About to start playing with Octave 3D in 2020.1 with URP. :) FYI - Seemed to install fine but there are deprecation warnings:

     
  49. XGT08

    XGT08

    Joined:
    Aug 1, 2013
    Posts:
    1,894
    Hello,

    You can safely ignore these for now.
     
    transat likes this.
  50. vexiphne

    vexiphne

    Joined:
    Nov 23, 2018
    Posts:
    3
    i'm having some serious snapping issues trying to get a bookshelf in the corner, it doesnt want to stick to the wall and the floor at the same time, its either wanting to hover out in space, off the ground, and/or be stuck halfway through the wall.