Week 3-4 UI conclusion and working with objects

This entry marks the end of the introduction to the user interface and also goes over some basic concepts of working with objects before the next section of the syllabus, which is looking into generating a level from scratch (the fun stuff).

cryengine_02

The main focus here are Entities, which are basically markers that represent the presence of assets such as objects (geometry referred to as “brushes”), decals (textures and images that can be put on the surface of other assets, for example debris on a road or marks on tiling, in addition to the texture-mapping), Boids (groups of moving assets such as birds or fish), assets with which interaction is possible (doors, levers, etc), roads, particle efects (dust, water, atmospherics etc) trigger areas (thresholds that trigger some action), etc. This was not a comprehensive overview of all Entities but rather an introduction to the concept.

Each Entity has attributes controlled in the Rollup Bar. Further properties (value or true and false) can be determined in the DataBase View, such properties including things like interaction qualities, mass, RigidBody aspects, whether an asset is breakable, its health points before destruction etc.

Similar detailed control is available in the DataBase View in the following self-explanatory categories: Entity Library (described above), and libraries for Vegetation, Particles, Music, Reverb, Sound Moods and Game Tokens. From these libraries a designer can access various assets, swap assets and define new libraries.

Lighting was only briefly covered, but there are later exercises devoted completely to lighting. The time of day and the direction of the sun can be controlled. There is also a graphic editor for controlling lighting conditions.

Working with objects

cryengine_01

Basic overview of working with assets using the tools built in to the UI. The tools are all standard; select, select and rotate, select and move, etc. A level designer may select a brush (remember a brush is essentially an object), then browse the DataBase view, find a desired asset, then right-click and select “Assign to Selected Objects” to replace the selection. So, this could be something like a bench or a waterfall or anything else. Speaking of selections, you can make multiple selections similar to other CG applications, by using Ctrl as you select.

Two ways of adding objects: Rollup Bar>Objects>Brush>choose your object, 2: “Open Asset Browser” in main UI. Once in the browser may search by name element. For example, if you have an object titled bench.park.redArea, and that is part of a larger organization or series of similar objects, you can simply type “park” or “red” or “bench” etc and anything with that element in the nomenclature will appear in the browser. This is handy for quickly finding single types of assets, providing you use a sensible, consistent naming convention.

Objects can be easily duplicated and moved by selecting an asset, then Shift + Ctrl and clicking in a new location. Objects can automatically snap to terrain. This can be used to efficiently populate an area. Assets can be placed into groups, which are editable individually. Conversely, assets can be placed into Prefabs, whcih are like groups but different in that a change to one Prefab changes all copies (instances). For example if you created a prefab that had three benches and copied that to different locations, they would all look exactly the same. However, if you changed the rotation of one bench, or deleted one bench, then updated the prefab, this would be reflected in all the copies you made earlier.

An interesting note here is how individual objects are selected in a group. Once objects are grouped and you move the selection, all the objects move. However, if you Open the group in the Rollup Bar, you can move individual objects without breaking the group. The same is true of prefabs. This is similar to using the open arrow in Illustrator to select individual objects, or similar to double-clicking an object. In CryENGINE you open and close groups. Should you select an asset within a group and move it, then close the group, the change will be reflected in the changed size of the bounding box of the group.

One thing to note about prefabs is that, unlike groups, they are not automatically saved with everything else. Prefab organizations are saved as XML files so that they can be easily shred with team members. This is done via the disk icon located within the DataBase View.

Some brief examples were given of asset alignment (snap to grid, align object to grid), set object height, alighn to surface normals (this aligns the asset to the outward face, for example, the ground, or the angle on top of a rock). This particularly good for the application of Decals. For example if you had a texture with some dirt and maybe some trash or paper, the Decal would automatically bend ot match the surface contours of another asset, or road, etc. These alignment options are part of the UI.

Freeze and Unfreeze selections, pretty self-explanatory. Part of the UI.

Reset Physics State, Save Physics State and Simulate Physics are handy for placing assets in a scene. For example if you had some boxes, a round object and perhaps a canted surface, you would insert the assets into the scene in the general desired location. Then, using Simulate Physics, the objects would fall into their places and rest as they would naturally. This is much more efficient than moving and rotating each individual object into a pile.

Local versus Parent orientation. This mode determines the behavior around an axis when you move, rotate or scale. For example, say you had two benches selected in Local Mode. When you rotate the benches, selected at the same time, they both rotate independently around their own axes. The same effort in Parent Mode would rotate them both as a single object, with a pivot between them. This is similar to other CG applications with object mode, world mode, etc. Again, this was not explored fully, but was an introduction.

Last thing to mention is there is a flowgraph editor, scripting capabilities and animation abilities for creating cinematics.

There really is a lot of capability here. It’s quite sophisticated but, on the other hand, the way it works seems very straightforward. I downloaded the engine and I have installed it. I’ve messed with it some but I am looking forward to the next section which is designing an area completely from scratch.

Leave a comment