Fluid Movement


I am trying to make a brush. It is quite successful so far. I am using Dynamic textures and feeding it on a decal. A linetrace is being drawn on every tick, the location is first converted to relative location, then to texture location and then depending on the brush size, appropriate pixels get populated BUT

since Tick isnt fast enough, when I move the camera too fast, the above line on the screenshot happens:

If I move it slowly, the line is drawn perfectly.

Now is there any way I can do this without using prediction methods? It might be the human eye that makes me feel like rotation of the camera is actually more fluid or I might be losing some of the path as linetrace is the multiplication of a vector and thus I am losing the dots that are supposed to be in the middle.

Edit: Realized the topic name is so misleading. Apologies.

I can’t see exactly what happens on the image, but with a similar problem (when actor’s tick needs to depend on viewport / camera position), I changed tick group of the actor, in C++ in constructor:

PrimaryActorTick.TickGroup = ETickingGroup::TG_LastDemotable;

Now, this tick happens after camera’s new position has been set.

This option doesn’t seem available in the blueprint drop-down though.

Its also possible that when the mouse moves ‘too far’ between ticks, you get disconnected dot. Save previous coordinate, and if its larger than a threshold, draw a line instead of a dot?

Will try that. What happens on the image is what you described below. Ticks are not often enough so that I get disconnected dots when I move camera too fast.

Yep, this is however is what I referred as prediction

Edit: Tried LastDemotable but also isnt fast enough. Gotta implement the prediction method apparently. Thanks for the help!