Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
Tags

CookieBadger

34
Posts
1
Topics
219
Followers
5
Following
A member registered Aug 09, 2019 · View creator page →

Creator of

Recent community posts

Unfortunately, the plugin doesn't support MultiMeshInstances yet. I once toyed around with a MultiMesh tool, but the performance gains that I was able to achieve were so minimal, that I temporarily dismissed my progress. My idea was to make an Open Source plugin for combining instances of the same mesh, that would work together with AssetPlacer.

I'm afraid there is no such functionality at the moment, but if you know some programming, it should be possible to make an EditorScript that does what you need.

Are you sure you set the value to the exact size of your modules? If so, could you send me a screenshot such that I can investigate this?

Could you describe this problem more specifically? Please take into account, that floating point numbers cannot represent decimals all precisely, hence if you set some values like 0.3 they might actually get changed to 0.300000004

it is the default metrics (meters), that translate 1:1 to the values in the inspector.

Hello! Try setting the Snapping step value (just above offset). It should do what you are trying to.

Happy designing!

Unfortunately I cannot directly tell where your issue is, from that information. Any of the following might help you:

  • Make sure you followed the installation steps carefully, especially the "build" part (https://cookiebadger.github.io/assetplacer-docs/installation.html). Notice the small build button next to the play button in Godot 4.2.2.
  • If  this does not help, remove the addon, but also remove the "mono" folder inside the ".godot" folder in your projects root directory. Then, add plugin again and build. It should work now.
  • Otherwise, try the plugin in a new project, to see if the issue is related to your project and let me know your findings.

I hope this helps!

Of course, here you go!

https://cookiebadger.github.io/assetplacer-docs/

Great to hear, and sorry that it took so long, these things are hard to figure out sometimes :)

Happy developing!

Ok, since this error is clearly not supposed to happen, may I ask you also tell me the version of .NET, and the contents of your .csproj file? I am not sure, but it may help to go into your project folder, go into the .godot folder and delete the "mono" folder inside. After that, try if recompiling fixes the issue. Please also check if there is only one assetplacer copy in your project, and that it is where it is supposed to be.

Hello @fatoldyeti, may I ask what version of Godot you are running it on?

I do! Just know that I am still a student, and I can only do as much as my time budget affords. This project was originally my Bachelor's Thesis, before I made it into something bigger and more comprehensive. I hope to expand even more on it in the future.

I'm glad you figured it out. Good luck with your project! :)

you are welcome, I am happy that you like it! :)

Hello again,

yes this feature (scattering) has been requested a lot and I might be able to implement it in the future. I would like to ask for your patience, though, since it requires an overhaul of the UI and I need to set a lot of time aside for this endeavor.

(1 edit)

Hello again WungielPolacz, I'm sorry that you had some issues. The problem is that you are using an outdated version of the AssetPlacer that is not compatible with 4.2. Please make sure to get the latest AssetPlacer 1.2.3 and your issues should be fixed.

Of course the plugin does not only help for large open environments, but is very useful for small environments as well, especially if you are using modular assets (e.g. Tile-based dungeon).

(1 edit)

Hey WungielPolacz! The plugin itself should neither have too large of a performance footprint on your development nor should its use be encumbered much when using high-fidelity assets. What you have to take into account though, is that Godot itself  (and other Engines as well) needs to be able to handle all assets that are used. If your scene would, for example, have a thousand realistic trees, that are just instanced as nodes (which the plugin does), you will eventually notice your speed tree to go down, and your frames drop, if you do not take any optimization measures (using LODs, editing with lower viewport resolution, etc.). Hence, if you place an asset that takes a few seconds to instance, than AssetPlacer will be as slow as Godot. If you had no problems using these high-fidelity assets in the quantities you need so far, AssetPlacer should handle them fine. One thing to note, however, is the size of libraries. The more assets, and the more complex they are, the longer loading their thumbnails will take. I recommend having no more than a hundred assets per library. As for surface placement, your objects have to include collisions, as of AssetPlacer 1.2.x.


Regarding the support and updates of the plugin, I can assure you that it will continue, and is in my professional plans for at least this and next year. You have to take into the account, that as of this year, I am still a university student, maintaining this project on the side, and I like to also do not-for-profit work, like contributing to the Engine (I recently worked on Godot's AnimationPlayer) and making free plugins.

I hope this clarifies your doubts, and I could maybe convince you to give AssetPlacer a try! If you have any more questions, please go ahead.

~ CookieBadger

Thank you for your trust and support! 

I hope the plugin will help you greatly!

Hello Banana!

Of course I could try to highlight all the features, but if my plugin is worth your money is ultimately your decision :)

The last update was a compatibility, but I do plan to add more features in the future (many people have requested scattering, for example).

