**- August 08
Playable demo now (finally) available: download here.
- June 04
This blueprint is now available at the Marketplace!
https://www.unrealengine.com/marketp…tle-helicopter
Also be free to ask questions in our topic in the marketplace forum, you can find more videos and information there, check out:
https://forums.unrealengine.com/unre…tle-helicopter
- March 26**
Getting the advantage of the axis constraints to test a top scroller helicopter, the result is awesome!
- March 09
The last big feature on my wish list got implemented: axis constraints. The helicopter can now be used on a top down or side scroller perspective without any issue.
The result went better than we expected, on paper2D it feels just like those old sega genesis shooters, here some footage of it working with axis constraints:
- January 15
Audio is finally done, added sound for strafe up/down/left/right, improvements on 3rd person audio, a cue only for first person has been added.
Camera shakes also got improvements to shake accordly with the roll or pitch angle.
Screenshot of the audio folder containing the cues, classes, mixers. At the end of the day, audio gave so much work I’m glad to have finished it:
[SPOILER]
[/SPOILER]
- December 16
Finished weapons replication, server has the authority and the player controlling does simulate immediately to avoid perception issues.
- December 09
Testing randomness on propeller rotator, the two on top are using meshes, on the bottom are a texture to simulate motion blur.
On the left there’s a fixed rotation, on the right a random amount of rotation times a sine wave are added to emphasize and randomize the rotation.
This image shows the motion blur texture, the mesh with 8 blades and the plate mesh where the motion blur material is applied.
Done the event system, it triggers a custom event which can be placed on child blueprint to quick implement something when an event happens.
Looks like an emitter still return active after call SetActive(false) on it, might be a bug?
- November 30
Changes:
- rewrite on the strafe audio function, it’s now based on velocity instead of the mesh rotation.
- several fixes for camera shake.
- new UI.
==================================================================================
- Original Post:
Hello folks, this is a work in progress of a blueprint to reproduce the feeling of controlling a hellicopter on battlefield games.
The goal is make it as customizable as possible, with tons of knobs to fine tune the player experience.
So far most of the movement physics, weapons and audio are done. Multiplayer has server authority and client simulation.
Here are two small videos and a few pictures showing the vehicle on action, the first video is a standard fly by, the second shows some stunts, camera angles, sound mixing on 3rd person, propellers with motion blur and pure mesh.
I’m farming some feedback, questions, something that I might be missing, etc.
Thank you!
Images:
[SPOILER]
Blueprint Viewport:
A vector curve for acceleration by Pitch (when there’s no thrust generated by the main rotor). Time is Pitch angle and value is the acceleration addon or suggested Z direction:
The “knob” center:
[/SPOILER]
My small but challenging todo list for the following weeks:
[SPOILER]My small but challenging todo list for the following weeks:
-
Create a 3 seconds client side velocity buffer.
useful to calculate velocity changes over time. -
When doing curves and the abs(roll) > 10, play a rotor audio with a phaser effect to simulate a different air flow pattern.
just a polish effect which are present on other games with helicopters on. -
On velocity.Z direction change from negative to positive && pitch > 20 && buffer length > 20% vehicle max velocity, increase the rotor audio pitch.
another polish effect to emphasize the rotor struggle on drastic velocity change. -
Make parent weapons blueprints communicate more clearly with the game mode.
the main blueprint communicates with the game through interfaces, blueprints for weapons are a little messy on this subject. -
Remove hardcoded camera shakes.
child cannot change camera shakes, need to create editable variables for them. -
Many camera shakes are playing in world environment, do it to play on the controller.
lots of places using PlayWorldCameraShake() instead of ClientPlayCameraShake(). -
Create an event system.
to trigger some functions where artists can implement audio/visual effects without having to search the blueprint code to know where it happen.
[/SPOILER]