Clock face/ Spawn random text in each TextRender cipher

Edit: The TextRender components should move with the mesh but not rotate themselves

I’d like to make the circular ring of my BP actor look like this:

284022-223.jpg

You see the text does not face with its bottom to the ring, their angles stay should steady.

(Ring design solved)

They are alien letters so it doesn’t matter what’s written.

What I still need to know how to…:

  1. Limit the max. rotation angle from 9 o’clock to 3 o’clock
  2. Each letter inside the meter should be randomly generated (when overlapping the top box)
  3. On a certain overlap event, 3 letters should bond together and shoot out of the top. (That’s the 3lines going up in the first picture.)

Any working idea would be pure awesomeness, even if you just know how to put a clock face on a mesh [solved]} - please let me know.


I managed to make a plane transparent (translucent + additive) and simply drag the clock face upon it - no edges at least! Visually I’m pretty happy with it, you see:

284027-at.gif

A question about spawning random text or letters inside the ring is still relevant.

i have placed like 36 TextRender components in the Blueprint and each and every one should spawn completely random letters. Any way to do that?

If you work in blueprint, this is the shortes way I can imagine for a random string:

I added a Blueprint copy-paste [TXT file][2]. My String is a local variable in this function.

If you are wokring in C++ you could use the “char” data type that converts a number from the ASCII table into a character and these together to a string.

Can I connect this to multiple TextRender components? Print text in them?
Thanks!

It should be one fitting for the customfunction RandomClockText, it’s at BeginPlay.

At best, it should the text should be changed under the condition that it is an Overlapping Actor of a Triggerbox/Cube.

To make your cyphers come up randomly just pipe all those variables ( from the cyphers of the clock picture ) into a MakeArray. Then you can just use a RandomIntInRange to select them a put them around the face.

The rest I’m not sure about I’m afraid! :slight_smile:

Still Thanks! Will try this next. The raw actors work so far, so cool. :smiley:

284145-thethex.gif

Your suggestion worked!!

A SMALL step needs to be done yet.

ONLY those cyphers which are overlapping with a box should change, meaning, while they’re out of sight, in the lower half. Currently all of them change simultaneously.

284244-cyh.gif

Ok, what is doing the overlapping? The circle or a little box the character is going in?

Assuming it’s lots of little boxes: You need the volume in the lower half and change them on begin actor overlap. That way they only change when outside view.

Are you getting overlap events from your text render components, if not, what?

30 TextRender components

The box is over the other (or under) half of the circle, - which is out of sight. Only those who overlap should change. What I’ve tried so far didn’t work. (They wouldn’t react. ) Probably there needs to be a condition that does not apply to ALL boxes simultaneously.

Yes – I mean they are ALL changing on overlap.

With these connections?

(It is a Box Collision component in the BP)

My fault, Just attached a cube to it and saw that the box was rotating with it.

Box should be on the bottom

That’s strange. See my last animation. All ciphers change.

What about creating an external box Actor?

Another one beside this Make Array?

But I have a BP with a collision box and text render components, but when the components move through the box I don’t get an overlap ( apart from that I have your answer… )

Not getting it, sorry. You have a BP which contains and collision box and the text components?

Correct, and I don’t get collision events from the text.

Nope, I think you’re going to need an extra array of components, one for each text component…

yup, but hold on…