I can't guarantee when these are going to be implemented, but I hope to make some updates this year for sure - just know that I'm a student doing this on the side (and the time around new year's is especially hard with assignments and exams). Actually the plugin was an artifact of my Bachelor's Thesis, but I kept improving and adding to it, until I was confident enough to sell it.

Rest assured, the plugin as is will be made compatible with all Godot 4.x versions in the near future. 

I hope to make more video content as well, I just didn't find time - also the added stuff was not as substantial to justify the effort, but in the meantime you can see it in action a bit in a video a friend made:

https://mastodon.art/@vukbo/111700043306101099

I hope this gave you some insights, if you have any other questions, I'll be here for you ^^

Cheers,

Cookie

Hey, thanks for the suggestion. I guess this is mainly about the folders being in camelCase, right? It's the convention established by Godot, whereas the C# files convention is in PascalCase. Did you actually have to fix some file path strings in  the code?

Hello DistilledNuance!

Thanks for your comments, I take them into account. First of all, you are absolutely correct about the mono version. Then, about the filter system, I'm happy to let you know, that I'll include a basic one in the next version. As to the randomization, I hear this a lot, and so once I'll have the resources available, I'll think of how to implement one.

Best,

(1 edit)

Hello flow!

I'm sorry for the late reply. I think you can fix the error by opening the PreviewRenderingViewport script, replacing line 18 with 

    [Export] private Godot.Environment _environment;

and then removing line 11, that says 

    using Environment = Godot.Environment; 

Don't forget to save and press the "Build" button in the top right corner of Godot afterwards.

Please let me know, if this fixed your issue. I will then include this fix in the next version accordingly.

Hey Taobis, great to hear you got it working! Indeed, pressing the build button should do exactly that, although the button often does not show up the first time you open the project, so thanks for the tip of going through Project -> Tools.

I'm very happy that you like the tool, and I wish you all the best for your creations. I will definitely support it as long as I can.

Cheers

Hey! 

What you are asking for is basically a Scattering tool. I don't know if I will ever integrate one, although it is frequently asked for, reason being that many free alternatives exist, such as SpatialGardener, Zylann's Scatter, ProtonScatter, or the built-in MultiMesh "populate surface" tool. At the moment, I can't achieve the sophistication of SpatialGardener if I tried tried to integrate something similar, so I advocate for using a different tool, instead of waiting for AssetPlacer to provide the functionality.

I hope this helps!

Hay Raffaele!

At first, I'd like to thank you for your feedback. You make valid points, and I'm sorry not everything is as intuitive for you as you would expect. 

If I may respond to some of your comments:

  • I really hear you about the Mono version. This decision was made a long time before I decided to sell the plugin, and if I could go back, I might decide differently now. 
  • I have good news about the libraries, you can change their location in the Project Settings (Enable Advanced Settings -> Asset Placer -> Settings), exactly for the purpose of version control. You will still have to reconfigure your placement settings across devices, but at least the work of organizing your assets won't double.
  • Filtering might become available in a future version. You are in fact the first person to specifically ask for it, but I had already had it included in my mockups for a long time.
  • You can favorite your assets in the built-in FileSystem, or create a separate library for your favorites. Favoriting within a library is something I will think about.
  • About the placement: I think this is a matter of getting used to Godot's gizmos. I am not trying to just duplicate Blender's functionality here, and did not want to introduce a different system that is prone to more bugs.

I can understand your complaint about the price tag - we all have a view on what is worth how much of our money, and how much our work is worth, so it is normal that our views might differ. 

I hope my response can relief some of your frustration. I wish you best luck for your creations!

~ CookieBadger

Hello! I've had a problem with the Mac version recently, and since I don't have access to Mac hardware I was not able to test this profoundly, but according to some other people using Mac, it now works correctly.

The entire plugin is written in C#, so the standard version will not support it. However, you can still use the standard version for everything, and just use the mono version for level design. It should not impede your workflow to use the mono version partially.

Feel free to post screenshots of anything you make with my plugin here, I'm curious and I'm sure others are too!

Here are some images from the beach town I made earlier this year to demonstrate the plugin:

no problem! Glad it works :)

Dear YuriLavs,

the plugin (or rather its code) needs to be compiled before the Engine can understand and use it. Please refer to the documentation (step 3-5 here: https://cookiebadger.github.io/assetplacer-docs/installation.html) to see how. 

Best luck for your creations!

(1 edit)

Hey Gromnax!

That's a valid question, but don't worry. You're free to sell the game, or to make a commercial project using this plugin. The clause is mostly for reselling, because stuff like the scam Godot asset place exist 

In any case, the plan is to make the license more permissive in the future.

Best,

CookieBadger

Random crashes with no scripts? I think I only ever experienced that in the alpha/beta builds, so I really hope they are fixed by now, or that remaining issues get fixed.


As to the GDScript equivalent, no plans exist right now, since I simply don't have the capacity to do so, maybe someday in the future I will though.

Hello Golden-404!

Since I don't know what you work on, I cannot tell you if you should get it, you need to know for yourself!

The AssetPlacer provides you two major advantages: it helps you organize your assets, and place them efficiently

Organizing Assets:
Godot 4 disposes over a systems that would usually handle this: the FileSystem. You search for your assets there, organize them in folders, and drag and drop them onto the 3D viewport to place them. However, this is extremely inefficient, and that's why I decided to make this plugin! At first, the FileSystem does not allow you to filter in any way, so it always displays Scripts, Models, Scenes, Sprites, Textures, ... I think you understand the problem. Then, the way you organize your assets, depends on the location of the files. Moving files around can be extremely slow and thus you want to avoid doing this in the process of designing levels. The Asset placer allows you to create libraries (=collections) of your assets, to group them, independent of the file location. An asset can be part of any amount of collections. Then, the asset placer displays proper previews of your 3D assets. Godot only does so for .obj models (requires reimport), and for scene files (like a screenshot of the last time you saved, with gizmos and everything in the way), and both of these are usually unsatisfying. 

Placing Assets:
The second large advantage of the AssetPlacer is, that you can place assets much more efficiently. It allows the use of grid snapping, which does not exist in Godot by default (only incremental snapping), which makes it very useful for modular assets. Also, you can place assets on terrain (=physics surfaces), which saves you a lot of time, precisely aligning your assets, and gives you a lot of handy shortcuts, for example for quick 90 degree rotations or axis flipping, which speeds up level design a lot.

This way, the AssetPlacer can also be seen as an improved version of Godot's GridMap, but as I explained, it is much more than that. When I tested it with several level designers (and this was in the early stages of development), they could build the level I told them to over 30% faster on average. So, as the Nr 1 reason why you should get it, I would say, if you do anything in 3D environments, this can make your life a lot easier, if you commit to using it.

All the best for your projects,

- Emil (CookieBadger)