Download

Default Wall Size?

Why is it that if I use a wall from the mesh folder the wall can be scaled down thin below -0.25; but if I create a cube and try to scale it down, to make a wall segment, it can not go below -0.25?
To me, creating a wall from cubes is too thick… Is there a better way to create wall segments?

Are you trying this with Cube meshes, or BSP brushes? BSP brushes would make this easier, and you can set the dimensions of the brush rather than scaling.

Set the size of a brush rather than the scale. Like AquaGames said.

Also. There is a better way. Use a modelling program.

Well,
when I started with UE4, I also used brushes for prototyping. But then I soon found out the limitations and performance hits (if you have 500+ of them in ysour level.)
Also the Geometry editing tools are too limited to make brush usage attractive.

I use a blueprint to set the dimensions of the meshes.
I made a simple set of basic shapes and use these instead of brushes.

I call them “SmartBrushes”

The advantagees:

  • better performance than brushes
  • More options, like several materials
  • easily extensible (SmartStairs)

I have abandoned using brushes completely. And I wouldnt miss them if they were gone :slight_smile:

They BPs are set up like this:

First, I defined two structures, for the brush and for an alternate material.

b60a043a3b240e15eea249c3a22b6533e6c66093.jpeg

ffd0b2223c15e48439da559d0a7aa6f88c50fdef.jpeg

Then, I created a blueprint, based on “Actor”.
The blueprint itself has a variable of the brush definition and material override.

It also has a function “MakeSimple”, which will just create the mesh that is set in the variable:

c1a812986edf01c2e55f6aaff4078a37bc47a1f2.jpeg

The function “ScaleMesh” that is used, does the actual scaling, according to the dimension specified.#
And it does that independently from the native mesh size:
(For reusability, the function is implemented as part of a BP function library)

scalefunc.JPG

This parent BP is now used to create two child BP classes. A brush that can be spawned as series and a special stairs brush.

First lets define some structs for the brush series.

seriesdef.JPG

The brush can now be rotated and moved relative to the BP origin.
And if we wrap that in another structure that provides an overall offset, rotation and scale, then we can create a whole series of them, thus the “instances” field.

2c7be532343c97884e5c6746276cab89e11cce22.jpeg

The “SmartBrush” child class now looks like this:
In case of the “Use simple” is true, then the brush is just created. See function above in the parent class.

d9dd7a279c9300cf312a1e64f06f4c372ac6b485.jpeg

If a series is used, then the “MakeSeries” function does the following:

a5107e778757d37cf2eae4688215b6328e030da7.jpeg

In the editor, it looks like this:
This entire map is created by only using a box mesh with native dimensions 100x100x100 and a cylinder of same dimensions.

cb556d84ccbb393e1e8687fa44dfe359724be704.jpeg

Series can be used for anything like fences. And because you have an array of series, you can have one for the posts and one for the fence elements (of which you need one less).

The offset and rotation fields let you create all kind of nice stuff.
For example, this is just one BP actor creating this balcony with just that one box and cylinder mesh:

3e386f0812f910723a5f12ebb269d2be31077817.jpeg

Now, this could already be used to create stairs, but stairs have so much more options, thus I created the “SmartStairs” BP. Also a child of our parent from above:

First, a little definition of stairtypes:

420b5309ec6f20928b363ce1c818475989fbf916.jpeg

The construction script is rather trivial again. We build the stair type that we select…
Also a variable for the number of steps is included.
The step dimensions itself are defined by the “Brush property” that was implemented in the parent.

925e761dafc8b7db202cbca24d840ced683f8983.jpeg

Now its just a matter of building the stairs:

The “free stairs” :

545f9ce4191ae7767861990f7088b961f9b9a00c.jpeg

and the solid stairs:

297f35d703524ed4c8969a7bf6d1d77dc498c227.jpeg

And thats how they look:

257ef473a81f228f7edd657da8f63e6ae5f73847.jpeg

So, I hope that gives you guys some inspiration. :slight_smile:

By now, I consider BSP brushes a bad habbit :stuck_out_tongue:

Cheers,
Klaus

POP <— that’s the sound of my mind being blown. :smiley:

I have UE 4.8.1. I was creating the blueprints but I can’t get the “Scale Mesh” function to display correctly in the “Make Simple” function. It didn’t display the “f” icon next to “Scale Mesh”. How can I fix the problem?

Where did you implement the “ScaleMesh” function?

I put it in a BP function library:
01854936bd18db378015289b756dbb4b470be3ef.jpeg

And in any blueprint, it shows up in the context menu under the “class” category:
d7e78b47ac1e1680f5bd7dcc0680339d4355dcd4.jpeg

You dont see it there? :confused:

I can’t get the blueprint to work. After placing the Smart Brush BP in the scene, nothing happens to the cube after trying to change the values in the Details window. Is it possible for you to upload the BP to a website so that people can download it?

Wow, amazing work Klaus! Very nice…

Thanks :smiley:

Can you show me some screenshots of your setup?
Do the other things work, like displaying the alternative material on override?

If everything else fails, I can do it :slight_smile: But lets work on your implementation first.
Its important to find out why yours isnt working. This way you wont nake that mistake in future blueprints of your own… :slight_smile:

bf323c3f6d56dbfc1e49063508a1c3d70529493e.png

880d97ebd0668719afabfc18456b93049af23b80.png

19509bf2df650e7d869e545e1a6b85e6b46fa0ac.png

a1fcbc0be404e9bdfd1c41321f3c676540abef88.png

How did you create the cube and material? I can move the cube but I can’t do anything to it. I must have made a mistake creating the blueprints.

The graphs look basically ok.
How does it look in the viewport?
You said you can move the mesh there, can you also use the material overrie? Does it change appearance?

When you select an instance of the BP from the level in the BP editor for debugging, does the graph execute completetly?

I created them in 3dsMax, unwrapped them and exported them as FBX. The origin of the meshes is their center.

The material rather simple.
The master material looks like this:

3447b9453d9421664649bf530ae75a8a3f6c902d.jpeg

And for the instances you can just make changes…

aa55cdd95b81f0cedb7012650d788c90392d1a16.jpeg
So, Im also curious to find out what is not going right in your BPs.
Keep me updated :slight_smile:

Cheers,
Klaus

smartbrush05.PNG

The stairs work but not the “Make Series” function. Did I make a mistake?

In your screenshot, the series is not displayed, because you have the “UseSimple” field ticked.
This causes the “Brush” to be used. The brush dimensions 10x10x10 look kind of right (hard to tell in the viewport).
If you had the “Native Dims” ticked, the brush would have the native size of the mesh and the dimension values ignored.
You should see the series if you untick “UseSimple”. Not using the “simple” means using the “Series”.

dddc1e8741038c7890a8f6d3f5e4d876b4e6bb15.jpeg

The stairs look good :slight_smile:
Did you also test the “solid” version ?

Please check the SmartBrush blueprint for me.

No problem :slight_smile:

I just need all related assets as well…
10aa7a5eda763f9d5de6b5cfe62fc5559ad781c2.jpeg

So just include the parent class, the structures, enumerators and materials…
They might me identical in setup, but UE4 might still see them as “different”…

I can’t upload ZIP files larger than about 100 KB into this forum.

You can use one of these. (You dont need to setup an account there):

http://www.tinyupload.com/

or
http://www.filedropper.com/

Here it is:

http://www.filedropper.com/smartbrush

I have downloaded it, but I cant look into it until later today.
So stay tuned for an update :slight_smile: