Skip to main content

Unreal Engine 4 Dev Update #6: Character switching, Holographic Localized grids & Auto-Activation of UI

After I got my basic Command UI & grid based movement system working, I started implementing some changes to the UI as well as the functionality for allowing the player to switch between the playable characters of his party. Lately I've been doing some extra work on Level Design for a game as well as some personal side projects. So I kinda got caught up with all that & wasn't able to post any update over the last weekend. Now that we're back on track, let's move on to the new updates:

Switching between playable characters

Until recently, I had been mainly working on a single playable character, making sure that it's movement was restricted to a grid system. So I decided to implement that across multiple playable characters. For now, I've implemented a keyboard based switching between the party members. Later I'll add a mouse input based selection as well. I got it working by having player inputs mapped to allow possession of the different characters. I've also added a cool little character selection material to display around the active character. It's added to a character whenever we possess it, and gets removed every time we unpossess a character. Here's a video of it in action:

              
Holographic Grid system
                   
Well this one is more of a visual update. As mentioned earlier, I've got a grid system to facilitate the movement of the player and A.I. I'm actually dynamically spawning static meshes to display localized grid meshes. But it actually looked kinda ugly as every time I clicked somewhere, it just spawned a set of floor meshes. So taking inspiration from the awesome X-Com: Enemy Unknown, I decided to make some cool holographic styled grids. It's using the same meshes as before, I just switched the material to display a glow around it's corners. It looks a lot cooler now. Kinda gives the feel that you're actually the commander watching his troops deploy on the battlefield. You can check it out in this video:
          
      
If you want to create a similar holographic material, you can check out the video tutorial below by the Youtube user Liaret. He's made an awesome Tron glow material, that can be applied to meshes & BSPs.
    
Tron Glow tutorial - Unreal 4
         
Auto-activation of Command UI & Holographic Grids
   
After the above two updates, the next obvious thing to do was to combine them. I extended the possess character function to toggle the Command UI as well as the grids in the vicinity of the newly possessed character. So now they're activated automatically, every time the player switches between the playable characters. I'll leave you with a video of it here:
   
  
With that, we come to the end of this update. In the next update, we make some changes to the camera system and start with a basic Turn-Based gameplay system. Meanwhile, feel free to check out my Youtube channel, if you're interested in seeing some of my recent work on UE4:
     
Stormrage256' Youtube Channel

Popular posts from this blog

Unreal Engine Tutorial: Create Circular Ring Material without Textures

Hi, welcome back for another tutorial. It's been quite a while since I put up a tutorial as I've been busy working on toolkits for the Marketplace. One of my earlier tutorials [link: Unit Selection Decals for RTS Games] had focused on how to create ring materials using textures, as well as using them to display unit selection decals for RTS games. However, a drawback associated with using textures was that it prevented the user from changing the inner & outer radius of the ring. And during prototyping stages of a product, it's far better to implement structures that can be changed easily from within the engine so that you don't have to create a new asset from an external package every time you need to test out a new idea. I've found this approach quite useful while working on my own products. Hence, this tutorial focuses on creating a ring material that can be adjusted both from within the material editor as well as dynamically at runtime.

Alright before we get …

Unreal Engine 4 Tutorial: Smooth Zoom using Mouse Wheel for Top Down Template

Well, I had already written a tutorial for implementing Smooth Zoom functionality for Top Down Template. But it was based on keyboard inputs. Since most Top Down PC games use mouse wheel for zoom, I decided to make a tutorial for the same. The core logic here is the same as the one implemented by Ryan Jon for the custom camera in his RTS Community Project. If anyone's interested, they can get the code for the RTS Community Project here:

UE4 RTS Community Project

Anyways, he has replaced the default camera for the characters with a general camera since that's more ideal for developing an RTS game. Since a basic Top Down game with a single playable character does not need a separate custom camera, I decided to implement the same functionality for the default player camera in UE4's Top Down Template. So let's get down to it.

First of all we need to make a custom curve from the content browser. We will be using this curve to define the smooth camera movement while zooming …

Unreal Engine Diaries #11: Nav Mesh Configuration

[This episode of Unreal Engine Diaries focuses primarily on nav mesh configuration, nav areas & configuration of agent types.

Source: Unreal Engine 4 AI Support Twitch Broadcast with Mieszko: https://www.youtube.com/watch?v=7LaazCv4rB0]

1. The Recast NavMesh has a couple of attributes named 'CellSize' & 'CellHeight' under the 'Generation' section in it's details panel. Together they determine the resolution of the nav mesh & lowering these values can create more precise nav meshes. It could be especially useful when there are lot of holes in the nav mesh due to the surface properties of the terrain. However, lowering them also makes the nav mesh calculations more expensive.

2. If runtime nav mesh generation is enabled, it would be best to set the 'Tile Size' attribute of Recast NavMesh to the minimum viable amount.
3. The 'Min Region Area' parameter which can also be found under 'Generation' section of Recast NavMesh can be i…