Posted October 04, 2018 05:16:49 It’s been awhile since I’ve posted a game engine article, and I’m happy to announce that we’ve completed a lot of the work for one of the games that we’re developing with Unity, the Batman: Arkham Knight.
Batman: Battle Royale is an ambitious, open-world, third-person action game, and we’ve spent a lot time building the engine to support this.
It’s a lot to cover in a blog post, so I’ll summarize the project in a couple of words.
First, let’s get things started: the engine We’re going to create a new game engine to help us with the work that’s already been done.
This engine will take advantage of Unity’s advanced shader technology, which means that the game can use an array of more than a dozen shaders, which we’ll use to render the world and characters of the game.
In our example, we’ll render a character, but you can make the same character out of any object or texture.
We’ll also add new shader commands, such as “smooth”, which lets us make objects look flat.
For this project, we’ve already built the character shader, so we’ll be using the same techniques that we used to create the characters.
We use Unity’s default editor to create our shaders.
We can do this from the editor itself, by clicking the “Tools” icon on the top right of the window.
Next, open the “Engine” tab in the Unity Editor.
This window will show all the shaders we’ve built for this project.
We have built several of them.
If you click the “Show Details” button, you’ll see a list of the different shaders that were built, and the properties that define them.
To make it easier to see what they do, you can click on the object name to highlight the properties of that object.
Then, click the triangle to show the properties associated with the object.
Next up, we need to create two more new properties: “EnableShaderHints” and “EnableLightMapHints.”
These properties allow us to set what type of shader our object will use.
If the object doesn’t have any shader at all, it will only use a simple texture.
For example, the player’s bat mask will only render a red color, so it won’t use any shader.
If we want to make the bat mask more complex, we could add some texturing to it.
For the first property, we want the bat to be able to use a light map shader, which will draw lights to the character’s face and body.
We also want the mask to be drawn on top of the bat’s body, so that the bat is visible at all times.
Next comes “EnableTinting.”
This property will enable the game to automatically adjust the color of the mask.
If there’s an object with a tinting effect, we can also enable the mask’s tinting.
Finally, we have “EnableHues.”
This is the last property that we need.
This tells the engine that we want it to use colors from the RGB space, which is the color space that we use in the game’s visual effects.
We’re using a palette of nine colors for our masks, so the mask is going to have the same color as the player.
So, to use an RGB mask, we’d need to use six of those nine colors.
You can see the list of available color schemes in the image above.
The image above is from our shader editor, which allows us to edit the values of the properties in the shader we’ve just created.
If any of the values are out of range, the engine will give us an error.
To create an object, we just drag the asset in the inspector and click the “+” button.
This opens the “Objects” window.
We now have an object to work with, so let’s add it to the game, by dragging it into the scene.
We could drag the character into the character view, but we want our character to be visible at the same time that the player is.
In order to do this, we first need to add a “viewport” to the object so that we can use the new object to view the scene from.
Next we need an “x position,” or “y position,” so that our character can view the world around it.
Next is an “angle,” or where the character is pointing in the world, and finally, we add an “offset,” or the amount of screen space we want for our character.
To add an object in the scene, we simply drag the object into the inspector.
To move the object in place, we click on it, and then drag it to a new position.
Then we drag it again to the end of the scene so that it’s at the position we specified. In the