3Ducttapes(); Yvo von Berg | CG Toolsmith blog | C++, Python

Tycoon C++ dynamic rebuild

Horizontal atttachments

Added a method that builds a cube shape procedural mesh component.

    UProceduralMeshComponent* ATycoonAttachment::AddDynamicComponent(
        FVector Start, 
        FVector End, 
        FVector StartDirection, 
        FVector EndDirection, 
        int32 Column
    )
    {
        // create procedural mesh component vertices using start / end
        // Using start and end direction to create the correct orientation in corners -> |-| -> /-\
        NewVertices.Add(Start + (StartDirection * AttachmentHorizontalWidth));
    }

I’m generating a grid with all the points required to build the attachments. (Rows, columns).

Tycoon Attachment profiles

I’m currently working on the different attachment system profiles.

  1. Pillar (Top/Main/Bottom)
  2. Pillar (Horizontal lattice work)

Prototype with two types of meshes duplicated in the Z axis based on the height of the mesh. I’m using these locations to further append extra meshes.

Added a way to control the attachment detail separately of the animation detail. In order to make Tycoon flexible for developers, I generate an Unreal spline component based on the track.

New cool animation update:

Tycoon C++ Pillars + animation test

  • Just ported Tycoon to Unreal 4.21.2 and I’m using Visual Studio 2017 now. Had to manually change the include path to pick up the project files for Unreal, added the following lines: ..\Build\Win64\UE4Editor\Inc\UE4Editor ..\Build\Win64\UE4Editor\Inc<ModuleName>

  • Added another test for the pillar system. I’m using the first two points of the bounding box to place the pillars. I duplicate these components until it hits the ground level.

  • Generated reference transforms / locators on the track, I can use these to control the animation later.

  • First super quick animation test on the track. :)

Tycoon C++ Support system first steps

Currently planning the procedural attachment system. The challenge will be to keep the balance between keeping it generic (works with a lot of different meshes, different shapes etc.) and usability (actually creating something that works like a rollercoaster).

First test with spawning procedural meshes. (Would allow the user to modify them later).

Coupling system:

Wood latticeworks works style:

Tycoon C++ UI update

Nothing major, just added slightly better looking UI.

These rows are toggable, basically just turning visiblity on/off on the SHorizontalBox widget.